78c78
< stage2Mmu(NULL), rangeMRU(1),
---
> stage2Mmu(NULL), test(nullptr), rangeMRU(1),
580,592d579
< TLB::trickBoxCheck(RequestPtr req, Mode mode, TlbEntry::DomainType domain)
< {
< return NoFault;
< }
<
< Fault
< TLB::walkTrickBoxCheck(Addr pa, bool is_secure, Addr va, Addr sz, bool is_exec,
< bool is_write, TlbEntry::DomainType domain, LookupLevel lookup_level)
< {
< return NoFault;
< }
<
< Fault
1041c1028
< return trickBoxCheck(req, mode, TlbEntry::DomainType::NoAccess);
---
> return testTranslation(req, mode, TlbEntry::DomainType::NoAccess);
1094,1096c1081,1082
< if (fault == NoFault) {
< fault = trickBoxCheck(req, mode, te->domain);
< }
---
> if (fault == NoFault)
> fault = testTranslation(req, mode, te->domain);
1421a1408,1442
> void
> TLB::setTestInterface(SimObject *_ti)
> {
> if (!_ti) {
> test = nullptr;
> } else {
> TlbTestInterface *ti(dynamic_cast<TlbTestInterface *>(_ti));
> fatal_if(!ti, "%s is not a valid ARM TLB tester\n", _ti->name());
> test = ti;
> }
> }
>
> Fault
> TLB::testTranslation(RequestPtr req, Mode mode, TlbEntry::DomainType domain)
> {
> if (!test) {
> return NoFault;
> } else {
> return test->translationCheck(req, isPriv, mode, domain);
> }
> }
>
> Fault
> TLB::testWalk(Addr pa, Addr size, Addr va, bool is_secure, Mode mode,
> TlbEntry::DomainType domain, LookupLevel lookup_level)
> {
> if (!test) {
> return NoFault;
> } else {
> return test->walkCheck(pa, size, va, is_secure, isPriv, mode,
> domain, lookup_level);
> }
> }
>
>