diff options
Diffstat (limited to 'target/linux/bcm27xx/patches-5.15/950-0626-drm-vc4-hdmi-Move-XBAR-setup-to-csc_setup.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-5.15/950-0626-drm-vc4-hdmi-Move-XBAR-setup-to-csc_setup.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.15/950-0626-drm-vc4-hdmi-Move-XBAR-setup-to-csc_setup.patch b/target/linux/bcm27xx/patches-5.15/950-0626-drm-vc4-hdmi-Move-XBAR-setup-to-csc_setup.patch new file mode 100644 index 0000000000..6db6ff62bb --- /dev/null +++ b/target/linux/bcm27xx/patches-5.15/950-0626-drm-vc4-hdmi-Move-XBAR-setup-to-csc_setup.patch @@ -0,0 +1,34 @@ +From 9d59b54f5b608a823f01982a1aabac76a364556d Mon Sep 17 00:00:00 2001 +From: Maxime Ripard <maxime@cerno.tech> +Date: Wed, 13 Jan 2021 11:07:48 +0100 +Subject: [PATCH] drm/vc4: hdmi: Move XBAR setup to csc_setup + +On the BCM2711, the HDMI_VEC_INTERFACE_XBAR register configuration +depends on whether we're using an RGB or YUV output. Let's move that +configuration to the CSC setup. + +Acked-by: Thomas Zimmermann <tzimmermann@suse.de> +Signed-off-by: Maxime Ripard <maxime@cerno.tech> +--- + drivers/gpu/drm/vc4/vc4_hdmi.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/drivers/gpu/drm/vc4/vc4_hdmi.c ++++ b/drivers/gpu/drm/vc4/vc4_hdmi.c +@@ -791,6 +791,8 @@ static void vc5_hdmi_csc_setup(struct vc + + spin_lock_irqsave(&vc4_hdmi->hw_lock, flags); + ++ HDMI_WRITE(HDMI_VEC_INTERFACE_XBAR, 0x354021); ++ + if (!vc4_hdmi_is_full_range_rgb(vc4_hdmi, mode)) { + /* CEA VICs other than #1 requre limited range RGB + * output unless overridden by an AVI infoframe. +@@ -905,7 +907,6 @@ static void vc5_hdmi_set_timings(struct + + spin_lock_irqsave(&vc4_hdmi->hw_lock, flags); + +- HDMI_WRITE(HDMI_VEC_INTERFACE_XBAR, 0x354021); + HDMI_WRITE(HDMI_HORZA, + (vsync_pos ? VC5_HDMI_HORZA_VPOS : 0) | + (hsync_pos ? VC5_HDMI_HORZA_HPOS : 0) | |