aboutsummaryrefslogtreecommitdiffstats
path: root/testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch
diff options
context:
space:
mode:
authorHe Yangxuan <yangxuan8282@gmail.com>2018-12-12 04:18:06 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2018-12-20 14:35:09 +0000
commit468ce5d3db5bea1bfc4d0b21ce0460bbc508c0ff (patch)
treeeed21d01ea548aec8278a37ccf3a67357c56ed13 /testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch
parent27ddcaeab2051aaf617a81eeddfa34fb6557e64a (diff)
downloadaports-468ce5d3db5bea1bfc4d0b21ce0460bbc508c0ff.tar.bz2
aports-468ce5d3db5bea1bfc4d0b21ce0460bbc508c0ff.tar.xz
testing/linux-amlogic: upgrade to 4.19.8
Diffstat (limited to 'testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch')
-rw-r--r--testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch b/testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch
new file mode 100644
index 0000000000..50aa112db2
--- /dev/null
+++ b/testing/linux-amlogic/0021-drm-meson-Output-in-YUV444-if-sink-supports-it.patch
@@ -0,0 +1,31 @@
+From c9cf1e80259276c3da76bc03ab0aaa9dfac481ae Mon Sep 17 00:00:00 2001
+From: Neil Armstrong <narmstrong@baylibre.com>
+Date: Sun, 18 Nov 2018 14:06:11 +0100
+Subject: [PATCH] drm/meson: Output in YUV444 if sink supports it
+
+With the YUV420 handling, we can no dynamically setup the HDMI output
+pixel format depending on the mode and connector info.
+So now, we can output in YUV444, which is the native video pipeline
+format, directly the the HDMI Sink it it's supported, without
+involving the HDMI Controller CSC.
+
+---
+ drivers/gpu/drm/meson/meson_dw_hdmi.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/meson/meson_dw_hdmi.c b/drivers/gpu/drm/meson/meson_dw_hdmi.c
+index 0b9ecbf..6df124c 100644
+--- a/drivers/gpu/drm/meson/meson_dw_hdmi.c
++++ b/drivers/gpu/drm/meson/meson_dw_hdmi.c
+@@ -670,7 +670,10 @@ static int meson_venc_hdmi_encoder_atomic_check(struct drm_encoder *encoder,
+ dw_hdmi->output_bus_format = MEDIA_BUS_FMT_UYYVYY8_0_5X24;
+ } else {
+ dw_hdmi->input_bus_format = MEDIA_BUS_FMT_YUV8_1X24;
+- dw_hdmi->output_bus_format = MEDIA_BUS_FMT_RGB888_1X24;
++ if (info->color_formats & DRM_COLOR_FORMAT_YCRCB444)
++ dw_hdmi->output_bus_format = MEDIA_BUS_FMT_YUV8_1X24;
++ else
++ dw_hdmi->output_bus_format = MEDIA_BUS_FMT_RGB888_1X24;
+ }
+
+ return 0;