50d49
< #include "arch/arm/table_walker.hh"
60a60,63
> #if FULL_SYSTEM
> #include "arch/arm/table_walker.hh"
> #endif
>
72a76
> #if FULL_SYSTEM
73a78
> #endif
295,307d299
< Fault
< TLB::trickBoxCheck(RequestPtr req, Mode mode, uint8_t domain, bool sNp)
< {
< return NoFault;
< }
<
< Fault
< TLB::walkTrickBoxCheck(Addr pa, Addr va, Addr sz, bool is_exec,
< uint8_t domain, bool sNp)
< {
< return NoFault;
< }
<
342a335,347
> TLB::trickBoxCheck(RequestPtr req, Mode mode, uint8_t domain, bool sNp)
> {
> return NoFault;
> }
>
> Fault
> TLB::walkTrickBoxCheck(Addr pa, Addr va, Addr sz, bool is_exec,
> bool is_write, uint8_t domain, bool sNp)
> {
> return NoFault;
> }
>
> Fault
437a443,445
> /* if (!sctlr.xp)
> ap &= 0x3;
> */
440c448,465
< abt = true;
---
> DPRINTF(TLB, "Access permissions 0, checking rs:%#x\n", (int)sctlr.rs);
> if (!sctlr.xp) {
> switch ((int)sctlr.rs) {
> case 2:
> abt = is_write;
> break;
> case 1:
> abt = is_write || !is_priv;
> break;
> case 0:
> case 3:
> default:
> abt = true;
> break;
> }
> } else {
> abt = true;
> }