Hello community,

here is the log from the commit of package xf86-video-qxl for openSUSE:Factory 
checked in at 2016-05-03 09:33:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xf86-video-qxl (Old)
 and      /work/SRC/openSUSE:Factory/.xf86-video-qxl.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xf86-video-qxl"

Changes:
--------
--- /work/SRC/openSUSE:Factory/xf86-video-qxl/xf86-video-qxl.changes    
2015-11-17 14:20:14.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.xf86-video-qxl.new/xf86-video-qxl.changes       
2016-05-03 09:33:18.000000000 +0200
@@ -1,0 +2,7 @@
+Wed Apr 20 09:36:05 UTC 2016 - sndir...@suse.com
+
+- U_qxl-use-pci-io.patch
+  * Fix build on AArch64 by backporting upstream patch to use
+    pci_io_write8 instead of outb
+
+-------------------------------------------------------------------

New:
----
  U_qxl-use-pci-io.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xf86-video-qxl.spec ++++++
--- /var/tmp/diff_new_pack.YAdSGS/_old  2016-05-03 09:33:19.000000000 +0200
+++ /var/tmp/diff_new_pack.YAdSGS/_new  2016-05-03 09:33:19.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package xf86-video-qxl
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -37,6 +37,7 @@
 Source0:        
http://xorg.freedesktop.org/releases/individual/driver/%{name}-%{version}.tar.bz2
 Patch0:         n_hardcode_libdrm_cflags.patch
 Patch1:         n_disable-surfaces-on-kms.patch
+Patch2:         U_qxl-use-pci-io.patch
 BuildRequires:  autoconf
 BuildRequires:  automake
 BuildRequires:  libtool
@@ -81,6 +82,7 @@
 %setup -q
 %patch0 -p0
 %patch1 -p1
+%patch2 -p1
 
 %build
 autoreconf -fi

++++++ U_qxl-use-pci-io.patch ++++++
>From c1e88427d1763bf9bbf9f2dd738980cee644443f Mon Sep 17 00:00:00 2001
From: Adam Jackson <a...@redhat.com>
Date: Thu, 30 Apr 2015 14:32:16 +0200
Subject: Use pci_io_write8 instead of outb
Patch-Mainline: Upstream
Git-commit: c1e88427d1763bf9bbf9f2dd738980cee644443f

This ensures better portability as some arches (eg aarch64) don't have
outb.
On linux pci_io_* try to open the sysfs map file corresponding to the
I/O port range, which the kernel translates arch-appropriately.  If
there is no such file then it'll try to use port instructions if that's
a thing the architecture has.  So you only need one path, pciaccess
exists to get the portability right for you.

https://bugzilla.redhat.com/show_bug.cgi?id=1201877

Signed-off-by: Alexander Graf <ag...@suse.de>

Index: xf86-video-qxl-0.1.4/src/qxl.h
===================================================================
--- xf86-video-qxl-0.1.4.orig/src/qxl.h
+++ xf86-video-qxl-0.1.4/src/qxl.h
@@ -276,6 +276,7 @@ struct _qxl_screen_t
 
 #ifdef XSERVER_LIBPCIACCESS
     struct pci_device *                pci;
+    struct pci_io_handle *     io;
 #else
     pciVideoPtr                        pci;
     PCITAG                     pci_tag;
@@ -634,7 +635,7 @@ void ioport_write(qxl_screen_t *qxl, uin
 #else
 static inline void ioport_write(qxl_screen_t *qxl, int port, int val)
 {
-    outb(qxl->io_base + port, val);
+    pci_io_write8(qxl->io, port, val);
 }
 #endif
 
Index: xf86-video-qxl-0.1.4/src/qxl_driver.c
===================================================================
--- xf86-video-qxl-0.1.4.orig/src/qxl_driver.c
+++ xf86-video-qxl-0.1.4/src/qxl_driver.c
@@ -220,6 +220,8 @@ unmap_memory_helper (qxl_screen_t *qxl)
        pci_device_unmap_range (qxl->pci, qxl->vram, qxl->pci->regions[1].size);
     if (qxl->rom)
        pci_device_unmap_range (qxl->pci, qxl->rom, qxl->pci->regions[2].size);
+    if (qxl->io)
+       pci_device_close_io (qxl->pci, qxl->io);
 #else
     if (qxl->ram)
        xf86UnMapVidMem (scrnIndex, qxl->ram, (1 << qxl->pci->size[0]));
@@ -252,6 +254,9 @@ map_memory_helper (qxl_screen_t *qxl)
                           qxl->pci->regions[2].size, 0,
                           (void **)&qxl->rom);
     
+    qxl->io = pci_device_open_io(qxl->pci,
+                                qxl->pci->regions[3].base_addr,
+                                qxl->pci->regions[3].size);
     qxl->io_base = qxl->pci->regions[3].base_addr;
 #else
     qxl->ram = xf86MapPciMem (scrnIndex, VIDMEM_FRAMEBUFFER,

Reply via email to