From: Louis Chauvet <louis.chauvet@bootlin.com>
To: "Rodrigo Siqueira" <rodrigosiqueiramelo@gmail.com>,
"Melissa Wen" <melissa.srw@gmail.com>,
"Maíra Canal" <mairacanal@riseup.net>,
"Haneen Mohammed" <hamohammed.sa@gmail.com>,
"Daniel Vetter" <daniel@ffwll.ch>,
"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
"Maxime Ripard" <mripard@kernel.org>,
"Thomas Zimmermann" <tzimmermann@suse.de>,
"David Airlie" <airlied@gmail.com>,
rdunlap@infradead.org, arthurgrillo@riseup.net,
"Jonathan Corbet" <corbet@lwn.net>,
pekka.paalanen@haloniitty.fi
Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org,
jeremie.dautheribes@bootlin.com, miquel.raynal@bootlin.com,
thomas.petazzoni@bootlin.com, seanpaul@google.com,
marcheu@google.com, nicolejadeyee@google.com,
Louis Chauvet <louis.chauvet@bootlin.com>
Subject: [PATCH v6 13/17] drm/vkms: Add range and encoding properties to the plane
Date: Tue, 09 Apr 2024 15:25:31 +0200 [thread overview]
Message-ID: <20240409-yuv-v6-13-de1c5728fd70@bootlin.com> (raw)
In-Reply-To: <20240409-yuv-v6-0-de1c5728fd70@bootlin.com>
From: Arthur Grillo <arthurgrillo@riseup.net>
Now that the driver internally handles these quantization ranges and YUV
encoding matrices, expose the UAPI for setting them.
Signed-off-by: Arthur Grillo <arthurgrillo@riseup.net>
[Louis Chauvet: retained only relevant parts, updated the commit message]
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
---
drivers/gpu/drm/vkms/vkms_formats.c | 2 +-
drivers/gpu/drm/vkms/vkms_plane.c | 9 +++++++++
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/vkms/vkms_formats.c b/drivers/gpu/drm/vkms/vkms_formats.c
index 2d7445a3de93..a294744d29d6 100644
--- a/drivers/gpu/drm/vkms/vkms_formats.c
+++ b/drivers/gpu/drm/vkms/vkms_formats.c
@@ -238,7 +238,7 @@ static struct pixel_argb_u16 argb_u16_from_RGB565(const u16 *pixel)
static struct pixel_argb_u16 argb_u16_from_yuv888(u8 y, u8 channel_1, u8 channel_2,
const struct conversion_matrix *matrix)
{
- u8 r, g, b;
+ u16 r, g, b;
s64 fp_y, fp_channel_1, fp_channel_2;
s64 fp_r, fp_g, fp_b;
diff --git a/drivers/gpu/drm/vkms/vkms_plane.c b/drivers/gpu/drm/vkms/vkms_plane.c
index d4e375913122..8f764a108b00 100644
--- a/drivers/gpu/drm/vkms/vkms_plane.c
+++ b/drivers/gpu/drm/vkms/vkms_plane.c
@@ -218,5 +218,14 @@ struct vkms_plane *vkms_plane_init(struct vkms_device *vkmsdev,
drm_plane_create_rotation_property(&plane->base, DRM_MODE_ROTATE_0,
DRM_MODE_ROTATE_MASK | DRM_MODE_REFLECT_MASK);
+ drm_plane_create_color_properties(&plane->base,
+ BIT(DRM_COLOR_YCBCR_BT601) |
+ BIT(DRM_COLOR_YCBCR_BT709) |
+ BIT(DRM_COLOR_YCBCR_BT2020),
+ BIT(DRM_COLOR_YCBCR_LIMITED_RANGE) |
+ BIT(DRM_COLOR_YCBCR_FULL_RANGE),
+ DRM_COLOR_YCBCR_BT601,
+ DRM_COLOR_YCBCR_FULL_RANGE);
+
return plane;
}
--
2.43.0
next prev parent reply other threads:[~2024-04-09 13:26 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-09 13:25 [PATCH v6 00/17] drm/vkms: Reimplement line-per-line pixel conversion for plane reading Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 01/17] drm/vkms: Code formatting Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 02/17] drm/vkms: Use drm_frame directly Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 03/17] drm/vkms: write/update the documentation for pixel conversion and pixel write functions Louis Chauvet
2024-04-22 10:33 ` Pekka Paalanen
2024-05-13 6:31 ` Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 04/17] drm/vkms: Add typedef and documentation for pixel_read and pixel_write functions Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 05/17] drm/vkms: Add dummy pixel_read/pixel_write callbacks to avoid NULL pointers Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 06/17] drm/vkms: Use const for input pointers in pixel_read an pixel_write functions Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 07/17] drm/vkms: Update pixels accessor to support packed and multi-plane formats Louis Chauvet
2024-04-22 11:07 ` Pekka Paalanen
2024-05-13 7:15 ` Louis Chauvet
2024-05-13 11:14 ` Pekka Paalanen
2024-04-09 13:25 ` [PATCH v6 08/17] drm/vkms: Avoid computing blending limits inside pre_mul_alpha_blend Louis Chauvet
2024-04-22 11:12 ` Pekka Paalanen
2024-04-09 13:25 ` [PATCH v6 09/17] drm/vkms: Introduce pixel_read_direction enum Louis Chauvet
2024-04-22 11:39 ` Pekka Paalanen
2024-05-13 7:15 ` Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 10/17] drm/vkms: Re-introduce line-per-line composition algorithm Louis Chauvet
2024-04-22 12:38 ` Pekka Paalanen
2024-04-09 13:25 ` [PATCH v6 11/17] drm/vkms: Remove useless drm_rotation_simplify Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 12/17] drm/vkms: Add YUV support Louis Chauvet
2024-04-22 14:47 ` Pekka Paalanen
2024-04-09 13:25 ` Louis Chauvet [this message]
2024-04-22 14:49 ` [PATCH v6 13/17] drm/vkms: Add range and encoding properties to the plane Pekka Paalanen
2024-04-09 13:25 ` [PATCH v6 14/17] drm/vkms: Drop YUV formats TODO Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 15/17] drm/vkms: Create KUnit tests for YUV conversions Louis Chauvet
2024-04-23 13:29 ` Pekka Paalanen
2024-04-09 13:25 ` [PATCH v6 16/17] drm/vkms: Add how to run the Kunit tests Louis Chauvet
2024-04-09 13:25 ` [PATCH v6 17/17] drm/vkms: Add support for DRM_FORMAT_R* Louis Chauvet
2024-04-23 14:26 ` Pekka Paalanen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240409-yuv-v6-13-de1c5728fd70@bootlin.com \
--to=louis.chauvet@bootlin.com \
--cc=airlied@gmail.com \
--cc=arthurgrillo@riseup.net \
--cc=corbet@lwn.net \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=hamohammed.sa@gmail.com \
--cc=jeremie.dautheribes@bootlin.com \
--cc=linux-kernel@vger.kernel.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mairacanal@riseup.net \
--cc=marcheu@google.com \
--cc=melissa.srw@gmail.com \
--cc=miquel.raynal@bootlin.com \
--cc=mripard@kernel.org \
--cc=nicolejadeyee@google.com \
--cc=pekka.paalanen@haloniitty.fi \
--cc=rdunlap@infradead.org \
--cc=rodrigosiqueiramelo@gmail.com \
--cc=seanpaul@google.com \
--cc=thomas.petazzoni@bootlin.com \
--cc=tzimmermann@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox