From c95d8dcf6116774042a5ef4c5718206dd4ec0e64 Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Mon, 31 Mar 2025 15:28:58 +0200 Subject: [PATCH 1/2] xf86: Accept devices with the kernel's efidrm driver Add a workaround to accept devices of the kernel's efidrm driver. Makes Xorg work on pre-configured displays with UEFI and the DRM graphics stack. Review of the efidrm driver happens at [1]. Signed-off-by: Thomas Zimmermann Link: https://patchwork.freedesktop.org/series/146477/ # 1 --- hw/xfree86/common/xf86platformBus.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/xfree86/common/xf86platformBus.c b/hw/xfree86/common/xf86platformBus.c index 2962c8b21..5994d06ca 100644 --- a/hw/xfree86/common/xf86platformBus.c +++ b/hw/xfree86/common/xf86platformBus.c @@ -580,6 +580,9 @@ xf86platformProbeDev(DriverPtr drvp) if (ServerIsNotSeat0()) { break; } else { + /* Accept the device if the driver is efidrm */ + if (strcmp(xf86_platform_devices[j].attribs->driver, "efidrm") == 0) + break; /* Accept the device if the driver is hyperv_drm */ if (strcmp(xf86_platform_devices[j].attribs->driver, "hyperv_drm") == 0) break; From 5fa26c018c0fd4013075e717b5cfd87b01713fa3 Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Mon, 31 Mar 2025 15:32:19 +0200 Subject: [PATCH 2/2] xf86: Accept devices with the kernel's vesadrm driver Add a workaround to accept devices of the kernel's vesadrm driver. Makes Xorg work on pre-configured displays with VESA and the DRM graphics stack. Review of the vesadrm driver happens at [1]. Signed-off-by: Thomas Zimmermann Link: https://patchwork.freedesktop.org/series/146477/ # 1 --- hw/xfree86/common/xf86platformBus.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/xfree86/common/xf86platformBus.c b/hw/xfree86/common/xf86platformBus.c index 5994d06ca..ba1cb74a2 100644 --- a/hw/xfree86/common/xf86platformBus.c +++ b/hw/xfree86/common/xf86platformBus.c @@ -592,6 +592,9 @@ xf86platformProbeDev(DriverPtr drvp) /* Accept the device if the driver is simpledrm */ if (strcmp(xf86_platform_devices[j].attribs->driver, "simpledrm") == 0) break; + /* Accept the device if the driver is vesadrm */ + if (strcmp(xf86_platform_devices[j].attribs->driver, "vesadrm") == 0) + break; } if (xf86IsPrimaryPlatform(&xf86_platform_devices[j]))