142 typedef volatile struct
void l2cache_flush(void *address, u64 size)
Use the L2 cache registers to flush a range of memory, using physical address.
void l2cache_flushBlocking(void *address, u64 size)
Use the L2 cache registers to flush a range of memory, using physical address and wait until the flus...
void l2cache_setFlushInterrupt(u64 mask)
Set L2 Cache Flush Interrupt.
void l2cache_waitFlush()
Wait until Flush is completed.
L2CTRL hardware register map.
u64 INTERRUPTS
Offset: 0xBFF8, MTIME Low.
u64 ADDRESS_TO
Offset: 0x0018, end address.
u64 ADDRESS_FROM
Offset: 0x0010, starting address.
u64 START
Offset; 0x0008, start and busy status.
u64 COMPLETION
Offset: 0x0000, flush completion status.
u64 reserved0[(0x38-0x20)/8U]
Reserved Space (0x20 to 0x30).