Accepting request 202392 from home:sumski:branches:X11:XOrg

Update to version 9.2.1. Pure bugfix release, if possible, please checkin to 13.1 also

OBS-URL: https://build.opensuse.org/request/show/202392
OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/Mesa?expand=0&rev=332
This commit is contained in:
Stefan Dirsch 2013-10-07 13:32:11 +00:00 committed by Git OBS Bridge
parent 1cfb59c55a
commit 60d33f8e1d
7 changed files with 229 additions and 321 deletions

File diff suppressed because it is too large Load Diff

View File

@ -26,14 +26,14 @@
%ifarch %ix86 x86_64
%define llvm_r600 1
%else
%define llvm_r600 0
%define llvm_r600 0
%endif
%define _version 9.2.0
%define _version 9.2.1
%define _name_archive MesaLib
Name: Mesa
Version: 9.2.0
Version: 9.2.1
Release: 0
BuildRequires: autoconf >= 2.60
BuildRequires: automake
@ -99,7 +99,7 @@ Provides: XFree86-Mesa-64bit = %{version}
Summary: System for rendering interactive 3-D graphics
License: MIT
Group: System/Libraries
Source: ftp://freedesktop.org/pub/mesa/9.2/%{_name_archive}-%{_version}.tar.bz2
Source: ftp://ftp.freedesktop.org/pub/mesa/9.2.1/%{_name_archive}-%{_version}.tar.bz2
Source2: baselibs.conf
Source3: README.updates
Source4: manual-pages.tar.bz2
@ -110,11 +110,6 @@ Patch11: u_Fix-crash-in-swrast-when-setting-a-texture-for-a-pix.patch
Patch13: u_mesa-8.0.1-fix-16bpp.patch
# Patch from Fedora, use shmget when available, under llvmpipe
Patch15: u_mesa-8.0-llvmpipe-shmget.patch
# PATCH-FIX-UPSTREAM gallium-egl-gbm-use-wayland-cflags.patch -- use pkgconfig for finding wayland
Patch16: u_gallium-egl-gbm-use-wayland-cflags.patch
Patch18: U_wayland-egl-pc-require-wayland.patch
# PATCH-FIX-UPSTREAM U_radeon-winsys-pad-IBs-to-a-multiple-of-8-DWs.patch -- from http://cgit.freedesktop.org/mesa/mesa/commit/?id=a81beee37e0dd7b75422448420e8e8b0b4b76c1e
Patch19: U_radeon-winsys-pad-IBs-to-a-multiple-of-8-DWs.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@ -516,11 +511,6 @@ rm -rf docs/README.{VMS,WIN32,OS2}
# Both patches are considered wrong by the author -> disable them
#%patch15 -p1
#%patch13 -p1
%if %egl_gallium
%patch16 -p1
%endif
%patch18 -p1
%patch19 -p1
%build

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:75e6a9bf59fb402f5fbed846be4effafa8a5809229579cd41023b906223a9187
size 6643026

3
MesaLib-9.2.1.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e8b47e6ab5779e9fb05e262571ef01d28c96b51e9b5b85db6750c6a32afda6d0
size 6645464

View File

@ -1,68 +0,0 @@
From a81beee37e0dd7b75422448420e8e8b0b4b76c1e Mon Sep 17 00:00:00 2001
From: Alex Deucher <alexander.deucher@amd.com>
Date: Fri, 6 Sep 2013 16:43:34 -0400
Subject: [PATCH 1/1] radeon/winsys: pad IBs to a multiple of 8 DWs
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This aligns the gfx, compute, and dma IBs to 8 DW boundries.
This aligns the the IB to the fetch size of the CP for optimal
performance. Additionally, r6xx hardware requires at least 4
DW alignment to avoid a hw bug. This also aligns the DMA
IBs to 8 DW which is required for the DMA engine. This
alignment is already handled in the gallium driver, but that
patch can be removed now that it's done in the winsys.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
CC: "9.2" <mesa-stable@lists.freedesktop.org>
CC: "9.1" <mesa-stable@lists.freedesktop.org>
---
src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 30 +++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c
index ea0c99d..38a9209 100644
--- a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c
+++ b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c
@@ -466,6 +466,36 @@ static void radeon_drm_cs_flush(struct radeon_winsys_cs *rcs, unsigned flags, ui
struct radeon_drm_cs *cs = radeon_drm_cs(rcs);
struct radeon_cs_context *tmp;
+ switch (cs->base.ring_type) {
+ case RING_DMA:
+ /* pad DMA ring to 8 DWs */
+ if (cs->ws->info.chip_class <= SI) {
+ while (rcs->cdw & 7)
+ OUT_CS(&cs->base, 0xf0000000); /* NOP packet */
+ } else {
+ while (rcs->cdw & 7)
+ OUT_CS(&cs->base, 0x00000000); /* NOP packet */
+ }
+ break;
+ case RING_GFX:
+ /* pad DMA ring to 8 DWs to meet CP fetch alignment requirements
+ * r6xx, requires at least 4 dw alignment to avoid a hw bug.
+ */
+ if (flags & RADEON_FLUSH_COMPUTE) {
+ if (cs->ws->info.chip_class <= SI) {
+ while (rcs->cdw & 7)
+ OUT_CS(&cs->base, 0x80000000); /* type2 nop packet */
+ } else {
+ while (rcs->cdw & 7)
+ OUT_CS(&cs->base, 0xffff1000); /* type3 nop packet */
+ }
+ } else {
+ while (rcs->cdw & 7)
+ OUT_CS(&cs->base, 0x80000000); /* type2 nop packet */
+ }
+ break;
+ }
+
if (rcs->cdw > RADEON_MAX_CMDBUF_DWORDS) {
fprintf(stderr, "radeon: command stream overflowed\n");
}
--
1.8.4

View File

@ -1,22 +0,0 @@
From: Torsten Duwe <duwe@suse.de>
Subject: require wayland.pc in wayland-egl.pc
Git-commit: 3bc642cbf69b3ba71fc636d6120fc7ac0b83aecb
Patch-mainline: 9.2
Mesa provides the wayland-egl libs and the pkgconfig file, but
the headers originate from the wayland package. Ensure everything
matches, by requiring application builds to look at the wayland
headers as well.
Signed-off-by: Torsten Duwe <duwe@suse.de>
Signed-off-by: Johannes Obermayr <johannesobermayr@gmx.de>
--- Mesa-9.1.5/src/egl/wayland/wayland-egl/wayland-egl.pc.in.orig 2013-04-08 20:21:04.000000000 +0200
+++ Mesa-9.1.5/src/egl/wayland/wayland-egl/wayland-egl.pc.in 2013-09-09 14:32:07.000000000 +0200
@@ -6,5 +6,6 @@ includedir=@includedir@
Name: wayland-egl
Description: Mesa wayland-egl library
Version: @VERSION@
+Requires: wayland-client
Libs: -L${libdir} -lwayland-egl
Cflags: -I${includedir}

View File

@ -1,10 +0,0 @@
--- Mesa-9.1/src/gallium/state_trackers/gbm/Makefile.am.orig
+++ Mesa-9.1/src/gallium/state_trackers/gbm/Makefile.am
@@ -27,6 +27,7 @@ AM_CPPFLAGS = \
-I$(top_srcdir)/src/gbm/main \
-I$(top_srcdir)/include
if HAVE_EGL_PLATFORM_WAYLAND
+AM_CPPFLAGS += `pkg-config --cflags wayland-server`
AM_CPPFLAGS += -DHAVE_WAYLAND_PLATFORM
endif