diff --git a/libdrm.spec b/libdrm.spec index 666fc0b..9759aa3 100644 --- a/libdrm.spec +++ b/libdrm.spec @@ -3,7 +3,7 @@ Summary: Direct Rendering Manager runtime library Name: libdrm Version: 2.4.39 -Release: 2%{?dist} +Release: 3%{?dist} License: MIT Group: System Environment/Libraries URL: http://dri.sourceforge.net @@ -65,6 +65,7 @@ autoreconf -v --install || exit 1 %configure \ %ifarch %{arm} --enable-omap-experimental-api \ + --enable-exynos-experimental-api \ %endif --enable-udev make %{?_smp_mflags} @@ -104,6 +105,8 @@ done %{_libdir}/libdrm_intel.so.1.0.0 %endif %ifarch %{arm} +%{_libdir}/libdrm_exynos.so.1 +%{_libdir}/libdrm_exynos.so.1.0.0 %{_libdir}/libdrm_omap.so.1 %{_libdir}/libdrm_omap.so.1.0.0 %endif @@ -148,6 +151,8 @@ done %{_includedir}/libdrm/intel_debug.h %endif %ifarch %{arm} +%{_includedir}/libdrm/exynos_drmif.h +%{_includedir}/exynos/ %{_includedir}/libdrm/omap_drmif.h %{_includedir}/omap/ %endif @@ -167,6 +172,7 @@ done %{_libdir}/libdrm_intel.so %endif %ifarch %{arm} +%{_libdir}/libdrm_exynos.so %{_libdir}/libdrm_omap.so %endif %{_libdir}/libdrm_radeon.so @@ -177,6 +183,7 @@ done %{_libdir}/pkgconfig/libdrm_intel.pc %endif %ifarch %{arm} +%{_libdir}/pkgconfig/libdrm_exynos.pc %{_libdir}/pkgconfig/libdrm_omap.pc %endif %{_libdir}/pkgconfig/libdrm_radeon.pc @@ -184,11 +191,10 @@ done %{_libdir}/pkgconfig/libkms.pc %changelog -* Thu Sep 06 2012 Adam Jackson 2.4.39-2 -- Re-enable libkms until vmwgfx properly grows dumb bo support. Please don't - use it though. +* Mon Oct 08 2012 Adam Jackson 2.4.39-3 +- Add exynos to arm -* Wed Aug 29 2012 Adam Jackson 2.4.39-1 +* Mon Aug 27 2012 Dave Airlie 2.4.39-1 - upstream 2.4.39 release * Tue Aug 14 2012 Dave Airlie 2.4.38-2 diff --git a/radeon-prime.patch b/radeon-prime.patch deleted file mode 100644 index f5d692c..0000000 --- a/radeon-prime.patch +++ /dev/null @@ -1,106 +0,0 @@ -From 3163cfe4db925429760407e77140e2d595338bc2 Mon Sep 17 00:00:00 2001 -From: Dave Airlie -Date: Tue, 12 Jun 2012 17:31:12 +0100 -Subject: [PATCH] radeon: add prime import/export support - -this adds radeon version of the prime import/export support. - -Signed-off-by: Dave Airlie ---- - radeon/Makefile.am | 2 +- - radeon/radeon_bo_gem.c | 48 +++++++++++++++++++++++++++++++++++++++++++++++- - radeon/radeon_bo_gem.h | 4 ++++ - 3 files changed, 52 insertions(+), 2 deletions(-) - -diff --git a/radeon/Makefile.am b/radeon/Makefile.am -index 37be8cc..a8cd100 100644 ---- a/radeon/Makefile.am -+++ b/radeon/Makefile.am -@@ -31,7 +31,7 @@ AM_CFLAGS = \ - - libdrm_radeon_la_LTLIBRARIES = libdrm_radeon.la - libdrm_radeon_ladir = $(libdir) --libdrm_radeon_la_LDFLAGS = -version-number 1:0:0 -no-undefined -+libdrm_radeon_la_LDFLAGS = -version-number 1:0:1 -no-undefined - libdrm_radeon_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@ - - libdrm_radeon_la_SOURCES = \ -diff --git a/radeon/radeon_bo_gem.c b/radeon/radeon_bo_gem.c -index 719fba7..265f177 100644 ---- a/radeon/radeon_bo_gem.c -+++ b/radeon/radeon_bo_gem.c -@@ -45,7 +45,7 @@ - #include "radeon_bo.h" - #include "radeon_bo_int.h" - #include "radeon_bo_gem.h" -- -+#include - struct radeon_bo_gem { - struct radeon_bo_int base; - uint32_t name; -@@ -349,3 +349,49 @@ int radeon_gem_set_domain(struct radeon_bo *bo, uint32_t read_domains, uint32_t - sizeof(args)); - return r; - } -+ -+int radeon_gem_prime_share_bo(struct radeon_bo *bo, int *handle) -+{ -+ struct radeon_bo_gem *bo_gem = (struct radeon_bo_gem*)bo; -+ int ret; -+ -+ ret = drmPrimeHandleToFD(bo_gem->base.bom->fd, bo->handle, DRM_CLOEXEC, handle); -+ return ret; -+} -+ -+struct radeon_bo *radeon_gem_bo_open_prime(struct radeon_bo_manager *bom, -+ int fd_handle, -+ uint32_t size) -+{ -+ struct radeon_bo_gem *bo; -+ int r; -+ uint32_t handle; -+ -+ bo = (struct radeon_bo_gem*)calloc(1, sizeof(struct radeon_bo_gem)); -+ if (bo == NULL) { -+ return NULL; -+ } -+ -+ bo->base.bom = bom; -+ bo->base.handle = 0; -+ bo->base.size = size; -+ bo->base.alignment = 0; -+ bo->base.domains = RADEON_GEM_DOMAIN_GTT; -+ bo->base.flags = 0; -+ bo->base.ptr = NULL; -+ atomic_set(&bo->reloc_in_cs, 0); -+ bo->map_count = 0; -+ -+ r = drmPrimeFDToHandle(bom->fd, fd_handle, &handle); -+ if (r != 0) { -+ free(bo); -+ return NULL; -+ } -+ -+ bo->base.handle = handle; -+ bo->name = handle; -+ -+ radeon_bo_ref((struct radeon_bo *)bo); -+ return (struct radeon_bo *)bo; -+ -+} -diff --git a/radeon/radeon_bo_gem.h b/radeon/radeon_bo_gem.h -index 0af8610..08965f3 100644 ---- a/radeon/radeon_bo_gem.h -+++ b/radeon/radeon_bo_gem.h -@@ -41,4 +41,8 @@ uint32_t radeon_gem_name_bo(struct radeon_bo *bo); - void *radeon_gem_get_reloc_in_cs(struct radeon_bo *bo); - int radeon_gem_set_domain(struct radeon_bo *bo, uint32_t read_domains, uint32_t write_domain); - int radeon_gem_get_kernel_name(struct radeon_bo *bo, uint32_t *name); -+int radeon_gem_prime_share_bo(struct radeon_bo *bo, int *handle); -+struct radeon_bo *radeon_gem_bo_open_prime(struct radeon_bo_manager *bom, -+ int fd_handle, -+ uint32_t size); - #endif --- -1.7.11.2 -