On 04/29, Alex Hung wrote:
> Create a new macro for_each_new_colorop_in_state to access new
> drm_colorop_state updated from uapi.
> 
> Reviewed-by: Simon Ser <cont...@emersion.fr>
> Signed-off-by: Alex Hung <alex.h...@amd.com>
> Reviewed-by: Daniel Stone <dani...@collabora.com>
> ---
>  include/drm/drm_atomic.h | 20 ++++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/include/drm/drm_atomic.h b/include/drm/drm_atomic.h
> index 4a30ed8ab1a8..4b3bd459a1eb 100644
> --- a/include/drm/drm_atomic.h
> +++ b/include/drm/drm_atomic.h
> @@ -1069,6 +1069,26 @@ void drm_state_dump(struct drm_device *dev, struct 
> drm_printer *p);
>                             (new_colorop_state) = 
> (__state)->colorops[__i].new_state, 1))
>  
>  
> +/**
> + * for_each_new_colorop_in_state - iterate over all colorops in an atomic 
> update
> + * @__state: &struct drm_atomic_state pointer
> + * @colorop: &struct drm_colorop iteration cursor
> + * @new_colorop_state: &struct drm_colorop_state iteration cursor for the 
> new state
> + * @__i: int iteration cursor, for macro-internal use
> + *
> + * This iterates over all colorops in an atomic update, tracking new state. 
> This is
> + * useful is useful in places where the state delta needs to be considered, 
> for

nit: "is useful" duplication

> + * example in atomic check functions.
> + */
> +#define for_each_new_colorop_in_state(__state, colorop, new_colorop_state, 
> __i) \
> +     for ((__i) = 0;                                                 \
> +          (__i) < (__state)->dev->mode_config.num_colorop;   \
> +          (__i)++)                                                   \
> +             for_each_if ((__state)->colorops[__i].ptr &&            \
> +                          ((colorop) = (__state)->colorops[__i].ptr, \
> +                           (void)(colorop) /* Only to avoid 
> unused-but-set-variable warning */, \
> +                           (new_colorop_state) = 
> (__state)->colorops[__i].new_state, 1))
> +
>  /**
>   * for_each_oldnew_plane_in_state - iterate over all planes in an atomic 
> update
>   * @__state: &struct drm_atomic_state pointer
> -- 
> 2.43.0
> 

Reply via email to