Re: [PATCH v4 0/2] drm/tegra: Support YVU formats
From: Mikko Perttunen
Date: Tue Oct 27 2026 - 21:53:46 EST
On Monday, October 26, 2026 7:34 AM Aaron Kling via B4 Relay wrote:
> This is not directly supported by the display controller hardware.
> However, this can be handled efficiently on tegradc by just passing the
> chroma planes to the hardware backwards and reporting it as the yuv
> equivalent. Nvdisplay has a hardware flag to handle the swap in
> hardware.
>
> YVU420 is required by AOSP for software decoded video playback among
> other things. An attempt was made to handle this in gralloc by swapping
> the chroma planes there, but it wasn't working. This kernel
> implementation is working and is more generic anyways. This has been
> verified on a SHIELD TV 2019 Pro for the tegradc path and a Jetson TX2
> NX for the nvdisplay path.
>
> ---
> Changes in v4:
> - Drop yvu422 from the nvdisplay path. Yuv422 is not supported and will
> be removed separately
> - Link to v3: https://lore.kernel.org/r/20261020-tegra-drm-yvu420-v3-0-7f19a834ba98@xxxxxxxxx
>
> Changes in v3:
> - In patch 1, use the SWAP_UV window group flag instead of manually
> swapping for nvdisplay
> - In patch 2, support the chroma swapped variants of the other yuv types
> - Link to v2: https://lore.kernel.org/r/20261018-tegra-drm-yvu420-v2-0-512889103ab4@xxxxxxxxx
>
> Changes in v2:
> - In patch 1, simplify pre-nvdisplay path to a swap of the window base
> address
> - In patch 1, address sashiko report about failure to copy the new
> struct entry in duplicate_state
> - In patch 2, address sashiko report that yvu420 was missing from
> tegra20_overlays when the targets already support yuv420.
> - Link to v1: https://lore.kernel.org/r/20261008-tegra-drm-yvu420-v1-0-dc1c443c00f3@xxxxxxxxx
>
> ---
> Aaron Kling (2):
> drm/tegra: Support swapping chroma planes
> drm/tegra: Support YVU formats
>
> drivers/gpu/drm/tegra/dc.c | 13 ++++++++++++-
> drivers/gpu/drm/tegra/hub.c | 8 ++++++--
> drivers/gpu/drm/tegra/plane.c | 29 ++++++++++++++++++++++++++++-
> drivers/gpu/drm/tegra/plane.h | 3 ++-
> 4 files changed, 48 insertions(+), 5 deletions(-)
> ---
> base-commit: 20a33c6b6cbe7e4805dfb6cd68816937443aa148
> change-id: 20261008-tegra-drm-yvu420-1dbb7140e54a
>
> Best regards,
> --
> Aaron Kling <webgeek1234@xxxxxxxxx>
Series,
Reviewed-by: Mikko Perttunen <mperttunen@xxxxxxxxxx>
Tested-by: Mikko Perttunen <mperttunen@xxxxxxxxxx> # Jetson AGX Xavier
Thank you!