On Wed, Mar 06, 2024 at 11:36:40AM -0800, Lucas De Marchi wrote: > PCI IDs for XEHPSDV were never added and platform always marked with > force_probe. Drop what's not used and rename some places to either be > xehp or dg2, depending on the platform/IP checks. > > The registers not used anymore are also removed. > > Signed-off-by: Lucas De Marchi <lucas.demarchi@xxxxxxxxx> > --- > > Potential problem here that needs a deeper look, the changes in > __gen12_fw_ranges. Some ranges had comments saying they were XEHPSDV so > I removed them, but it needs to be double checked with spec and CI > results. > ... > diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c > index 76400e9c40f0..4f1e56187442 100644 > --- a/drivers/gpu/drm/i915/intel_uncore.c > +++ b/drivers/gpu/drm/i915/intel_uncore.c > @@ -1536,17 +1536,12 @@ static const struct intel_forcewake_range __gen12_fw_ranges[] = { > GEN_FW_RANGE(0x13200, 0x13fff, FORCEWAKE_MEDIA_VDBOX2), /* \ > 0x13200 - 0x133ff: VD2 (DG2 only) \ > 0x13400 - 0x13fff: reserved */ \ > - GEN_FW_RANGE(0x14000, 0x141ff, FORCEWAKE_MEDIA_VDBOX0), /* XEHPSDV only */ \ > - GEN_FW_RANGE(0x14200, 0x143ff, FORCEWAKE_MEDIA_VDBOX2), /* XEHPSDV only */ \ > - GEN_FW_RANGE(0x14400, 0x145ff, FORCEWAKE_MEDIA_VDBOX4), /* XEHPSDV only */ \ > - GEN_FW_RANGE(0x14600, 0x147ff, FORCEWAKE_MEDIA_VDBOX6), /* XEHPSDV only */ \ We can't just remove ranges in the middle of the table since that breaks the "watertight" table requirement that our selftests check for. We need to either roll the now-unused ranges into an adjacent range, or add a new "reserved" range. > GEN_FW_RANGE(0x14800, 0x14fff, FORCEWAKE_RENDER), \ > GEN_FW_RANGE(0x15000, 0x16dff, FORCEWAKE_GT), /* \ > 0x15000 - 0x15fff: gt (DG2 only) \ > 0x16000 - 0x16dff: reserved */ \ > GEN_FW_RANGE(0x16e00, 0x1ffff, FORCEWAKE_RENDER), \ > - GEN_FW_RANGE(0x20000, 0x21fff, FORCEWAKE_MEDIA_VDBOX0), /* \ > - 0x20000 - 0x20fff: VD0 (XEHPSDV only) \ > + GEN_FW_RANGE(0x21000, 0x21fff, FORCEWAKE_MEDIA_VDBOX0), /* \ > 0x21000 - 0x21fff: reserved */ \ > GEN_FW_RANGE(0x22000, 0x23fff, FORCEWAKE_GT), \ > GEN_FW_RANGE(0x24000, 0x2417f, 0), /* \ > @@ -1627,10 +1622,6 @@ static const struct intel_forcewake_range __gen12_fw_ranges[] = { > 0x1f6e00 - 0x1f7fff: reserved */ \ > GEN_FW_RANGE(0x1f8000, 0x1fa0ff, FORCEWAKE_MEDIA_VEBOX3), > > -static const struct intel_forcewake_range __xehp_fw_ranges[] = { > - XEHP_FWRANGES(FORCEWAKE_GT) > -}; > - > static const struct intel_forcewake_range __dg2_fw_ranges[] = { > XEHP_FWRANGES(FORCEWAKE_RENDER) We can drop the macro here now and just make this a normal table like everything else. Matt -- Matt Roper Graphics Software Engineer Linux GPU Platform Enablement Intel Corporation