diff options
Diffstat (limited to 'target/linux/brcm2708/patches-4.19/950-0741-drm-modes-Don-t-apply-cmdline-s-rotation-if-it-wasn-.patch')
-rw-r--r-- | target/linux/brcm2708/patches-4.19/950-0741-drm-modes-Don-t-apply-cmdline-s-rotation-if-it-wasn-.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.19/950-0741-drm-modes-Don-t-apply-cmdline-s-rotation-if-it-wasn-.patch b/target/linux/brcm2708/patches-4.19/950-0741-drm-modes-Don-t-apply-cmdline-s-rotation-if-it-wasn-.patch new file mode 100644 index 0000000000..ebf7c9e2b2 --- /dev/null +++ b/target/linux/brcm2708/patches-4.19/950-0741-drm-modes-Don-t-apply-cmdline-s-rotation-if-it-wasn-.patch @@ -0,0 +1,34 @@ +From 2fa721de5cadd22412b33f34d973efc5fe1c28a3 Mon Sep 17 00:00:00 2001 +From: Dave Stevenson <dave.stevenson@raspberrypi.org> +Date: Tue, 23 Jul 2019 14:10:31 +0100 +Subject: [PATCH 741/782] drm/modes: Don't apply cmdline's rotation if it + wasn't specified + +Taken from the dri-devel mailing list (11/7/2019) to fixup the cmdline +parsing, but requires changes as things have moved between 4.19 and 5.2. + +From: Dmitry Osipenko <digetx@gmail.com> + +The rotation mode from cmdline shouldn't be taken into account if it +wasn't specified in the cmdline. This fixes ignored default display +orientation when display mode is given using cmdline without the +rotation being specified. + +Fixes: 1bf4e09227c3 ("drm/modes: Allow to specify rotation and reflection on the commandline") +Signed-off-by: Dmitry Osipenko <digetx@gmail.com> +Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> +--- + drivers/gpu/drm/drm_fb_helper.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/gpu/drm/drm_fb_helper.c ++++ b/drivers/gpu/drm/drm_fb_helper.c +@@ -2497,7 +2497,7 @@ static void drm_setup_crtc_rotation(stru + * simple XOR between the two handle the addition nicely. + */ + cmdline = &connector->cmdline_mode; +- if (cmdline->specified) { ++ if (cmdline->specified && cmdline->rotation_reflection) { + unsigned int cmdline_rest, panel_rest; + unsigned int cmdline_rot, panel_rot; + unsigned int sum_rot, sum_rest; |