#include <stdlib.h>#include <string.h>#include <unistd.h>#include <stdio.h>#include "dbg_msg.h"#include "jt_arm.h"#include "jt_mmu.h"#include "jt_cp15.h"#include "jt_instr.h"ARM MMU Interface
| void jtag_arm_mmu_save_and_disable | ( | void | ) |
On Debug entry:
save the current MMU-state and disable MMU and its cache
Collect current state, Clean Cache and Write Buffer
disable MMU and its caches
| - |
Referenced by gdb_main_loop(), and jtag_test().
| void jtag_arm_mmu_disable | ( | void | ) |
Disable MMU
(forget current state; and save as it has been Disabled before)
| - |
Referenced by gdb_restart(), and jtag_test().
| void jtag_arm_mmu_restore | ( | void | ) |
On exit Debug:
Restore previous MMU State using global variable
| - |
Referenced by gdb_action_continue(), and gdb_action_step().
| void jtag_arm_mmu_disable_high_vectors | ( | void | ) |
| void jtag_arm_mmu_enable_high_vectors | ( | void | ) |
| int jtag_arm_mmu_check_high_vectors | ( | void | ) |
Check if mmu high vectors enabled
| - |
| 0 | disabled (or dosn't have this feature) | |
| 1 | high vectors enabled |
Referenced by armOsabiMultiThreading(), gdb_main_loop(), gdb_monitor_Rcmd(), and jtag_arm_DumpCPUregs().
| int jtag_arm_mmu_virt2phys | ( | uint32_t | virtAddr, | |
| uint32_t * | physAddrPtr | |||
| ) |
translate a virtual address into a physical address
| virtAddr | virtual address | |
| physAddrPtr | Pointer to store the calculated physical address |
| 0 | invalid virtual address | |
| 1 | valid virtual address |
Referenced by gdb_action_step(), gdb_handle_exception(), gdb_main_loop(), gdb_vquery(), and InsertBreakpoint().