<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/include/uapi/drm/drm_mode.h, 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>2025-11-26T22:09:42+00:00</updated>
<entry>
<title>drm/colorop: Add 3D LUT support to color pipeline</title>
<updated>2025-11-26T22:09:42+00:00</updated>
<author>
<name>Alex Hung</name>
<email>alex.hung@amd.com</email>
</author>
<published>2025-11-15T00:02:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=db971856bbe0263d0ba78d641ea66d4fcdfc8fc3'/>
<id>urn:sha1:db971856bbe0263d0ba78d641ea66d4fcdfc8fc3</id>
<content type='text'>
It is to be used to enable HDR by allowing userpace to create and pass
3D LUTs to kernel and hardware.

new drm_colorop_type: DRM_COLOROP_3D_LUT.

Reviewed-by: Simon Ser &lt;contact@emersion.fr&gt;
Signed-off-by: Alex Hung &lt;alex.hung@amd.com&gt;
Reviewed-by: Daniel Stone &lt;daniels@collabora.com&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-46-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/colorop: Define LUT_1D interpolation</title>
<updated>2025-11-26T22:09:14+00:00</updated>
<author>
<name>Harry Wentland</name>
<email>harry.wentland@amd.com</email>
</author>
<published>2025-11-15T00:02:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=7fa3ee8c0a79b7a8b5fae422ca29da2fde6821ba'/>
<id>urn:sha1:7fa3ee8c0a79b7a8b5fae422ca29da2fde6821ba</id>
<content type='text'>
We want to make sure userspace is aware of the 1D LUT
interpolation. While linear interpolation is common it
might not be supported on all HW. Give driver implementers
a way to specify their interpolation.

Reviewed-by: Simon Ser &lt;contact@emersion.fr&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;
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-44-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/colorop: Add multiplier type</title>
<updated>2025-11-26T22:03:35+00:00</updated>
<author>
<name>Alex Hung</name>
<email>alex.hung@amd.com</email>
</author>
<published>2025-11-15T00:02:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3410108037d5b01fb35d2e4e92c17c3abdf89186'/>
<id>urn:sha1:3410108037d5b01fb35d2e4e92c17c3abdf89186</id>
<content type='text'>
This introduces a new drm_colorop_type: DRM_COLOROP_MULTIPLIER.

It's a simple multiplier to all pixel values. The value is
specified via a S31.32 fixed point provided via the
"MULTIPLIER" property.

Reviewed-by: Simon Ser &lt;contact@emersion.fr&gt;
Signed-off-by: Alex Hung &lt;alex.hung@amd.com&gt;
Reviewed-by: Daniel Stone &lt;daniels@collabora.com&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-41-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/colorop: Add 1D Curve Custom LUT type</title>
<updated>2025-11-26T22:03:35+00:00</updated>
<author>
<name>Alex Hung</name>
<email>alex.hung@amd.com</email>
</author>
<published>2025-11-15T00:02:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=99a4e4f08abe253a7812e4872882a75cecd87703'/>
<id>urn:sha1:99a4e4f08abe253a7812e4872882a75cecd87703</id>
<content type='text'>
We've previously introduced DRM_COLOROP_1D_CURVE for
pre-defined 1D curves. But we also have HW that supports
custom curves and userspace needs the ability to pass
custom curves, aka LUTs.

This patch introduces a new colorop type, called
DRM_COLOROP_1D_LUT that provides a SIZE property which
is used by a driver to advertise the supported SIZE
of the LUT, as well as a DATA property which userspace
uses to set the LUT.

DATA and size function in the same way as current drm_crtc
GAMMA and DEGAMMA LUTs.

Reviewed-by: Simon Ser &lt;contact@emersion.fr&gt;
Signed-off-by: Alex Hung &lt;alex.hung@amd.com&gt;
Co-developed-by: Harry Wentland &lt;harry.wentland@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-38-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm: Add Enhanced LUT precision structure</title>
<updated>2025-11-26T22:03:35+00:00</updated>
<author>
<name>Uma Shankar</name>
<email>uma.shankar@intel.com</email>
</author>
<published>2025-11-15T00:02:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=621c45ca12ed9bd5a8ef434925fe51c319c6e28d'/>
<id>urn:sha1:621c45ca12ed9bd5a8ef434925fe51c319c6e28d</id>
<content type='text'>
Existing LUT precision structure drm_color_lut has only 16 bit
precision. This is not enough for upcoming enhanced hardwares
and advance usecases like HDR processing. Hence added a new
structure with 32 bit precision values.

Signed-off-by: Alex Hung &lt;alex.hung@amd.com&gt;
Signed-off-by: Uma Shankar &lt;uma.shankar@intel.com&gt;
Signed-off-by: Chaitanya Kumar Borah &lt;chaitanya.kumar.borah@intel.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-36-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/colorop: Add 3x4 CTM type</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:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e5719e7f19009d4fbedf685fc22eec9cd8de154f'/>
<id>urn:sha1:e5719e7f19009d4fbedf685fc22eec9cd8de154f</id>
<content type='text'>
This type is used to support a 3x4 matrix in colorops. A 3x4
matrix uses the last column as a "bias" column. Some HW exposes
support for 3x4. The calculation looks like:

 out   matrix    in
 |R|   |0  1  2  3 |   | R |
 |G| = |4  5  6  7 | x | G |
 |B|   |8  9  10 11|   | B |
                       |1.0|

This is also the first colorop where we need a blob property to
program the property. For that we'll introduce a new DATA
property that can be used by all colorop TYPEs requiring a
blob. The way a DATA blob is read depends on the TYPE of
the colorop.

We only create the DATA property for property types that
need it.

Reviewed-by: Simon Ser &lt;contact@emersion.fr&gt;
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;
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-19-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/colorop: Add TYPE property</title>
<updated>2025-11-26T22:03:31+00:00</updated>
<author>
<name>Harry Wentland</name>
<email>harry.wentland@amd.com</email>
</author>
<published>2025-11-15T00:01:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=84423e561208054f872b3ca66e3e99a10d06c0ac'/>
<id>urn:sha1:84423e561208054f872b3ca66e3e99a10d06c0ac</id>
<content type='text'>
Add a read-only TYPE property. The TYPE specifies the colorop
type, such as enumerated curve, 1D LUT, CTM, 3D LUT, PWL LUT,
etc.

For now we're only introducing an enumerated 1D LUT type to
illustrate the concept.

Reviewed-by: Simon Ser &lt;contact@emersion.fr&gt;
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;
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-6-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/colorop: Introduce new drm_colorop mode object</title>
<updated>2025-11-26T22:03:30+00:00</updated>
<author>
<name>Harry Wentland</name>
<email>harry.wentland@amd.com</email>
</author>
<published>2025-11-15T00:01:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=cfc27680ee208cdf7a61cda817b4158c4142595f'/>
<id>urn:sha1:cfc27680ee208cdf7a61cda817b4158c4142595f</id>
<content type='text'>
This patches introduces a new drm_colorop mode object. This
object represents color transformations and can be used to
define color pipelines.

We also introduce the drm_colorop_state here, as well as
various helpers and state tracking bits.

Reviewed-by: Simon Ser &lt;contact@emersion.fr&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;
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-5-alex.hung@amd.com
</content>
</entry>
<entry>
<title>drm/dumb-buffers: Provide helper to set pitch and size</title>
<updated>2025-09-29T11:57:43+00:00</updated>
<author>
<name>Thomas Zimmermann</name>
<email>tzimmermann@suse.de</email>
</author>
<published>2025-08-21T08:17:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=fb24aaf5415cc686fb0473eb782a7c8a7bab0469'/>
<id>urn:sha1:fb24aaf5415cc686fb0473eb782a7c8a7bab0469</id>
<content type='text'>
Add drm_modes_size_dumb(), a helper to calculate the dumb-buffer
scanline pitch and allocation size. Implementations of struct
drm_driver.dumb_create can call the new helper for their size
computations.

There is currently quite a bit of code duplication among DRM's
memory managers. Each calculates scanline pitch and buffer size
from the given arguments, but the implementations are inconsistent
in how they treat alignment and format support. Later patches will
unify this code on top of drm_mode_size_dumb() as much as possible.

drm_mode_size_dumb() uses existing 4CC format helpers to interpret
the given color mode. This makes the dumb-buffer interface behave
similar the kernel's video= parameter. Current per-driver implementations
again likely have subtle differences or bugs in how they support color
modes.

The dumb-buffer UAPI is only specified for known color modes. These
values describe linear, single-plane RGB color formats or legacy index
formats. Other values should not be specified. But some user space
still does. So for unknown color modes, there are a number of known
exceptions for which drm_mode_size_dumb() calculates the pitch from
the bpp value, as before. All other values work the same but print
an error.

v6:
- document additional use cases for DUMB_CREATE2 in TODO list (Tomi)
- fix typos in documentation (Tomi)
v5:
- check for overflows with check_mul_overflow() (Tomi)
v4:
- use %u conversion specifier (Geert)
- list DRM_FORMAT_Dn in UAPI docs (Geert)
- avoid dmesg spamming with drm_warn_once() (Sima)
- add more information about bpp special case (Sima)
- clarify parameters for hardware alignment
- add a TODO item for DUMB_CREATE2
v3:
- document the UAPI semantics
- compute scanline pitch from for unknown color modes (Andy, Tomi)

Signed-off-by: Thomas Zimmermann &lt;tzimmermann@suse.de&gt;
Reviewed-by: Tomi Valkeinen &lt;tomi.valkeinen@ideasonboard.com&gt;
Reviewed-by: Tomi Valkeinen &lt;tomi.valkeinen@ideasonboard.com&gt;
Link: https://lore.kernel.org/r/20250821081918.79786-3-tzimmermann@suse.de
</content>
</entry>
<entry>
<title>drm: document DRM_MODE_PAGE_FLIP_EVENT interactions with atomic</title>
<updated>2025-07-17T16:35:28+00:00</updated>
<author>
<name>Simon Ser</name>
<email>contact@emersion.fr</email>
</author>
<published>2025-05-01T11:29:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b9a572f471993d3e8bf874fcb57f331d66650440'/>
<id>urn:sha1:b9a572f471993d3e8bf874fcb57f331d66650440</id>
<content type='text'>
It's not obvious off-hand which CRTCs will get a page-flip event
when using this flag in an atomic commit, because it's all
implicitly implied based on the contents of the atomic commit.
Document requirements for using this flag and how to request an
event for a CRTC.

Note, because prepare_signaling() runs right after
drm_atomic_set_property() calls, page-flip events are not delivered
for CRTCs pulled in later by DRM core (e.g. on modeset by
drm_atomic_helper_check_modeset()) or the driver (e.g. other CRTCs
sharing a DP-MST connector).

v2: fix cut off sentence in commit message (Pekka)

Signed-off-by: Simon Ser &lt;contact@emersion.fr&gt;
Reviewed-by: Simona Vetter &lt;simona@ffwll.ch&gt;
Cc: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Cc: Pekka Paalanen &lt;pekka.paalanen@collabora.com&gt;
Cc: David Turner &lt;david.turner@raspberrypi.com&gt;
Cc: Daniel Stone &lt;daniel@fooishbar.org&gt;
Link: https://lore.kernel.org/r/20250501112945.6448-1-contact@emersion.fr
</content>
</entry>
</feed>
