26 ERROR(
"failed to map I/O memory");
43 for (
u32 val = 0x1ff; val != 0; val >>= 1)
void unset(Address addr, u32 data)
Unset bits in memory mapped register.
void write(u32 reg, u32 data)
write to memory mapped I/O register
void setBase(const Address base)
Set memory I/O base offset.
Result map(Address phys, Size size=4096, Memory::Access access=Memory::Readable|Memory::Writable|Memory::User)
Map I/O address space.
Address getBase() const
Get memory I/O base offset.
Result powerOnCore(const Size coreId)
Power on a processor.
static const Size NumberOfCores
Total number of cores supported.
static const Address IOBase
Physical base memory address of the PRCM module.
Result initialize()
Perform initialization.
Arch::IO m_io
Memory I/O object.
#define PAGESIZE
ARM uses 4K pages.
unsigned int u32
Unsigned 32-bit number.
#define ERROR(msg)
Output an error message.
unsigned int Size
Any sane size indicator cannot go negative.