Mesa (master): i915c: Add a symlink for i830_dri.so
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Mon May 3 23:26:22 UTC 2021
Module: Mesa
Branch: master
Commit: ceba7f695271b514e11b6ec63bff994b45fcbeef
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ceba7f695271b514e11b6ec63bff994b45fcbeef
Author: Adam Jackson <ajax at redhat.com>
Date: Fri Apr 30 14:43:23 2021 -0400
i915c: Add a symlink for i830_dri.so
The gallium driver doesn't support gen2, so let's make it possible to
keep both i915g and i830 drivers installed in parallel.
Reviewed-by: Eric Anholt <eric at anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10554>
---
include/pci_ids/i830_pci_ids.h | 4 ++++
include/pci_ids/i915_pci_ids.h | 4 ----
src/loader/pci_id_driver_map.h | 7 +++++++
src/mesa/drivers/dri/i915/intel_context.c | 1 +
src/mesa/drivers/dri/i915/intel_screen.c | 7 +++++++
src/mesa/drivers/dri/i915/intel_screen.h | 1 +
src/mesa/drivers/dri/meson.build | 1 +
7 files changed, 21 insertions(+), 4 deletions(-)
diff --git a/include/pci_ids/i830_pci_ids.h b/include/pci_ids/i830_pci_ids.h
new file mode 100644
index 00000000000..b04eb48d726
--- /dev/null
+++ b/include/pci_ids/i830_pci_ids.h
@@ -0,0 +1,4 @@
+CHIPSET(0x3577, I830_M, "Intel(R) 830M")
+CHIPSET(0x2562, 845_G, "Intel(R) 845G")
+CHIPSET(0x3582, I855_GM, "Intel(R) 852GM/855GM")
+CHIPSET(0x2572, I865_G, "Intel(R) 865G")
diff --git a/include/pci_ids/i915_pci_ids.h b/include/pci_ids/i915_pci_ids.h
index 1c43c8ec798..4cd1faf746a 100644
--- a/include/pci_ids/i915_pci_ids.h
+++ b/include/pci_ids/i915_pci_ids.h
@@ -1,7 +1,3 @@
-CHIPSET(0x3577, I830_M, "Intel(R) 830M")
-CHIPSET(0x2562, 845_G, "Intel(R) 845G")
-CHIPSET(0x3582, I855_GM, "Intel(R) 852GM/855GM")
-CHIPSET(0x2572, I865_G, "Intel(R) 865G")
CHIPSET(0x2582, I915_G, "Intel(R) 915G")
CHIPSET(0x258A, E7221_G, "Intel(R) E7221G (i915)")
CHIPSET(0x2592, I915_GM, "Intel(R) 915GM")
diff --git a/src/loader/pci_id_driver_map.h b/src/loader/pci_id_driver_map.h
index 1dc07be390c..4129389d889 100644
--- a/src/loader/pci_id_driver_map.h
+++ b/src/loader/pci_id_driver_map.h
@@ -8,6 +8,12 @@
# error "Only include from loader.c"
#endif
+static const int i830_chip_ids[] = {
+#define CHIPSET(chip, desc, name) chip,
+#include "pci_ids/i830_pci_ids.h"
+#undef CHIPSET
+};
+
static const int i915_chip_ids[] = {
#define CHIPSET(chip, desc, name) chip,
#include "pci_ids/i915_pci_ids.h"
@@ -66,6 +72,7 @@ static const struct {
int num_chips_ids;
bool (*predicate)(int fd);
} driver_map[] = {
+ { 0x8086, "i830", i830_chip_ids, ARRAY_SIZE(i830_chip_ids) },
{ 0x8086, "i915", i915_chip_ids, ARRAY_SIZE(i915_chip_ids) },
{ 0x8086, "i965", i965_chip_ids, ARRAY_SIZE(i965_chip_ids) },
{ 0x8086, "iris", NULL, -1, is_kernel_i915 },
diff --git a/src/mesa/drivers/dri/i915/intel_context.c b/src/mesa/drivers/dri/i915/intel_context.c
index 4fe9f4b5609..a2b0382b874 100644
--- a/src/mesa/drivers/dri/i915/intel_context.c
+++ b/src/mesa/drivers/dri/i915/intel_context.c
@@ -72,6 +72,7 @@ i915_get_renderer_string(unsigned deviceID)
switch (deviceID) {
#undef CHIPSET
#define CHIPSET(id, symbol, str) case id: chipset = str; break;
+#include "pci_ids/i830_pci_ids.h"
#include "pci_ids/i915_pci_ids.h"
default:
chipset = "Unknown Intel Chipset";
diff --git a/src/mesa/drivers/dri/i915/intel_screen.c b/src/mesa/drivers/dri/i915/intel_screen.c
index 33ca0321722..6a4f9cc302e 100644
--- a/src/mesa/drivers/dri/i915/intel_screen.c
+++ b/src/mesa/drivers/dri/i915/intel_screen.c
@@ -1271,3 +1271,10 @@ PUBLIC const __DRIextension **__driDriverGetExtensions_i915(void)
return i915_driver_extensions;
}
+
+PUBLIC const __DRIextension **__driDriverGetExtensions_i830(void)
+{
+ globalDriverAPI = &i915_driver_api;
+
+ return i915_driver_extensions;
+}
diff --git a/src/mesa/drivers/dri/i915/intel_screen.h b/src/mesa/drivers/dri/i915/intel_screen.h
index 80f6df41aac..0327dbc64be 100644
--- a/src/mesa/drivers/dri/i915/intel_screen.h
+++ b/src/mesa/drivers/dri/i915/intel_screen.h
@@ -158,6 +158,7 @@ extern void intelDestroyContext(__DRIcontext * driContextPriv);
extern GLboolean intelUnbindContext(__DRIcontext * driContextPriv);
+const __DRIextension **__driDriverGetExtensions_i830(void);
const __DRIextension **__driDriverGetExtensions_i915(void);
extern const __DRI2fenceExtension intelFenceExtension;
diff --git a/src/mesa/drivers/dri/meson.build b/src/mesa/drivers/dri/meson.build
index 97210c8e638..239ca962c2a 100644
--- a/src/mesa/drivers/dri/meson.build
+++ b/src/mesa/drivers/dri/meson.build
@@ -25,6 +25,7 @@ _dri_link = []
if with_dri_i915
subdir('i915')
_dri_drivers += libi915
+ _dri_link += 'i830_dri.so'
_dri_link += 'i915_dri.so'
endif
if with_dri_i965
More information about the mesa-commit
mailing list