aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-4.19/950-0704-bcm2708_fb-Fix-layout-of-struct-vc4_display_settings.patch
blob: adb14fb710b31a35825c1e3098e6829af4c64eba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
From c6be127c2f4d5f75c60d3778594093ff51593a6e Mon Sep 17 00:00:00 2001
From: Michael Brown <mbrown@fensystems.co.uk>
Date: Sun, 22 Sep 2019 21:51:29 +0100
Subject: [PATCH] bcm2708_fb: Fix layout of struct
 vc4_display_settings_t

The display parameters returned by the VC4 firmware in response to the
RPI_FIRMWARE_FRAMEBUFFER_GET_DISPLAY_SETTINGS tag do not match the
layout of struct vc4_display_settings_t: the colour depth and row
pitch are erroneously swapped in the kernel definition.  This can
trigger a kernel warning from pixel_to_pat(), such as:

  pixel_to_pat(): unsupported pixelformat 7296

Fix by adjusting the layout of struct vc4_display_settings_t to match
the layout as used by the VC4 firmware.

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
---
 drivers/video/fbdev/bcm2708_fb.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/video/fbdev/bcm2708_fb.c
+++ b/drivers/video/fbdev/bcm2708_fb.c
@@ -89,8 +89,8 @@ struct vc4_display_settings_t {
 	u32 display_num;
 	u32 width;
 	u32 height;
-	u32 pitch;
 	u32 depth;
+	u32 pitch;
 	u32 virtual_width;
 	u32 virtual_height;
 	u32 virtual_width_offset;