blob: 293f8035cc3017d8fcbbf9f61f55b10679220068 [file] [log] [blame]
/*
* SPDX-License-Identifier: BSD-3-Clause
* SPDX-FileCopyrightText: Copyright TF-RMM Contributors.
*/
#ifndef MMIO_H
#define MMIO_H
#include <stdint.h>
static inline uint8_t read8(volatile void *addr)
{
return *(uint8_t *)addr;
}
static inline void write8(uint8_t val, volatile void *addr)
{
*(uint8_t *)addr = val;
}
static inline uint16_t read16(volatile void *addr)
{
return *(uint16_t *)addr;
}
static inline void write16(uint16_t val, volatile void *addr)
{
*(uint16_t *)addr = val;
}
static inline uint32_t read32(volatile void *addr)
{
return *(uint32_t *)addr;
}
static inline void write32(uint32_t val, volatile void *addr)
{
*(uint32_t *)addr = val;
}
static inline uint64_t read64(volatile void *addr)
{
return *(uint64_t *)addr;
}
static inline void write64(uint64_t val, volatile void *addr)
{
*(uint64_t *)addr = val;
}
#endif /* MMIO_H */