From d90256a7fd3eb98007baebd0fd2cf071781e45f3 Mon Sep 17 00:00:00 2001 From: Konstantin Porotchkin Date: Sun, 7 Oct 2018 17:42:56 +0300 Subject: [PATCH] lib/mmio: Add mmio_clrsetbits_16 inline function Add 16-bit variant of mmio_clrsetbits function Signed-off-by: Grzegorz Jaszczyk Signed-off-by: Konstantin Porotchkin --- include/lib/mmio.h | 7 +++++++ 1 file changed, 7 insertions(+) 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; -- 2.30.2