head 1.3; access; symbols pkgsrc-2015Q1:1.2.0.6 pkgsrc-2015Q1-base:1.2 pkgsrc-2014Q4:1.2.0.4 pkgsrc-2014Q4-base:1.2 pkgsrc-2014Q3:1.2.0.2 pkgsrc-2014Q3-base:1.2 pkgsrc-2014Q2:1.1.0.34 pkgsrc-2014Q2-base:1.1 pkgsrc-2014Q1:1.1.0.32 pkgsrc-2014Q1-base:1.1 pkgsrc-2013Q4:1.1.0.30 pkgsrc-2013Q4-base:1.1 pkgsrc-2013Q3:1.1.0.28 pkgsrc-2013Q3-base:1.1 pkgsrc-2013Q2:1.1.0.26 pkgsrc-2013Q2-base:1.1 pkgsrc-2013Q1:1.1.0.24 pkgsrc-2013Q1-base:1.1 pkgsrc-2012Q4:1.1.0.22 pkgsrc-2012Q4-base:1.1 pkgsrc-2012Q3:1.1.0.20 pkgsrc-2012Q3-base:1.1 pkgsrc-2012Q2:1.1.0.18 pkgsrc-2012Q2-base:1.1 pkgsrc-2012Q1:1.1.0.16 pkgsrc-2012Q1-base:1.1 pkgsrc-2011Q4:1.1.0.14 pkgsrc-2011Q4-base:1.1 pkgsrc-2011Q3:1.1.0.12 pkgsrc-2011Q3-base:1.1 pkgsrc-2011Q2:1.1.0.10 pkgsrc-2011Q2-base:1.1 pkgsrc-2011Q1:1.1.0.8 pkgsrc-2011Q1-base:1.1 pkgsrc-2010Q4:1.1.0.6 pkgsrc-2010Q4-base:1.1 pkgsrc-2010Q3:1.1.0.4 pkgsrc-2010Q3-base:1.1 pkgsrc-2010Q2:1.1.0.2 pkgsrc-2010Q2-base:1.1; locks; strict; comment @# @; 1.3 date 2015.04.02.22.21.43; author tnn; state dead; branches; next 1.2; commitid Gy4GvxqYu3zdb4gy; 1.2 date 2014.07.20.08.29.27; author wiz; state Exp; branches; next 1.1; commitid SZIT8ZF9Xm88O5Jx; 1.1 date 2010.04.19.18.46.15; author tnn; state Exp; branches; next ; desc @@ 1.3 log @libdrm-2.4.60 (2015-03-19) Alan Coopersmith (2): Stop undefining _ATOMIC_TYPE in Solaris/NetBSD section of xf86atomic.h On Solaris, #include in xf86drm.c Chih-Wei Huang (1): android: remove duplicate libdrm in LOCAL_SHARED_LIBRARIES Damien Lespiau (1): build: Bump version number to 2.4.60 before release Daniel Vetter (7): intel: Unconditionally clear ioctl structs xf86drmMode: Unconditionally clear ioctl structs drm: use drmIoctl everywhere xf86drm: Unconditionally clear ioctl structs tests: remove intel-specific tests xf86drm: Fix ioctl struct clearing in drmGetVersion Revert "intel: Fix documentation for drm_intel_gem_bo_wait()" Emil Velikov (21): libdrm: fix the Android 64bit build autotools: add AM_DISTCHECK_CONFIGURE_FLAGS exynos_fimg2d_test: fix implicit funciton declaration errors tests: fix implicit funciton declaration errors autotools: add WARN_CFLAGS to all targets tests: remove unused variables exynos_fimg2d_test: remove unused variables tests/radeon: set the list* functions as inline automake: wrap an insanely long line configure: omap, freedreno and tegra require atomics configure: update help strings automake: drop the NULL variable from the makefile tests: move the SUBDIR at the top of the makefile tests: automake: keep the libs link at the final stage drm: add drmGet(Primary|Render)DeviceNameFromFd functions modetest: include into the build when libkms is not selected. configure: Stop using AM_MAINTAINER_MODE autogen.sh: handle out-of-tree invokation configure.ac: fix host_cpu/atomics detection configure.ac: fix help string copy/pasta configure.ac: error out if building freedreno_kgsl without freedreno Frank Binns (3): Rename DRM_NODE_RENDER to DRM_NODE_PRIMARY Add new drmOpenRender function Add new drmGetNodeTypeFromFd function Hyungwon Hwang (2): exynos: Don't use DRM_EXYNOS_GEM_{MAP_OFFSET/MMAP} ioctls exynos: remove DRM_EXYNOS_GEM_{MAP_OFFSET/MMAP} ioctls Jammy Zhou (2): Add new drmOpenWithType function (v4) Add new drmOpenOnceWithType function (v2) Jan Vesely (7): random: Use unsigned long for seed Fix gcc -Wextra warnings tests: String literals are const char * Fix type-limits, pointer-arith and sign-compare warnings dristat: Handle DRM_CONSISTENT Fix unused, and unused-but-set variables warnings Add static qualifier to local functions Jeff McGee (1): intel: Export total subslice and EU counts Jerome Glisse (1): nouveau: fix unlock nouveau_bo_name_ref() Kristian Høgsberg (1): intel: Fix documentation for drm_intel_gem_bo_wait() Maarten Lankhorst (4): Add atomic_inc_return to atomics. Use __sync_add_and_fetch instead of __sync_fetch_and_add for atomic_dec_and_test nouveau: make nouveau importing global buffers completely thread-safe, with tests nouveau: Do not add most bo's to the global bo list. Philipp Zabel (1): tests: add support for imx-drm Thomas Klausner (4): Fix libdrm's atomic_dec_and_test on Solaris. Add NetBSD atomic ops support. intel: Only define variable when it's used. nouveau: Remove unused static function. Tobias Jakobi (18): exynos: replace G2D_DOUBLE_TO_FIXED macro with function tests/exynos: fix typos and change wording tests/exynos: disable the G2D userptr/blend test tests/exynos: introduce wait_for_user_input exynos: introduce g2d_add_base_addr helper function tests/exynos: improve error handling exynos: fimg2d: remove TRUE/FALSE from header exynos: fimg2d: fix comment for G2D_COEFF_MODE_GB_COLOR exynos: fimg2d: unify register style exynos: fimg2d: introduce G2D_OP_INTERPOLATE exynos: fimg2d: whitespace fix in g2d_flush tests/exynos: fimg2d: add a checkerboard test exynos: add g2d_scale_and_blend exynos: honor the repeat mode in g2d_copy_with_scale exynos: use structure initialization instead of memset exynos: add exynos prefix to fimg2d header exynos: add fimg2d header to common includes exynos: fimg2d: follow-up fix for G2D_COEFF_MODE_GB_COLOR @ text @$NetBSD: patch-ad,v 1.2 2014/07/20 08:29:27 wiz Exp $ Fix Solaris atomic_dec_and_test. Add NetBSD atomic ops support. --- xf86atomic.h.orig 2010-05-18 17:00:43.000000000 +0000 +++ xf86atomic.h @@@@ -85,7 +85,24 @@@@ typedef struct { uint_t atomic; } atomic # define atomic_read(x) (int) ((x)->atomic) # define atomic_set(x, val) ((x)->atomic = (uint_t)(val)) # define atomic_inc(x) (atomic_inc_uint (&(x)->atomic)) -# define atomic_dec_and_test(x) (atomic_dec_uint_nv(&(x)->atomic) == 1) +# define atomic_dec_and_test(x) (atomic_dec_uint_nv(&(x)->atomic) == 0) +# define atomic_add(x, v) (atomic_add_int(&(x)->atomic, (v))) +# define atomic_dec(x, v) (atomic_add_int(&(x)->atomic, -(v))) +# define atomic_cmpxchg(x, oldv, newv) atomic_cas_uint (&(x)->atomic, oldv, newv) + +#endif + +#if defined(__NetBSD__) && !defined(HAS_ATOMIC_OPS) /* NetBSD */ + +#include +#define HAS_ATOMIC_OPS 1 + +typedef struct { int atomic; } atomic_t; + +# define atomic_read(x) (int) ((x)->atomic) +# define atomic_set(x, val) ((x)->atomic = (val)) +# define atomic_inc(x) (atomic_inc_uint (&(x)->atomic)) +# define atomic_dec_and_test(x) (atomic_dec_uint_nv(&(x)->atomic) == 0) # define atomic_add(x, v) (atomic_add_int(&(x)->atomic, (v))) # define atomic_dec(x, v) (atomic_add_int(&(x)->atomic, -(v))) # define atomic_cmpxchg(x, oldv, newv) atomic_cas_uint (&(x)->atomic, oldv, newv) @ 1.2 log @Fix NetBSD and Solaris atomic_dec_and_test. Based on similar patch for xsrc from Taylor R Campbell. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD: patch-ad,v 1.1 2010/04/19 18:46:15 tnn Exp $ @ 1.1 log @clean up atomic ops handling and use devel/libatomic_ops as a fallback. Based on patch from Dennis den Brok. @ text @d1 1 a1 1 $NetBSD$ d3 4 a6 1 --- xf86atomic.h.orig 2010-03-22 20:39:27.000000000 +0000 d8 12 a19 4 @@@@ -92,6 +92,23 @@@@ typedef struct { uint_t atomic; } atomic #endif d30 4 a33 10 +# define atomic_dec_and_test(x) (atomic_dec_uint_nv(&(x)->atomic) == 1) +# define atomic_add(x, v) (atomic_add_int(&(x)->atomic, (v))) +# define atomic_dec(x, v) (atomic_add_int(&(x)->atomic, -(v))) +# define atomic_cmpxchg(x, oldv, newv) atomic_cas_uint (&(x)->atomic, oldv, newv) + +#endif + #if ! HAS_ATOMIC_OPS #error libdrm requires atomic operations, please define them for your CPU/compiler. #endif @