diff options
author | Grzegorz Jaszczyk <jaz@semihalf.com> | 2018-08-24 16:42:11 +0200 |
---|---|---|
committer | Kostya Porotchkin <kostap@marvell.com> | 2018-09-03 16:41:31 +0300 |
commit | ecfde07c80e1178cc5e74878153c8a8002beafff (patch) | |
tree | 06c608db42b5196154d1159ef5614a0de293be6c | |
parent | d181d204c110b017a0ef7a657137eaf3f1c357bb (diff) |
lib: mmio: add 16 bit clear-set-bits accessor
Change-Id: Ia366ee327c024db517e78c4cdcdbb633a1131699
Signed-off-by: Grzegorz Jaszczyk <jaz@semihalf.com>
Reviewed-on: http://vgitil04.il.marvell.com:8080/59673
Reviewed-by: Igal Liberman <igall@marvell.com>
Reviewed-by: Kostya Porotchkin <kostap@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@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; |