[PATCH 2/6] drm/xe/xe3: Define Xe3 feature flags

Matt Roper matthew.d.roper at intel.com
Fri Oct 4 22:40:03 UTC 2024


On Fri, Oct 04, 2024 at 03:05:46PM -0700, Matt Atwood wrote:
> From: Haridhar Kalvala <haridhar.kalvala at intel.com>
> 
> Define a common set of Xe3 feature flags and definitions that will be
> used for all platforms in this family.
> 
> The feature flags are inherited unchanged from the Xe2 (XE2_FEATURES)
> platform.
> 
> Following B-spec details inherited from Xe2 feature flag definition
> commit.
> 
> Bspec: 58695
>  - dma_mask_size remains 46   (not documented in bspec)
>  - supports_usm=1             (Bspec 59651)
>  - has_flatccs=1              (Bspec 58797)
>  - has_4tile=1                (Bspec 58788)
>  - has_asid=1                 (Bspec 59654, 59265, 60288)
>  - has_range_tlb_invalidate=1 (Bspec 71126)
>  - five-level page table      (Bspec 59505)
>  - 1 VD + 1 VE + 1 SFC        (Bspec 67103, 70819)
>  - platform engine mask       (Bspec 60149)
> 
> Cc: Matt Roper <matthew.d.roper at intel.com>
> Signed-off-by: Haridhar Kalvala <haridhar.kalvala at intel.com>
> Signed-off-by: Matt Atwood <matthew.s.atwood at intel.com>
> ---
>  drivers/gpu/drm/xe/xe_pci.c | 10 +++++++++-
>  1 file changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c
> index 7ffee06fab13..6b2dfe4b305f 100644
> --- a/drivers/gpu/drm/xe/xe_pci.c
> +++ b/drivers/gpu/drm/xe/xe_pci.c
> @@ -179,6 +179,11 @@ static const struct xe_graphics_desc graphics_xe2 = {
>  	XE2_GFX_FEATURES,
>  };
>  
> +static const struct xe_graphics_desc graphics_xe3 = {
> +	.name = "Xe3_LPG",
> +	XE2_GFX_FEATURES,
> +};
> +
>  static const struct xe_media_desc media_xem = {
>  	.name = "Xe_M",
>  	.ver = 12,
> @@ -208,7 +213,7 @@ static const struct xe_media_desc media_xelpmp = {
>  };
>  
>  static const struct xe_media_desc media_xe2 = {
> -	.name = "Xe2_LPM / Xe2_HPM",
> +	.name = "Xe2_LPM / Xe2_HPM / Xe3_LPM",
>  	.hw_engine_mask =
>  		GENMASK(XE_HW_ENGINE_VCS7, XE_HW_ENGINE_VCS0) |
>  		GENMASK(XE_HW_ENGINE_VECS3, XE_HW_ENGINE_VECS0) |
> @@ -360,6 +365,8 @@ static const struct gmdid_map graphics_ip_map[] = {
>  	{ 1274, &graphics_xelpg },	/* Xe_LPG+ */
>  	{ 2001, &graphics_xe2 },
>  	{ 2004, &graphics_xe2 },
> +	{ 3000, &graphics_xe3 },
> +	{ 3001, &graphics_xe3 },

We probably shouldn't use two different styles in the same patch.  Media
is literally using the same structure (just changing the name field)
while graphics is making duplicate structures.  If we don't actually
need graphics_xe3 for anything, then we might as well just keep using
graphics_xe2, just like we do with media_xe2.


Matt

>  };
>  
>  /* Map of GMD_ID values to media IP */
> @@ -367,6 +374,7 @@ static const struct gmdid_map media_ip_map[] = {
>  	{ 1300, &media_xelpmp },
>  	{ 1301, &media_xe2 },
>  	{ 2000, &media_xe2 },
> +	{ 3000, &media_xe2 },
>  };
>  
>  #define INTEL_VGA_DEVICE(id, info) {			\
> -- 
> 2.45.0
> 

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


More information about the Intel-xe mailing list