drm/xe/cri: Add CRI platform definition
authorBalasubramani Vivekanandan <balasubramani.vivekanandan@intel.com>
Wed, 22 Oct 2025 05:17:33 +0000 (22:17 -0700)
committerLucas De Marchi <lucas.demarchi@intel.com>
Thu, 23 Oct 2025 10:46:03 +0000 (03:46 -0700)
Add platform definition and PCI IDs for Crescent Island.

Other platforms use INTEL_VGA_DEVICE since they have a
PCI_BASE_CLASS_DISPLAY class.  This is not the case for CRI, so just
match on devid, which should be sufficient.

Signed-off-by: Balasubramani Vivekanandan <balasubramani.vivekanandan@intel.com>
Reviewed-by: Shekhar Chauhan <shekhar.chauhan@intel.com>
Link: https://lore.kernel.org/r/20251021-cri-v1-1-bf11e61d9f49@intel.com
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
drivers/gpu/drm/xe/xe_pci.c
drivers/gpu/drm/xe/xe_platform_types.h
include/drm/intel/pciids.h

index ece4515..6e59642 100644 (file)
@@ -400,6 +400,20 @@ static const struct xe_device_desc nvls_desc = {
        .vm_max_level = 4,
 };
 
+static const struct xe_device_desc cri_desc = {
+       DGFX_FEATURES,
+       PLATFORM(CRESCENTISLAND),
+       .dma_mask_size = 52,
+       .has_display = false,
+       .has_flat_ccs = false,
+       .has_mbx_power_limits = true,
+       .has_sriov = true,
+       .max_gt_per_tile = 2,
+       .require_force_probe = true,
+       .va_bits = 57,
+       .vm_max_level = 4,
+};
+
 #undef PLATFORM
 __diag_pop();
 
@@ -427,6 +441,7 @@ static const struct pci_device_id pciidlist[] = {
        INTEL_BMG_IDS(INTEL_VGA_DEVICE, &bmg_desc),
        INTEL_PTL_IDS(INTEL_VGA_DEVICE, &ptl_desc),
        INTEL_NVLS_IDS(INTEL_VGA_DEVICE, &nvls_desc),
+       INTEL_CRI_IDS(INTEL_PCI_DEVICE, &cri_desc),
        { }
 };
 MODULE_DEVICE_TABLE(pci, pciidlist);
index 7828628..f516dbd 100644 (file)
@@ -25,6 +25,7 @@ enum xe_platform {
        XE_BATTLEMAGE,
        XE_PANTHERLAKE,
        XE_NOVALAKE_S,
+       XE_CRESCENTISLAND,
 };
 
 enum xe_subplatform {
index 9f095a9..6e53fb4 100644 (file)
        MACRO__(0xD744, ## __VA_ARGS__), \
        MACRO__(0xD745, ## __VA_ARGS__)
 
+/* CRI */
+#define INTEL_CRI_IDS(MACRO__, ...) \
+       MACRO__(0x674C, ## __VA_ARGS__)
+
 #endif /* __PCIIDS_H__ */