[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

libdrm: Changes to 'ubuntu'



 .gitignore                       |    1 
 ChangeLog                        |   96 +++++++++++++++++++++++++++++++++
 Makefile.am                      |    4 -
 configure.ac                     |   22 ++++++-
 debian/changelog                 |   10 ++-
 debian/control                   |    2 
 debian/patches/02_fix_build.diff |   12 ----
 debian/patches/series            |    1 
 intel/intel_chipset.h            |    8 ++
 man/Makefile.am                  |   37 ++++++++----
 nouveau/libdrm_nouveau.pc.in     |    2 
 radeon/r600_pci_ids.h            |   14 ++++
 radeon/radeon_surface.c          |  112 ++++++++++++++++++++++++++++++---------
 13 files changed, 259 insertions(+), 62 deletions(-)

New commits:
commit b823cf2338e7d64e1cee88f138830b23dbad2540
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date:   Thu Feb 7 10:53:28 2013 +0200

    release to raring
    
    and drop 02_fix_build.diff

diff --git a/debian/changelog b/debian/changelog
index 1982623..146bdcc 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+libdrm (2.4.42-0ubuntu1) raring; urgency=low
+
+  * Sync from unreleased debian git.
+
+ -- Timo Aaltonen <tjaalton@ubuntu.com>  Thu, 07 Feb 2013 10:52:58 +0200
+
 libdrm (2.4.42-1) UNRELEASED; urgency=low
 
   [ Julien Cristau ]
diff --git a/debian/patches/02_fix_build.diff b/debian/patches/02_fix_build.diff
deleted file mode 100644
index 234101b..0000000
--- a/debian/patches/02_fix_build.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/configure.ac b/configure.ac
-index 10cc9a4..1776610 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -348,7 +348,6 @@ AC_CONFIG_FILES([
- 	tests/vbltest/Makefile
- 	include/Makefile
- 	include/drm/Makefile
--	man/Makefile
- 	libdrm.pc])
- AC_OUTPUT
- 
diff --git a/debian/patches/series b/debian/patches/series
index e64f736..2e425c0 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,2 @@
 01_default_perms.diff
-02_fix_build.diff
 03_build_against_librt.diff

commit 98e413f259a029f8cd30d73c346331c6627f0832
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date:   Thu Feb 7 10:51:25 2013 +0200

    control: Bump policy to 3.9.4, no changes.

diff --git a/debian/changelog b/debian/changelog
index 180ebf5..1982623 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -6,6 +6,9 @@ libdrm (2.4.42-1) UNRELEASED; urgency=low
   [ Maarten Lankhorst ]
   * New upstream release.
 
+  [ Timo Aaltonen ]
+  * control: Bump policy to 3.9.4, no changes.
+
  -- Julien Cristau <jcristau@debian.org>  Tue, 25 Dec 2012 13:17:28 +0100
 
 libdrm (2.4.40-1) experimental; urgency=low
diff --git a/debian/control b/debian/control
index 12171e7..8ae824c 100644
--- a/debian/control
+++ b/debian/control
@@ -11,7 +11,7 @@ Build-Depends:
  libpthread-stubs0-dev,
  libudev-dev [linux-any],
  libpciaccess-dev,
-Standards-Version: 3.9.2
+Standards-Version: 3.9.4
 Section: libs
 Vcs-Git: git://git.debian.org/git/pkg-xorg/lib/libdrm
 Vcs-Browser: http://git.debian.org/?p=pkg-xorg/lib/libdrm.git

commit b133b92d52fe8c5b0becd29c6a50722095cccc26
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date:   Thu Feb 7 10:50:54 2013 +0200

    drop 02_fix_build.diff, FTBFS with sbuild

diff --git a/debian/changelog b/debian/changelog
index 11b7635..180ebf5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,7 +5,6 @@ libdrm (2.4.42-1) UNRELEASED; urgency=low
 
   [ Maarten Lankhorst ]
   * New upstream release.
-  * Add 02_fix_build.diff fix a build error.
 
  -- Julien Cristau <jcristau@debian.org>  Tue, 25 Dec 2012 13:17:28 +0100
 
diff --git a/debian/patches/02_fix_build.diff b/debian/patches/02_fix_build.diff
deleted file mode 100644
index 234101b..0000000
--- a/debian/patches/02_fix_build.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/configure.ac b/configure.ac
-index 10cc9a4..1776610 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -348,7 +348,6 @@ AC_CONFIG_FILES([
- 	tests/vbltest/Makefile
- 	include/Makefile
- 	include/drm/Makefile
--	man/Makefile
- 	libdrm.pc])
- AC_OUTPUT
- 
diff --git a/debian/patches/series b/debian/patches/series
index e64f736..2e425c0 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,2 @@
 01_default_perms.diff
-02_fix_build.diff
 03_build_against_librt.diff

commit ce6151da5bc5d767adff7f36f5b9f473286d1209
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date:   Thu Feb 7 10:39:56 2013 +0200

    update the changelogs

diff --git a/ChangeLog b/ChangeLog
index e1df3ae..275a4de 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,99 @@
+commit 183b5f20b59c83f57967b41d1e3a90c073e8df76
+Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
+Date:   Tue Feb 5 14:08:41 2013 +0100
+
+    configure.ac: bump version to 2.4.42 for release
+    
+    Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
+
+commit f9a9311c5e96606de9726ae4021209897b9bb2d7
+Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
+Date:   Tue Feb 5 14:12:06 2013 +0100
+
+    libdrm: remove DISTCHECK_CONFIGURE_FLAGS
+    
+    I'm fairly sure the extra flags it specifies no longer exist, so
+    there is no point in keeping it. It only adds a warning when
+    running make distcheck.
+    
+    Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
+
+commit 353f073bc134a94d13fe82e4f3d983efe3cf70ad
+Author: Alex Deucher <alexander.deucher@amd.com>
+Date:   Thu Jan 24 17:53:37 2013 -0500
+
+    radeon: add OLAND pci ids
+    
+    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+
+commit 76ae1f4837ceb2c15ccf847e4abe2b5c4f66df85
+Author: Alex Deucher <alexander.deucher@amd.com>
+Date:   Thu Jan 24 17:37:10 2013 -0500
+
+    radeon: add OLAND family
+    
+    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+
+commit ef866c7293e699b119ae61738e221857a36a5362
+Author: Jesse Barnes <jbarnes@virtuousgeek.org>
+Date:   Sat Feb 2 11:10:24 2013 +0100
+
+    intel: add more VLV PCI IDs
+
+commit 9dc0072e8d5a47fb0b2ada50fb897cb2c740bb40
+Author: Thierry Reding <thierry.reding@avionic-design.de>
+Date:   Fri Jan 18 13:22:01 2013 +0100
+
+    man: Fix typo and use $() for make expressions
+    
+    Due to the typo, none of the .xml files would end up in the release
+    tarball and cause make distcheck as well as builds from the tarball to
+    fail.
+    
+    Using $() isn't strictly necessary but other variables and expressions
+    use that variant already so it makes the usage consistent.
+    
+    Reviewed-by: David Herrmann <dh.herrmann@googlemail.com>
+    Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
+
+commit 303ca37e722e68900cb7eb43ddbef8069b0c711b
+Author: Michel Dänzer <michel.daenzer@amd.com>
+Date:   Thu Jan 17 19:03:42 2013 +0100
+
+    radeon: Fix 1D tiling layout on SI.
+    
+    Very similar to Evergreen, but slightly different rules for tile / slice
+    alignment. Fortunately, these map quite naturally onto the previous fixes for
+    linear aligned layout on SI.
+    
+    2D tiling still needs more work here and possibly in the kernel.
+    
+    Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
+
+commit 08cb5c1d0245f6bfc1dd4d041eb418bc160c7b05
+Author: David Herrmann <dh.herrmann@googlemail.com>
+Date:   Wed Jan 16 19:35:25 2013 +0100
+
+    man: fix manpage build instructions
+    
+    This fixes all the out-of-tree build-failures with manpages and uses a
+    .man_fixup file to avoid overriding man-pages on every build.
+    
+    Manpages are only built if xsltproc is found and the stylesheets are
+    available locally. You can disable building manpages with
+    --disable-manpages so the quite expensive xsltproc procedure can be
+    skipped.
+    
+    Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
+
+commit 481763c2c7f5224a9f053ab3a2b2356eb89a96f0
+Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
+Date:   Wed Jan 16 14:29:14 2013 +0100
+
+    nouveau: use @PACKAGE_VERSION@ in libdrm_nouveau.pc
+    
+    Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
+
 commit 007bff7a034741dcf9d1716583f91fc4453d4112
 Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
 Date:   Wed Jan 16 13:06:52 2013 +0100
diff --git a/debian/changelog b/debian/changelog
index 9111d6c..11b7635 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-libdrm (2.4.41-1) UNRELEASED; urgency=low
+libdrm (2.4.42-1) UNRELEASED; urgency=low
 
   [ Julien Cristau ]
   * Bump libdrm2 shlibs to 2.4.38.

commit 183b5f20b59c83f57967b41d1e3a90c073e8df76
Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Date:   Tue Feb 5 14:08:41 2013 +0100

    configure.ac: bump version to 2.4.42 for release
    
    Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>

diff --git a/configure.ac b/configure.ac
index 9ee7940..e2e3466 100644
--- a/configure.ac
+++ b/configure.ac
@@ -20,7 +20,7 @@
 
 AC_PREREQ([2.63])
 AC_INIT([libdrm],
-        [2.4.41],
+        [2.4.42],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=DRI],
         [libdrm])
 

commit f9a9311c5e96606de9726ae4021209897b9bb2d7
Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Date:   Tue Feb 5 14:12:06 2013 +0100

    libdrm: remove DISTCHECK_CONFIGURE_FLAGS
    
    I'm fairly sure the extra flags it specifies no longer exist, so
    there is no point in keeping it. It only adds a warning when
    running make distcheck.
    
    Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>

diff --git a/Makefile.am b/Makefile.am
index 8ecd9d9..94572d0 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -20,8 +20,6 @@
 
 ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
 
-DISTCHECK_CONFIGURE_FLAGS = --enable-nouveau-experimental-api --enable-radeon-experimental-api
-
 pkgconfigdir = @pkgconfigdir@
 pkgconfig_DATA = libdrm.pc
 

commit 353f073bc134a94d13fe82e4f3d983efe3cf70ad
Author: Alex Deucher <alexander.deucher@amd.com>
Date:   Thu Jan 24 17:53:37 2013 -0500

    radeon: add OLAND pci ids
    
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

diff --git a/radeon/r600_pci_ids.h b/radeon/r600_pci_ids.h
index 3b67cbe..ccc3ea5 100644
--- a/radeon/r600_pci_ids.h
+++ b/radeon/r600_pci_ids.h
@@ -361,3 +361,17 @@ CHIPSET(0x6839, VERDE_6839, VERDE)
 CHIPSET(0x683B, VERDE_683B, VERDE)
 CHIPSET(0x683D, VERDE_683D, VERDE)
 CHIPSET(0x683F, VERDE_683F, VERDE)
+
+CHIPSET(0x6600, OLAND_6600, OLAND)
+CHIPSET(0x6601, OLAND_6601, OLAND)
+CHIPSET(0x6602, OLAND_6602, OLAND)
+CHIPSET(0x6603, OLAND_6603, OLAND)
+CHIPSET(0x6606, OLAND_6606, OLAND)
+CHIPSET(0x6607, OLAND_6607, OLAND)
+CHIPSET(0x6610, OLAND_6610, OLAND)
+CHIPSET(0x6611, OLAND_6611, OLAND)
+CHIPSET(0x6613, OLAND_6613, OLAND)
+CHIPSET(0x6620, OLAND_6620, OLAND)
+CHIPSET(0x6621, OLAND_6621, OLAND)
+CHIPSET(0x6623, OLAND_6623, OLAND)
+CHIPSET(0x6631, OLAND_6631, OLAND)

commit 76ae1f4837ceb2c15ccf847e4abe2b5c4f66df85
Author: Alex Deucher <alexander.deucher@amd.com>
Date:   Thu Jan 24 17:37:10 2013 -0500

    radeon: add OLAND family
    
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

diff --git a/radeon/radeon_surface.c b/radeon/radeon_surface.c
index 8e93873..d52f457 100644
--- a/radeon/radeon_surface.c
+++ b/radeon/radeon_surface.c
@@ -72,6 +72,7 @@ enum radeon_family {
     CHIP_TAHITI,
     CHIP_PITCAIRN,
     CHIP_VERDE,
+    CHIP_OLAND,
     CHIP_LAST,
 };
 

commit ef866c7293e699b119ae61738e221857a36a5362
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Sat Feb 2 11:10:24 2013 +0100

    intel: add more VLV PCI IDs

diff --git a/intel/intel_chipset.h b/intel/intel_chipset.h
index a2eb894..ebec2f8 100644
--- a/intel/intel_chipset.h
+++ b/intel/intel_chipset.h
@@ -84,6 +84,9 @@
 #define PCI_CHIP_HASWELL_CRW_S_GT2_PLUS 0x0D3A
 
 #define PCI_CHIP_VALLEYVIEW_PO		0x0f30 /* power on board */
+#define PCI_CHIP_VALLEYVIEW_1		0x0f31
+#define PCI_CHIP_VALLEYVIEW_2		0x0f32
+#define PCI_CHIP_VALLEYVIEW_3		0x0f33
 
 #define IS_830(dev) (dev == 0x3577)
 #define IS_845(dev) (dev == 0x2562)
@@ -124,7 +127,10 @@
 
 #define IS_I965GM(dev) (dev == 0x2A02)
 
-#define IS_VALLEYVIEW(dev) (dev == 0xf30)
+#define IS_VALLEYVIEW(dev) (((dev) == PCI_CHIP_VALLEYVIEW_PO) ||	\
+			    ((dev) == PCI_CHIP_VALLEYVIEW_1) ||		\
+			    ((dev) == PCI_CHIP_VALLEYVIEW_2) ||		\
+			    ((dev) == PCI_CHIP_VALLEYVIEW_3))
 
 #define IS_GEN4(dev) (dev == 0x2972 ||	\
 		      dev == 0x2982 ||	\

commit 9dc0072e8d5a47fb0b2ada50fb897cb2c740bb40
Author: Thierry Reding <thierry.reding@avionic-design.de>
Date:   Fri Jan 18 13:22:01 2013 +0100

    man: Fix typo and use $() for make expressions
    
    Due to the typo, none of the .xml files would end up in the release
    tarball and cause make distcheck as well as builds from the tarball to
    fail.
    
    Using $() isn't strictly necessary but other variables and expressions
    use that variant already so it makes the usage consistent.
    
    Reviewed-by: David Herrmann <dh.herrmann@googlemail.com>
    Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>

diff --git a/man/Makefile.am b/man/Makefile.am
index 25202e2..d25a293 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -17,7 +17,8 @@ MANPAGES_ALIASES = \
 	drm-ttm.7
 
 XML_FILES = \
-	${patsubst %.1,%.xml,${patsubst %.3,%.xml,${patsubst %.5,%.xml,${patsubs %.7,%.xml,$(MANPAGES)}}}}
+	$(patsubst %.1,%.xml,$(patsubst %.3,%.xml,$(patsubst %.5,%.xml,$(patsubst %.7,%.xml,$(MANPAGES)))))
+
 EXTRA_DIST = $(XML_FILES)
 CLEANFILES = $(MANPAGES) $(MANPAGES_ALIASES) .man_fixup
 man_MANS =

commit 303ca37e722e68900cb7eb43ddbef8069b0c711b
Author: Michel Dänzer <michel.daenzer@amd.com>
Date:   Thu Jan 17 19:03:42 2013 +0100

    radeon: Fix 1D tiling layout on SI.
    
    Very similar to Evergreen, but slightly different rules for tile / slice
    alignment. Fortunately, these map quite naturally onto the previous fixes for
    linear aligned layout on SI.
    
    2D tiling still needs more work here and possibly in the kernel.
    
    Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>

diff --git a/radeon/radeon_surface.c b/radeon/radeon_surface.c
index eb587d2..8e93873 100644
--- a/radeon/radeon_surface.c
+++ b/radeon/radeon_surface.c
@@ -1000,25 +1000,28 @@ static int eg_surface_best(struct radeon_surface_manager *surf_man,
  * Southern Islands family
  */
 
-static void si_surf_minify_linear_aligned(struct radeon_surface *surf,
-                                          unsigned level,
-                                          uint32_t xalign, uint32_t yalign, uint32_t zalign, uint32_t slice_align,
-                                          unsigned offset)
+static void si_surf_minify(struct radeon_surface *surf,
+			   struct radeon_surface_level *surflevel,
+			   unsigned bpe, unsigned level,
+			   uint32_t xalign, uint32_t yalign, uint32_t zalign, uint32_t slice_align,
+			   unsigned offset)
 {
-    surf->level[level].npix_x = mip_minify(surf->npix_x, level);
-    surf->level[level].npix_y = mip_minify(surf->npix_y, level);
-    surf->level[level].npix_z = mip_minify(surf->npix_z, level);
+    surflevel->npix_x = mip_minify(surf->npix_x, level);
+    surflevel->npix_y = mip_minify(surf->npix_y, level);
+    surflevel->npix_z = mip_minify(surf->npix_z, level);
 
     if (level == 0 && surf->last_level > 0) {
-        surf->level[level].nblk_x = (next_power_of_two(surf->level[level].npix_x) + surf->blk_w - 1) / surf->blk_w;
-        surf->level[level].nblk_y = (next_power_of_two(surf->level[level].npix_y) + surf->blk_h - 1) / surf->blk_h;
-        surf->level[level].nblk_z = (next_power_of_two(surf->level[level].npix_z) + surf->blk_d - 1) / surf->blk_d;
+        surflevel->nblk_x = (next_power_of_two(surflevel->npix_x) + surf->blk_w - 1) / surf->blk_w;
+        surflevel->nblk_y = (next_power_of_two(surflevel->npix_y) + surf->blk_h - 1) / surf->blk_h;
+        surflevel->nblk_z = (next_power_of_two(surflevel->npix_z) + surf->blk_d - 1) / surf->blk_d;
     } else {
-        surf->level[level].nblk_x = (surf->level[level].npix_x + surf->blk_w - 1) / surf->blk_w;
-        surf->level[level].nblk_y = (surf->level[level].npix_y + surf->blk_h - 1) / surf->blk_h;
-        surf->level[level].nblk_z = (surf->level[level].npix_z + surf->blk_d - 1) / surf->blk_d;
+        surflevel->nblk_x = (surflevel->npix_x + surf->blk_w - 1) / surf->blk_w;
+        surflevel->nblk_y = (surflevel->npix_y + surf->blk_h - 1) / surf->blk_h;
+        surflevel->nblk_z = (surflevel->npix_z + surf->blk_d - 1) / surf->blk_d;
     }
 
+    surflevel->nblk_y  = ALIGN(surflevel->nblk_y, yalign);
+
     /* XXX: Texture sampling uses unexpectedly large pitches in some cases,
      * these are just guesses for the rules behind those
      */
@@ -1027,17 +1030,16 @@ static void si_surf_minify_linear_aligned(struct radeon_surface *surf,
         xalign = MAX2(xalign, slice_align / surf->bpe);
     else
         /* Small rows evenly distributed across slice */
-        xalign = MAX2(xalign, slice_align / surf->bpe / surf->level[level].npix_y);
+        xalign = MAX2(xalign, slice_align / surf->bpe / surflevel->nblk_y);
 
-    surf->level[level].nblk_x  = ALIGN(surf->level[level].nblk_x, xalign);
-    surf->level[level].nblk_y  = ALIGN(surf->level[level].nblk_y, yalign);
-    surf->level[level].nblk_z  = ALIGN(surf->level[level].nblk_z, zalign);
+    surflevel->nblk_x  = ALIGN(surflevel->nblk_x, xalign);
+    surflevel->nblk_z  = ALIGN(surflevel->nblk_z, zalign);
 
-    surf->level[level].offset = offset;
-    surf->level[level].pitch_bytes = surf->level[level].nblk_x * surf->bpe * surf->nsamples;
-    surf->level[level].slice_size = ALIGN(surf->level[level].pitch_bytes * surf->level[level].nblk_y, slice_align);
+    surflevel->offset = offset;
+    surflevel->pitch_bytes = surflevel->nblk_x * surf->bpe * surf->nsamples;
+    surflevel->slice_size = ALIGN(surflevel->pitch_bytes * surflevel->nblk_y, slice_align);
 
-    surf->bo_size = offset + surf->level[level].slice_size * surf->level[level].nblk_z * surf->array_size;
+    surf->bo_size = offset + surflevel->slice_size * surflevel->nblk_z * surf->array_size;
 }
 
 static int si_surface_init_linear_aligned(struct radeon_surface_manager *surf_man,
@@ -1059,7 +1061,48 @@ static int si_surface_init_linear_aligned(struct radeon_surface_manager *surf_ma
     /* build mipmap tree */
     for (i = start_level; i <= surf->last_level; i++) {
         surf->level[i].mode = RADEON_SURF_MODE_LINEAR_ALIGNED;
-        si_surf_minify_linear_aligned(surf, i, xalign, yalign, zalign, slice_align, offset);
+        si_surf_minify(surf, surf->level+i, surf->bpe, i, xalign, yalign,
+		       zalign, slice_align, offset);
+        /* level0 and first mipmap need to have alignment */
+        offset = surf->bo_size;
+        if ((i == 0)) {
+            offset = ALIGN(offset, surf->bo_alignment);
+        }
+    }
+    return 0;
+}
+
+static int si_surface_init_1d(struct radeon_surface_manager *surf_man,
+                              struct radeon_surface *surf,
+                              struct radeon_surface_level *level,
+                              unsigned bpe,
+                              uint64_t offset, unsigned start_level)
+{
+    uint32_t xalign, yalign, zalign, slice_align;
+    unsigned i;
+
+    /* compute alignment */
+    xalign = 8;
+    yalign = 8;
+    zalign = 1;
+    slice_align = surf_man->hw_info.group_bytes;
+    if (surf->flags & RADEON_SURF_SCANOUT) {
+        xalign = MAX2((bpe == 1) ? 64 : 32, xalign);
+    }
+
+    if (!start_level) {
+        unsigned alignment = MAX2(256, surf_man->hw_info.group_bytes);
+        surf->bo_alignment = MAX2(surf->bo_alignment, alignment);
+
+        if (offset) {
+            offset = ALIGN(offset, alignment);
+        }
+    }
+
+    /* build mipmap tree */
+    for (i = start_level; i <= surf->last_level; i++) {
+        level[i].mode = RADEON_SURF_MODE_1D;
+        si_surf_minify(surf, level+i, bpe, i, xalign, yalign, zalign, slice_align, offset);
         /* level0 and first mipmap need to have alignment */
         offset = surf->bo_size;
         if ((i == 0)) {
@@ -1069,6 +1112,28 @@ static int si_surface_init_linear_aligned(struct radeon_surface_manager *surf_ma
     return 0;
 }
 
+static int si_surface_init_1d_miptrees(struct radeon_surface_manager *surf_man,
+                                       struct radeon_surface *surf)
+{
+    unsigned zs_flags = RADEON_SURF_ZBUFFER | RADEON_SURF_SBUFFER;
+    int r, is_depth_stencil = (surf->flags & zs_flags) == zs_flags;
+    /* Old libdrm headers didn't have stencil_level in it. This prevents crashes. */
+    struct radeon_surface_level tmp[RADEON_SURF_MAX_LEVEL];
+    struct radeon_surface_level *stencil_level =
+        (surf->flags & RADEON_SURF_HAS_SBUFFER_MIPTREE) ? surf->stencil_level : tmp;
+
+    r = si_surface_init_1d(surf_man, surf, surf->level, surf->bpe, 0, 0);
+    if (r)
+        return r;
+
+    if (is_depth_stencil) {
+        r = si_surface_init_1d(surf_man, surf, stencil_level, 1,
+                               surf->bo_size, 0);
+        surf->stencil_offset = stencil_level[0].offset;
+    }
+    return r;
+}
+
 static int si_surface_init(struct radeon_surface_manager *surf_man,
                            struct radeon_surface *surf)
 {
@@ -1115,7 +1180,7 @@ static int si_surface_init(struct radeon_surface_manager *surf_man,
         r = si_surface_init_linear_aligned(surf_man, surf, 0, 0);
         break;
     case RADEON_SURF_MODE_1D:
-        r = eg_surface_init_1d_miptrees(surf_man, surf);
+        r = si_surface_init_1d_miptrees(surf_man, surf);
         break;
     case RADEON_SURF_MODE_2D:
         r = eg_surface_init_2d_miptrees(surf_man, surf);

commit 08cb5c1d0245f6bfc1dd4d041eb418bc160c7b05
Author: David Herrmann <dh.herrmann@googlemail.com>
Date:   Wed Jan 16 19:35:25 2013 +0100

    man: fix manpage build instructions
    
    This fixes all the out-of-tree build-failures with manpages and uses a
    .man_fixup file to avoid overriding man-pages on every build.
    
    Manpages are only built if xsltproc is found and the stylesheets are
    available locally. You can disable building manpages with
    --disable-manpages so the quite expensive xsltproc procedure can be
    skipped.
    
    Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>

diff --git a/.gitignore b/.gitignore
index 1de66bc..225fd80 100644
--- a/.gitignore
+++ b/.gitignore
@@ -52,6 +52,7 @@ libkms.pc
 libtool
 ltmain.sh
 mach64.kld
+man/.man_fixup
 mga.kld
 missing
 mkinstalldirs
diff --git a/Makefile.am b/Makefile.am
index 9f106d3..8ecd9d9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -49,7 +49,7 @@ if HAVE_EXYNOS
 EXYNOS_SUBDIR = exynos
 endif
 
-SUBDIRS = . $(LIBKMS_SUBDIR) $(INTEL_SUBDIR) $(NOUVEAU_SUBDIR) $(RADEON_SUBDIR) $(OMAP_SUBDIR) $(EXYNOS_SUBDIR) tests include 
+SUBDIRS = . $(LIBKMS_SUBDIR) $(INTEL_SUBDIR) $(NOUVEAU_SUBDIR) $(RADEON_SUBDIR) $(OMAP_SUBDIR) $(EXYNOS_SUBDIR) tests include man
 
 libdrm_la_LTLIBRARIES = libdrm.la
 libdrm_ladir = $(libdir)
diff --git a/configure.ac b/configure.ac
index 10cc9a4..9ee7940 100644
--- a/configure.ac
+++ b/configure.ac
@@ -226,8 +226,26 @@ if test "x$HAVE_LIBUDEV" = xyes; then
 fi
 AM_CONDITIONAL(HAVE_LIBUDEV, [test "x$HAVE_LIBUDEV" = xyes])
 
+# xsltproc for docbook manpages
+AC_ARG_ENABLE([manpages],
+              AS_HELP_STRING([--disable-manpages], [disable manpages @<:@default=enabled@:>@]),
+              [MANS=$enableval], [MANS=auto])
 AC_PATH_PROG(XSLTPROC, xsltproc)
-AM_CONDITIONAL([HAVE_XSLTPROC], [test "x$XSLTPROC" != "x"])
+AM_CONDITIONAL([BUILD_MANPAGES], [test "x$XSLTPROC" != "x" -a "x$MANS" != "xno"])
+
+# check for offline man-pages stylesheet
+AC_MSG_CHECKING([for docbook manpages stylesheet])
+MANPAGES_STYLESHEET="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl";
+AC_PATH_PROGS_FEATURE_CHECK([XSLTPROC_TMP], [xsltproc],
+                            AS_IF([`"$ac_path_XSLTPROC_TMP" --nonet "$MANPAGES_STYLESHEET" > /dev/null 2>&1`],
+                                  [HAVE_MANPAGES_STYLESHEET=yes]))
+if test "x$HAVE_MANPAGES_STYLESHEET" = "xyes"; then
+        AC_SUBST(MANPAGES_STYLESHEET)
+        AC_MSG_RESULT([yes])
+else
+        AC_MSG_RESULT([no])
+fi
+AM_CONDITIONAL([HAVE_MANPAGES_STYLESHEET], [test "x$HAVE_MANPAGES_STYLESHEET" = "xyes"])
 
 if test "x$INTEL" != "xno" -o "x$RADEON" != "xno" -o "x$NOUVEAU" != "xno" -o "x$OMAP" != "xno"; then
     # Check for atomic intrinsics
diff --git a/man/Makefile.am b/man/Makefile.am
index 32acd07..25202e2 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -18,37 +18,45 @@ MANPAGES_ALIASES = \
 
 XML_FILES = \
 	${patsubst %.1,%.xml,${patsubst %.3,%.xml,${patsubst %.5,%.xml,${patsubs %.7,%.xml,$(MANPAGES)}}}}
-CLEANFILES =
-EXTRA_DIST =
+EXTRA_DIST = $(XML_FILES)
+CLEANFILES = $(MANPAGES) $(MANPAGES_ALIASES) .man_fixup
 man_MANS =
 
-if HAVE_XSLTPROC
+if BUILD_MANPAGES
+if HAVE_MANPAGES_STYLESHEET
 
-CLEANFILES += $(MANPAGES) $(MANPAGES_ALIASES)
-EXTRA_DIST += $(MANPAGES) $(MANPAGES_ALIASES) $(XML_FILES)
 man_MANS += $(MANPAGES) $(MANPAGES_ALIASES)
 
 XSLTPROC_FLAGS = \
 	--stringparam man.authors.section.enabled 0 \
 	--stringparam man.copyright.section.enabled 0 \
 	--stringparam funcsynopsis.style ansi \
-	--stringparam man.output.quietly 1
+	--stringparam man.output.quietly 1 \
+	--nonet
 
 XSLTPROC_PROCESS_MAN = \
 	$(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
-	$(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< && \
-	$(SED) -i -e 's/^\.so \(.*\)\.\(.\)$$/\.so man\2\/\1\.\2/' $(MANPAGES_ALIASES)
+	$(XSLTPROC) -o "$@" $(XSLTPROC_FLAGS) $(MANPAGES_STYLESHEET) "$<" && \
+	touch .man_fixup
 
-%.1: %.xml
+# Force .man_fixup if $(MANPAGES) are not built
+.man_fixup: | $(MANPAGES)
+	@touch .man_fixup
+
+$(MANPAGES_ALIASES): $(MANPAGES) .man_fixup
+	$(AM_V_GEN)if test -n "$@" ; then $(SED) -i -e 's/^\.so \([a-z_]\+\)\.\([0-9]\)$$/\.so man\2\/\1\.\2/' "$@" ; fi
+
+%.1: $(top_srcdir)/man/%.xml
 	$(XSLTPROC_PROCESS_MAN)
 
-%.3: %.xml
+%.3: $(top_srcdir)/man/%.xml
 	$(XSLTPROC_PROCESS_MAN)
 
-%.5: %.xml
+%.5: $(top_srcdir)/man/%.xml
 	$(XSLTPROC_PROCESS_MAN)
 
-%.7: %.xml
+%.7: $(top_srcdir)/man/%.xml
 	$(XSLTPROC_PROCESS_MAN)
 
-endif # HAVE_XSLTPROC
+endif # HAVE_MANPAGES_STYLESHEET
+endif # BUILD_MANPAGES

commit 481763c2c7f5224a9f053ab3a2b2356eb89a96f0
Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Date:   Wed Jan 16 14:29:14 2013 +0100

    nouveau: use @PACKAGE_VERSION@ in libdrm_nouveau.pc
    
    Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>

diff --git a/nouveau/libdrm_nouveau.pc.in b/nouveau/libdrm_nouveau.pc.in
index 454fc87..9abfd81 100644
--- a/nouveau/libdrm_nouveau.pc.in
+++ b/nouveau/libdrm_nouveau.pc.in
@@ -5,7 +5,7 @@ includedir=@includedir@
 
 Name: libdrm_nouveau
 Description: Userspace interface to nouveau kernel DRM services
-Version: 2.4.33
+Version: @PACKAGE_VERSION@
 Libs: -L${libdir} -ldrm_nouveau
 Cflags: -I${includedir} -I${includedir}/libdrm
 Requires.private: libdrm

commit 9ab7a43c4e57e618854b3641101fcd707736dbf0
Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Date:   Wed Jan 16 14:04:59 2013 +0100

    Add 02_fix_build.diff fix a build error.

diff --git a/debian/changelog b/debian/changelog
index c1edea0..9111d6c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,6 +5,7 @@ libdrm (2.4.41-1) UNRELEASED; urgency=low
 
   [ Maarten Lankhorst ]
   * New upstream release.
+  * Add 02_fix_build.diff fix a build error.
 
  -- Julien Cristau <jcristau@debian.org>  Tue, 25 Dec 2012 13:17:28 +0100
 
diff --git a/debian/patches/02_fix_build.diff b/debian/patches/02_fix_build.diff
new file mode 100644
index 0000000..234101b
--- /dev/null
+++ b/debian/patches/02_fix_build.diff
@@ -0,0 +1,12 @@
+diff --git a/configure.ac b/configure.ac
+index 10cc9a4..1776610 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -348,7 +348,6 @@ AC_CONFIG_FILES([
+ 	tests/vbltest/Makefile
+ 	include/Makefile
+ 	include/drm/Makefile
+-	man/Makefile
+ 	libdrm.pc])
+ AC_OUTPUT
+ 
diff --git a/debian/patches/series b/debian/patches/series
index 2e425c0..e64f736 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
 01_default_perms.diff
+02_fix_build.diff
 03_build_against_librt.diff


Reply to: