* [PATCH 1/9] gpu/cuda: add NVIDIA GPU H100
@ 2025-09-15 14:41 Gregory Etelson
2025-09-15 14:41 ` [PATCH 2/9] gpu/cuda: new RoyB A100T GPU ID Gregory Etelson
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: Gregory Etelson @ 2025-09-15 14:41 UTC (permalink / raw)
To: dev; +Cc: getelson, mkashani, rasland, Elena Agostini
From: Elena Agostini <eagostini@nvidia.com>
Add support for new NVIDIA GPU H100.
Signed-off-by: Elena Agostini <eagostini@nvidia.com>
---
drivers/gpu/cuda/cuda.c | 4 ++++
drivers/gpu/cuda/devices.h | 1 +
2 files changed, 5 insertions(+)
diff --git a/drivers/gpu/cuda/cuda.c b/drivers/gpu/cuda/cuda.c
index a552aabeb8..ff8c29f970 100644
--- a/drivers/gpu/cuda/cuda.c
+++ b/drivers/gpu/cuda/cuda.c
@@ -63,6 +63,10 @@ RTE_LOG_REGISTER_DEFAULT(cuda_logtype, NOTICE);
/* NVIDIA GPU address map */
static const struct rte_pci_id pci_id_cuda_map[] = {
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H100_80GB_DEVICE_ID)
+ },
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_A40_DEVICE_ID)
diff --git a/drivers/gpu/cuda/devices.h b/drivers/gpu/cuda/devices.h
index e6502910f3..e45521c7cf 100644
--- a/drivers/gpu/cuda/devices.h
+++ b/drivers/gpu/cuda/devices.h
@@ -10,6 +10,7 @@
/* NVIDIA GPU device IDs */
+#define NVIDIA_GPU_H100_80GB_DEVICE_ID (0x2313)
#define NVIDIA_GPU_A40_DEVICE_ID (0x2235)
#define NVIDIA_GPU_A30_24GB_DEVICE_ID (0x20b7)
#define NVIDIA_GPU_A30X_24GB_DPU_DEVICE_ID (0x20b9)
--
2.48.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 2/9] gpu/cuda: new RoyB A100T GPU ID
2025-09-15 14:41 [PATCH 1/9] gpu/cuda: add NVIDIA GPU H100 Gregory Etelson
@ 2025-09-15 14:41 ` Gregory Etelson
2025-09-15 14:41 ` [PATCH 3/9] [gpu/cuda] New NVIDIA GPU Hopper device ID on Grace Gregory Etelson
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Gregory Etelson @ 2025-09-15 14:41 UTC (permalink / raw)
To: dev; +Cc: getelson, mkashani, rasland, Elena Agostini
From: Elena Agostini <eagostini@nvidia.com>
Signed-off-by: Elena Agostini <eagostini@nvidia.com>
---
drivers/gpu/cuda/cuda.c | 8 ++++++++
drivers/gpu/cuda/devices.h | 2 ++
2 files changed, 10 insertions(+)
diff --git a/drivers/gpu/cuda/cuda.c b/drivers/gpu/cuda/cuda.c
index ff8c29f970..0af955421a 100644
--- a/drivers/gpu/cuda/cuda.c
+++ b/drivers/gpu/cuda/cuda.c
@@ -123,6 +123,14 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_GA100_PG506_217)
},
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_GA100_80GB_ROYB_EB1_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_GA100_80GB_ROYB_DEVICE_ID)
+ },
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_V100_16GB_SXM2_DEVICE_ID)
diff --git a/drivers/gpu/cuda/devices.h b/drivers/gpu/cuda/devices.h
index e45521c7cf..e138a600d6 100644
--- a/drivers/gpu/cuda/devices.h
+++ b/drivers/gpu/cuda/devices.h
@@ -27,6 +27,8 @@
#define NVIDIA_GPU_GA100_PG506_207 (0x20f0)
#define NVIDIA_GPU_GA100_PCIE (0x20f1)
#define NVIDIA_GPU_GA100_PG506_217 (0x20f2)
+#define NVIDIA_GPU_GA100_80GB_ROYB_EB1_DEVICE_ID (0x20f5)
+#define NVIDIA_GPU_GA100_80GB_ROYB_DEVICE_ID (0x20fd)
#define NVIDIA_GPU_V100_16GB_SXM2_DEVICE_ID (0x1db1)
#define NVIDIA_GPU_V100_16GB_DGXS_DEVICE_ID (0x1db2)
--
2.48.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 3/9] [gpu/cuda] New NVIDIA GPU Hopper device ID on Grace
2025-09-15 14:41 [PATCH 1/9] gpu/cuda: add NVIDIA GPU H100 Gregory Etelson
2025-09-15 14:41 ` [PATCH 2/9] gpu/cuda: new RoyB A100T GPU ID Gregory Etelson
@ 2025-09-15 14:41 ` Gregory Etelson
2025-09-15 14:41 ` [PATCH 4/9] gpu/cuda: add new Hopper GPU IDs Gregory Etelson
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Gregory Etelson @ 2025-09-15 14:41 UTC (permalink / raw)
To: dev; +Cc: getelson, mkashani, rasland, Elena Agostini
From: Elena Agostini <eagostini@nvidia.com>
Signed-off-by: Elena Agostini <eagostini@nvidia.com>
---
drivers/gpu/cuda/cuda.c | 4 ++++
drivers/gpu/cuda/devices.h | 2 ++
2 files changed, 6 insertions(+)
diff --git a/drivers/gpu/cuda/cuda.c b/drivers/gpu/cuda/cuda.c
index 0af955421a..21c4fe9bef 100644
--- a/drivers/gpu/cuda/cuda.c
+++ b/drivers/gpu/cuda/cuda.c
@@ -251,6 +251,10 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_T4)
},
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_HOPPER_GRACE)
+ },
{
.device_id = 0
}
diff --git a/drivers/gpu/cuda/devices.h b/drivers/gpu/cuda/devices.h
index e138a600d6..5d9c7616f2 100644
--- a/drivers/gpu/cuda/devices.h
+++ b/drivers/gpu/cuda/devices.h
@@ -68,4 +68,6 @@
#define NVIDIA_GPU_T4G (0x1eb4)
#define NVIDIA_GPU_T4 (0x1eb8)
+#define NVIDIA_GPU_HOPPER_GRACE (0x2342)
+
#endif /* CUDA_DEVICES_H */
--
2.48.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 4/9] gpu/cuda: add new Hopper GPU IDs
2025-09-15 14:41 [PATCH 1/9] gpu/cuda: add NVIDIA GPU H100 Gregory Etelson
2025-09-15 14:41 ` [PATCH 2/9] gpu/cuda: new RoyB A100T GPU ID Gregory Etelson
2025-09-15 14:41 ` [PATCH 3/9] [gpu/cuda] New NVIDIA GPU Hopper device ID on Grace Gregory Etelson
@ 2025-09-15 14:41 ` Gregory Etelson
2025-09-15 14:41 ` [PATCH 5/9] gpu/cuda: add new gpu hopper 80gb device id Gregory Etelson
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Gregory Etelson @ 2025-09-15 14:41 UTC (permalink / raw)
To: dev; +Cc: getelson, mkashani, rasland, Elena Agostini
From: Elena Agostini <eagostini@nvidia.com>
Add a new NVIDIA Hopper GPU IDs.
Signed-off-by: Elena Agostini <eagostini@nvidia.com>
---
drivers/gpu/cuda/cuda.c | 8 ++++++++
drivers/gpu/cuda/devices.h | 2 ++
2 files changed, 10 insertions(+)
diff --git a/drivers/gpu/cuda/cuda.c b/drivers/gpu/cuda/cuda.c
index 21c4fe9bef..9eb748dd2e 100644
--- a/drivers/gpu/cuda/cuda.c
+++ b/drivers/gpu/cuda/cuda.c
@@ -255,6 +255,14 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_HOPPER_GRACE)
},
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H100_GH1_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H100_GH3_DEVICE_ID)
+ },
{
.device_id = 0
}
diff --git a/drivers/gpu/cuda/devices.h b/drivers/gpu/cuda/devices.h
index 5d9c7616f2..9f93132217 100644
--- a/drivers/gpu/cuda/devices.h
+++ b/drivers/gpu/cuda/devices.h
@@ -69,5 +69,7 @@
#define NVIDIA_GPU_T4 (0x1eb8)
#define NVIDIA_GPU_HOPPER_GRACE (0x2342)
+#define NVIDIA_GPU_H100_GH1_DEVICE_ID (0x2342)
+#define NVIDIA_GPU_H100_GH3_DEVICE_ID (0x237e)
#endif /* CUDA_DEVICES_H */
--
2.48.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 5/9] gpu/cuda: add new gpu hopper 80gb device id
2025-09-15 14:41 [PATCH 1/9] gpu/cuda: add NVIDIA GPU H100 Gregory Etelson
` (2 preceding siblings ...)
2025-09-15 14:41 ` [PATCH 4/9] gpu/cuda: add new Hopper GPU IDs Gregory Etelson
@ 2025-09-15 14:41 ` Gregory Etelson
2025-09-15 14:41 ` [PATCH 6/9] gpu/cuda: more gpu ID for h100 and l40 Gregory Etelson
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Gregory Etelson @ 2025-09-15 14:41 UTC (permalink / raw)
To: dev; +Cc: getelson, mkashani, rasland, Elena Agostini
From: Elena Agostini <eagostini@nvidia.com>
Added the new Hopper 80GB GPU device ID to the list.
Signed-off-by: Elena Agostini <eagostini@nvidia.com>
---
drivers/gpu/cuda/cuda.c | 12 ++++++++----
drivers/gpu/cuda/devices.h | 3 ++-
2 files changed, 10 insertions(+), 5 deletions(-)
diff --git a/drivers/gpu/cuda/cuda.c b/drivers/gpu/cuda/cuda.c
index 9eb748dd2e..16778e1160 100644
--- a/drivers/gpu/cuda/cuda.c
+++ b/drivers/gpu/cuda/cuda.c
@@ -63,10 +63,6 @@ RTE_LOG_REGISTER_DEFAULT(cuda_logtype, NOTICE);
/* NVIDIA GPU address map */
static const struct rte_pci_id pci_id_cuda_map[] = {
- {
- RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100_80GB_DEVICE_ID)
- },
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_A40_DEVICE_ID)
@@ -263,6 +259,14 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_H100_GH3_DEVICE_ID)
},
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H100_80GB_DEVICE_ID_1)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H100_80GB_DEVICE_ID_2)
+ },
{
.device_id = 0
}
diff --git a/drivers/gpu/cuda/devices.h b/drivers/gpu/cuda/devices.h
index 9f93132217..2968da2c8f 100644
--- a/drivers/gpu/cuda/devices.h
+++ b/drivers/gpu/cuda/devices.h
@@ -10,7 +10,6 @@
/* NVIDIA GPU device IDs */
-#define NVIDIA_GPU_H100_80GB_DEVICE_ID (0x2313)
#define NVIDIA_GPU_A40_DEVICE_ID (0x2235)
#define NVIDIA_GPU_A30_24GB_DEVICE_ID (0x20b7)
#define NVIDIA_GPU_A30X_24GB_DPU_DEVICE_ID (0x20b9)
@@ -71,5 +70,7 @@
#define NVIDIA_GPU_HOPPER_GRACE (0x2342)
#define NVIDIA_GPU_H100_GH1_DEVICE_ID (0x2342)
#define NVIDIA_GPU_H100_GH3_DEVICE_ID (0x237e)
+#define NVIDIA_GPU_H100_80GB_DEVICE_ID_1 (0x2331)
+#define NVIDIA_GPU_H100_80GB_DEVICE_ID_2 (0x2313)
#endif /* CUDA_DEVICES_H */
--
2.48.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 6/9] gpu/cuda: more gpu ID for h100 and l40
2025-09-15 14:41 [PATCH 1/9] gpu/cuda: add NVIDIA GPU H100 Gregory Etelson
` (3 preceding siblings ...)
2025-09-15 14:41 ` [PATCH 5/9] gpu/cuda: add new gpu hopper 80gb device id Gregory Etelson
@ 2025-09-15 14:41 ` Gregory Etelson
2025-09-15 14:41 ` [PATCH 7/9] gpu/cuda: extend NVIDIA GPU device ID list Gregory Etelson
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Gregory Etelson @ 2025-09-15 14:41 UTC (permalink / raw)
To: dev; +Cc: getelson, mkashani, rasland, Elena Agostini
From: Elena Agostini <eagostini@nvidia.com>
More gpu devices for h100 and l40
Signed-off-by: Elena Agostini <eagostini@nvidia.com>
---
drivers/gpu/cuda/cuda.c | 66 ++++++++++++++++++++++++++++++++++----
drivers/gpu/cuda/devices.h | 23 ++++++++++---
2 files changed, 78 insertions(+), 11 deletions(-)
diff --git a/drivers/gpu/cuda/cuda.c b/drivers/gpu/cuda/cuda.c
index 16778e1160..a94c4baa64 100644
--- a/drivers/gpu/cuda/cuda.c
+++ b/drivers/gpu/cuda/cuda.c
@@ -87,6 +87,10 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_A10M_DEVICE_ID)
},
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_A800_DEVICE_ID)
+ },
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_A100_40GB_SXM4_DEVICE_ID)
@@ -121,11 +125,23 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_GA100_80GB_ROYB_EB1_DEVICE_ID)
+ NVIDIA_GPU_A800_80GB_SXM_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_A800_80GB_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_A800_40GB_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_A800_80GB_ROYB_DEVICE_ID)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_GA100_80GB_ROYB_DEVICE_ID)
+ NVIDIA_GPU_GA100_80GB_ROYB_DEVICE_ID)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
@@ -249,23 +265,59 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_HOPPER_GRACE)
+ NVIDIA_GPU_H100_GH1_DEVICE_ID)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100_GH1_DEVICE_ID)
+ NVIDIA_GPU_H100_GH3_DEVICE_ID)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100_GH3_DEVICE_ID)
+ NVIDIA_GPU_H100L_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H100XM_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H100_PCIE_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H100_GENERIC_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H100_80GB_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H800_PCIE_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H800_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_H800L_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_L40_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_L40S_DEVICE_ID)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100_80GB_DEVICE_ID_1)
+ NVIDIA_GPU_L40G_DEVICE_ID)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100_80GB_DEVICE_ID_2)
+ NVIDIA_GPU_L4_DEVICE_ID)
},
{
.device_id = 0
diff --git a/drivers/gpu/cuda/devices.h b/drivers/gpu/cuda/devices.h
index 2968da2c8f..9b5299f3f1 100644
--- a/drivers/gpu/cuda/devices.h
+++ b/drivers/gpu/cuda/devices.h
@@ -16,6 +16,7 @@
#define NVIDIA_GPU_A10_24GB_DEVICE_ID (0x2236)
#define NVIDIA_GPU_A10G_DEVICE_ID (0x2237)
#define NVIDIA_GPU_A10M_DEVICE_ID (0x2238)
+#define NVIDIA_GPU_A800_DEVICE_ID (0x2238)
#define NVIDIA_GPU_A100_40GB_SXM4_DEVICE_ID (0x20b0)
#define NVIDIA_GPU_A100_40GB_PCIE_DEVICE_ID (0x20b1)
@@ -26,7 +27,10 @@
#define NVIDIA_GPU_GA100_PG506_207 (0x20f0)
#define NVIDIA_GPU_GA100_PCIE (0x20f1)
#define NVIDIA_GPU_GA100_PG506_217 (0x20f2)
-#define NVIDIA_GPU_GA100_80GB_ROYB_EB1_DEVICE_ID (0x20f5)
+#define NVIDIA_GPU_A800_80GB_SXM_DEVICE_ID (0x20f3)
+#define NVIDIA_GPU_A800_80GB_DEVICE_ID (0x20f5)
+#define NVIDIA_GPU_A800_40GB_DEVICE_ID (0x20f6)
+#define NVIDIA_GPU_A800_80GB_ROYB_DEVICE_ID (0x20bd)
#define NVIDIA_GPU_GA100_80GB_ROYB_DEVICE_ID (0x20fd)
#define NVIDIA_GPU_V100_16GB_SXM2_DEVICE_ID (0x1db1)
@@ -67,10 +71,21 @@
#define NVIDIA_GPU_T4G (0x1eb4)
#define NVIDIA_GPU_T4 (0x1eb8)
-#define NVIDIA_GPU_HOPPER_GRACE (0x2342)
#define NVIDIA_GPU_H100_GH1_DEVICE_ID (0x2342)
#define NVIDIA_GPU_H100_GH3_DEVICE_ID (0x237e)
-#define NVIDIA_GPU_H100_80GB_DEVICE_ID_1 (0x2331)
-#define NVIDIA_GPU_H100_80GB_DEVICE_ID_2 (0x2313)
+#define NVIDIA_GPU_H100L_DEVICE_ID (0x2321)
+#define NVIDIA_GPU_H100XM_DEVICE_ID (0x2330)
+#define NVIDIA_GPU_H100_PCIE_DEVICE_ID (0x2331)
+#define NVIDIA_GPU_H100_GENERIC_DEVICE_ID (0x2339)
+#define NVIDIA_GPU_H100_80GB_DEVICE_ID (0x2313)
+#define NVIDIA_GPU_H800_PCIE_DEVICE_ID (0x2322)
+#define NVIDIA_GPU_H800_DEVICE_ID (0x2324)
+#define NVIDIA_GPU_H800L_DEVICE_ID (0x233a)
+
+#define NVIDIA_GPU_L40_DEVICE_ID (0x26b5)
+#define NVIDIA_GPU_L40S_DEVICE_ID (0x26b9)
+#define NVIDIA_GPU_L40G_DEVICE_ID (0x26b8)
+
+#define NVIDIA_GPU_L4_DEVICE_ID (0x27b8)
#endif /* CUDA_DEVICES_H */
--
2.48.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 7/9] gpu/cuda: extend NVIDIA GPU device ID list
2025-09-15 14:41 [PATCH 1/9] gpu/cuda: add NVIDIA GPU H100 Gregory Etelson
` (4 preceding siblings ...)
2025-09-15 14:41 ` [PATCH 6/9] gpu/cuda: more gpu ID for h100 and l40 Gregory Etelson
@ 2025-09-15 14:41 ` Gregory Etelson
2025-09-15 14:41 ` [PATCH 8/9] " Gregory Etelson
2025-09-15 14:41 ` [PATCH 9/9] gpu/cuda: support CUDA 13 building Gregory Etelson
7 siblings, 0 replies; 9+ messages in thread
From: Gregory Etelson @ 2025-09-15 14:41 UTC (permalink / raw)
To: dev; +Cc: getelson, mkashani, rasland, eagostini
From: eagostini <eagostini@nvidia.com>
Add new NVIDIA GPU IDs taken from public driver list.
https://github.com/NVIDIA/open-gpu-kernel-modules/blob/e45d91de0224e17a6bf7c971d8f165090b3c07a6/src/nvidia/generated/g_nv_name_released.h
Signed-off-by: eagostini <eagostini@nvidia.com>
---
drivers/gpu/cuda/cuda.c | 240 +++++++++++++++++++++++++++----------
drivers/gpu/cuda/devices.h | 151 ++++++++++++-----------
2 files changed, 264 insertions(+), 127 deletions(-)
diff --git a/drivers/gpu/cuda/cuda.c b/drivers/gpu/cuda/cuda.c
index a94c4baa64..fb8aaf67fc 100644
--- a/drivers/gpu/cuda/cuda.c
+++ b/drivers/gpu/cuda/cuda.c
@@ -65,35 +65,79 @@ RTE_LOG_REGISTER_DEFAULT(cuda_logtype, NOTICE);
static const struct rte_pci_id pci_id_cuda_map[] = {
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A40_DEVICE_ID)
+ NVIDIA_GPU_M40_24GB)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A30_24GB_DEVICE_ID)
+ NVIDIA_GPU_V100_32GB_SXM3_H_DEVICE_ID)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A30X_24GB_DPU_DEVICE_ID)
+ NVIDIA_GPU_TITAN_V_CEO_ED)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_TITAN_Xp_COLLECTORS_EDITION)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_V100_SXM2_16GB_LS)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_V100_16GB_DGXS_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_V100_16GB_FHHL_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_V100_PCIE_16GB_LS)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_V100_SXM2_32GB_LS)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_V100_32GB_PCIE_DEVICE_ID)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_V100_32GB_DGXS_DEVICE_ID)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A10_24GB_DEVICE_ID)
+ NVIDIA_GPU_V100_SXM3_32GB_H)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A10G_DEVICE_ID)
+ NVIDIA_TITAN_V_JHH_SE)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A10M_DEVICE_ID)
+ NVIDIA_T1000)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A800_DEVICE_ID)
+ NVIDIA_T600)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A100_40GB_SXM4_DEVICE_ID)
+ NVIDIA_T400)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_T1000_8GB)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_T400_4GB)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_A100_PG509_200)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
@@ -101,23 +145,39 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A100_80GB_SXM4_DEVICE_ID)
+ NVIDIA_A100_SXM4_80GB)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_A100_SXM_64GB)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A100_80GB_PCIE_DEVICE_ID)
+ NVIDIA_A100_80GB_PCIe)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_PG506_232)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_A30)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_A100X_80GB_DPU_DEVICE_ID)
},
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_A30X_24GB_DPU_DEVICE_ID)
+ },
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_GPU_GA100_PG506_207)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_GA100_PCIE)
+ NVIDIA_A100_PCIE_40GB)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
@@ -125,199 +185,259 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A800_80GB_SXM_DEVICE_ID)
+ NVIDIA_A800_SXM4_80GB)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A800_80GB_DEVICE_ID)
+ NVIDIA_A800_80GB_PCIe)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A800_40GB_DEVICE_ID)
+ NVIDIA_A800_40GB_Active)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_A800_80GB_ROYB_DEVICE_ID)
+ NVIDIA_A800_SXM4_40GB)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_GA100_80GB_ROYB_DEVICE_ID)
+ NVIDIA_AX800)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100_16GB_SXM2_DEVICE_ID)
+ NVIDIA_GPU_QUADRO_RTX_6000)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100_16GB_DGXS_DEVICE_ID)
+ NVIDIA_GPU_QUADRO_RTX_8000)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100_16GB_FHHL_DEVICE_ID)
+ NVIDIA_RTX_A6000)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100_16GB_PCIE_DEVICE_ID)
+ NVIDIA_RTX_A5000)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100_32GB_SXM2_DEVICE_ID)
+ NVIDIA_RTX_A4500)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100_32GB_PCIE_DEVICE_ID)
+ NVIDIA_RTX_A4500_LAPTOP)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100_32GB_DGXS_DEVICE_ID)
+ NVIDIA_RTX_A4500_EMBEDDED)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100_32GB_SXM3_DEVICE_ID)
+ NVIDIA_RTX_A5500)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100_32GB_SXM3_H_DEVICE_ID)
+ NVIDIA_A40)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100_SXM2)
+ NVIDIA_A10)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_V100S_PCIE)
+ NVIDIA_A10G)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_TITAN_V_CEO_ED)
+ NVIDIA_A10M)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_GV100GL_PG500_216)
+ NVIDIA_H100_NVL)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_GV100GL_PG503_216)
+ NVIDIA_H800_PCIe)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_TU102_TITAN_RTX)
+ NVIDIA_H800)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_TU102GL_QUADRO_RTX)
+ NVIDIA_H20)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_GV100_QUADRO_DEVICE_ID)
+ NVIDIA_H100_80GB_HBM3)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_4000)
+ NVIDIA_H100_PCIe)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_5000)
+ NVIDIA_GPU_H100_80GB_DEVICE_ID)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_6000)
+ NVIDIA_H200)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_8000)
+ NVIDIA_H100)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_H800_NVL)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_A4000)
+ NVIDIA_GH200_120GB)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_A6000)
+ NVIDIA_GPU_H100_GH3_DEVICE_ID)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_A5000)
+ NVIDIA_RTX_A4000)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_A4500)
+ NVIDIA_RTX_A4000H)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_A5500)
+ NVIDIA_RTX_A2000)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_A2000)
+ NVIDIA_RTX_A2000_12GB)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_QUADRO_RTX_A2000_12GB)
+ NVIDIA_RTX_A1000)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_T4G)
+ NVIDIA_RTX_A400)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_T4)
+ NVIDIA_A16)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100_GH1_DEVICE_ID)
+ NVIDIA_RTX_6000_ADA)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100_GH3_DEVICE_ID)
+ NVIDIA_RTX_5000_ADA)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_5880_ADA)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_L40)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_L40G_1B)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_L40S)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_L20)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_4000_SFF_ADA)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100L_DEVICE_ID)
+ NVIDIA_RTX_4500_ADA)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100XM_DEVICE_ID)
+ NVIDIA_RTX_4000_ADA)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100_PCIE_DEVICE_ID)
+ NVIDIA_L2)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100_GENERIC_DEVICE_ID)
+ NVIDIA_L4)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H100_80GB_DEVICE_ID)
+ NVIDIA_RTX_2000_ADA)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H800_PCIE_DEVICE_ID)
+ NVIDIA_GPU_GRID_M10_0B)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H800_DEVICE_ID)
+ NVIDIA_GPU_GRID_V100L_1B)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_H800L_DEVICE_ID)
+ NVIDIA_GPU_GV100GL_PG500_216)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_GV100GL_PG503_216)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_V100_SXM2)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_GRID_V100S_1B)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_L40_DEVICE_ID)
+ NVIDIA_GPU_GRID_RTX6000_1Q)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_L40S_DEVICE_ID)
+ NVIDIA_GPU_GRID_RTX_T10_4)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_GRID_RTX6000P_1B)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_TU102_TITAN_RTX)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_QUADRO_RTX_4000)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_QUADRO_RTX_5000)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_GPU_T4G)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_L40G_DEVICE_ID)
+ NVIDIA_GPU_GRID_T4_1B)
},
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_GPU_L4_DEVICE_ID)
+ NVIDIA_H100XS_1_8CME)
},
{
.device_id = 0
diff --git a/drivers/gpu/cuda/devices.h b/drivers/gpu/cuda/devices.h
index 9b5299f3f1..bc096bc4cf 100644
--- a/drivers/gpu/cuda/devices.h
+++ b/drivers/gpu/cuda/devices.h
@@ -10,82 +10,99 @@
/* NVIDIA GPU device IDs */
-#define NVIDIA_GPU_A40_DEVICE_ID (0x2235)
-#define NVIDIA_GPU_A30_24GB_DEVICE_ID (0x20b7)
-#define NVIDIA_GPU_A30X_24GB_DPU_DEVICE_ID (0x20b9)
-#define NVIDIA_GPU_A10_24GB_DEVICE_ID (0x2236)
-#define NVIDIA_GPU_A10G_DEVICE_ID (0x2237)
-#define NVIDIA_GPU_A10M_DEVICE_ID (0x2238)
-#define NVIDIA_GPU_A800_DEVICE_ID (0x2238)
-
-#define NVIDIA_GPU_A100_40GB_SXM4_DEVICE_ID (0x20b0)
-#define NVIDIA_GPU_A100_40GB_PCIE_DEVICE_ID (0x20b1)
-#define NVIDIA_GPU_A100_80GB_SXM4_DEVICE_ID (0x20b2)
-#define NVIDIA_GPU_A100_80GB_PCIE_DEVICE_ID (0x20b5)
-#define NVIDIA_GPU_A100X_80GB_DPU_DEVICE_ID (0x20b8)
-
-#define NVIDIA_GPU_GA100_PG506_207 (0x20f0)
-#define NVIDIA_GPU_GA100_PCIE (0x20f1)
-#define NVIDIA_GPU_GA100_PG506_217 (0x20f2)
-#define NVIDIA_GPU_A800_80GB_SXM_DEVICE_ID (0x20f3)
-#define NVIDIA_GPU_A800_80GB_DEVICE_ID (0x20f5)
-#define NVIDIA_GPU_A800_40GB_DEVICE_ID (0x20f6)
-#define NVIDIA_GPU_A800_80GB_ROYB_DEVICE_ID (0x20bd)
-#define NVIDIA_GPU_GA100_80GB_ROYB_DEVICE_ID (0x20fd)
-
-#define NVIDIA_GPU_V100_16GB_SXM2_DEVICE_ID (0x1db1)
+#define NVIDIA_GPU_M40_24GB (0x17fd)
+#define NVIDIA_GPU_V100_32GB_SXM3_H_DEVICE_ID (0x131d)
+#define NVIDIA_GPU_TITAN_V_CEO_ED (0x12eb)
+#define NVIDIA_TITAN_Xp_COLLECTORS_EDITION (0x1b02)
+#define NVIDIA_GPU_V100_SXM2_16GB_LS (0x1db1)
#define NVIDIA_GPU_V100_16GB_DGXS_DEVICE_ID (0x1db2)
#define NVIDIA_GPU_V100_16GB_FHHL_DEVICE_ID (0x1db3)
-#define NVIDIA_GPU_V100_16GB_PCIE_DEVICE_ID (0x1db4)
-
-#define NVIDIA_GPU_V100_32GB_SXM2_DEVICE_ID (0x1db5)
+#define NVIDIA_GPU_V100_PCIE_16GB_LS (0x1db4)
+#define NVIDIA_GPU_V100_SXM2_32GB_LS (0x1db5)
#define NVIDIA_GPU_V100_32GB_PCIE_DEVICE_ID (0x1db6)
#define NVIDIA_GPU_V100_32GB_DGXS_DEVICE_ID (0x1db7)
-#define NVIDIA_GPU_V100_32GB_SXM3_DEVICE_ID (0x1db8)
-#define NVIDIA_GPU_V100_32GB_SXM3_H_DEVICE_ID (0x131d)
-
-#define NVIDIA_GPU_V100_SXM2 (0x1df5)
-#define NVIDIA_GPU_V100S_PCIE (0x1df6)
-
-#define NVIDIA_GPU_TITAN_V_CEO_ED (0x12eb)
-
+#define NVIDIA_GPU_V100_SXM3_32GB_H (0x1db8)
+#define NVIDIA_TITAN_V_JHH_SE (0x1dba)
+#define NVIDIA_T1000 (0x1fb0)
+#define NVIDIA_T600 (0x1fb1)
+#define NVIDIA_T400 (0x1fb2)
+#define NVIDIA_T1000_8GB (0x1ff0)
+#define NVIDIA_T400_4GB (0x1ff2)
+#define NVIDIA_A100_PG509_200 (0x20b0)
+#define NVIDIA_GPU_A100_40GB_PCIE_DEVICE_ID (0x20b1)
+#define NVIDIA_A100_SXM4_80GB (0x20b2)
+#define NVIDIA_A100_SXM_64GB (0x20b3)
+#define NVIDIA_A100_80GB_PCIe (0x20b5)
+#define NVIDIA_PG506_232 (0x20b6)
+#define NVIDIA_A30 (0x20b7)
+#define NVIDIA_GPU_A100X_80GB_DPU_DEVICE_ID (0x20b8)
+#define NVIDIA_GPU_A30X_24GB_DPU_DEVICE_ID (0x20b9)
+#define NVIDIA_GPU_GA100_PG506_207 (0x20f0)
+#define NVIDIA_A100_PCIE_40GB (0x20f1)
+#define NVIDIA_GPU_GA100_PG506_217 (0x20f2)
+#define NVIDIA_A800_SXM4_80GB (0x20f3)
+#define NVIDIA_A800_80GB_PCIe (0x20f5)
+#define NVIDIA_A800_40GB_Active (0x20f6)
+#define NVIDIA_A800_SXM4_40GB (0x20bd)
+#define NVIDIA_AX800 (0x20fd)
+#define NVIDIA_GPU_QUADRO_RTX_6000 (0x13d9)
+#define NVIDIA_GPU_QUADRO_RTX_8000 (0x13d8)
+#define NVIDIA_RTX_A6000 (0x2230)
+#define NVIDIA_RTX_A5000 (0x2231)
+#define NVIDIA_RTX_A4500 (0x2232)
+#define NVIDIA_RTX_A4500_LAPTOP (0x24ba)
+#define NVIDIA_RTX_A4500_EMBEDDED (0x24fa)
+#define NVIDIA_RTX_A5500 (0x2233)
+#define NVIDIA_A40 (0x2235)
+#define NVIDIA_A10 (0x2236)
+#define NVIDIA_A10G (0x2237)
+#define NVIDIA_A10M (0x2238)
+#define NVIDIA_H100_NVL (0x2321)
+#define NVIDIA_H800_PCIe (0x2322)
+#define NVIDIA_H800 (0x2324)
+#define NVIDIA_H20 (0x2329)
+#define NVIDIA_H100_80GB_HBM3 (0x2330)
+#define NVIDIA_H100_PCIe (0x2331)
+#define NVIDIA_GPU_H100_80GB_DEVICE_ID (0x2313)
+#define NVIDIA_H200 (0x2335)
+#define NVIDIA_H100 (0x2339)
+#define NVIDIA_H800_NVL (0x233a)
+#define NVIDIA_GH200_120GB (0x2342)
+#define NVIDIA_GPU_H100_GH3_DEVICE_ID (0x237e)
+#define NVIDIA_RTX_A4000 (0x24b0)
+#define NVIDIA_RTX_A4000H (0x24b1)
+#define NVIDIA_RTX_A2000 (0x2531)
+#define NVIDIA_RTX_A2000_12GB (0x2571)
+#define NVIDIA_RTX_A1000 (0x25b0)
+#define NVIDIA_RTX_A400 (0x25b2)
+#define NVIDIA_A16 (0x25b6)
+#define NVIDIA_RTX_6000_ADA (0x26b1)
+#define NVIDIA_RTX_5000_ADA (0x26b2)
+#define NVIDIA_RTX_5880_ADA (0x26b3)
+#define NVIDIA_L40 (0x26b5)
+#define NVIDIA_L40G_1B (0x26b8)
+#define NVIDIA_L40S (0x26b9)
+#define NVIDIA_L20 (0x26ba)
+#define NVIDIA_RTX_4000_SFF_ADA (0x27b0)
+#define NVIDIA_RTX_4500_ADA (0x27b1)
+#define NVIDIA_RTX_4000_ADA (0x27b2)
+#define NVIDIA_L2 (0x27b6)
+#define NVIDIA_L4 (0x27b8)
+#define NVIDIA_RTX_2000_ADA (0x28b0)
+#define NVIDIA_GPU_GRID_M10_0B (0x13bd)
+#define NVIDIA_GPU_GRID_V100L_1B (0x1db3)
#define NVIDIA_GPU_GV100GL_PG500_216 (0x1df0)
#define NVIDIA_GPU_GV100GL_PG503_216 (0x1df2)
-
+#define NVIDIA_GPU_V100_SXM2 (0x1df5)
+#define NVIDIA_GPU_GRID_V100S_1B (0x1df6)
+#define NVIDIA_GPU_GRID_RTX6000_1Q (0x1e30)
+#define NVIDIA_GPU_GRID_RTX_T10_4 (0x1e37)
+#define NVIDIA_GPU_GRID_RTX6000P_1B (0x1e78)
#define NVIDIA_GPU_TU102_TITAN_RTX (0x1e02)
-#define NVIDIA_GPU_TU102GL_QUADRO_RTX (0x1e78)
-
-#define NVIDIA_GPU_GV100_QUADRO_DEVICE_ID (0x1dba)
#define NVIDIA_GPU_QUADRO_RTX_4000 (0x1eb1)
#define NVIDIA_GPU_QUADRO_RTX_5000 (0x1eb0)
-#define NVIDIA_GPU_QUADRO_RTX_6000 (0x13d9)
-#define NVIDIA_GPU_QUADRO_RTX_8000 (0x13d8)
-#define NVIDIA_GPU_QUADRO_RTX_A4000 (0x24b0)
-#define NVIDIA_GPU_QUADRO_RTX_A6000 (0x2230)
-#define NVIDIA_GPU_QUADRO_RTX_A5000 (0x2231)
-#define NVIDIA_GPU_QUADRO_RTX_A4500 (0x2232)
-#define NVIDIA_GPU_QUADRO_RTX_A5500 (0x2233)
-#define NVIDIA_GPU_QUADRO_RTX_A2000 (0x2531)
-#define NVIDIA_GPU_QUADRO_RTX_A2000_12GB (0x2571)
-
#define NVIDIA_GPU_T4G (0x1eb4)
-#define NVIDIA_GPU_T4 (0x1eb8)
-
-#define NVIDIA_GPU_H100_GH1_DEVICE_ID (0x2342)
-#define NVIDIA_GPU_H100_GH3_DEVICE_ID (0x237e)
-#define NVIDIA_GPU_H100L_DEVICE_ID (0x2321)
-#define NVIDIA_GPU_H100XM_DEVICE_ID (0x2330)
-#define NVIDIA_GPU_H100_PCIE_DEVICE_ID (0x2331)
-#define NVIDIA_GPU_H100_GENERIC_DEVICE_ID (0x2339)
-#define NVIDIA_GPU_H100_80GB_DEVICE_ID (0x2313)
-
-#define NVIDIA_GPU_H800_PCIE_DEVICE_ID (0x2322)
-#define NVIDIA_GPU_H800_DEVICE_ID (0x2324)
-#define NVIDIA_GPU_H800L_DEVICE_ID (0x233a)
-
-#define NVIDIA_GPU_L40_DEVICE_ID (0x26b5)
-#define NVIDIA_GPU_L40S_DEVICE_ID (0x26b9)
-#define NVIDIA_GPU_L40G_DEVICE_ID (0x26b8)
+#define NVIDIA_GPU_GRID_T4_1B (0x1eb8)
+#define NVIDIA_H100XS_1_8CME (0x2337)
-#define NVIDIA_GPU_L4_DEVICE_ID (0x27b8)
#endif /* CUDA_DEVICES_H */
--
2.48.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 8/9] gpu/cuda: extend NVIDIA GPU device ID list
2025-09-15 14:41 [PATCH 1/9] gpu/cuda: add NVIDIA GPU H100 Gregory Etelson
` (5 preceding siblings ...)
2025-09-15 14:41 ` [PATCH 7/9] gpu/cuda: extend NVIDIA GPU device ID list Gregory Etelson
@ 2025-09-15 14:41 ` Gregory Etelson
2025-09-15 14:41 ` [PATCH 9/9] gpu/cuda: support CUDA 13 building Gregory Etelson
7 siblings, 0 replies; 9+ messages in thread
From: Gregory Etelson @ 2025-09-15 14:41 UTC (permalink / raw)
To: dev; +Cc: getelson, mkashani, rasland, eagostini
From: eagostini <eagostini@nvidia.com>
Add more IDs for Laptop and Embedded GPUs.
Signed-off-by: eagostini <eagostini@nvidia.com>
---
drivers/gpu/cuda/cuda.c | 138 ++++++++++++++++++++++++++++++++++---
drivers/gpu/cuda/devices.h | 36 +++++++++-
2 files changed, 164 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/cuda/cuda.c b/drivers/gpu/cuda/cuda.c
index fb8aaf67fc..e050b6370b 100644
--- a/drivers/gpu/cuda/cuda.c
+++ b/drivers/gpu/cuda/cuda.c
@@ -223,14 +223,6 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_RTX_A4500)
},
- {
- RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_RTX_A4500_LAPTOP)
- },
- {
- RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
- NVIDIA_RTX_A4500_EMBEDDED)
- },
{
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_RTX_A5500)
@@ -439,6 +431,136 @@ static const struct rte_pci_id pci_id_cuda_map[] = {
RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
NVIDIA_H100XS_1_8CME)
},
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_T600_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_T550_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_T600_Laptop_2)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_T1200_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A5500_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A5000_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A4000_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A3000_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A3000_12GB_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A4500_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A3000_12GB_Laptop_2)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A2000_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A1000_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A2000_8GB_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A500_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A1000_6GB_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A500_Laptop_2)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_5000_Ada_Generation_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_4000_Ada_Generation_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_3500_Ada_Generation_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_3000_Ada_Generation_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_2000_Ada_Generation_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_1000_Ada_Generation_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_500_Ada_Generation_Laptop)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_500_Ada_Generation_Laptop_2)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A4500_Embedded)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A1000_Embedded)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A2000_Embedded)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_A500_Embedded)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_5000_Ada_Generation_Embedded)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_3500_Ada_Generation_Embedded)
+ },
+ {
+ RTE_PCI_DEVICE(NVIDIA_GPU_VENDOR_ID,
+ NVIDIA_RTX_2000_Ada_Generation_Embedded)
+ },
+
+
{
.device_id = 0
}
diff --git a/drivers/gpu/cuda/devices.h b/drivers/gpu/cuda/devices.h
index bc096bc4cf..9577dd1f2c 100644
--- a/drivers/gpu/cuda/devices.h
+++ b/drivers/gpu/cuda/devices.h
@@ -50,8 +50,6 @@
#define NVIDIA_RTX_A6000 (0x2230)
#define NVIDIA_RTX_A5000 (0x2231)
#define NVIDIA_RTX_A4500 (0x2232)
-#define NVIDIA_RTX_A4500_LAPTOP (0x24ba)
-#define NVIDIA_RTX_A4500_EMBEDDED (0x24fa)
#define NVIDIA_RTX_A5500 (0x2233)
#define NVIDIA_A40 (0x2235)
#define NVIDIA_A10 (0x2236)
@@ -105,4 +103,38 @@
#define NVIDIA_GPU_GRID_T4_1B (0x1eb8)
#define NVIDIA_H100XS_1_8CME (0x2337)
+#define NVIDIA_T600_Laptop (0x1fb6)
+#define NVIDIA_T550_Laptop (0x1fb7)
+#define NVIDIA_T600_Laptop_2 (0x1fba)
+#define NVIDIA_T1200_Laptop (0x1fbc)
+#define NVIDIA_RTX_A5500_Laptop (0x2438)
+#define NVIDIA_RTX_A5000_Laptop (0x24b6)
+#define NVIDIA_RTX_A4000_Laptop (0x24b7)
+#define NVIDIA_RTX_A3000_Laptop (0x24b8)
+#define NVIDIA_RTX_A3000_12GB_Laptop (0x24b9)
+#define NVIDIA_RTX_A4500_Laptop (0x24ba)
+#define NVIDIA_RTX_A3000_12GB_Laptop_2 (0x24bb)
+#define NVIDIA_RTX_A2000_Laptop (0x25b8)
+#define NVIDIA_RTX_A1000_Laptop (0x25b9)
+#define NVIDIA_RTX_A2000_8GB_Laptop (0x25ba)
+#define NVIDIA_RTX_A500_Laptop (0x25bb)
+#define NVIDIA_RTX_A1000_6GB_Laptop (0x25bc)
+#define NVIDIA_RTX_A500_Laptop_2 (0x25bd)
+#define NVIDIA_RTX_5000_Ada_Generation_Laptop (0x2730)
+#define NVIDIA_RTX_4000_Ada_Generation_Laptop (0x27ba)
+#define NVIDIA_RTX_3500_Ada_Generation_Laptop (0x27bb)
+#define NVIDIA_RTX_3000_Ada_Generation_Laptop (0x2838)
+#define NVIDIA_RTX_2000_Ada_Generation_Laptop (0x28b8)
+#define NVIDIA_RTX_1000_Ada_Generation_Laptop (0x28b9)
+#define NVIDIA_RTX_500_Ada_Generation_Laptop (0x28ba)
+#define NVIDIA_RTX_500_Ada_Generation_Laptop_2 (0x28bb)
+
+#define NVIDIA_RTX_A4500_Embedded (0x24fa)
+#define NVIDIA_RTX_A1000_Embedded (0x25f9)
+#define NVIDIA_RTX_A2000_Embedded (0x25fa)
+#define NVIDIA_RTX_A500_Embedded (0x25fb)
+#define NVIDIA_RTX_5000_Ada_Generation_Embedded (0x2770)
+#define NVIDIA_RTX_3500_Ada_Generation_Embedded (0x27fb)
+#define NVIDIA_RTX_2000_Ada_Generation_Embedded (0x28f8)
+
#endif /* CUDA_DEVICES_H */
--
2.48.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 9/9] gpu/cuda: support CUDA 13 building
2025-09-15 14:41 [PATCH 1/9] gpu/cuda: add NVIDIA GPU H100 Gregory Etelson
` (6 preceding siblings ...)
2025-09-15 14:41 ` [PATCH 8/9] " Gregory Etelson
@ 2025-09-15 14:41 ` Gregory Etelson
7 siblings, 0 replies; 9+ messages in thread
From: Gregory Etelson @ 2025-09-15 14:41 UTC (permalink / raw)
To: dev; +Cc: getelson, mkashani, rasland, Bing Zhao, Elena Agostini
From: Bing Zhao <bingz@nvidia.com>
The API name and prototype have been changed in the new CUDA, this
commit will ensure the compatibility with different versions.
Signed-off-by: Bing Zhao <bingz@nvidia.com>
---
drivers/gpu/cuda/cuda.c | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/drivers/gpu/cuda/cuda.c b/drivers/gpu/cuda/cuda.c
index e050b6370b..3f3391cf30 100644
--- a/drivers/gpu/cuda/cuda.c
+++ b/drivers/gpu/cuda/cuda.c
@@ -28,6 +28,28 @@ static CUresult CUDAAPI (*sym_cuGetProcAddress)(const char *symbol,
void **pfn, int cudaVersion, uint64_t flags);
/* CUDA Driver functions loaded with cuGetProcAddress for versioning */
+#if defined(CUDA_VERSION) && (CUDA_VERSION >= 13000)
+static PFN_cuGetErrorString_v6000 pfn_cuGetErrorString;
+static PFN_cuGetErrorName_v6000 pfn_cuGetErrorName;
+static PFN_cuPointerSetAttribute_v6000 pfn_cuPointerSetAttribute;
+static PFN_cuDeviceGetAttribute_v2000 pfn_cuDeviceGetAttribute;
+static PFN_cuDeviceGetByPCIBusId_v4010 pfn_cuDeviceGetByPCIBusId;
+static PFN_cuDevicePrimaryCtxRetain_v7000 pfn_cuDevicePrimaryCtxRetain;
+static PFN_cuDevicePrimaryCtxRelease_v11000 pfn_cuDevicePrimaryCtxRelease;
+static PFN_cuDeviceTotalMem_v3020 pfn_cuDeviceTotalMem;
+static PFN_cuDeviceGetName_v2000 pfn_cuDeviceGetName;
+static PFN_cuCtxGetApiVersion_v3020 pfn_cuCtxGetApiVersion;
+static PFN_cuCtxSetCurrent_v4000 pfn_cuCtxSetCurrent;
+static PFN_cuCtxGetCurrent_v4000 pfn_cuCtxGetCurrent;
+static PFN_cuCtxGetDevice_v2000 pfn_cuCtxGetDevice;
+static PFN_cuCtxGetExecAffinity_v11040 pfn_cuCtxGetExecAffinity;
+static PFN_cuMemAlloc_v3020 pfn_cuMemAlloc;
+static PFN_cuMemFree_v3020 pfn_cuMemFree;
+static PFN_cuMemHostRegister_v6050 pfn_cuMemHostRegister;
+static PFN_cuMemHostUnregister_v4000 pfn_cuMemHostUnregister;
+static PFN_cuMemHostGetDevicePointer_v3020 pfn_cuMemHostGetDevicePointer;
+static PFN_cuFlushGPUDirectRDMAWrites_v11030 pfn_cuFlushGPUDirectRDMAWrites;
+#else
static PFN_cuGetErrorString pfn_cuGetErrorString;
static PFN_cuGetErrorName pfn_cuGetErrorName;
static PFN_cuPointerSetAttribute pfn_cuPointerSetAttribute;
@@ -48,6 +70,7 @@ static PFN_cuMemHostRegister pfn_cuMemHostRegister;
static PFN_cuMemHostUnregister pfn_cuMemHostUnregister;
static PFN_cuMemHostGetDevicePointer pfn_cuMemHostGetDevicePointer;
static PFN_cuFlushGPUDirectRDMAWrites pfn_cuFlushGPUDirectRDMAWrites;
+#endif
static void *cudalib;
static unsigned int cuda_api_version;
--
2.48.1
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-09-15 14:44 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-09-15 14:41 [PATCH 1/9] gpu/cuda: add NVIDIA GPU H100 Gregory Etelson
2025-09-15 14:41 ` [PATCH 2/9] gpu/cuda: new RoyB A100T GPU ID Gregory Etelson
2025-09-15 14:41 ` [PATCH 3/9] [gpu/cuda] New NVIDIA GPU Hopper device ID on Grace Gregory Etelson
2025-09-15 14:41 ` [PATCH 4/9] gpu/cuda: add new Hopper GPU IDs Gregory Etelson
2025-09-15 14:41 ` [PATCH 5/9] gpu/cuda: add new gpu hopper 80gb device id Gregory Etelson
2025-09-15 14:41 ` [PATCH 6/9] gpu/cuda: more gpu ID for h100 and l40 Gregory Etelson
2025-09-15 14:41 ` [PATCH 7/9] gpu/cuda: extend NVIDIA GPU device ID list Gregory Etelson
2025-09-15 14:41 ` [PATCH 8/9] " Gregory Etelson
2025-09-15 14:41 ` [PATCH 9/9] gpu/cuda: support CUDA 13 building Gregory Etelson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).