You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.2 KiB
33 lines
1.2 KiB
6 years ago
|
From 37822018786bae32642f9e1dc7da980ebe86ccde Mon Sep 17 00:00:00 2001
|
||
|
From: Eric Anholt <eric@anholt.net>
|
||
|
Date: Wed, 7 Jun 2017 14:39:49 -0700
|
||
|
Subject: [PATCH 185/454] 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"
|
||
|
@@ -135,6 +136,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
|