MemMap: Added AXI_WRAM & SHARED_PAGE along with other stuff
Got rid of I/O address's since the I/O addresses range's overlap with other address's types such as vram, these I/O addresses need to be done in an different way.
This commit is contained in:
parent
9ce11b2d92
commit
23ae8aa4d3
2 changed files with 65 additions and 58 deletions
|
@ -58,11 +58,6 @@ inline void Read(T &var, const VAddr vaddr) {
|
|||
if (vaddr >= KERNEL_MEMORY_VADDR && vaddr < KERNEL_MEMORY_VADDR_END) {
|
||||
var = *((const T*)&g_kernel_mem[vaddr - KERNEL_MEMORY_VADDR]);
|
||||
|
||||
// Hardware I/O register reads
|
||||
// 0x10XXXXXX- is physical address space, 0x1EXXXXXX is virtual address space
|
||||
} else if ((vaddr >= HARDWARE_IO_VADDR) && (vaddr < HARDWARE_IO_VADDR_END)) {
|
||||
HW::Read<T>(var, vaddr);
|
||||
|
||||
// ExeFS:/.code is loaded here
|
||||
} else if ((vaddr >= EXEFS_CODE_VADDR) && (vaddr < EXEFS_CODE_VADDR_END)) {
|
||||
var = *((const T*)&g_exefs_code[vaddr - EXEFS_CODE_VADDR]);
|
||||
|
@ -103,11 +98,6 @@ inline void Write(const VAddr vaddr, const T data) {
|
|||
if (vaddr >= KERNEL_MEMORY_VADDR && vaddr < KERNEL_MEMORY_VADDR_END) {
|
||||
*(T*)&g_kernel_mem[vaddr - KERNEL_MEMORY_VADDR] = data;
|
||||
|
||||
// Hardware I/O register writes
|
||||
// 0x10XXXXXX- is physical address space, 0x1EXXXXXX is virtual address space
|
||||
} else if ((vaddr >= HARDWARE_IO_VADDR) && (vaddr < HARDWARE_IO_VADDR_END)) {
|
||||
HW::Write<T>(vaddr, data);
|
||||
|
||||
// ExeFS:/.code is loaded here
|
||||
} else if ((vaddr >= EXEFS_CODE_VADDR) && (vaddr < EXEFS_CODE_VADDR_END)) {
|
||||
*(T*)&g_exefs_code[vaddr - EXEFS_CODE_VADDR] = data;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue