diff options
| author | riastradh <riastradh@NetBSD.org> | 2021-12-19 11:14:56 +0000 |
|---|---|---|
| committer | riastradh <riastradh@NetBSD.org> | 2021-12-19 11:14:56 +0000 |
| commit | 9182e9593bdb19cbcef2dbb25d4c8ae198f4f59f (patch) | |
| tree | a32b85d96a5240f8904cafe3c50f4e10c6eab814 /sys | |
| parent | bbd0f4fafc4b28508d6534e0e63a4d2eb93ea6d2 (diff) | |
drm/linux: Add memset32, SZ_64K, atomic_sub_return.
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/external/bsd/drm2/include/linux/atomic.h | 14 | ||||
| -rw-r--r-- | sys/external/bsd/drm2/include/linux/sizes.h | 3 | ||||
| -rw-r--r-- | sys/external/bsd/drm2/include/linux/string.h | 10 |
3 files changed, 24 insertions, 3 deletions
diff --git a/sys/external/bsd/drm2/include/linux/atomic.h b/sys/external/bsd/drm2/include/linux/atomic.h index 781cd1c97f3..db04fab60c6 100644 --- a/sys/external/bsd/drm2/include/linux/atomic.h +++ b/sys/external/bsd/drm2/include/linux/atomic.h @@ -1,4 +1,4 @@ -/* $NetBSD: atomic.h,v 1.35 2021/12/19 11:04:28 riastradh Exp $ */ +/* $NetBSD: atomic.h,v 1.36 2021/12/19 11:14:56 riastradh Exp $ */ /*- * Copyright (c) 2013 The NetBSD Foundation, Inc. @@ -113,6 +113,18 @@ atomic_add_return(int addend, atomic_t *atomic) return v; } +static inline int +atomic_sub_return(int subtrahend, atomic_t *atomic) +{ + int v; + + smp_mb__before_atomic(); + v = (int)atomic_add_int_nv(&atomic->a_u.au_uint, -subtrahend); + smp_mb__after_atomic(); + + return v; +} + static inline void atomic_inc(atomic_t *atomic) { diff --git a/sys/external/bsd/drm2/include/linux/sizes.h b/sys/external/bsd/drm2/include/linux/sizes.h index d12abc13d89..8f8e81733a8 100644 --- a/sys/external/bsd/drm2/include/linux/sizes.h +++ b/sys/external/bsd/drm2/include/linux/sizes.h @@ -1,4 +1,4 @@ -/* $NetBSD: sizes.h,v 1.1 2021/12/19 00:30:11 riastradh Exp $ */ +/* $NetBSD: sizes.h,v 1.2 2021/12/19 11:14:56 riastradh Exp $ */ /*- * Copyright (c) 2018 The NetBSD Foundation, Inc. @@ -33,6 +33,7 @@ #define _LINUX_SIZES_H_ #define SZ_8K 0x00008000 +#define SZ_64K 0x00010000 #define SZ_1M 0x00100000 #define SZ_2M 0x00200000 diff --git a/sys/external/bsd/drm2/include/linux/string.h b/sys/external/bsd/drm2/include/linux/string.h index 7d09b96b9be..745d3dc8a27 100644 --- a/sys/external/bsd/drm2/include/linux/string.h +++ b/sys/external/bsd/drm2/include/linux/string.h @@ -1,4 +1,4 @@ -/* $NetBSD: string.h,v 1.9 2021/12/19 10:48:00 riastradh Exp $ */ +/* $NetBSD: string.h,v 1.10 2021/12/19 11:14:56 riastradh Exp $ */ /*- * Copyright (c) 2013 The NetBSD Foundation, Inc. @@ -116,6 +116,14 @@ strscpy(char *dst, const char *src, size_t dstsize) } static inline void +memset32(uint32_t *p, uint32_t v, size_t n) +{ + + while (n --> 0) + *p++ = v; +} + +static inline void memset64(uint64_t *p, uint64_t v, size_t n) { |
