summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAlistair Popple <apopple@nvidia.com>2026-09-09 16:44:57 +1000
committerDanilo Krummrich <dakr@kernel.org>2026-09-27 14:02:20 +0200
commit342aaa7bb3cc1066ae9055c936b667ecd66de0ec (patch)
treeaffa80638e06a85f7d53579528f7fdfa5346e00a /include
parentecedc604e0aa84838f67ee309a8db1076940e3c2 (diff)
downloadlinux-next-342aaa7bb3cc1066ae9055c936b667ecd66de0ec.tar.gz
linux-next-342aaa7bb3cc1066ae9055c936b667ecd66de0ec.zip
drm: nova: Add GPU architecture enum to nova-drm UAPI
The GPU architecture to be exposed to user-space. This adds a public enum to the userspace headers for each chip architecture. Nova-core can then use this enum to define its architectures. This does create a coupling between nova-drm and nova-core whereby nova-core depends on the values defined by the user-space API for nova-drm. However this is entirely appropriate as nova-core must be bound by the UAPI headers as the enum values are read by nova-core and passed through to user-space. It also requires a minor change to the bounded_enum! macro to match the architecture values in an expression context. Signed-off-by: Alistair Popple <apopple@nvidia.com> Link: https://patch.msgid.link/20260909064506.910162-5-apopple@nvidia.com Signed-off-by: Danilo Krummrich <dakr@kernel.org>
Diffstat (limited to 'include')
-rw-r--r--include/uapi/drm/nova_drm.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/uapi/drm/nova_drm.h b/include/uapi/drm/nova_drm.h
index 3ca90ed9d2bb..f0dcbca1908d 100644
--- a/include/uapi/drm/nova_drm.h
+++ b/include/uapi/drm/nova_drm.h
@@ -26,6 +26,18 @@ extern "C" {
#define NOVA_GETPARAM_VRAM_BAR_SIZE 0x1
/**
+ * enum drm_nova_architecture - GPU architecture identifier
+ */
+enum drm_nova_architecture {
+ NOVA_DRM_ARCHITECTURE_TURING = 0x16,
+ NOVA_DRM_ARCHITECTURE_AMPERE = 0x17,
+ NOVA_DRM_ARCHITECTURE_HOPPER = 0x18,
+ NOVA_DRM_ARCHITECTURE_ADA = 0x19,
+ NOVA_DRM_ARCHITECTURE_BLACKWELL_GB10X = 0x1a,
+ NOVA_DRM_ARCHITECTURE_BLACKWELL_GB20X = 0x1b,
+};
+
+/**
* struct drm_nova_getparam - query GPU and driver metadata
*/
struct drm_nova_getparam {