[PATCH 2/2] drm/i915/display: Make POWER_DOMAIN_*() always result in enum intel_display_power_domain

Jani Nikula jani.nikula at linux.intel.com
Wed Feb 12 17:11:29 UTC 2025


On Wed, 12 Feb 2025, Gustavo Sousa <gustavo.sousa at intel.com> wrote:
> In the hope of contributing to type safety in our code, let's ensure
> that the type returned by the POWER_DOMAIN_*() macros is always of type
> enum intel_display_power_domain.
>
> Signed-off-by: Gustavo Sousa <gustavo.sousa at intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_display_power.h | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display_power.h b/drivers/gpu/drm/i915/display/intel_display_power.h
> index 3caa3f517a32..ab4c9a1e7e02 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_power.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_power.h
> @@ -117,12 +117,13 @@ enum intel_display_power_domain {
>  	POWER_DOMAIN_INVALID = POWER_DOMAIN_NUM,
>  };
>  
> -#define POWER_DOMAIN_PIPE(pipe) ((int)(pipe) + POWER_DOMAIN_PIPE_A)
> +#define POWER_DOMAIN_PIPE(pipe) \
> +	((enum intel_display_power_domain)((int)(pipe) +  1 + POWER_DOMAIN_PIPE_A))
                                                        ^^^^^^^

What's with the +1?


>  #define POWER_DOMAIN_PIPE_PANEL_FITTER(pipe) \
> -		((int)(pipe) + POWER_DOMAIN_PIPE_PANEL_FITTER_A)
> +	((enum intel_display_power_domain)((int)(pipe) + POWER_DOMAIN_PIPE_PANEL_FITTER_A))
>  #define POWER_DOMAIN_TRANSCODER(tran) \
>  	((tran) == TRANSCODER_EDP ? POWER_DOMAIN_TRANSCODER_EDP : \
> -	 (int)(tran) + POWER_DOMAIN_TRANSCODER_A)
> +	 (enum intel_display_power_domain)((int)(tran) + POWER_DOMAIN_TRANSCODER_A))
>  
>  struct intel_power_domain_mask {
>  	DECLARE_BITMAP(bits, POWER_DOMAIN_NUM);

-- 
Jani Nikula, Intel


More information about the Intel-xe mailing list