loader: Add Xe KMD support
authorJosé Roberto de Souza <jose.souza@intel.com>
Wed, 16 Nov 2022 16:14:12 +0000 (08:14 -0800)
committerMarge Bot <emma+marge@anholt.net>
Wed, 12 Apr 2023 10:41:21 +0000 (10:41 +0000)
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22425>

src/loader/loader.c
src/loader/pci_id_driver_map.h

index 3e55959..c06096d 100644 (file)
@@ -121,13 +121,14 @@ static char *loader_get_kernel_driver_name(int fd)
 }
 
 bool
-is_kernel_i915(int fd)
+iris_predicate(int fd)
 {
    char *kernel_driver = loader_get_kernel_driver_name(fd);
-   bool is_i915 = kernel_driver && strcmp(kernel_driver, "i915") == 0;
+   bool ret = kernel_driver && (strcmp(kernel_driver, "i915") == 0 ||
+                                strcmp(kernel_driver, "xe") == 0);
 
    free(kernel_driver);
-   return is_i915;
+   return ret;
 }
 
 int
index 59dc5b4..2da47a1 100644 (file)
@@ -44,7 +44,7 @@ static const int vmwgfx_chip_ids[] = {
 #undef CHIPSET
 };
 
-bool is_kernel_i915(int fd);
+bool iris_predicate(int fd);
 
 static const struct {
    int vendor_id;
@@ -55,7 +55,7 @@ static const struct {
 } driver_map[] = {
    { 0x8086, "i915", i915_chip_ids, ARRAY_SIZE(i915_chip_ids) },
    { 0x8086, "crocus", crocus_chip_ids, ARRAY_SIZE(crocus_chip_ids) },
-   { 0x8086, "iris", NULL, -1, is_kernel_i915 },
+   { 0x8086, "iris", NULL, -1, iris_predicate },
    { 0x1002, "r300", r300_chip_ids, ARRAY_SIZE(r300_chip_ids) },
    { 0x1002, "r600", r600_chip_ids, ARRAY_SIZE(r600_chip_ids) },
    { 0x1002, "radeonsi", NULL, -1 },