Merge pull request #3050 from mglae/le9_graphics

Update libdrm, xf86-video-amdgpu and xf86-video-ati
This commit is contained in:
MilhouseVH 2018-10-28 15:25:24 +00:00 committed by GitHub
commit 80c52f4c4d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 96 additions and 6 deletions

View File

@ -4,8 +4,8 @@
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libdrm"
PKG_VERSION="2.4.93"
PKG_SHA256="6e84d1dc9548a76f20b59a85cf80a0b230cd8196084f5243469d9e65354fcd3c"
PKG_VERSION="2.4.96"
PKG_SHA256="0d561acf7bb4cc59dc82415100e6c1a44860e8c380e00f9592923e3cd08db393"
PKG_LICENSE="GPL"
PKG_SITE="http://dri.freedesktop.org"
PKG_URL="http://dri.freedesktop.org/libdrm/$PKG_NAME-$PKG_VERSION.tar.bz2"

View File

@ -2,8 +2,8 @@
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
PKG_NAME="xf86-video-amdgpu"
PKG_VERSION="18.0.1"
PKG_SHA256="7484682ccb403b3ca9e26d1c980572f08cdfa3469e2b2c9a9affc3d51b52691b"
PKG_VERSION="18.1.0"
PKG_SHA256="e11f25bb51d718b8ea938ad2b8095323c0ab16f4ddffd92091d80f9a445a9672"
PKG_ARCH="x86_64"
PKG_LICENSE="OSS"
PKG_SITE="http://www.x.org/"

View File

@ -0,0 +1,33 @@
From aa572683d86174be2bfc09d4e173ae2a9907d40e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <michel.daenzer@amd.com>
Date: Wed, 10 Oct 2018 17:28:35 +0200
Subject: Fix condition for calling set_pixmap_bo in drmmode_xf86crtc_resize
This matches CreateScreenResources_KMS.
Fixes crash when resizing the screen (e.g. using xrandr) with depth <
24.
Bugzilla: https://bugs.freedesktop.org/104914
Acked-by: Alex Deucher <alexander.deucher@amd.com>
---
src/drmmode_display.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index 5315747..9065e0f 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -2881,8 +2881,7 @@ static Bool drmmode_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
if (!amdgpu_glamor_create_screen_resources(scrn->pScreen))
goto fail;
- if (info->use_glamor ||
- (info->front_buffer->flags & AMDGPU_BO_FLAGS_GBM)) {
+ if (info->use_glamor || info->dri2.enabled) {
if (!amdgpu_set_pixmap_bo(ppix, info->front_buffer))
goto fail;
}
--
cgit v1.1

View File

@ -2,8 +2,8 @@
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
PKG_NAME="xf86-video-ati"
PKG_VERSION="18.0.1"
PKG_SHA256="72ea3b8127d4550b64f797457f5a7851a541fa4ee2cc3f345b6c1886b81714a0"
PKG_VERSION="18.1.0"
PKG_SHA256="6c335f423c1dc3d904550d41cb871ca4130ba7037dda67d82e3f1555e1bfb9ac"
PKG_ARCH="x86_64"
PKG_LICENSE="OSS"
PKG_SITE="http://www.x.org/"

View File

@ -0,0 +1,57 @@
From f892d3791219d1041e0cbb1b866e15774004aa18 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <michel.daenzer@amd.com>
Date: Mon, 15 Oct 2018 17:14:41 +0200
Subject: dri3: Handle radeon_get_pixmap_bo returning NULL
We were trying to already, but testing the wrong pointer.
Fixes: b85b7b11f5b5 "Add struct radeon_buffer"
Bug: https://bugs.debian.org/910846
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
---
src/radeon_dri3.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/radeon_dri3.c b/src/radeon_dri3.c
index 7e89a2f..25078ba 100644
--- a/src/radeon_dri3.c
+++ b/src/radeon_dri3.c
@@ -212,7 +212,7 @@ static int radeon_dri3_fd_from_pixmap(ScreenPtr screen,
CARD16 *stride,
CARD32 *size)
{
- struct radeon_bo *bo;
+ struct radeon_buffer *bo;
int fd;
#ifdef USE_GLAMOR
ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
@@ -222,10 +222,10 @@ static int radeon_dri3_fd_from_pixmap(ScreenPtr screen,
return glamor_fd_from_pixmap(screen, pixmap, stride, size);
#endif
- bo = radeon_get_pixmap_bo(pixmap)->bo.radeon;
+ bo = radeon_get_pixmap_bo(pixmap);
if (!bo) {
exaMoveInPixmap(pixmap);
- bo = radeon_get_pixmap_bo(pixmap)->bo.radeon;
+ bo = radeon_get_pixmap_bo(pixmap);
if (!bo)
return -1;
}
@@ -233,11 +233,11 @@ static int radeon_dri3_fd_from_pixmap(ScreenPtr screen,
if (pixmap->devKind > UINT16_MAX)
return -1;
- if (radeon_gem_prime_share_bo(bo, &fd) < 0)
+ if (radeon_gem_prime_share_bo(bo->bo.radeon, &fd) < 0)
return -1;
*stride = pixmap->devKind;
- *size = bo->size;
+ *size = bo->bo.radeon->size;
return fd;
}
--
cgit v1.1