18 #include <rte_compat.h> 30 #define RTE_BIT64(nr) (UINT64_C(1) << (nr)) 38 #define RTE_BIT32(nr) (UINT32_C(1) << (nr)) 56 static inline uint32_t
61 uint32_t mask = UINT32_C(1) << nr;
62 return (*addr) & mask;
83 *addr = (*addr) | mask;
104 *addr = (*addr) & (~mask);
122 static inline uint32_t
128 uint32_t val = *addr;
148 static inline uint32_t
154 uint32_t val = *addr;
155 *addr = val & (~mask);
175 static inline uint64_t
181 return (*addr) & mask;
202 (*addr) = (*addr) | mask;
223 *addr = (*addr) & (~mask);
241 static inline uint64_t
247 uint64_t val = *addr;
267 static inline uint64_t
273 uint64_t val = *addr;
274 *addr = val & (~mask);
static __rte_experimental void rte_bit_relaxed_clear64(unsigned int nr, volatile uint64_t *addr)
static __rte_experimental uint64_t rte_bit_relaxed_test_and_clear64(unsigned int nr, volatile uint64_t *addr)
static __rte_experimental uint32_t rte_bit_relaxed_test_and_set32(unsigned int nr, volatile uint32_t *addr)
static __rte_experimental void rte_bit_relaxed_set64(unsigned int nr, volatile uint64_t *addr)
static __rte_experimental uint64_t rte_bit_relaxed_get64(unsigned int nr, volatile uint64_t *addr)
static __rte_experimental void rte_bit_relaxed_set32(unsigned int nr, volatile uint32_t *addr)
static __rte_experimental void rte_bit_relaxed_clear32(unsigned int nr, volatile uint32_t *addr)
static __rte_experimental uint32_t rte_bit_relaxed_get32(unsigned int nr, volatile uint32_t *addr)
static __rte_experimental uint32_t rte_bit_relaxed_test_and_clear32(unsigned int nr, volatile uint32_t *addr)
static __rte_experimental uint64_t rte_bit_relaxed_test_and_set64(unsigned int nr, volatile uint64_t *addr)