On 10/15/2025 8:45, Gustavo Sousa wrote:
From: Matt Roper <[email protected]>

Provide the basic platform definitions and PCI IDs for NVL-S.

Signed-off-by: Matt Roper <[email protected]>
Signed-off-by: Lucas De Marchi <[email protected]>
Signed-off-by: Gustavo Sousa <[email protected]>
---
This is brought as a dependency from the series for Xe,
https://patchwork.freedesktop.org/series/155866/, so the display side
can be reviewed independently.

Some of the changes below are redundant w.r.t the Xe series you mentioned above, but maintainers can take care of that while applying these patches.

LGTM,
Reviewed-by: Shekhar Chauhan <[email protected]>

---
  drivers/gpu/drm/xe/xe_pci.c            | 9 +++++++++
  drivers/gpu/drm/xe/xe_platform_types.h | 1 +
  include/drm/intel/pciids.h             | 9 +++++++++
  3 files changed, 19 insertions(+)

diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c
index 24a38904bb50..cc29678be1fa 100644
--- a/drivers/gpu/drm/xe/xe_pci.c
+++ b/drivers/gpu/drm/xe/xe_pci.c
@@ -373,6 +373,14 @@ static const struct xe_device_desc ptl_desc = {
        .vm_max_level = 4,
  };
+static const struct xe_device_desc nvls_desc = {
+       PLATFORM(NOVALAKE_S),
+       .dma_mask_size = 46,
+       .has_display = true,
+       .max_gt_per_tile = 2,
+       .require_force_probe = true,
+};
+
  #undef PLATFORM
  __diag_pop();
@@ -401,6 +409,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_WCL_IDS(INTEL_VGA_DEVICE, &ptl_desc),
+       INTEL_NVLS_IDS(INTEL_VGA_DEVICE, &nvls_desc),
        { }
  };
  MODULE_DEVICE_TABLE(pci, pciidlist);
diff --git a/drivers/gpu/drm/xe/xe_platform_types.h 
b/drivers/gpu/drm/xe/xe_platform_types.h
index 3e332214c7bb..78286285c249 100644
--- a/drivers/gpu/drm/xe/xe_platform_types.h
+++ b/drivers/gpu/drm/xe/xe_platform_types.h
@@ -24,6 +24,7 @@ enum xe_platform {
        XE_LUNARLAKE,
        XE_BATTLEMAGE,
        XE_PANTHERLAKE,
+       XE_NOVALAKE_S,
  };
enum xe_subplatform {
diff --git a/include/drm/intel/pciids.h b/include/drm/intel/pciids.h
index 452c1de606ff..13c592e1a28c 100644
--- a/include/drm/intel/pciids.h
+++ b/include/drm/intel/pciids.h
@@ -887,4 +887,13 @@
        MACRO__(0xFD80, ## __VA_ARGS__), \
        MACRO__(0xFD81, ## __VA_ARGS__)
+/* NVL-S */
+#define INTEL_NVLS_IDS(MACRO__, ...) \
+       MACRO__(0xD740, ## __VA_ARGS__), \
+       MACRO__(0xD741, ## __VA_ARGS__), \
+       MACRO__(0xD742, ## __VA_ARGS__), \
+       MACRO__(0xD743, ## __VA_ARGS__), \
+       MACRO__(0xD744, ## __VA_ARGS__), \
+       MACRO__(0xD745, ## __VA_ARGS__)
+
  #endif /* __PCIIDS_H__ */

Reply via email to