<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/gpu/drm/vkms, branch v6.19.11</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.19.11</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.19.11'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2026-02-26T23:00:57+00:00</updated>
<entry>
<title>drm/atomic: convert drm_atomic_get_{old, new}_colorop_state() into proper functions</title>
<updated>2026-02-26T23:00:57+00:00</updated>
<author>
<name>Jani Nikula</name>
<email>jani.nikula@intel.com</email>
</author>
<published>2025-12-19T11:49:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0b26c7e819c40fbb5421605dcca8a3d1b41a2f7b'/>
<id>urn:sha1:0b26c7e819c40fbb5421605dcca8a3d1b41a2f7b</id>
<content type='text'>
[ Upstream commit e05b08d7d0162cf77fff119367fb1a2d5ab3e669 ]

There is no real reason to include drm_colorop.h from drm_atomic.h, as
drm_atomic_get_{old,new}_colorop_state() have no real reason to be
static inline.

Convert the static inlines to proper functions, and drop the include to
reduce the include dependencies and improve data hiding.

v2: Fix vkms build failures (Alex)

Fixes: cfc27680ee20 ("drm/colorop: Introduce new drm_colorop mode object")
Cc: Simon Ser &lt;contact@emersion.fr&gt;
Cc: Alex Hung &lt;alex.hung@amd.com&gt;
Cc: Harry Wentland &lt;harry.wentland@amd.com&gt;
Cc: Daniel Stone &lt;daniels@collabora.com&gt;
Cc: Melissa Wen &lt;mwen@igalia.com&gt;
Cc: Sebastian Wick &lt;sebastian.wick@redhat.com&gt;
Cc: Alex Hung &lt;alex.hung@amd.com&gt;
Reviewed-by: Alex Hung &lt;alex.hung@amd.com&gt;
Link: https://patch.msgid.link/20251219114939.1069851-1-jani.nikula@intel.com
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>drm/vkms: Fix color pipeline enum name leak</title>
<updated>2026-01-22T09:26:35+00:00</updated>
<author>
<name>Chaitanya Kumar Borah</name>
<email>chaitanya.kumar.borah@intel.com</email>
</author>
<published>2026-01-13T10:22:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=cce30b8311e8a342f97cee60a72c2d921605adbd'/>
<id>urn:sha1:cce30b8311e8a342f97cee60a72c2d921605adbd</id>
<content type='text'>
vkms_initialize_colorops() allocates enum names for color pipelines,
which are copied by drm_property_create_enum(). The temporary strings
were not freed, resulting in a memory leak.

Allocate enum names only after successful pipeline construction and
free them on all exit paths

Fixes: c1e578bd08da ("drm/vkms: Add enumerated 1D curve colorop")
Signed-off-by: Chaitanya Kumar Borah &lt;chaitanya.kumar.borah@intel.com&gt;
Reviewed-by: Uma Shankar &lt;uma.shankar@intel.com&gt;
Reviewed-by: Alex Hung &lt;alex.hung@amd.com&gt;
Reviewed-by: Louis Chauvet &lt;louis.chauvet@bootlin.com&gt;
Signed-off-by: Maarten Lankhorst &lt;dev@lankhorst.se&gt;
Link: https://patch.msgid.link/20260113102303.724205-4-chaitanya.kumar.borah@intel.com
</content>
</entry>
<entry>
<title>drm/colorop: allow non-bypass colorops</title>
<updated>2025-11-26T22:09:17+00:00</updated>
<author>
<name>Harry Wentland</name>
<email>harry.wentland@amd.com</email>
</author>
<published>2025-11-15T00:02:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=2468963482d844f0657a52f791f15ceb953e5880'/>
<id>urn:sha1:2468963482d844f0657a52f791f15ceb953e5880</id>
<content type='text'>
Not all HW will be able to do bypass on all color
operations. Introduce an 32 bits 'flags' for all colorop
init functions and DRM_COLOROP_FLAG_ALLOW_BYPASS for creating
the BYPASS property when it's true.

Signed-off-by: Alex Hung &lt;alex.hung@amd.com&gt;
Signed-off-by: Harry Wentland &lt;harry.wentland@amd.com&gt;
Reviewed-by: Daniel Stone &lt;daniels@collabora.com&gt;
Reviewed-by: Simon Ser &lt;contact@emersion.fr&gt;
Reviewed-by: Melissa Wen &lt;mwen@igalia.com&gt;
Reviewed-by: Sebastian Wick &lt;sebastian.wick@redhat.com&gt;
Signed-off-by: Simon Ser &lt;contact@emersion.fr&gt;
Link: https://patch.msgid.link/20251115000237.3561250-45-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/vkms: Add tests for CTM handling</title>
<updated>2025-11-26T22:03:33+00:00</updated>
<author>
<name>Harry Wentland</name>
<email>harry.wentland@amd.com</email>
</author>
<published>2025-11-15T00:01:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f03bf05c2061e66fe156d5cf80765bd863dcb122'/>
<id>urn:sha1:f03bf05c2061e66fe156d5cf80765bd863dcb122</id>
<content type='text'>
A whole slew of tests for CTM handling that greatly helped in
debugging the CTM code. The extent of tests might seem a bit
silly but they're fast and might someday help save someone
else's day when debugging this.

Reviewed-by: Louis Chauvet &lt;louis.chauvet@bootlin.com&gt;
Signed-off-by: Alex Hung &lt;alex.hung@amd.com&gt;
Signed-off-by: Harry Wentland &lt;harry.wentland@amd.com&gt;
Reviewed-by: Daniel Stone &lt;daniels@collabora.com&gt;
Signed-off-by: Simon Ser &lt;contact@emersion.fr&gt;
Link: https://patch.msgid.link/20251115000237.3561250-23-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/vkms: add 3x4 matrix in color pipeline</title>
<updated>2025-11-26T22:03:33+00:00</updated>
<author>
<name>Harry Wentland</name>
<email>harry.wentland@amd.com</email>
</author>
<published>2025-11-15T00:01:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ea3f6baf3196c35b1a26dfd96f0578bb15ed07c1'/>
<id>urn:sha1:ea3f6baf3196c35b1a26dfd96f0578bb15ed07c1</id>
<content type='text'>
We add two 3x4 matrices into the VKMS color pipeline. The reason
we're adding matrices is so that we can test that application
of a matrix and its inverse yields an output equal to the input
image.

One complication with the matrix implementation has to do with
the fact that the matrix entries are in signed-magnitude fixed
point, whereas the drm_fixed.h implementation uses 2s-complement.
The latter one is the one that we want for easy addition and
subtraction, so we convert all entries to 2s-complement.

Reviewed-by: Louis Chauvet &lt;louis.chauvet@bootlin.com&gt;
Signed-off-by: Alex Hung &lt;alex.hung@amd.com&gt;
Signed-off-by: Harry Wentland &lt;harry.wentland@amd.com&gt;
Reviewed-by: Daniel Stone &lt;daniels@collabora.com&gt;
Signed-off-by: Simon Ser &lt;contact@emersion.fr&gt;
Link: https://patch.msgid.link/20251115000237.3561250-21-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/vkms: Use s32 for internal color pipeline precision</title>
<updated>2025-11-26T22:03:33+00:00</updated>
<author>
<name>Harry Wentland</name>
<email>harry.wentland@amd.com</email>
</author>
<published>2025-11-15T00:01:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=bff4d3cd3c9fcdd75a3d7fa0907de05526f74cf6'/>
<id>urn:sha1:bff4d3cd3c9fcdd75a3d7fa0907de05526f74cf6</id>
<content type='text'>
Certain operations require us to preserve values below 0.0 and
above 1.0 (0x0 and 0xffff respectively in 16 bpc unorm). One
such operation is a BT709 encoding operation followed by its
decoding operation, or the reverse.

We'll use s32 values as intermediate in and outputs of our
color operations, for the operations where it matters.

For now this won't apply to LUT operations. We might want to
update those to work on s32 as well, but it's unclear how
that should work for unorm LUT definitions. We'll revisit
that once we add LUT + CTM tests.

Reviewed-by: Louis Chauvet &lt;louis.chauvet@bootlin.com&gt;
Signed-off-by: Alex Hung &lt;alex.hung@amd.com&gt;
Signed-off-by: Harry Wentland &lt;harry.wentland@amd.com&gt;
Reviewed-by: Daniel Stone &lt;daniels@collabora.com&gt;
Signed-off-by: Simon Ser &lt;contact@emersion.fr&gt;
Link: https://patch.msgid.link/20251115000237.3561250-20-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/vkms: Add kunit tests for linear and sRGB LUTs</title>
<updated>2025-11-26T22:03:33+00:00</updated>
<author>
<name>Harry Wentland</name>
<email>harry.wentland@amd.com</email>
</author>
<published>2025-11-15T00:01:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=cb500b4c2459a10cec21e0eda841c46bf1fd7a8a'/>
<id>urn:sha1:cb500b4c2459a10cec21e0eda841c46bf1fd7a8a</id>
<content type='text'>
Two tests are added to VKMS LUT handling:
- linear
- inv_srgb

Reviewed-by: Louis Chauvet &lt;louis.chauvet@bootlin.com&gt;
Signed-off-by: Alex Hung &lt;alex.hung@amd.com&gt;
Signed-off-by: Harry Wentland &lt;harry.wentland@amd.com&gt;
Reviewed-by: Daniel Stone &lt;daniels@collabora.com&gt;
Signed-off-by: Simon Ser &lt;contact@emersion.fr&gt;
Link: https://patch.msgid.link/20251115000237.3561250-18-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/vkms: Add config for default plane pipeline</title>
<updated>2025-11-26T22:03:33+00:00</updated>
<author>
<name>Louis Chauvet</name>
<email>louis.chauvet@bootlin.com</email>
</author>
<published>2025-11-15T00:01:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=9b5c7e8b452398ee29dd42b21df73fa71dfc648e'/>
<id>urn:sha1:9b5c7e8b452398ee29dd42b21df73fa71dfc648e</id>
<content type='text'>
With the introduction of color pipeline in VKMS, the default device may
have planes with color pipelines. To avoid breaking existing uAPI,
create a kernel argument to disable them by default and a vkms_config
field to configure the plane.

This field is not definitive and will be replaced once the uAPI will be
able to configure color pipelines. For now devices created with ConfigFS
will not have any color pipeline so we can decide later how the uAPI
will look like.

Reviewed-by: Alex Hung &lt;alex.hung@amd.com&gt;
Signed-off-by: Louis Chauvet &lt;louis.chauvet@bootlin.com&gt;
Signed-off-by: Simon Ser &lt;contact@emersion.fr&gt;
Link: https://patch.msgid.link/20251115000237.3561250-17-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/vkms: Add enumerated 1D curve colorop</title>
<updated>2025-11-26T22:03:33+00:00</updated>
<author>
<name>Harry Wentland</name>
<email>harry.wentland@amd.com</email>
</author>
<published>2025-11-15T00:01:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c1e578bd08da79f3bd877faa82e9197ccd3ecd57'/>
<id>urn:sha1:c1e578bd08da79f3bd877faa82e9197ccd3ecd57</id>
<content type='text'>
This patch introduces a VKMS color pipeline that includes two
drm_colorops for named transfer functions. For now the only ones
supported are sRGB EOTF, sRGB Inverse EOTF, and a Linear TF.
We will expand this in the future but I don't want to do so
without accompanying IGT tests.

We introduce a new vkms_luts.c file that hard-codes sRGB EOTF,
sRGB Inverse EOTF, and a linear EOTF LUT. These have been
generated with 256 entries each as IGT is currently testing
only 8 bpc surfaces. We will likely need higher precision
but I'm reluctant to make that change without clear indication
that we need it. We'll revisit and, if necessary, regenerate
the LUTs when we have IGT tests for higher precision buffers.

Signed-off-by: Harry Wentland &lt;harry.wentland@amd.com&gt;
Signed-off-by: Alex Hung &lt;alex.hung@amd.com&gt;
Reviewed-by: Daniel Stone &lt;daniels@collabora.com&gt;
Reviewed-by: Louis Chauvet &lt;louis.chauvet@bootlin.com&gt;
Signed-off-by: Simon Ser &lt;contact@emersion.fr&gt;
Link: https://patch.msgid.link/20251115000237.3561250-16-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/vkms: Pass plane_cfg to plane initialization</title>
<updated>2025-11-26T22:03:32+00:00</updated>
<author>
<name>Louis Chauvet</name>
<email>louis.chauvet@bootlin.com</email>
</author>
<published>2025-11-15T00:01:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=08b651cad289a789256167a96fe637ab08e0955c'/>
<id>urn:sha1:08b651cad289a789256167a96fe637ab08e0955c</id>
<content type='text'>
As plane can have many parameters, directly pass the plane
configuration to the init function.

Reviewed-by: Alex Hung &lt;alex.hung@amd.com&gt;
Signed-off-by: Louis Chauvet &lt;louis.chauvet@bootlin.com&gt;
Signed-off-by: Simon Ser &lt;contact@emersion.fr&gt;
Link: https://patch.msgid.link/20251115000237.3561250-15-alex.hung@amd.com
</content>
</entry>
</feed>
