Merge pull request #5789 from SupervisedThinking/xorg-server-21.1.0

[le11 ] xorg-server: update to 21.1.1
This commit is contained in:
CvH 2021-11-13 12:24:51 +01:00 committed by GitHub
commit e448fa924e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
27 changed files with 515 additions and 472 deletions

View File

@ -3,8 +3,8 @@
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="xkbcomp"
PKG_VERSION="1.4.4"
PKG_SHA256="59cce603a607a17722a0a1cf99010f4894e7812beb5d695abbc08474d59af27e"
PKG_VERSION="1.4.5"
PKG_SHA256="6851086c4244b6fd0cc562880d8ff193fb2bbf1e141c73632e10731b31d4b05e"
PKG_LICENSE="OSS"
PKG_SITE="http://www.X.org"
PKG_URL="http://xorg.freedesktop.org/archive/individual/app/${PKG_NAME}-${PKG_VERSION}.tar.bz2"

View File

@ -3,8 +3,8 @@
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="xkeyboard-config"
PKG_VERSION="2.31"
PKG_SHA256="da44181f2c8828789c720decf7d13acb3c3950e2a040af5132f50f04bb6aada3"
PKG_VERSION="2.34"
PKG_SHA256="b321d27686ee7e6610ffe7b56e28d5bbf60625a1f595124cd320c0caa717b8ce"
PKG_LICENSE="MIT"
PKG_SITE="http://www.X.org"
PKG_URL="http://www.x.org/releases/individual/data/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.bz2"

View File

@ -1,105 +0,0 @@
From 5bb6d783f40d8aa61da2095c08a6933bb1ee7bf3 Mon Sep 17 00:00:00 2001
From: Andreas Boll <aboll@debian.org>
Date: Sun, 16 Feb 2020 02:35:03 +0000
Subject: [PATCH 2/3] Revert "Map evdev keycode KEY_KEYBOARD to XF86Keyboard"
This reverts commit d0e5e63cf59be444bec0e5b11838a9abce45226d.
This patch breaks keyboard layouts in XWayland applications when having several
keyboard layouts enabled.
See also https://bugzilla.redhat.com/show_bug.cgi?id=1587998
Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921867
Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921940
Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=922020
Drop this revert once we have a newer xkbcomp (>> 1.4.2) and bump
dependency on x11-xkb-utils.
---
keycodes/evdev | 1 -
symbols/inet | 1 -
2 files changed, 2 deletions(-)
diff --git a/keycodes/evdev b/keycodes/evdev
index d41799d..e08ea0a 100644
--- a/keycodes/evdev
+++ b/keycodes/evdev
@@ -285,9 +285,8 @@ default xkb_keycodes "evdev" {
<I255> = 255; // #define KEY_RFKILL 247
<I372> = 372; // #define KEY_FAVORITES 364
<I380> = 380; // #define KEY_FULL_SCREEN 372
- <I382> = 382; // #define KEY_KEYBOARD 374
<I442> = 442; // #define KEY_DOLLAR 434
<I443> = 443; // #define KEY_EURO 435
<I569> = 569; // #define KEY_ROTATE_LOCK_TOGGLE 561
diff --git a/symbols/inet b/symbols/inet
index 5ab6feb..72cc45d 100644
--- a/symbols/inet
+++ b/symbols/inet
@@ -219,9 +219,8 @@ xkb_symbols "evdev" {
key <I255> { [ XF86RFKill ] }; // KEY_RFKILL
key <I372> { [ XF86Favorites ] };
key <I380> { [ XF86FullScreen ] };
- key <I382> { [ XF86Keyboard ] };
key <I442> { [ dollar ] };
key <I443> { [ EuroSign ] };
key <I569> { [ XF86RotationLockToggle ] };
--
2.7.4
From 9415d810808061cbb38832c4abf636606f3ed2ad Mon Sep 17 00:00:00 2001
From: Andreas Boll <aboll@debian.org>
Date: Sun, 16 Feb 2020 02:35:56 +0000
Subject: [PATCH 3/3] Revert "Map evdev keycode KEY_FAVORITES to XF86Favorites"
This reverts commit e6103610a2ddae633e2715c9f1da86e79b5256dd.
This patch breaks keyboard layouts in XWayland applications when having
several keyboard layouts enabled.
See also https://bugzilla.redhat.com/show_bug.cgi?id=1587998
Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921867
Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921940
Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=922020
Drop this revert once we have a newer xkbcomp (>> 1.4.2) and bump
dependency on x11-xkb-utils.
---
keycodes/evdev | 1 -
symbols/inet | 1 -
2 files changed, 2 deletions(-)
diff --git a/keycodes/evdev b/keycodes/evdev
index e08ea0a..8ed0fa9 100644
--- a/keycodes/evdev
+++ b/keycodes/evdev
@@ -284,7 +284,6 @@ default xkb_keycodes "evdev" {
<I254> = 254; // #define KEY_WWAN 246
<I255> = 255; // #define KEY_RFKILL 247
- <I372> = 372; // #define KEY_FAVORITES 364
<I380> = 380; // #define KEY_FULL_SCREEN 372
<I442> = 442; // #define KEY_DOLLAR 434
diff --git a/symbols/inet b/symbols/inet
index 72cc45d..2a5ab74 100644
--- a/symbols/inet
+++ b/symbols/inet
@@ -218,7 +218,6 @@ xkb_symbols "evdev" {
key <I254> { [ XF86WWAN ] }; // KEY_WWAN
key <I255> { [ XF86RFKill ] }; // KEY_RFKILL
- key <I372> { [ XF86Favorites ] };
key <I380> { [ XF86FullScreen ] };
key <I442> { [ dollar ] };
--
2.7.4

View File

@ -1,51 +0,0 @@
From 9d3629f7a6edce20990ca75d879097abe62bc8a7 Mon Sep 17 00:00:00 2001
From: MilhouseVH <milhouseVH.github@nmacleod.com>
Date: Sun, 16 Feb 2020 02:51:52 +0000
Subject: [PATCH] drop unsupported keycodes
Jun 14 00:55:54 NUC xorg-launch[722]: The XKEYBOARD keymap compiler (xkbcomp) reports:
Jun 14 00:55:54 NUC xorg-launch[722]: > Warning: Unsupported high keycode 569 for name <I569> ignored
Jun 14 00:55:54 NUC xorg-launch[722]: > X11 cannot support keycodes above 255.
Jun 14 00:55:54 NUC xorg-launch[722]: > This warning only shows for the first high keycode.
Jun 14 00:55:54 NUC xorg-launch[722]: > Internal error: Could not resolve keysym XF86RotationLockToggle
Jun 14 00:55:54 NUC xorg-launch[722]: Errors from xkbcomp are not fatal to the X server
---
keycodes/evdev | 3 ---
symbols/inet | 3 ---
2 files changed, 6 deletions(-)
diff --git a/keycodes/evdev b/keycodes/evdev
index 8ed0fa9..f7d5c7b 100644
--- a/keycodes/evdev
+++ b/keycodes/evdev
@@ -284,11 +284,8 @@ default xkb_keycodes "evdev" {
<I254> = 254; // #define KEY_WWAN 246
<I255> = 255; // #define KEY_RFKILL 247
- <I380> = 380; // #define KEY_FULL_SCREEN 372
<I442> = 442; // #define KEY_DOLLAR 434
<I443> = 443; // #define KEY_EURO 435
- <I569> = 569; // #define KEY_ROTATE_LOCK_TOGGLE 561
-
// Fake keycodes for virtual keys
<LVL3> = 92;
<MDSW> = 203;
diff --git a/symbols/inet b/symbols/inet
index 2a5ab74..0fb78cd 100644
--- a/symbols/inet
+++ b/symbols/inet
@@ -218,11 +218,8 @@ xkb_symbols "evdev" {
key <I254> { [ XF86WWAN ] }; // KEY_WWAN
key <I255> { [ XF86RFKill ] }; // KEY_RFKILL
- key <I380> { [ XF86FullScreen ] };
key <I442> { [ dollar ] };
key <I443> { [ EuroSign ] };
- key <I569> { [ XF86RotationLockToggle ] };
-
key <FK13> { [ XF86Tools ] };
key <FK14> { [ XF86Launch5 ] };
key <FK15> { [ XF86Launch6 ] };
--
2.7.4

View File

@ -3,8 +3,8 @@
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="xf86-input-libinput"
PKG_VERSION="1.0.1"
PKG_SHA256="fddec49c115591918475155bf16aaf23017d7f814cee7823a0c11f867aca245b"
PKG_VERSION="1.2.0"
PKG_SHA256="f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6"
PKG_LICENSE="MIT"
PKG_SITE="http://www.freedesktop.org/wiki/Software/libinput/"
PKG_URL="http://xorg.freedesktop.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.bz2"

View File

@ -7,10 +7,10 @@ PKG_VERSION="21.0.0"
PKG_SHA256="607823034defba6152050e5eb1c4df94b38819ef764291abadd81b620bc2ad88"
PKG_ARCH="x86_64"
PKG_LICENSE="OSS"
PKG_SITE="http://www.x.org/"
PKG_SITE="https://www.x.org/wiki/RadeonFeature/"
PKG_URL="http://xorg.freedesktop.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain libdrm xorg-server"
PKG_LONGDESC="AMD Radeon video driver for the Xorg X server."
PKG_LONGDESC="Xorg driver for AMD Radeon GPUs using the amdgpu kernel driver."
PKG_TOOLCHAIN="autotools"
PKG_CONFIGURE_OPTS_TARGET="--enable-udev \

View File

@ -7,13 +7,14 @@ PKG_VERSION="19.1.0"
PKG_SHA256="659f5a1629eea5f5334d9b39b18e6807a63aa1efa33c1236d9cc53acbb223c49"
PKG_ARCH="x86_64"
PKG_LICENSE="OSS"
PKG_SITE="http://www.x.org/"
PKG_SITE="https://www.x.org/wiki/RadeonFeature/"
PKG_URL="http://xorg.freedesktop.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain xorg-server"
PKG_LONGDESC="The ati driver supports various ATi, know AMD, video chips."
PKG_LONGDESC="ATI/AMD Radeon video driver for the Xorg X server."
PKG_TOOLCHAIN="autotools"
PKG_CONFIGURE_OPTS_TARGET="--enable-glamor --with-xorg-module-dir=${XORG_PATH_MODULES}"
PKG_CONFIGURE_OPTS_TARGET="--enable-glamor \
--with-xorg-module-dir=${XORG_PATH_MODULES}"
post_makeinstall_target() {
mkdir -p ${INSTALL}/etc/X11

View File

@ -0,0 +1,365 @@
From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied@redhat.com>
Date: Mon, 13 Jul 2020 09:11:28 +1000
Subject: [PATCH] ati: cleanup terminology to use primary/secondary
The X server changed some API/ABIs here.
Based on amdgpu patch by Michel
---
man/radeon.man | 2 +-
src/compat-api.h | 6 ++++
src/drmmode_display.c | 4 +--
src/evergreen_state.h | 2 +-
src/r600_state.h | 2 +-
src/radeon.h | 10 +++---
src/radeon_exa.c | 2 +-
src/radeon_glamor.c | 2 +-
src/radeon_kms.c | 74 +++++++++++++++++++++----------------------
9 files changed, 55 insertions(+), 49 deletions(-)
diff --git a/man/radeon.man b/man/radeon.man
index dcebf537..247dcdb7 100644
--- a/man/radeon.man
+++ b/man/radeon.man
@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
accordingly. If this option isn't set, the default value of the property is
.B auto,
which means that TearFree is on for rotated outputs, outputs with RandR
-transforms applied and for RandR 1.4 slave outputs, otherwise off.
+transforms applied and for RandR 1.4 secondary outputs, otherwise off.
.TP
.BI "Option \*qAccelMethod\*q \*q" "string" \*q
Chooses between available acceleration architectures. Valid values are
diff --git a/src/compat-api.h b/src/compat-api.h
index f4e7524f..def6d3e4 100644
--- a/src/compat-api.h
+++ b/src/compat-api.h
@@ -34,4 +34,10 @@
#define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
#endif
+#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
+#define current_primary current_master
+#define primary_pixmap master_pixmap
+#define secondary_dst slave_dst
+#endif
+
#endif
diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index 72f96a0c..3099a729 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
ent) {
if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
- dirty->slave_dst =
+ dirty->secondary_dst =
drmmode_crtc->scanout[scanout_id].pixmap;
break;
}
@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
- PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
+ PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
break;
}
}
diff --git a/src/evergreen_state.h b/src/evergreen_state.h
index 7e54e1c7..34ba87b6 100644
--- a/src/evergreen_state.h
+++ b/src/evergreen_state.h
@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
int *new_pitch);
extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
+extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
#endif
diff --git a/src/r600_state.h b/src/r600_state.h
index 34345996..567c3ca2 100644
--- a/src/r600_state.h
+++ b/src/r600_state.h
@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
int *new_pitch);
extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
+extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
#endif
diff --git a/src/radeon.h b/src/radeon.h
index e4a2ba66..68d7756a 100644
--- a/src/radeon.h
+++ b/src/radeon.h
@@ -182,18 +182,18 @@ typedef enum {
static inline ScreenPtr
-radeon_master_screen(ScreenPtr screen)
+radeon_primary_screen(ScreenPtr screen)
{
- if (screen->current_master)
- return screen->current_master;
+ if (screen->current_primary)
+ return screen->current_primary;
return screen;
}
static inline ScreenPtr
-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
+radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
{
- return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
+ return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
}
static inline DrawablePtr
diff --git a/src/radeon_exa.c b/src/radeon_exa.c
index 268155ed..320ff992 100644
--- a/src/radeon_exa.c
+++ b/src/radeon_exa.c
@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
free(driverPriv);
}
-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
+Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
{
struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
index f1098381..ccf99941 100644
--- a/src/radeon_glamor.c
+++ b/src/radeon_glamor.c
@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
static Bool
-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
+radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
void **handle_p)
{
ScreenPtr screen = pixmap->drawable.pScreen;
diff --git a/src/radeon_kms.c b/src/radeon_kms.c
index b3db7c41..62962d61 100644
--- a/src/radeon_kms.c
+++ b/src/radeon_kms.c
@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
if (dirty->rotation != RR_Rotate_0) {
dstregion = transform_region(damageregion,
&dirty->f_inverse,
- dirty->slave_dst->drawable.width,
- dirty->slave_dst->drawable.height);
+ dirty->secondary_dst->drawable.width,
+ dirty->secondary_dst->drawable.height);
} else
#endif
{
@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
dstregion = RegionDuplicate(damageregion);
RegionTranslate(dstregion, -dirty->x, -dirty->y);
- PixmapRegionInit(&pixregion, dirty->slave_dst);
+ PixmapRegionInit(&pixregion, dirty->secondary_dst);
RegionIntersect(dstregion, dstregion, &pixregion);
RegionUninit(&pixregion);
}
@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
if (RegionNil(region))
goto out;
- if (dirty->slave_dst->master_pixmap)
- DamageRegionAppend(&dirty->slave_dst->drawable, region);
+ if (dirty->secondary_dst->primary_pixmap)
+ DamageRegionAppend(&dirty->secondary_dst->drawable, region);
#ifdef HAS_DIRTYTRACKING_ROTATION
PixmapSyncDirtyHelper(dirty);
@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
#endif
radeon_cs_flush_indirect(src_scrn);
- if (dirty->slave_dst->master_pixmap)
- DamageRegionProcessPending(&dirty->slave_dst->drawable);
+ if (dirty->secondary_dst->primary_pixmap)
+ DamageRegionProcessPending(&dirty->secondary_dst->drawable);
out:
DamageEmpty(dirty->damage);
@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
void
radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
{
- ScreenPtr master_screen = radeon_dirty_master(dirty);
+ ScreenPtr primary_screen = radeon_dirty_primary(dirty);
PixmapDirtyUpdatePtr ent;
RegionPtr region;
- xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
- if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
+ xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
+ if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
continue;
region = dirty_region(ent);
@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
#if HAS_SYNC_SHARED_PIXMAP
static Bool
-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
{
- ScreenPtr master_screen = radeon_dirty_master(dirty);
+ ScreenPtr primary_screen = radeon_dirty_primary(dirty);
- return !!master_screen->SyncSharedPixmap;
+ return !!primary_screen->SyncSharedPixmap;
}
static Bool
-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
{
- ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
+ ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
- return !!slave_screen->SyncSharedPixmap;
+ return !!secondary_screen->SyncSharedPixmap;
}
static void
call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
{
- ScreenPtr master_screen = radeon_dirty_master(dirty);
+ ScreenPtr primary_screen = radeon_dirty_primary(dirty);
- master_screen->SyncSharedPixmap(dirty);
+ primary_screen->SyncSharedPixmap(dirty);
}
#else /* !HAS_SYNC_SHARED_PIXMAP */
static Bool
-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
{
- ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
+ ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
- return master_scrn->driverName == scrn->driverName;
+ return primary_scrn->driverName == scrn->driverName;
}
static Bool
-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
{
- ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
+ ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
- return slave_scrn->driverName == scrn->driverName;
+ return secondary_scrn->driverName == scrn->driverName;
}
static void
@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
static xf86CrtcPtr
radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
{
- ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
+ ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
int c;
- /* Find the CRTC which is scanning out from this slave pixmap */
+ /* Find the CRTC which is scanning out from this secondary pixmap */
for (c = 0; c < xf86_config->num_crtc; c++) {
xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
RegionPtr region;
- if (master_has_sync_shared_pixmap(scrn, dirty))
+ if (primary_has_sync_shared_pixmap(scrn, dirty))
call_sync_shared_pixmap(dirty);
region = dirty_region(dirty);
@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
radeon_cs_flush_indirect(scrn);
RegionCopy(&drmmode_crtc->scanout_last_region, region);
RegionTranslate(region, -crtc->x, -crtc->y);
- dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
}
redisplay_dirty(dirty, region);
@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
static void
radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
{
- ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
+ ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
static void
radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
{
- ScreenPtr screen = ent->slave_dst->drawable.pScreen;
+ ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
if (screen->isGPU) {
PixmapDirtyUpdatePtr region_ent = ent;
- if (master_has_sync_shared_pixmap(scrn, ent)) {
- ScreenPtr master_screen = radeon_dirty_master(ent);
+ if (primary_has_sync_shared_pixmap(scrn, ent)) {
+ ScreenPtr primary_screen = radeon_dirty_primary(ent);
- xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
- if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
+ xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
+ if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
break;
}
}
@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
RegionDestroy(region);
} else {
- if (slave_has_sync_shared_pixmap(scrn, ent))
+ if (secondary_has_sync_shared_pixmap(scrn, ent))
continue;
region = dirty_region(ent);
@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
(*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
pScreen->BlockHandler = RADEONBlockHandler_KMS;
- if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
+ if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
return;
if (!pScreen->isGPU)
@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
int c;
- if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
+ if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
return 0;
/* Unreference the all-black FB created by RADEONLeaveVT_KMS. After

View File

@ -7,12 +7,11 @@ PKG_VERSION="31486f40f8e8f8923ca0799aea84b58799754564"
PKG_SHA256="e47eb678c681d80df138e897ee27c79f9b42e3517d55b1f0684e9a70361c8218"
PKG_ARCH="x86_64"
PKG_LICENSE="OSS"
PKG_SITE="http://intellinuxgraphics.org/"
PKG_SITE="https://www.x.org/wiki/IntelGraphicsDriver/"
PKG_URL="https://gitlab.freedesktop.org/xorg/driver/${PKG_NAME}/-/archive/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain libXcomposite libXxf86vm libXdamage libdrm util-macros systemd xorg-server"
PKG_LONGDESC="The Xorg driver for Intel i810, i815, 830M, 845G, 852GM, 855GM, 865G, 915G, 915GM and 965G."
PKG_LONGDESC="Open-source Xorg graphics driver for Intel graphics."
PKG_TOOLCHAIN="autotools"
# xf86-video-intel is broken enough. dont link with LTO
PKG_CONFIGURE_OPTS_TARGET="--disable-backlight \
--disable-backlight-helper \

View File

@ -7,11 +7,12 @@ PKG_VERSION="340.108"
PKG_SHA256="995d44fef587ff5284497a47a95d71adbee0c13020d615e940ac928f180f5b77"
PKG_ARCH="x86_64"
PKG_LICENSE="nonfree"
PKG_SITE="http://www.nvidia.com/"
PKG_SITE="https://www.nvidia.com/en-us/drivers/unix/"
PKG_URL="http://us.download.nvidia.com/XFree86/Linux-x86_64/${PKG_VERSION}/NVIDIA-Linux-x86_64-${PKG_VERSION}-no-compat32.run"
PKG_DEPENDS_TARGET="util-macros xorg-server libvdpau"
PKG_NEED_UNPACK="${LINUX_DEPENDS}"
PKG_LONGDESC="The Xorg driver for NVIDIA video chips supporting Geforce 6 and Geforce 7 devices."
PKG_LONGDESC="The Xorg driver for NVIDIA GPUs supporting the GeForce 500 Series & older devices."
PKG_TOOLCHAIN="manual"
PKG_IS_KERNEL_PKG="yes"

View File

@ -3,17 +3,17 @@
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="xf86-video-nvidia"
# Remember to run "python3 packages/x11/driver/xf86-video-nvidia/scripts/make_nvidia_udev.py" and commit changes to
# "packages/x11/driver/xf86-video-nvidia/udev.d/96-nvidia.rules" whenever bumping version.
# Host may require installation of python3-lxml and python3-requests packages.
# Remember to run "python3 packages/x11/driver/xf86-video-nvidia/scripts/make_nvidia_udev.py" and commit
# changes to "packages/x11/driver/xf86-video-nvidia/udev.d/96-nvidia.rules" whenever bumping version.
# The build host may require installation of python3-lxml and python3-requests packages.
PKG_VERSION="460.91.03"
PKG_SHA256="448156cfcef182ed6997c2754c472fd681bf7139b821d2adce1d847220c6c933"
PKG_ARCH="x86_64"
PKG_LICENSE="nonfree"
PKG_SITE="http://www.nvidia.com/"
PKG_SITE="https://www.nvidia.com/en-us/drivers/unix/"
PKG_URL="http://us.download.nvidia.com/XFree86/Linux-x86_64/${PKG_VERSION}/NVIDIA-Linux-x86_64-${PKG_VERSION}-no-compat32.run"
PKG_DEPENDS_TARGET="util-macros xorg-server libvdpau libglvnd"
PKG_LONGDESC="The Xorg driver for NVIDIA video chips."
PKG_LONGDESC="The Xorg driver for NVIDIA GPUs supporting the GeForce 600 Series & above."
PKG_TOOLCHAIN="manual"
PKG_IS_KERNEL_PKG="yes"

View File

@ -12,7 +12,8 @@ PKG_DEPENDS_TARGET="toolchain util-macros"
PKG_DEPENDS_HOST="util-macros"
PKG_LONGDESC="X.org font utilities."
PKG_CONFIGURE_OPTS_TARGET="--with-mapdir=/usr/share/fonts/util"
PKG_CONFIGURE_OPTS_TARGET="--with-fontrootdir=/usr/share/fonts \
--with-mapdir=/usr/share/fonts/util"
post_makeinstall_target() {
rm -rf ${INSTALL}/usr/bin

View File

@ -3,8 +3,8 @@
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libX11"
PKG_VERSION="1.7.0"
PKG_SHA256="36c8f93b6595437c8cfbc9f08618bcb3041cbd303e140a0013f88e4c2977cb54"
PKG_VERSION="1.7.2"
PKG_SHA256="1cfa35e37aaabbe4792e9bb690468efefbfbf6b147d9c69d6f90d13c3092ea6c"
PKG_LICENSE="OSS"
PKG_SITE="http://www.x.org/"
PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/${PKG_NAME}-${PKG_VERSION}.tar.bz2"

View File

@ -3,8 +3,8 @@
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libXfixes"
PKG_VERSION="5.0.3"
PKG_SHA256="de1cd33aff226e08cefd0e6759341c2c8e8c9faf8ce9ac6ec38d43e287b22ad6"
PKG_VERSION="6.0.0"
PKG_SHA256="a7c1a24da53e0b46cac5aea79094b4b2257321c621b258729bc3139149245b4c"
PKG_LICENSE="OSS"
PKG_SITE="http://www.X.org"
PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/${PKG_NAME}-${PKG_VERSION}.tar.bz2"

View File

@ -3,16 +3,15 @@
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libXfont2"
PKG_VERSION="2.0.4"
PKG_SHA256="6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6"
PKG_VERSION="2.0.5"
PKG_SHA256="aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e"
PKG_LICENSE="OSS"
PKG_SITE="http://www.X.org"
PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain util-macros xtrans freetype libfontenc"
PKG_LONGDESC="X font Library"
PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared \
--disable-ipv6 \
PKG_CONFIGURE_OPTS_TARGET="--disable-ipv6 \
--enable-freetype \
--enable-builtins \
--disable-pcfformat \

View File

@ -3,8 +3,8 @@
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libXi"
PKG_VERSION="1.7.10"
PKG_SHA256="36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061"
PKG_VERSION="1.8"
PKG_SHA256="2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00"
PKG_LICENSE="OSS"
PKG_SITE="http://www.x.org/"
PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/${PKG_NAME}-${PKG_VERSION}.tar.bz2"

View File

@ -0,0 +1,12 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2021-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libxcvt"
PKG_VERSION="0.1.0"
PKG_SHA256="90a4d4814935109890aa6c8101bf98ffbdc293000772f5db3d206f27d8a61976"
PKG_LICENSE="OSS"
PKG_SITE="https://gitlab.freedesktop.org/xorg/lib/libxcvt"
PKG_URL="https://gitlab.freedesktop.org/xorg/lib/${PKG_NAME}/-/archive/${PKG_NAME}-${PKG_VERSION}/${PKG_NAME}-${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain"
PKG_LONGDESC="libxcvt is a library providing a standalone version of the X server implementation of the VESA CVT standard timing modelines generator."
PKG_BUILD_FLAGS="+pic"

View File

@ -3,13 +3,14 @@
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="fontconfig"
PKG_VERSION="2.13.1"
PKG_SHA256="9f0d852b39d75fc655f9f53850eb32555394f36104a044bb2b2fc9e66dbbfa7f"
PKG_VERSION="2.13.94"
PKG_SHA256="246d1640a7e54fba697b28e4445f4d9eb63dda1b511d19986249368ee7191882"
PKG_LICENSE="OSS"
PKG_SITE="http://www.fontconfig.org"
PKG_URL="http://www.freedesktop.org/software/fontconfig/release/${PKG_NAME}-${PKG_VERSION}.tar.gz"
PKG_DEPENDS_TARGET="toolchain util-linux util-macros freetype libxml2 zlib expat"
PKG_LONGDESC="Fontconfig is a library for font customization and configuration."
PKG_TOOLCHAIN="configure"
PKG_CONFIGURE_OPTS_TARGET="--with-arch=${TARGET_ARCH} \
--with-cache-dir=/storage/.cache/fontconfig \

View File

@ -2,8 +2,8 @@
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="xorgproto"
PKG_VERSION="2020.1"
PKG_SHA256="54a153f139035a376c075845dd058049177212da94d7a9707cf9468367b699d2"
PKG_VERSION="2021.5"
PKG_SHA256="aa2f663b8dbd632960b24f7477aa07d901210057f6ab1a1db5158732569ca015"
PKG_LICENSE="OSS"
PKG_SITE="http://www.X.org"
PKG_URL="https://xorg.freedesktop.org/archive/individual/proto/${PKG_NAME}-${PKG_VERSION}.tar.bz2"

View File

@ -3,118 +3,84 @@
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="xorg-server"
PKG_VERSION="1.20.11"
PKG_SHA256="914c796e3ffabe1af48071d40ccc85e92117c97a9082ed1df29e4d64e3c34c49"
PKG_VERSION="21.1.1"
PKG_SHA256="915edd49f394283cc587b88a68b5e13e6e2d7f0276edabc9249afb2e22adf634"
PKG_LICENSE="OSS"
PKG_SITE="http://www.X.org"
PKG_URL="http://xorg.freedesktop.org/archive/individual/xserver/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain util-macros font-util xorgproto libpciaccess libX11 libXfont2 libXinerama libxshmfence libxkbfile libdrm openssl freetype pixman systemd xorg-launch-helper"
PKG_URL="https://github.com/freedesktop/xorg-xserver/archive/refs/tags/${PKG_NAME}-${PKG_VERSION}.tar.gz"
PKG_DEPENDS_TARGET="toolchain util-macros font-util xorgproto libpciaccess libX11 libXfont2 libXinerama libxcvt libxshmfence libxkbfile libdrm openssl freetype pixman systemd xorg-launch-helper"
PKG_NEED_UNPACK="$(get_pkg_directory xf86-video-nvidia) $(get_pkg_directory xf86-video-nvidia-legacy)"
PKG_LONGDESC="Xorg is a full featured X server running on Intel x86 hardware."
PKG_TOOLCHAIN="autotools"
PKG_LONGDESC="X.Org Server is the free and open-source implementation of the X Window System display server."
get_graphicdrivers
if [ "${COMPOSITE_SUPPORT}" = "yes" ]; then
PKG_DEPENDS_TARGET+=" libXcomposite"
XORG_COMPOSITE="--enable-composite"
else
XORG_COMPOSITE="--disable-composite"
fi
PKG_MESON_OPTS_TARGET="-Dxorg=true \
-Dxephyr=false \
-Dxnest=false \
-Dxvfb=false \
-Dxwin=false \
-Dxquartz=false \
-Dbuilder_addr=${BUILDER_NAME} \
-Dlog_dir="/var/log" \
-Dmodule_dir=${XORG_PATH_MODULES} \
-Ddefault_font_path="/usr/share/fonts/misc,built-ins" \
-Dxdmcp=false \
-Dxdm-auth-1=false \
-Dsecure-rpc=false \
-Dipv6=false \
-Dinput_thread=true \
-Dxkb_dir=${XORG_PATH_XKB} \
-Dxkb_output_dir="/var/cache/xkb" \
-Dvendor_name="LibreELEC" \
-Dvendor_name_short="LE" \
-Dvendor_web="https://libreelec.tv/" \
-Dlisten_tcp=false \
-Dlisten_unix=true \
-Dlisten_local=false \
-Dint10=x86emu \
-Dpciaccess=true \
-Dudev=true \
-Dudev_kms=true \
-Dhal=false \
-Dsystemd_logind=false \
-Dvgahw=true \
-Ddpms=true \
-Dxf86bigfont=false \
-Dscreensaver=false \
-Dxres=true \
-Dxace=false \
-Dxselinux=false \
-Dxinerama=true \
-Dxcsecurity=false \
-Dxv=true \
-Dxvmc=false \
-Ddga=true \
-Dlinux_apm=false \
-Dlinux_acpi=false \
-Dmitshm=true \
-Dsha1="libcrypto" \
-Ddri2=true \
-Ddri3=true \
-Ddrm=true \
-Dxpbproxy=false \
-Dlibunwind=false \
-Ddocs=false \
-Ddevel-docs=false"
if [ ! "${OPENGL}" = "no" ]; then
PKG_DEPENDS_TARGET+=" ${OPENGL} libepoxy"
XORG_MESA="--enable-glx --enable-dri --enable-glamor"
PKG_MESON_OPTS_TARGET+=" -Dglx=true \
-Ddri1=true \
-Dglamor=true"
else
XORG_MESA="--disable-glx --disable-dri --disable-glamor"
PKG_MESON_OPTS_TARGET+=" -Dglx=false \
-Ddri1=false \
-Dglamor=false"
fi
PKG_CONFIGURE_OPTS_TARGET="--disable-debug \
--disable-silent-rules \
--disable-strict-compilation \
--enable-largefile \
--enable-visibility \
--disable-unit-tests \
--disable-sparkle \
--disable-xselinux \
${XORG_COMPOSITE} \
--enable-mitshm \
--enable-xres \
--enable-record \
--enable-xv \
--disable-xvmc \
--enable-dga \
--disable-screensaver \
--disable-xdmcp \
--disable-xdm-auth-1 \
${XORG_MESA} \
--enable-dri2 \
--enable-dri3 \
--enable-present \
--enable-xinerama \
--enable-xf86vidmode \
--disable-xace \
--disable-xselinux \
--disable-xcsecurity \
--enable-dbe \
--disable-xf86bigfont \
--enable-dpms \
--enable-config-udev \
--enable-config-udev-kms \
--disable-config-hal \
--disable-config-wscons \
--enable-xfree86-utils \
--enable-vgahw \
--enable-vbe \
--enable-int10-module \
--disable-windowswm \
--enable-libdrm \
--enable-clientids \
--enable-pciaccess \
--disable-linux-acpi \
--disable-linux-apm \
--disable-systemd-logind \
--enable-xorg \
--disable-dmx \
--disable-xvfb \
--disable-xnest \
--disable-xquartz \
--disable-standalone-xpbproxy \
--disable-xwin \
--disable-kdrive \
--disable-xephyr \
--disable-libunwind \
--enable-xshmfence \
--disable-install-setuid \
--enable-unix-transport \
--disable-tcp-transport \
--disable-ipv6 \
--disable-local-transport \
--disable-secure-rpc \
--enable-input-thread \
--enable-xtrans-send-fds \
--disable-docs \
--disable-devel-docs \
--with-int10=x86emu \
--with-gnu-ld \
--with-sha1=libcrypto \
--without-systemd-daemon \
--with-os-vendor=LibreELEC.tv \
--with-module-dir=${XORG_PATH_MODULES} \
--with-xkb-path=${XORG_PATH_XKB} \
--with-xkb-output=/var/cache/xkb \
--with-log-dir=/var/log \
--with-fontrootdir=/usr/share/fonts \
--with-default-font-path=/usr/share/fonts/misc,built-ins \
--with-serverconfig-path=/usr/lib/xserver \
--without-xmlto \
--without-fop"
pre_configure_target() {
# hack to prevent a build error
CFLAGS=$(echo ${CFLAGS} | sed -e "s|-O3|-O2|" -e "s|-Ofast|-O2|")
LDFLAGS=$(echo ${LDFLAGS} | sed -e "s|-O3|-O2|" -e "s|-Ofast|-O2|")
}
if [ "${COMPOSITE_SUPPORT}" = "yes" ]; then
PKG_DEPENDS_TARGET+=" libXcomposite"
fi
post_makeinstall_target() {
rm -rf ${INSTALL}/var/cache/xkb

View File

@ -1,51 +0,0 @@
From 612eb45a2e7a0b35cc3790870e6d0cc42eb50c74 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede@redhat.com>
Date: Wed, 11 Feb 2015 16:26:40 +0100
Subject: [PATCH] sdksyms.sh: Make sdksyms.sh work with gcc5.
gcc5's cpp inserts patterns like this:
extern
__attribute__((visibility("default")))
int WaitForSomething(int *
);
This patch make sdksyms.sh work with this. Note my awk skills are weak, so
there likely is a better way to deal with this.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
hw/xfree86/sdksyms.sh | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/hw/xfree86/sdksyms.sh b/hw/xfree86/sdksyms.sh
index 2305073..99b0cae 100755
--- a/hw/xfree86/sdksyms.sh
+++ b/hw/xfree86/sdksyms.sh
@@ -350,6 +350,23 @@ BEGIN {
if (sdk) {
n = 3;
+ # detect the following gcc5 cpp pattern and skip it:
+ # extern
+ # # 320 "../../include/os.h" 3 4
+ # __attribute__((visibility("default")))
+ # # 320 "../../include/os.h"
+ # Note in this case the "extern " or "extern void " always has
+ # a trailing space
+ if ($0 ~ "^extern.* $") {
+ getline;
+ getline;
+ getline;
+ getline;
+ n = 1;
+ while ($n == " ")
+ n++;
+ }
+
# skip attribute, if any
while ($n ~ /^(__attribute__|__global)/ ||
# skip modifiers, if any
--
2.1.0

View File

@ -1,13 +0,0 @@
diff -Naur xorg-server-1.8.2-old/xorg-server.m4 xorg-server-1.8.2-new/xorg-server.m4
--- xorg-server-1.8.2-old/xorg-server.m4 2010-07-01 10:35:53.000000000 -0700
+++ xorg-server-1.8.2-new/xorg-server.m4 2010-07-01 10:36:36.000000000 -0700
@@ -31,7 +31,8 @@
AC_DEFUN([XORG_DRIVER_CHECK_EXT],[
AC_REQUIRE([PKG_PROG_PKG_CONFIG])
SAVE_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`"
+ m4_pattern_allow([^PKG_CONFIG_SYSROOT_DIR$])
+ CFLAGS="$CFLAGS -I$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=sdkdir xorg-server`"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
#include "xorg-server.h"
#if !defined $1

View File

@ -1,12 +0,0 @@
diff -Naur xorg-server-1.12.2-old/hw/xfree86/common/xf86pciBus.c xorg-server-1.12.2-new/hw/xfree86/common/xf86pciBus.c
--- xorg-server-1.12.2-old/hw/xfree86/common/xf86pciBus.c 2012-05-17 10:09:03.000000000 -0700
+++ xorg-server-1.12.2-new/hw/xfree86/common/xf86pciBus.c 2012-05-29 18:55:16.000000000 -0700
@@ -1107,7 +1107,7 @@
driverList[0] = "ast";
break;
case 0x1002:
- driverList[0] = "ati";
+ driverList[0] = "radeon";
break;
case 0x102c:
driverList[0] = "chips";

View File

@ -1,97 +0,0 @@
Submitted By: Armin K. <krejzi at email dot com>
Date: 2012-12-30
Initial Package Version: 1.13.1
Upstream Status: Not submitted.
Origin: Upstream mailing list.
Comment: Rediffed for Package Version 1.17.2 by
Fernando de Oliveira <famobr at yahoo dot com dot br>
Description: Adds PRIME support to Xorg Server to make GPU offloading work.
diff -Naur xorg-server-1.17.2.orig/hw/xfree86/common/xf86Init.c xorg-server-1.17.2/hw/xfree86/common/xf86Init.c
--- xorg-server-1.17.2.orig/hw/xfree86/common/xf86Init.c 2015-06-05 12:19:40.000000000 -0300
+++ xorg-server-1.17.2/hw/xfree86/common/xf86Init.c 2015-06-17 11:35:07.227581436 -0300
@@ -340,6 +340,16 @@
return ret;
}
+extern void xf86AutoConfigOutputDevice(ScrnInfoPtr pScrn, ScrnInfoPtr master);
+static void
+xf86AutoConfigOutputDevices(void)
+{
+ int i;
+
+ for (i = 0; i < xf86NumGPUScreens; i++)
+ xf86AutoConfigOutputDevice(xf86GPUScreens[i], xf86Screens[0]);
+}
+
static void
InstallSignalHandlers(void)
{
@@ -929,6 +939,8 @@
for (i = 0; i < xf86NumGPUScreens; i++)
AttachUnboundGPU(xf86Screens[0]->pScreen, xf86GPUScreens[i]->pScreen);
+ xf86AutoConfigOutputDevices();
+
xf86VGAarbiterWrapFunctions();
if (sigio_blocked)
OsReleaseSIGIO();
diff -Naur xorg-server-1.17.2.orig/hw/xfree86/common/xf86platformBus.c xorg-server-1.17.2/hw/xfree86/common/xf86platformBus.c
--- xorg-server-1.17.2.orig/hw/xfree86/common/xf86platformBus.c 2015-06-16 12:21:07.000000000 -0300
+++ xorg-server-1.17.2/hw/xfree86/common/xf86platformBus.c 2015-06-17 11:35:07.227581436 -0300
@@ -469,6 +469,8 @@
return foundScreen;
}
+extern void xf86AutoConfigOutputDevice(ScrnInfoPtr pScrn, ScrnInfoPtr master);
+
int
xf86platformAddDevice(int index)
{
@@ -537,6 +539,7 @@
}
/* attach unbound to 0 protocol screen */
AttachUnboundGPU(xf86Screens[0]->pScreen, xf86GPUScreens[i]->pScreen);
+ xf86AutoConfigOutputDevice(xf86GPUScreens[i], xf86Screens[0]);
RRResourcesChanged(xf86Screens[0]->pScreen);
RRTellChanged(xf86Screens[0]->pScreen);
diff -Naur xorg-server-1.17.2.orig/hw/xfree86/modes/xf86Crtc.c xorg-server-1.17.2/hw/xfree86/modes/xf86Crtc.c
--- xorg-server-1.17.2.orig/hw/xfree86/modes/xf86Crtc.c 2015-06-16 10:55:48.000000000 -0300
+++ xorg-server-1.17.2/hw/xfree86/modes/xf86Crtc.c 2015-06-17 11:35:07.230581367 -0300
@@ -3387,3 +3387,35 @@
crtc->x = crtc->y = 0;
}
}
+
+
+void xf86AutoConfigOutputDevice(ScrnInfoPtr pScrn, ScrnInfoPtr master)
+{
+ RRProviderPtr master_provider;
+ xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(master);
+ xf86CrtcConfigPtr slave_config = XF86_CRTC_CONFIG_PTR(pScrn);
+ Bool unbound = FALSE;
+
+ if (!config || !slave_config)
+ return;
+
+ master_provider = config->randr_provider;
+
+ if ((master->capabilities & RR_Capability_SinkOffload) &&
+ pScrn->capabilities & RR_Capability_SourceOffload) {
+ /* source offload */
+
+ DetachUnboundGPU(pScrn->pScreen);
+ unbound = TRUE;
+ AttachOffloadGPU(master->pScreen, pScrn->pScreen);
+ slave_config->randr_provider->offload_sink = master_provider;
+ }
+ if ((master->capabilities & RR_Capability_SourceOutput) &&
+ pScrn->capabilities & RR_Capability_SinkOutput) {
+ /* sink offload */
+ if (!unbound)
+ DetachUnboundGPU(pScrn->pScreen);
+ AttachOutputGPU(master->pScreen, pScrn->pScreen);
+ slave_config->randr_provider->output_source = master_provider;
+ }
+}

View File

@ -0,0 +1,22 @@
From 7b147dfef7a2ce8247710660d2b95d84100aaad7 Mon Sep 17 00:00:00 2001
From: SupervisedThinking <supervisedthinking@gmail.com>
Date: Tue, 19 Oct 2021 18:22:38 +0200
Subject: [PATCH] Detect GPUs as "radeon" instead "ati"
---
hw/xfree86/common/xf86pciBus.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
index aeeed8be66..5c22bd4080 100644
--- a/hw/xfree86/common/xf86pciBus.c
+++ b/hw/xfree86/common/xf86pciBus.c
@@ -1106,7 +1106,7 @@ xf86VideoPtrToDriverList(struct pci_device *dev, XF86MatchedDrivers *md)
driverList[0] = "ast";
break;
case 0x1002:
- driverList[0] = "ati";
+ driverList[0] = "radeon";
break;
case 0x102c:
driverList[0] = "chips";

View File

@ -1,12 +1,17 @@
From: Adam Jackson <ajax@redhat.com>
Date: Sun, 28 Oct 2007 09:37:52 +0100
Subject: [PATCH] Fedora extra modes list
From aff7aded0cc546491b29b37b093846921ab7378a Mon Sep 17 00:00:00 2001
From: SupervisedThinking <supervisedthinking@gmail.com>
Date: Tue, 19 Oct 2021 18:23:20 +0200
Subject: [PATCH] Fedora extra modes list added by Adam Jackson
<ajax@redhat.com>
---
Index: xorg-server/hw/xfree86/common/extramodes
===================================================================
--- xorg-server.orig/hw/xfree86/common/extramodes
+++ xorg-server/hw/xfree86/common/extramodes
hw/xfree86/common/extramodes | 59 ++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)
diff --git a/hw/xfree86/common/extramodes b/hw/xfree86/common/extramodes
index 006b5cba17..3caa3bf015 100644
--- a/hw/xfree86/common/extramodes
+++ b/hw/xfree86/common/extramodes
@@ -3,16 +3,75 @@
//
// $XFree86: xc/programs/Xserver/hw/xfree86/etc/extramodes,v 1.5 2002/06/05 19:43:05 dawes Exp $