On Wed, Apr 03, 2024 at 04:52:41PM +0530, Balasubramani Vivekanandan wrote:
> From: Lucas De Marchi <[email protected]>
> 
> Add initial display info for xe2hpd. It is similar to xelpd, but with no
> PORT_B.
> 
> Bspec: 67066
> Signed-off-by: Lucas De Marchi <[email protected]>
> Signed-off-by: Balasubramani Vivekanandan 
> <[email protected]>
> ---
>  .../gpu/drm/i915/display/intel_display_device.c  | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display_device.c 
> b/drivers/gpu/drm/i915/display/intel_display_device.c
> index b8903bd0e82a..0a26012041e9 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_device.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_device.c
> @@ -771,6 +771,21 @@ static const struct intel_display_device_info 
> xe2_lpd_display = {
>               BIT(INTEL_FBC_C) | BIT(INTEL_FBC_D),
>  };
>  
> +static const struct intel_display_device_info xe2_hpd_display = {
> +     XE_LPD_FEATURES,

Don't we want to derive from XE_LPDP_FEATURES rather than
XE_LPD_FEATURES?  If so, that takes care of initializing most of this
structure, aside from port_mask.

> +     .has_cdclk_crawl = 1,
> +     .has_cdclk_squash = 1,
> +
> +     .__runtime_defaults.ip.ver = 14,
> +     .__runtime_defaults.ip.rel = 1,

We're not supposed to have version numbers in these structures for
platforms that have GMD_ID (there might not even be just one version
number associated with the IP).  The gmdid_display_map[] is the only
place where we need to map one or more version numbers to an info
structure.


Matt

> +     .__runtime_defaults.fbc_mask = BIT(INTEL_FBC_A) | BIT(INTEL_FBC_B),
> +     .__runtime_defaults.cpu_transcoder_mask =
> +             BIT(TRANSCODER_A) | BIT(TRANSCODER_B) |
> +             BIT(TRANSCODER_C) | BIT(TRANSCODER_D),
> +     .__runtime_defaults.port_mask = BIT(PORT_A) |
> +             BIT(PORT_TC1) | BIT(PORT_TC2) | BIT(PORT_TC3) | BIT(PORT_TC4),
> +};
> +
>  __diag_pop();
>  
>  /*
> @@ -852,6 +867,7 @@ static const struct {
>       const struct intel_display_device_info *display;
>  } gmdid_display_map[] = {
>       { 14,  0, &xe_lpdp_display },
> +     { 14,  1, &xe2_hpd_display },
>       { 20,  0, &xe2_lpd_display },
>  };
>  
> -- 
> 2.25.1
> 

-- 
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation

Reply via email to