linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 0/8] drm/vkms: Add support for multiple plane formats
@ 2025-06-27  9:12 Louis Chauvet
  2025-06-27  9:12 ` [PATCH v5 1/8] drm/vkms: Create helpers macro to avoid code duplication in format callbacks Louis Chauvet
                   ` (7 more replies)
  0 siblings, 8 replies; 13+ messages in thread
From: Louis Chauvet @ 2025-06-27  9:12 UTC (permalink / raw)
  To: Melissa Wen, Maíra Canal, Haneen Mohammed, Maarten Lankhorst,
	Maxime Ripard, Thomas Zimmermann, David Airlie, Simona Vetter,
	Rodrigo Siqueira, Simona Vetter
  Cc: dri-devel, arthurgrillo, linux-kernel, jeremie.dautheribes,
	miquel.raynal, thomas.petazzoni, seanpaul, nicolejadeyee,
	Louis Chauvet, Maíra Canal

This series introduce a macro to generate a function to read simple
formats. It avoid duplication of the same logic for similar formats.

In addition, it also introduce multiple "easy" formats (rgb888 variants)
and also 16 bits yuv support (P01* formats).

PATCH 1 is the introduction of the macro and adaptation of the existing
code to avoid duplication
PATCH 2-5 introduce new formats with the help of this macro.
PATCH 6 adds support for 16-bit yuv formats
PATCH 7 introduces a macro to reduce code duplication between yuv formats
PATCH 8 adds support for P01* formats

I tested the implementation using kms_plane.

Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
---
Changes in v5:
- Avoid code duplication in RGB565 and BRG565 readline functions
- Properly rename yuv_u8 to yuv_u16
- Fix useless indentatin
- Remove untested formats
- Link to v4: https://lore.kernel.org/r/20250530-b4-new-color-formats-v4-0-ef5f9f48376c@bootlin.com

Changes in v4:
- Update tests to test yuv 16 bits conversions, not only 8 bits
- Link to v3: https://lore.kernel.org/r/20241122-b4-new-color-formats-v3-0-23f7776197c9@bootlin.com

Changes in v3:
- Rebased on new YUV iterations
- Link to v2: https://lore.kernel.org/r/20241007-b4-new-color-formats-v2-0-d47da50d4674@bootlin.com

Changes in v2:
- Add proper casting/type to __le16 when needed to avoid warnings with
  sparse
- Change the function argb_u16_from_yuv8888 to argb_u16_from_yuv161616 to
  support 16 bits values.
- Add support for P010/P012/P016 format
- Link to v1: https://lore.kernel.org/r/20240516-b4-new-color-formats-v1-0-74cf9fe07317@bootlin.com

---
Louis Chauvet (8):
      drm/vkms: Create helpers macro to avoid code duplication in format callbacks
      drm/vkms: Add support for ARGB8888 formats
      drm/vkms: Add support for ARGB16161616 formats
      drm/vkms: Add support for RGB565 formats
      drm/vkms: Add support for RGB888 formats
      drm/vkms: Change YUV helpers to support u16 inputs for conversion
      drm/vkms: Create helper macro for YUV formats
      drm/vkms: Add P01* formats

 drivers/gpu/drm/vkms/tests/vkms_format_test.c | 139 +++++------
 drivers/gpu/drm/vkms/vkms_formats.c           | 325 +++++++++++++-------------
 drivers/gpu/drm/vkms/vkms_formats.h           |   4 +-
 drivers/gpu/drm/vkms/vkms_plane.c             |  13 +-
 4 files changed, 244 insertions(+), 237 deletions(-)
---
base-commit: bb8aa27eff6f3376242da37c2d02b9dcc66934b1
change-id: 20240312-b4-new-color-formats-1be9d688b21a

Best regards,
-- 
Louis Chauvet <louis.chauvet@bootlin.com>


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2025-06-27 13:38 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-27  9:12 [PATCH v5 0/8] drm/vkms: Add support for multiple plane formats Louis Chauvet
2025-06-27  9:12 ` [PATCH v5 1/8] drm/vkms: Create helpers macro to avoid code duplication in format callbacks Louis Chauvet
2025-06-27  9:12 ` [PATCH v5 2/8] drm/vkms: Add support for ARGB8888 formats Louis Chauvet
2025-06-27 13:17   ` Maíra Canal
2025-06-27 13:21     ` Louis Chauvet
2025-06-27  9:12 ` [PATCH v5 3/8] drm/vkms: Add support for ARGB16161616 formats Louis Chauvet
2025-06-27  9:12 ` [PATCH v5 4/8] drm/vkms: Add support for RGB565 formats Louis Chauvet
2025-06-27  9:12 ` [PATCH v5 5/8] drm/vkms: Add support for RGB888 formats Louis Chauvet
2025-06-27  9:12 ` [PATCH v5 6/8] drm/vkms: Change YUV helpers to support u16 inputs for conversion Louis Chauvet
2025-06-27 13:38   ` Maíra Canal
2025-06-27  9:12 ` [PATCH v5 7/8] drm/vkms: Create helper macro for YUV formats Louis Chauvet
2025-06-27  9:12 ` [PATCH v5 8/8] drm/vkms: Add P01* formats Louis Chauvet
2025-06-27 13:21   ` Maíra Canal

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).