From cc255e01d86784a519899e42d00a7b6d6197cdc9 Mon Sep 17 00:00:00 2001 From: Joshua Warren <816217+joshuaswarren@users.noreply.github.com> Date: Mon, 9 Nov 2026 22:49:38 -0600 Subject: [PATCH] asahi: accept the aurora kernel driver name at every version->name check The 7.3 kernel registers this DRM driver as "aurora". The two device probe sites (the Gallium lib and the Vulkan physical device) only accepted the old name, so on such a kernel every render node is rejected: no GL, no Vulkan, and the compositor fails to start. The v3d simulator GEM sniff has the same gate and fell back to the dumb backend. Accept both names at the three checks. No behavior change for kernels using the old name. The two probes are the only version->name gates for this driver in src/asahi; a full host build did not run for this patch (the dev machine lacks the LLVM SPIRV translator and the native compiler tool the build needs), so the first compile is CI or the aarch64 pipeline. --- src/asahi/lib/agx_device.c | 3 ++- src/asahi/vulkan/hk_physical_device.c | 1 + src/broadcom/simulator/v3d_simulator.c | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/asahi/lib/agx_device.c b/src/asahi/lib/agx_device.c index f158e0e7acea..afed9484ae86 100644 --- a/src/asahi/lib/agx_device.c +++ b/src/asahi/lib/agx_device.c @@ -516,7 +516,8 @@ agx_open_device(void *memctx, struct agx_device *dev) return NULL; } - if (!strcmp(version->name, "asahi")) { + if (!strcmp(version->name, "asahi") || + !strcmp(version->name, "aurora")) { dev->is_virtio = false; dev->ops = agx_device_drm_ops; } else if (!strcmp(version->name, "virtio_gpu")) { diff --git a/src/asahi/vulkan/hk_physical_device.c b/src/asahi/vulkan/hk_physical_device.c index 80112cec02b2..81085945390f 100644 --- a/src/asahi/vulkan/hk_physical_device.c +++ b/src/asahi/vulkan/hk_physical_device.c @@ -1220,6 +1220,7 @@ hk_create_drm_physical_device(struct vk_instance *_instance, } bool is_asahi = (strcmp(version->name, "asahi") == 0); + is_asahi |= strcmp(version->name, "aurora") == 0; is_asahi |= strcmp(version->name, "virtio_gpu") == 0; drmFreeVersion(version); diff --git a/src/broadcom/simulator/v3d_simulator.c b/src/broadcom/simulator/v3d_simulator.c index bf353beb9ef2..274f2bee4299 100644 --- a/src/broadcom/simulator/v3d_simulator.c +++ b/src/broadcom/simulator/v3d_simulator.c @@ -1224,7 +1224,8 @@ v3d_simulator_init(int fd) sim_file->gem_type = GEM_I915; else if (version && strncmp(version->name, "amdgpu", version->name_len) == 0) sim_file->gem_type = GEM_AMDGPU; - else if (version && strncmp(version->name, "asahi", version->name_len) == 0) + else if (version && (strncmp(version->name, "asahi", version->name_len) == 0 || + strncmp(version->name, "aurora", version->name_len) == 0)) sim_file->gem_type = GEM_ASAHI; else sim_file->gem_type = GEM_DUMB;