aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.4/950-0100-drm-vc4-Add-FB-modifier-support-to-firmwarekms.patch
diff options
context:
space:
mode:
authorÁlvaro Fernández Rojas <noltari@gmail.com>2020-02-29 09:25:20 +0100
committerÁlvaro Fernández Rojas <noltari@gmail.com>2020-02-29 12:50:51 +0100
commita1383655cfaa71609d6236ae0fcf3b6047462b98 (patch)
treec6f123859e0dfcfaa6c1063eda26f27e208d3cac /target/linux/bcm27xx/patches-5.4/950-0100-drm-vc4-Add-FB-modifier-support-to-firmwarekms.patch
parenta8aa974a9dfb4cba484dc4c1e4207fd9ec803410 (diff)
downloadupstream-a1383655cfaa71609d6236ae0fcf3b6047462b98.tar.gz
upstream-a1383655cfaa71609d6236ae0fcf3b6047462b98.tar.bz2
upstream-a1383655cfaa71609d6236ae0fcf3b6047462b98.zip
bcm27xx: add linux 5.4 support
Tested on bcm2710 (Raspberry Pi 3B). Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Diffstat (limited to 'target/linux/bcm27xx/patches-5.4/950-0100-drm-vc4-Add-FB-modifier-support-to-firmwarekms.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.4/950-0100-drm-vc4-Add-FB-modifier-support-to-firmwarekms.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0100-drm-vc4-Add-FB-modifier-support-to-firmwarekms.patch b/target/linux/bcm27xx/patches-5.4/950-0100-drm-vc4-Add-FB-modifier-support-to-firmwarekms.patch
new file mode 100644
index 0000000000..11fb0d6fd8
--- /dev/null
+++ b/target/linux/bcm27xx/patches-5.4/950-0100-drm-vc4-Add-FB-modifier-support-to-firmwarekms.patch
@@ -0,0 +1,32 @@
+From 427c7c3d63a165ae3d5da45cd2afbe68cb4a34a9 Mon Sep 17 00:00:00 2001
+From: Eric Anholt <eric@anholt.net>
+Date: Wed, 7 Jun 2017 14:39:49 -0700
+Subject: [PATCH] drm/vc4: Add FB modifier support to firmwarekms.
+
+Signed-off-by: Eric Anholt <eric@anholt.net>
+(cherry picked from commit 11752d73488e08aaeb65fe8289a9c016acde26c2)
+---
+ drivers/gpu/drm/vc4/vc4_firmware_kms.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+--- a/drivers/gpu/drm/vc4/vc4_firmware_kms.c
++++ b/drivers/gpu/drm/vc4/vc4_firmware_kms.c
+@@ -17,6 +17,7 @@
+ #include "drm/drm_atomic_helper.h"
+ #include "drm/drm_plane_helper.h"
+ #include "drm/drm_crtc_helper.h"
++#include "drm/drm_fourcc.h"
+ #include "linux/clk.h"
+ #include "linux/debugfs.h"
+ #include "drm/drm_fb_cma_helper.h"
+@@ -134,6 +135,10 @@ static void vc4_primary_plane_atomic_upd
+ fbinfo->yoffset = state->crtc_y;
+ fbinfo->base = bo->paddr + fb->offsets[0];
+ fbinfo->pitch = fb->pitches[0];
++
++ if (fb->modifier == DRM_FORMAT_MOD_BROADCOM_VC4_T_TILED)
++ fbinfo->bpp |= BIT(31);
++
+ /* A bug in the firmware makes it so that if the fb->base is
+ * set to nonzero, the configured pitch gets overwritten with
+ * the previous pitch. So, to get the configured pitch