diff options
author | Konstantin Porotchkin <kostap@marvell.com> | 2018-10-07 17:42:56 +0300 |
---|---|---|
committer | Konstantin Porotchkin <kostap@marvell.com> | 2018-10-18 12:13:11 +0300 |
commit | d90256a7fd3eb98007baebd0fd2cf071781e45f3 (patch) | |
tree | 9360a7b4600a35098eb0e5aa8e2f4e0227460b57 | |
parent | a51443fa7e50346d167a93efb556f290eb63bd5c (diff) |
lib/mmio: Add mmio_clrsetbits_16 inline function
Add 16-bit variant of mmio_clrsetbits function
Signed-off-by: Grzegorz Jaszczyk <jaz@semihalf.com>
Signed-off-by: Konstantin Porotchkin <kostap@marvell.com>
-rw-r--r-- | include/lib/mmio.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/lib/mmio.h b/include/lib/mmio.h index 880d2c51..38fdf0f2 100644 --- a/include/lib/mmio.h +++ b/include/lib/mmio.h @@ -29,6 +29,13 @@ static inline uint16_t mmio_read_16(uintptr_t addr) return *(volatile uint16_t*)addr; } +static inline void mmio_clrsetbits_16(uintptr_t addr, + uint16_t clear, + uint16_t set) +{ + mmio_write_16(addr, (mmio_read_16(addr) & ~clear) | set); +} + static inline void mmio_write_32(uintptr_t addr, uint32_t value) { *(volatile uint32_t*)addr = value; |