-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Log:
- Loading branch information
Showing
4 changed files
with
168 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,9 @@ | ||
mesa (24.3.0-1deepin1) unstable; urgency=medium | ||
|
||
* Add deepin patches | ||
|
||
-- xiangzelong <[email protected]> Fri, 29 Nov 2024 14:48:08 +0800 | ||
|
||
mesa (24.3.0-1) experimental; urgency=medium | ||
|
||
* New upstream release. | ||
|
79 changes: 79 additions & 0 deletions
79
debian/patches/0001-fix-meson.build-more-Gallium-Vulkan-drivers-for-on-a.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
From 6963bb29083910204f53924476f54f23c6578b86 Mon Sep 17 00:00:00 2001 | ||
From: Mingcong Bai <[email protected]> | ||
Update: xzl <[email protected]> | ||
Date: Fri, 29 Nov 2024 13:55:39 +0800 | ||
Subject: [PATCH 1/1] add more Gallium and Vulkan drivers for all architectures | ||
|
||
- This is a pre-upstream patch, I will split this into multiple ones to | ||
justify each. | ||
- Enable svga Gallium driver by default on ARM targets as VMware can run ARM | ||
guest machines. | ||
- Enable etnaviv Gallium driver by default on all architectures to support | ||
older JEMO JM-series GPUs. | ||
- The xe kernel driver is now available and possible to be utilised on all | ||
known architectures listed in meson.build. Enable iris Gallium drivers | ||
on all architectures by default. | ||
- Enable more Vulkan drivers following the same spirit as above. | ||
--- | ||
meson.build | 25 +++++++++++++++++-------- | ||
1 file changed, 17 insertions(+), 8 deletions(-) | ||
|
||
diff --git a/meson.build b/meson.build | ||
index 52b713c2..651a6e69 100644 | ||
--- a/meson.build | ||
+++ b/meson.build | ||
@@ -129,21 +129,21 @@ if gallium_drivers.contains('auto') | ||
if ['x86', 'x86_64'].contains(host_machine.cpu_family()) | ||
gallium_drivers = [ | ||
'r300', 'r600', 'radeonsi', 'nouveau', 'virgl', 'svga', 'llvmpipe', 'softpipe', | ||
- 'iris', 'crocus', 'i915', 'zink' | ||
+ 'iris', 'crocus', 'i915', 'zink', 'etnaviv"' | ||
] | ||
elif ['arm', 'aarch64'].contains(host_machine.cpu_family()) | ||
gallium_drivers = [ | ||
'v3d', 'vc4', 'freedreno', 'etnaviv', 'nouveau', 'svga', | ||
'tegra', 'virgl', 'lima', 'panfrost', 'llvmpipe', 'softpipe', 'iris', | ||
- 'zink' | ||
+ 'zink', 'r300', 'r600', 'radeonsi', 'svga', 'asiha' | ||
] | ||
elif ['mips', 'mips64', 'ppc', 'ppc64', 'riscv32', 'riscv64'].contains(host_machine.cpu_family()) | ||
gallium_drivers = [ | ||
- 'r300', 'r600', 'radeonsi', 'nouveau', 'virgl', 'llvmpipe', 'softpipe', 'zink' | ||
+ 'r300', 'r600', 'radeonsi', 'nouveau', 'virgl', 'llvmpipe', 'softpipe', 'zink', 'iris', 'etnaviv' | ||
] | ||
elif ['loongarch64'].contains(host_machine.cpu_family()) | ||
gallium_drivers = [ | ||
- 'r300', 'r600', 'radeonsi', 'nouveau', 'virgl', 'etnaviv', 'llvmpipe', 'softpipe', 'zink' | ||
+ 'r300', 'r600', 'radeonsi', 'nouveau', 'virgl', 'etnaviv', 'llvmpipe', 'softpipe', 'zink', 'iris' | ||
] | ||
else | ||
error('Unknown architecture @0@. Please pass -Dgallium-drivers to set driver options. Patches gladly accepted to fix this.'.format( | ||
@@ -219,13 +219,22 @@ _vulkan_drivers = get_option('vulkan-drivers') | ||
if _vulkan_drivers.contains('auto') | ||
if system_has_kms_drm | ||
if host_machine.cpu_family().startswith('x86') | ||
- _vulkan_drivers = ['amd', 'intel', 'intel_hasvk', 'nouveau', 'swrast'] | ||
+ _vulkan_drivers = [ | ||
+ 'amd', 'intel', 'intel_hasvk', 'nouveau', 'swrast', 'virtio' | ||
+ ] | ||
elif ['arm', 'aarch64'].contains(host_machine.cpu_family()) | ||
- _vulkan_drivers = ['swrast', 'intel'] | ||
+ _vulkan_drivers = [ | ||
+ 'amd', 'broadcom', 'freedreno', 'intel', 'nouveau', 'panfrost', | ||
+ 'swrast', 'virtio' | ||
+ ] | ||
elif ['mips', 'mips64', 'ppc', 'ppc64', 'riscv32', 'riscv64'].contains(host_machine.cpu_family()) | ||
- _vulkan_drivers = ['amd', 'swrast'] | ||
+ _vulkan_drivers = [ | ||
+ 'amd', 'intel', 'nouveau', 'swrast', 'virtio' | ||
+ ] | ||
elif ['loongarch64'].contains(host_machine.cpu_family()) | ||
- _vulkan_drivers = ['amd', 'swrast'] | ||
+ _vulkan_drivers = [ | ||
+ 'amd', 'intel', 'nouveau', 'swrast', 'virtio' | ||
+ ] | ||
else | ||
error('Unknown architecture @0@. Please pass -Dvulkan-drivers to set driver options. Patches gladly accepted to fix this.'.format( | ||
host_machine.cpu_family())) | ||
-- | ||
2.45.2 |
81 changes: 81 additions & 0 deletions
81
debian/patches/0002-add-zx-s-driver-to-mesa-s-driver-map-list-and-export.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
From 61f6488f031e5501cdf0027f70698517fac41c89 Mon Sep 17 00:00:00 2001 | ||
From: wolfsunyu <[email protected]> | ||
Date: Mon, 29 Oct 2018 10:02:07 +0800 | ||
Subject: [PATCH 1/1] add zx's driver to mesa's driver map list and export a | ||
function to print mesa's driver map list | ||
|
||
Change-Id: I7d2e99d7ccc7263b2294b9d64ea4d954698a3b35 | ||
--- | ||
include/pci_ids/zx_pci_ids.h | 2 ++ | ||
src/loader/loader.c | 14 ++++++++++++++ | ||
src/loader/pci_id_driver_map.h | 7 +++++++ | ||
3 files changed, 23 insertions(+) | ||
create mode 100644 include/pci_ids/zx_pci_ids.h | ||
|
||
diff --git a/include/pci_ids/zx_pci_ids.h b/include/pci_ids/zx_pci_ids.h | ||
new file mode 100644 | ||
index 00000000000..ca02a64ad45 | ||
--- /dev/null | ||
+++ b/include/pci_ids/zx_pci_ids.h | ||
@@ -0,0 +1,2 @@ | ||
+CHIPSET(0x3A03, Exc) | ||
+CHIPSET(0x3A04, Exc) | ||
diff --git a/src/loader/loader.c b/src/loader/loader.c | ||
index db242b8f8f4..bf3cc4d7d67 100644 | ||
--- a/src/loader/loader.c | ||
+++ b/src/loader/loader.c | ||
@@ -73,6 +73,8 @@ | ||
#define PATH_MAX 4096 | ||
#endif | ||
|
||
+__attribute__((visibility("default"))) void zx_print_driver_map_list(void); | ||
+ | ||
static void default_logger(int level, const char *fmt, ...) | ||
{ | ||
if (level <= _LOADER_WARNING) { | ||
@@ -83,6 +85,18 @@ static void default_logger(int level, const char *fmt, ...) | ||
} | ||
} | ||
|
||
+void zx_print_driver_map_list(void) | ||
+{ | ||
+ int i=0; | ||
+ | ||
+ printf("os mesa driver map list:\n"); | ||
+ while(driver_map[i].driver) | ||
+ { | ||
+ printf("vendor_id: %x, driver: %s\n", driver_map[i].vendor_id, driver_map[i].driver); | ||
+ i++; | ||
+ } | ||
+} | ||
+ | ||
static loader_logger *log_ = default_logger; | ||
|
||
int | ||
diff --git a/src/loader/pci_id_driver_map.h b/src/loader/pci_id_driver_map.h | ||
index b6febe4f53a..3fc0457356e 100644 | ||
--- a/src/loader/pci_id_driver_map.h | ||
+++ b/src/loader/pci_id_driver_map.h | ||
@@ -44,6 +44,12 @@ static const int vmwgfx_chip_ids[] = { | ||
#undef CHIPSET | ||
}; | ||
|
||
+static const int zx_chip_ids[] = { | ||
+#define CHIPSET(chip, family) chip, | ||
+#include "pci_ids/zx_pci_ids.h" | ||
+#undef CHIPSET | ||
+}; | ||
+ | ||
bool iris_predicate(int fd, const char *driver); | ||
bool nouveau_zink_predicate(int fd, const char *driver); | ||
|
||
@@ -64,6 +70,7 @@ static const struct { | ||
{ 0x10de, "zink", NULL, -1, nouveau_zink_predicate }, | ||
{ 0x1af4, "virtio_gpu", virtio_gpu_chip_ids, ARRAY_SIZE(virtio_gpu_chip_ids) }, | ||
{ 0x15ad, "vmwgfx", vmwgfx_chip_ids, ARRAY_SIZE(vmwgfx_chip_ids) }, | ||
+ { 0x1d17, "zx", zx_chip_ids, ARRAY_SIZE(zx_chip_ids), }, | ||
}; | ||
|
||
#endif /* _PCI_ID_DRIVER_MAP_H_ */ | ||
-- | ||
2.46.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,4 @@ | ||
path_max.diff | ||
src_glx_dri_common.h.diff | ||
0001-fix-meson.build-more-Gallium-Vulkan-drivers-for-on-a.patch | ||
0002-add-zx-s-driver-to-mesa-s-driver-map-list-and-export.patch |