merge to x11_backports

This commit is contained in:
Alzim 2020-06-24 16:37:43 +03:00
parent 2083d744e6
commit 3bc949a6f6
9 changed files with 567 additions and 1156 deletions

View file

@ -1,58 +0,0 @@
From 94788a3a29dfed1e5d4fd5cfb91a9b67b0b013cc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
Date: Fri, 17 Jan 2020 18:33:52 +0100
Subject: [PATCH] kmsro: Extend to include imx-dcss
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This allows using the dcss display controllers (with the dcss drm
modesetting driver) along with the Etnaviv render-only drivers. DCSS is
found on i.MX SoCs.
Signed-off-by: Guido Günther <agx@sigxcpu.org>
---
src/gallium/drivers/kmsro/Android.mk | 1 +
src/gallium/targets/dri/meson.build | 1 +
src/gallium/targets/dri/target.c | 1 +
3 files changed, 3 insertions(+)
diff --git a/src/gallium/drivers/kmsro/Android.mk b/src/gallium/drivers/kmsro/Android.mk
index 7c39f97b81b..56edab20f13 100644
--- a/src/gallium/drivers/kmsro/Android.mk
+++ b/src/gallium/drivers/kmsro/Android.mk
@@ -40,6 +40,7 @@ GALLIUM_TARGET_DRIVERS += hx8357d
GALLIUM_TARGET_DRIVERS += ili9225
GALLIUM_TARGET_DRIVERS += ili9341
GALLIUM_TARGET_DRIVERS += imx
+GALLIUM_TARGET_DRIVERS += imx-dcss
GALLIUM_TARGET_DRIVERS += ingenic-drm
GALLIUM_TARGET_DRIVERS += stm
GALLIUM_TARGET_DRIVERS += mcde
diff --git a/src/gallium/targets/dri/meson.build b/src/gallium/targets/dri/meson.build
index 954b2182ce4..7ebcec16cf3 100644
--- a/src/gallium/targets/dri/meson.build
+++ b/src/gallium/targets/dri/meson.build
@@ -73,6 +73,7 @@ foreach d : [[with_gallium_kmsro, [
'ili9225_dri.so',
'ili9341_dri.so',
'imx-drm_dri.so',
+ 'imx-dcss_dri.so',
'ingenic-drm_dri.so',
'mcde_dri.so',
'meson_dri.so',
diff --git a/src/gallium/targets/dri/target.c b/src/gallium/targets/dri/target.c
index f71f690a70e..7e49378e4bc 100644
--- a/src/gallium/targets/dri/target.c
+++ b/src/gallium/targets/dri/target.c
@@ -98,6 +98,7 @@ DEFINE_LOADER_DRM_ENTRYPOINT(hx8357d)
DEFINE_LOADER_DRM_ENTRYPOINT(ili9225)
DEFINE_LOADER_DRM_ENTRYPOINT(ili9341)
DEFINE_LOADER_DRM_ENTRYPOINT(imx_drm)
+DEFINE_LOADER_DRM_ENTRYPOINT(imx_dcss)
DEFINE_LOADER_DRM_ENTRYPOINT(ingenic_drm)
DEFINE_LOADER_DRM_ENTRYPOINT(mcde)
DEFINE_LOADER_DRM_ENTRYPOINT(meson)
--
2.24.1

View file

@ -5,23 +5,22 @@
# to make a snapshot of the given tag/branch. Defaults to HEAD.
# Point env var REF to a local mesa repo to reduce clone time.
VERSION="11.2"
DIRNAME=mesa-${VERSION}-$( date +%Y%m%d )
DIRNAME=mesa-$( date +%Y%m%d )
if [ -z "$REF" -a -d "mesa/.git" ]; then
REF="mesa"
fi
REF="mesa"
fi
echo REF ${REF:+--reference $REF}
echo DIRNAME $DIRNAME
echo HEAD ${1:-HEAD}
echo REF ${REF:+--reference $REF}
echo DIRNAME $DIRNAME
echo HEAD ${1:-HEAD}
rm -rf $DIRNAME
rm -rf $DIRNAME
git clone ${REF:+--reference $REF} \
git://git.freedesktop.org/git/mesa/mesa $DIRNAME
git clone ${REF:+--reference $REF} \
git://git.freedesktop.org/git/mesa/mesa $DIRNAME
GIT_DIR=$DIRNAME/.git git archive --format=tar --prefix=$DIRNAME/ ${1:-HEAD} \
| xz -vf > $DIRNAME.tar.xz
GIT_DIR=$DIRNAME/.git git archive --format=tar --prefix=$DIRNAME/ ${1:-HEAD} \
| bzip2 > $DIRNAME.tar.bz2
# rm -rf $DIRNAME
# rm -rf $DIRNAME

View file

@ -0,0 +1,13 @@
diff --git a/src/gallium/drivers/r600/r600_state_common.c b/src/gallium/drivers/r600/r600_state_common.c
index fabc52c..c276016 100644
--- a/src/gallium/drivers/r600/r600_state_common.c
+++ b/src/gallium/drivers/r600/r600_state_common.c
@@ -2739,7 +2739,7 @@
uint32_t r600_colorformat_endian_swap(uint32_t colorformat, bool do_endian_swap)
{
- if (R600_BIG_ENDIAN) {
+ if (0 && R600_BIG_ENDIAN) {
switch(colorformat) {
/* 8-bit buffers. */
case V_0280A0_COLOR_4_4:

View file

@ -1,40 +0,0 @@
diff -up mesa-19.2.0-rc3/meson.build.2~ mesa-19.2.0-rc3/meson.build
--- mesa-19.2.0-rc3/meson.build.2~ 2019-09-11 18:23:35.000000000 +0200
+++ mesa-19.2.0-rc3/meson.build 2019-09-13 01:42:07.786526054 +0200
@@ -125,8 +125,8 @@ if dri_drivers.contains('auto')
# TODO: PPC, Sparc
if ['x86', 'x86_64'].contains(host_machine.cpu_family())
dri_drivers = ['i915', 'i965', 'r100', 'r200', 'nouveau']
- elif ['arm', 'aarch64'].contains(host_machine.cpu_family())
- dri_drivers = []
+ elif ['arm', 'aarch64', 'riscv64'].contains(host_machine.cpu_family())
+ dri_drivers = ['r100', 'r200', 'nouveau']
else
error('Unknown architecture @0@. Please pass -Ddri-drivers to set driver options. Patches gladly accepted to fix this.'.format(
host_machine.cpu_family()))
@@ -160,7 +160,13 @@ if gallium_drivers.contains('auto')
elif ['arm', 'aarch64'].contains(host_machine.cpu_family())
gallium_drivers = [
'kmsro', 'v3d', 'vc4', 'freedreno', 'etnaviv', 'nouveau',
- 'tegra', 'virgl', 'lima', 'panfrost', 'swrast'
+ 'tegra', 'virgl', 'lima', 'panfrost', 'swrast',
+ 'r300', 'r600', 'radeonsi'
+ ]
+ elif ['riscv64'].contains(host_machine.cpu_family())
+ gallium_drivers = [
+ 'nouveau', 'swrast',
+ 'r300', 'r600', 'radeonsi'
]
else
error('Unknown architecture @0@. Please pass -Dgallium-drivers to set driver options. Patches gladly accepted to fix this.'.format(
@@ -215,8 +221,8 @@ if _vulkan_drivers.contains('auto')
if system_has_kms_drm
if host_machine.cpu_family().startswith('x86')
_vulkan_drivers = ['amd', 'intel']
- elif ['arm', 'aarch64'].contains(host_machine.cpu_family())
- _vulkan_drivers = []
+ elif ['arm', 'aarch64', 'riscv64'].contains(host_machine.cpu_family())
+ _vulkan_drivers = ['amd']
else
error('Unknown architecture @0@. Please pass -Dvulkan-drivers to set driver options. Patches gladly accepted to fix this.'.format(
host_machine.cpu_family()))

View file

@ -1,21 +0,0 @@
diff -up mesa-19.2.2/src/drm-shim/drm_shim.c.omv~ mesa-19.2.2/src/drm-shim/drm_shim.c
--- mesa-19.2.2/src/drm-shim/drm_shim.c.omv~ 2019-11-08 12:22:33.561413124 +0000
+++ mesa-19.2.2/src/drm-shim/drm_shim.c 2019-11-08 13:18:33.752306260 +0000
@@ -38,7 +38,7 @@
#include <string.h>
#include <unistd.h>
#include <sys/ioctl.h>
-#include <sys/mman.h>
+//#include <sys/mman.h>
#include <sys/stat.h>
#include <sys/sysmacros.h>
#include <stdarg.h>
@@ -52,6 +52,8 @@
#include "util/u_debug.h"
#include "drm_shim.h"
+PUBLIC void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset);
+
#define REAL_FUNCTION_POINTER(x) typeof(x) *real_##x
static mtx_t shim_lock = _MTX_INITIALIZER_NP;

View file

@ -1,12 +0,0 @@
diff -up mesa-20.0.3/src/amd/addrlib/inc/addrtypes.h.2~ mesa-20.0.3/src/amd/addrlib/inc/addrtypes.h
--- mesa-20.0.3/src/amd/addrlib/inc/addrtypes.h.2~ 2020-04-02 13:35:20.510114470 +0200
+++ mesa-20.0.3/src/amd/addrlib/inc/addrtypes.h 2020-04-02 13:36:48.386741907 +0200
@@ -87,7 +87,7 @@ typedef int INT;
#endif
#ifndef ADDR_FASTCALL
- #if defined(__GNUC__)
+ #if defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__))
#define ADDR_FASTCALL __attribute__((regparm(0)))
#else
#define ADDR_FASTCALL __fastcall

View file

@ -1,12 +0,0 @@
diff -up mesa-20.1.0-rc4/src/gallium/auxiliary/util/u_debug_stack.c.omv~ mesa-20.1.0-rc4/src/gallium/auxiliary/util/u_debug_stack.c
--- mesa-20.1.0-rc4/src/gallium/auxiliary/util/u_debug_stack.c.omv~ 2020-05-28 04:22:47.724685959 +0200
+++ mesa-20.1.0-rc4/src/gallium/auxiliary/util/u_debug_stack.c 2020-05-28 04:23:02.093837627 +0200
@@ -94,7 +94,7 @@ debug_backtrace_capture(struct debug_sta
unw_proc_info_t pip;
unsigned i = 0;
- pip.unwind_info = NULL;
+ pip.unwind_info = (intptr_t)NULL;
unw_getcontext(&context);
unw_init_local(&cursor, &context);

View file

@ -1,5 +1,16 @@
# False positive (9.1 vs. 9.1.0)
addFilter("E: incoherent-version-in-name")
# libXvMCr600.so.1.0.0 and libXvMCnouveau.so.1.0.0 are actually the hard
# links to libXvMCgallium.so.1.0.0 and have its soname. This confuses the
# build system.
addFilter("E: invalid-ldconfig-symlink")
# libswrAVX*.so files for dlopen-ing
addFilter("E: devel-file-in-non-devel-package")
# dri-drivers is a collection of special shared objects rather than a
# single shared library.
addFilter("E: incoherent-version-in-name")
addFilter("E: executable-in-library-package")
addFilter("E: invalid-soname")
addFilter("E: no-binary")
addFilter("E: outside-libdir-files")
addFilter("W: shared-lib-calls-exit")
addFilter("W: no-documentation")
addFilter("W: name-repeated-in-summary C Intel-ui")

1523
mesa.spec

File diff suppressed because it is too large Load diff