diff options
Diffstat (limited to 'drivers/gpu/drm/i915/i915_pci.c')
| -rw-r--r-- | drivers/gpu/drm/i915/i915_pci.c | 69 | 
1 files changed, 53 insertions, 16 deletions
diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c index c32c0c6661c8..acf688b698c3 100644 --- a/drivers/gpu/drm/i915/i915_pci.c +++ b/drivers/gpu/drm/i915/i915_pci.c @@ -901,7 +901,8 @@ static const struct intel_device_info rkl_info = {  	.has_llc = 0, \  	.has_pxp = 0, \  	.has_snoop = 1, \ -	.is_dgfx = 1 +	.is_dgfx = 1, \ +	.has_heci_gscfi = 1  static const struct intel_device_info dg1_info = {  	GEN12_FEATURES, @@ -1036,29 +1037,63 @@ static const struct intel_device_info xehpsdv_info = {  		BIT(RCS0) | BIT(BCS0) |  		BIT(VECS0) | BIT(VECS1) | BIT(VECS2) | BIT(VECS3) |  		BIT(VCS0) | BIT(VCS1) | BIT(VCS2) | BIT(VCS3) | -		BIT(VCS4) | BIT(VCS5) | BIT(VCS6) | BIT(VCS7), +		BIT(VCS4) | BIT(VCS5) | BIT(VCS6) | BIT(VCS7) | +		BIT(CCS0) | BIT(CCS1) | BIT(CCS2) | BIT(CCS3),  	.require_force_probe = 1,  }; -__maybe_unused +#define DG2_FEATURES \ +	XE_HP_FEATURES, \ +	XE_HPM_FEATURES, \ +	DGFX_FEATURES, \ +	.graphics.rel = 55, \ +	.media.rel = 55, \ +	PLATFORM(INTEL_DG2), \ +	.has_4tile = 1, \ +	.has_64k_pages = 1, \ +	.has_guc_deprivilege = 1, \ +	.has_heci_pxp = 1, \ +	.needs_compact_pt = 1, \ +	.platform_engine_mask = \ +		BIT(RCS0) | BIT(BCS0) | \ +		BIT(VECS0) | BIT(VECS1) | \ +		BIT(VCS0) | BIT(VCS2) | \ +		BIT(CCS0) | BIT(CCS1) | BIT(CCS2) | BIT(CCS3) +  static const struct intel_device_info dg2_info = { -	XE_HP_FEATURES, -	XE_HPM_FEATURES, +	DG2_FEATURES,  	XE_LPD_FEATURES, +	.display.cpu_transcoder_mask = BIT(TRANSCODER_A) | BIT(TRANSCODER_B) | +			       BIT(TRANSCODER_C) | BIT(TRANSCODER_D), +	.require_force_probe = 1, +}; + +__maybe_unused +static const struct intel_device_info ats_m_info = { +	DG2_FEATURES, +	.display = { 0 }, +	.require_force_probe = 1, +}; + +#define XE_HPC_FEATURES \ +	XE_HP_FEATURES, \ +	.dma_mask_size = 52 + +__maybe_unused +static const struct intel_device_info pvc_info = { +	XE_HPC_FEATURES, +	XE_HPM_FEATURES,  	DGFX_FEATURES, -	.graphics.rel = 55, -	.media.rel = 55, -	PLATFORM(INTEL_DG2), -	.has_guc_deprivilege = 1, -	.has_64k_pages = 1, -	.needs_compact_pt = 1, +	.graphics.rel = 60, +	.media.rel = 60, +	PLATFORM(INTEL_PONTEVECCHIO), +	.display = { 0 }, +	.has_flat_ccs = 0,  	.platform_engine_mask = -		BIT(RCS0) | BIT(BCS0) | -		BIT(VECS0) | BIT(VECS1) | -		BIT(VCS0) | BIT(VCS2), +		BIT(BCS0) | +		BIT(VCS0) | +		BIT(CCS0) | BIT(CCS1) | BIT(CCS2) | BIT(CCS3),  	.require_force_probe = 1, -	.display.cpu_transcoder_mask = BIT(TRANSCODER_A) | BIT(TRANSCODER_B) | -			       BIT(TRANSCODER_C) | BIT(TRANSCODER_D),  };  #undef PLATFORM @@ -1140,6 +1175,8 @@ static const struct pci_device_id pciidlist[] = {  	INTEL_ADLN_IDS(&adl_p_info),  	INTEL_DG1_IDS(&dg1_info),  	INTEL_RPLS_IDS(&adl_s_info), +	INTEL_RPLP_IDS(&adl_p_info), +	INTEL_DG2_IDS(&dg2_info),  	{0, 0, 0}  };  MODULE_DEVICE_TABLE(pci, pciidlist);  |