mirror of
https://git.yoctoproject.org/poky
synced 2026-04-04 05:02:21 +02:00
mesa: update 22.0.3 -> 22.1.2
(From OE-Core rev: d5b2e40be6d6e4c52078ab5a087eefaa7330c320) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
04a4ecd767
commit
d49db48d35
@@ -0,0 +1,113 @@
|
||||
From feb4ec510b1328fdd9aa77305d3273d1f9c7e124 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex@linutronix.de>
|
||||
Date: Thu, 9 Jun 2022 11:42:05 +0200
|
||||
Subject: [PATCH] swrast_kms: use swkmsDRI2Extension instead of
|
||||
driDRI2Extension
|
||||
|
||||
This set of changes:
|
||||
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15649
|
||||
|
||||
caused a regression in Xorg when using swrast_kms:
|
||||
(EE) AIGLX error: Calling driver entry point failed
|
||||
|
||||
This commit changes the swrast_kms driver to use a dedicated screen init function
|
||||
(which I believe was overlooked); I also took the opportunity to rename the
|
||||
associated plumbling to have swrast-specific names.
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16942]
|
||||
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
|
||||
---
|
||||
src/gallium/frontends/dri/dri2.c | 16 ++++++++--------
|
||||
src/gallium/frontends/dri/dri_screen.h | 4 ++--
|
||||
src/gallium/frontends/dri/dri_util.c | 2 +-
|
||||
src/gallium/targets/dri/target.c | 2 +-
|
||||
4 files changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/src/gallium/frontends/dri/dri2.c b/src/gallium/frontends/dri/dri2.c
|
||||
index 63ac9d5..de33789 100644
|
||||
--- a/src/gallium/frontends/dri/dri2.c
|
||||
+++ b/src/gallium/frontends/dri/dri2.c
|
||||
@@ -2508,7 +2508,7 @@ release_pipe:
|
||||
* Returns the struct gl_config supported by this driver.
|
||||
*/
|
||||
static const __DRIconfig **
|
||||
-dri_kms_init_screen(__DRIscreen * sPriv)
|
||||
+dri_swrast_kms_init_screen(__DRIscreen * sPriv)
|
||||
{
|
||||
#if defined(GALLIUM_SOFTPIPE)
|
||||
const __DRIconfig **configs;
|
||||
@@ -2613,8 +2613,8 @@ static const struct __DRIDriverVtableExtensionRec galliumdrm_vtable = {
|
||||
* hook. The latter is used to explicitly initialise the kms_swrast driver
|
||||
* rather than selecting the approapriate driver as suggested by the loader.
|
||||
*/
|
||||
-const struct __DriverAPIRec dri_kms_driver_api = {
|
||||
- .InitScreen = dri_kms_init_screen,
|
||||
+const struct __DriverAPIRec dri_swrast_kms_driver_api = {
|
||||
+ .InitScreen = dri_swrast_kms_init_screen,
|
||||
.DestroyScreen = dri_destroy_screen,
|
||||
.CreateBuffer = dri2_create_buffer,
|
||||
.DestroyBuffer = dri_destroy_buffer,
|
||||
@@ -2633,17 +2633,17 @@ const __DRIextension *galliumdrm_driver_extensions[] = {
|
||||
NULL
|
||||
};
|
||||
|
||||
-static const struct __DRIDriverVtableExtensionRec dri_kms_vtable = {
|
||||
+static const struct __DRIDriverVtableExtensionRec dri_swrast_kms_vtable = {
|
||||
.base = { __DRI_DRIVER_VTABLE, 1 },
|
||||
- .vtable = &dri_kms_driver_api,
|
||||
+ .vtable = &dri_swrast_kms_driver_api,
|
||||
};
|
||||
|
||||
-const __DRIextension *dri_kms_driver_extensions[] = {
|
||||
+const __DRIextension *dri_swrast_kms_driver_extensions[] = {
|
||||
&driCoreExtension.base,
|
||||
&driImageDriverExtension.base,
|
||||
- &driDRI2Extension.base,
|
||||
+ &swkmsDRI2Extension.base,
|
||||
&gallium_config_options.base,
|
||||
- &dri_kms_vtable.base,
|
||||
+ &dri_swrast_kms_vtable.base,
|
||||
NULL
|
||||
};
|
||||
|
||||
diff --git a/src/gallium/frontends/dri/dri_screen.h b/src/gallium/frontends/dri/dri_screen.h
|
||||
index 0ee2feb..0bb8817 100644
|
||||
--- a/src/gallium/frontends/dri/dri_screen.h
|
||||
+++ b/src/gallium/frontends/dri/dri_screen.h
|
||||
@@ -168,8 +168,8 @@ dri_destroy_screen_helper(struct dri_screen * screen);
|
||||
void
|
||||
dri_destroy_screen(__DRIscreen * sPriv);
|
||||
|
||||
-extern const struct __DriverAPIRec dri_kms_driver_api;
|
||||
-extern const __DRIextension *dri_kms_driver_extensions[];
|
||||
+extern const struct __DriverAPIRec dri_swrast_kms_driver_api;
|
||||
+extern const __DRIextension *dri_swrast_kms_driver_extensions[];
|
||||
extern const struct __DriverAPIRec galliumdrm_driver_api;
|
||||
extern const __DRIextension *galliumdrm_driver_extensions[];
|
||||
extern const struct __DriverAPIRec galliumsw_driver_api;
|
||||
diff --git a/src/gallium/frontends/dri/dri_util.c b/src/gallium/frontends/dri/dri_util.c
|
||||
index 8d60526..03614e1 100644
|
||||
--- a/src/gallium/frontends/dri/dri_util.c
|
||||
+++ b/src/gallium/frontends/dri/dri_util.c
|
||||
@@ -187,7 +187,7 @@ swkmsCreateNewScreen(int scrn, int fd,
|
||||
const __DRIconfig ***driver_configs, void *data)
|
||||
{
|
||||
return driCreateNewScreen2(scrn, fd, extensions,
|
||||
- dri_kms_driver_extensions,
|
||||
+ dri_swrast_kms_driver_extensions,
|
||||
driver_configs, data);
|
||||
}
|
||||
|
||||
diff --git a/src/gallium/targets/dri/target.c b/src/gallium/targets/dri/target.c
|
||||
index 9b78351..e02b03b 100644
|
||||
--- a/src/gallium/targets/dri/target.c
|
||||
+++ b/src/gallium/targets/dri/target.c
|
||||
@@ -25,7 +25,7 @@ const __DRIextension **__driDriverGetExtensions_kms_swrast(void);
|
||||
|
||||
PUBLIC const __DRIextension **__driDriverGetExtensions_kms_swrast(void)
|
||||
{
|
||||
- return dri_kms_driver_extensions;
|
||||
+ return dri_swrast_kms_driver_extensions;
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -21,9 +21,10 @@ SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
|
||||
file://0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch \
|
||||
file://0001-util-format-Check-for-NEON-before-using-it.patch \
|
||||
file://0001-Revert-egl-wayland-deprecate-drm_handle_format-and-d.patch \
|
||||
file://0001-swrast_kms-use-swkmsDRI2Extension-instead-of-driDRI2.patch \
|
||||
"
|
||||
|
||||
SRC_URI[sha256sum] = "9f2b30f5276a9abaf71aafc6979685e2636189de1a87aea2c9e69744a6d0ebb9"
|
||||
SRC_URI[sha256sum] = "0971226b4a6a3d10cfc255736b33e4017e18c14c9db1e53863ac1f8ae0deb9ea"
|
||||
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user