From: Jani Nikula <jani.nikula@intel.com>
To: Alex Hung <alex.hung@amd.com>, dri-devel@lists.freedesktop.org
Cc: intel-gfx@lists.freedesktop.org, Simon Ser <contact@emersion.fr>,
Harry Wentland <harry.wentland@amd.com>,
Daniel Stone <daniels@collabora.com>,
Melissa Wen <mwen@igalia.com>,
Sebastian Wick <sebastian.wick@redhat.com>
Subject: Re: [PATCH v2] drm/atomic: convert drm_atomic_get_{old,new}_colorop_state() into proper functions
Date: Mon, 22 Dec 2025 16:44:50 +0200 [thread overview]
Message-ID: <39b45d9eefcebc2afd47fd2aee6d5f40b6db03e1@intel.com> (raw)
In-Reply-To: <53746714-c989-4f9a-96a0-f2044705ffb9@amd.com>
On Fri, 19 Dec 2025, Alex Hung <alex.hung@amd.com> wrote:
> Reviewed-by: Alex Hung <alex.hung@amd.com>
Thanks, pushed to drm-misc-next.
BR,
Jani.c
>
> On 12/19/25 04:49, Jani Nikula wrote:
>> 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 <contact@emersion.fr>
>> Cc: Alex Hung <alex.hung@amd.com>
>> Cc: Harry Wentland <harry.wentland@amd.com>
>> Cc: Daniel Stone <daniels@collabora.com>
>> Cc: Melissa Wen <mwen@igalia.com>
>> Cc: Sebastian Wick <sebastian.wick@redhat.com>
>> Cc: Alex Hung <alex.hung@amd.com>
>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>>
>> ---
>>
>> Including the massive Cc list because I don't want to keep doing this
>> afterwards. This stuff needs to be blocked and fixed during review. Just
>> stop including headers from headers. It's a PITA to clean up.
>> ---
>> .../amd/display/amdgpu_dm/amdgpu_dm_color.c | 3 ++
>> drivers/gpu/drm/drm_atomic.c | 32 +++++++++++++++
>> drivers/gpu/drm/drm_atomic_helper.c | 1 +
>> .../drm/i915/display/intel_display_types.h | 1 +
>> drivers/gpu/drm/vkms/vkms_composer.c | 1 +
>> drivers/gpu/drm/vkms/vkms_drv.c | 1 +
>> include/drm/drm_atomic.h | 39 ++++---------------
>> 7 files changed, 47 insertions(+), 31 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c
>> index 1dcc79b35225..20a76d81d532 100644
>> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c
>> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c
>> @@ -23,6 +23,9 @@
>> * Authors: AMD
>> *
>> */
>> +
>> +#include <drm/drm_colorop.h>
>> +
>> #include "amdgpu.h"
>> #include "amdgpu_mode.h"
>> #include "amdgpu_dm.h"
>> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
>> index 6d3ea8056b60..52738b80ddbe 100644
>> --- a/drivers/gpu/drm/drm_atomic.c
>> +++ b/drivers/gpu/drm/drm_atomic.c
>> @@ -641,6 +641,38 @@ drm_atomic_get_colorop_state(struct drm_atomic_state *state,
>> }
>> EXPORT_SYMBOL(drm_atomic_get_colorop_state);
>>
>> +/**
>> + * drm_atomic_get_old_colorop_state - get colorop state, if it exists
>> + * @state: global atomic state object
>> + * @colorop: colorop to grab
>> + *
>> + * This function returns the old colorop state for the given colorop, or
>> + * NULL if the colorop is not part of the global atomic state.
>> + */
>> +struct drm_colorop_state *
>> +drm_atomic_get_old_colorop_state(struct drm_atomic_state *state,
>> + struct drm_colorop *colorop)
>> +{
>> + return state->colorops[drm_colorop_index(colorop)].old_state;
>> +}
>> +EXPORT_SYMBOL(drm_atomic_get_old_colorop_state);
>> +
>> +/**
>> + * drm_atomic_get_new_colorop_state - get colorop state, if it exists
>> + * @state: global atomic state object
>> + * @colorop: colorop to grab
>> + *
>> + * This function returns the new colorop state for the given colorop, or
>> + * NULL if the colorop is not part of the global atomic state.
>> + */
>> +struct drm_colorop_state *
>> +drm_atomic_get_new_colorop_state(struct drm_atomic_state *state,
>> + struct drm_colorop *colorop)
>> +{
>> + return state->colorops[drm_colorop_index(colorop)].new_state;
>> +}
>> +EXPORT_SYMBOL(drm_atomic_get_new_colorop_state);
>> +
>> static bool
>> plane_switching_crtc(const struct drm_plane_state *old_plane_state,
>> const struct drm_plane_state *new_plane_state)
>> diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
>> index 10adac9397cf..5840e9cc6f66 100644
>> --- a/drivers/gpu/drm/drm_atomic_helper.c
>> +++ b/drivers/gpu/drm/drm_atomic_helper.c
>> @@ -34,6 +34,7 @@
>> #include <drm/drm_atomic_uapi.h>
>> #include <drm/drm_blend.h>
>> #include <drm/drm_bridge.h>
>> +#include <drm/drm_colorop.h>
>> #include <drm/drm_damage_helper.h>
>> #include <drm/drm_device.h>
>> #include <drm/drm_drv.h>
>> diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
>> index 6ff53cd58052..eb2e3f1e83c9 100644
>> --- a/drivers/gpu/drm/i915/display/intel_display_types.h
>> +++ b/drivers/gpu/drm/i915/display/intel_display_types.h
>> @@ -34,6 +34,7 @@
>> #include <drm/display/drm_dp_tunnel.h>
>> #include <drm/display/drm_dsc.h>
>> #include <drm/drm_atomic.h>
>> +#include <drm/drm_colorop.h>
>> #include <drm/drm_crtc.h>
>> #include <drm/drm_encoder.h>
>> #include <drm/drm_framebuffer.h>
>> diff --git a/drivers/gpu/drm/vkms/vkms_composer.c b/drivers/gpu/drm/vkms/vkms_composer.c
>> index 3cf3f26e0d8e..cd85de4ffd03 100644
>> --- a/drivers/gpu/drm/vkms/vkms_composer.c
>> +++ b/drivers/gpu/drm/vkms/vkms_composer.c
>> @@ -5,6 +5,7 @@
>> #include <drm/drm_atomic.h>
>> #include <drm/drm_atomic_helper.h>
>> #include <drm/drm_blend.h>
>> +#include <drm/drm_colorop.h>
>> #include <drm/drm_fourcc.h>
>> #include <drm/drm_fixed.h>
>> #include <drm/drm_gem_framebuffer_helper.h>
>> diff --git a/drivers/gpu/drm/vkms/vkms_drv.c b/drivers/gpu/drm/vkms/vkms_drv.c
>> index dd1402f43773..434c295f44ba 100644
>> --- a/drivers/gpu/drm/vkms/vkms_drv.c
>> +++ b/drivers/gpu/drm/vkms/vkms_drv.c
>> @@ -17,6 +17,7 @@
>> #include <drm/drm_gem.h>
>> #include <drm/drm_atomic.h>
>> #include <drm/drm_atomic_helper.h>
>> +#include <drm/drm_colorop.h>
>> #include <drm/drm_drv.h>
>> #include <drm/drm_fbdev_shmem.h>
>> #include <drm/drm_file.h>
>> diff --git a/include/drm/drm_atomic.h b/include/drm/drm_atomic.h
>> index 74ce26fa8838..178f8f62c80f 100644
>> --- a/include/drm/drm_atomic.h
>> +++ b/include/drm/drm_atomic.h
>> @@ -30,7 +30,6 @@
>>
>> #include <drm/drm_crtc.h>
>> #include <drm/drm_util.h>
>> -#include <drm/drm_colorop.h>
>>
>> /**
>> * struct drm_crtc_commit - track modeset commits on a CRTC
>> @@ -712,6 +711,14 @@ drm_atomic_get_plane_state(struct drm_atomic_state *state,
>> struct drm_colorop_state *
>> drm_atomic_get_colorop_state(struct drm_atomic_state *state,
>> struct drm_colorop *colorop);
>> +
>> +struct drm_colorop_state *
>> +drm_atomic_get_old_colorop_state(struct drm_atomic_state *state,
>> + struct drm_colorop *colorop);
>> +struct drm_colorop_state *
>> +drm_atomic_get_new_colorop_state(struct drm_atomic_state *state,
>> + struct drm_colorop *colorop);
>> +
>> struct drm_connector_state * __must_check
>> drm_atomic_get_connector_state(struct drm_atomic_state *state,
>> struct drm_connector *connector);
>> @@ -808,36 +815,6 @@ drm_atomic_get_new_plane_state(const struct drm_atomic_state *state,
>> return state->planes[drm_plane_index(plane)].new_state;
>> }
>>
>> -/**
>> - * drm_atomic_get_old_colorop_state - get colorop state, if it exists
>> - * @state: global atomic state object
>> - * @colorop: colorop to grab
>> - *
>> - * This function returns the old colorop state for the given colorop, or
>> - * NULL if the colorop is not part of the global atomic state.
>> - */
>> -static inline struct drm_colorop_state *
>> -drm_atomic_get_old_colorop_state(struct drm_atomic_state *state,
>> - struct drm_colorop *colorop)
>> -{
>> - return state->colorops[drm_colorop_index(colorop)].old_state;
>> -}
>> -
>> -/**
>> - * drm_atomic_get_new_colorop_state - get colorop state, if it exists
>> - * @state: global atomic state object
>> - * @colorop: colorop to grab
>> - *
>> - * This function returns the new colorop state for the given colorop, or
>> - * NULL if the colorop is not part of the global atomic state.
>> - */
>> -static inline struct drm_colorop_state *
>> -drm_atomic_get_new_colorop_state(struct drm_atomic_state *state,
>> - struct drm_colorop *colorop)
>> -{
>> - return state->colorops[drm_colorop_index(colorop)].new_state;
>> -}
>> -
>> /**
>> * drm_atomic_get_old_connector_state - get connector state, if it exists
>> * @state: global atomic state object
>
--
Jani Nikula, Intel
next prev parent reply other threads:[~2025-12-22 14:44 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-19 11:49 [PATCH v2] drm/atomic: convert drm_atomic_get_{old, new}_colorop_state() into proper functions Jani Nikula
2025-12-19 13:04 ` ✓ i915.CI.BAT: success for drm/atomic: convert drm_atomic_get_{old, new}_colorop_state() into proper functions (rev2) Patchwork
2025-12-19 19:16 ` [PATCH v2] drm/atomic: convert drm_atomic_get_{old,new}_colorop_state() into proper functions Alex Hung
2025-12-22 14:44 ` Jani Nikula [this message]
2025-12-22 18:20 ` ✓ i915.CI.Full: success for drm/atomic: convert drm_atomic_get_{old, new}_colorop_state() into proper functions (rev2) Patchwork
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=39b45d9eefcebc2afd47fd2aee6d5f40b6db03e1@intel.com \
--to=jani.nikula@intel.com \
--cc=alex.hung@amd.com \
--cc=contact@emersion.fr \
--cc=daniels@collabora.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=harry.wentland@amd.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=mwen@igalia.com \
--cc=sebastian.wick@redhat.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.