[PATCH 2/2] drm/tegra: Support YVU420
From: Aaron Kling via B4 Relay
Date: Thu Oct 08 2026 - 16:57:46 EST
From: Aaron Kling <webgeek1234@xxxxxxxxx>
This format is used by AOSP for video playback among other things.
Signed-off-by: Aaron Kling <webgeek1234@xxxxxxxxx>
---
drivers/gpu/drm/tegra/dc.c | 2 ++
drivers/gpu/drm/tegra/hub.c | 1 +
drivers/gpu/drm/tegra/plane.c | 8 ++++++++
3 files changed, 11 insertions(+)
diff --git a/drivers/gpu/drm/tegra/dc.c b/drivers/gpu/drm/tegra/dc.c
index 76d3841a17b8b..57146c41c0972 100644
--- a/drivers/gpu/drm/tegra/dc.c
+++ b/drivers/gpu/drm/tegra/dc.c
@@ -1312,6 +1312,7 @@ static const u32 tegra114_overlay_formats[] = {
DRM_FORMAT_YUYV,
DRM_FORMAT_YUV420,
DRM_FORMAT_YUV422,
+ DRM_FORMAT_YVU420,
/* semi-planar formats */
DRM_FORMAT_NV12,
DRM_FORMAT_NV21,
@@ -1352,6 +1353,7 @@ static const u32 tegra124_overlay_formats[] = {
DRM_FORMAT_YUV420, /* YU12 */
DRM_FORMAT_YUV422, /* YU16 */
DRM_FORMAT_YUV444, /* YU24 */
+ DRM_FORMAT_YVU420, /* YV12 */
/* semi-planar formats */
DRM_FORMAT_NV12,
DRM_FORMAT_NV21,
diff --git a/drivers/gpu/drm/tegra/hub.c b/drivers/gpu/drm/tegra/hub.c
index 6427155ac4fdf..f176badfd922b 100644
--- a/drivers/gpu/drm/tegra/hub.c
+++ b/drivers/gpu/drm/tegra/hub.c
@@ -51,6 +51,7 @@ static const u32 tegra_shared_plane_formats[] = {
DRM_FORMAT_YUYV,
DRM_FORMAT_YUV420,
DRM_FORMAT_YUV422,
+ DRM_FORMAT_YVU420,
};
static const u64 tegra_shared_plane_modifiers[] = {
diff --git a/drivers/gpu/drm/tegra/plane.c b/drivers/gpu/drm/tegra/plane.c
index f4feec62ac023..3802afff569ea 100644
--- a/drivers/gpu/drm/tegra/plane.c
+++ b/drivers/gpu/drm/tegra/plane.c
@@ -432,6 +432,14 @@ int tegra_plane_format(u32 fourcc, u32 *format, u32 *swap, bool *swap_uv)
*format = WIN_COLOR_DEPTH_YCbCr420P;
break;
+ case DRM_FORMAT_YVU420:
+ if (!swap_uv)
+ return -EINVAL;
+
+ *format = WIN_COLOR_DEPTH_YCbCr420P;
+ *swap_uv = true;
+ break;
+
case DRM_FORMAT_YUV422:
*format = WIN_COLOR_DEPTH_YCbCr422P;
break;
--
2.54.0