63a64
> class TLB;
64a66,101
> class TlbTestInterface
> {
> public:
> TlbTestInterface() {}
> virtual ~TlbTestInterface() {}
>
> /**
> * Check if a TLB translation should be forced to fail.
> *
> * @param req Request requiring a translation.
> * @param is_priv Access from a privileged mode (i.e., not EL0)
> * @param mode Access type
> * @param domain Domain type
> */
> virtual Fault translationCheck(RequestPtr req, bool is_priv,
> BaseTLB::Mode mode,
> TlbEntry::DomainType domain) = 0;
>
> /**
> * Check if a page table walker access should be forced to fail.
> *
> * @param pa Physical address the walker is accessing
> * @param size Walker access size
> * @param va Virtual address that initiated the walk
> * @param is_secure Access from secure state
> * @param is_priv Access from a privileged mode (i.e., not EL0)
> * @param mode Access type
> * @param domain Domain type
> * @param lookup_level Page table walker level
> */
> virtual Fault walkCheck(Addr pa, Addr size, Addr va, bool is_secure,
> Addr is_priv, BaseTLB::Mode mode,
> TlbEntry::DomainType domain,
> LookupLevel lookup_level) = 0;
> };
>
107a145,146
> TlbTestInterface *test;
>
162a202,203
> void setTestInterface(SimObject *ti);
>
227,230d267
< Fault trickBoxCheck(RequestPtr req, Mode mode, TlbEntry::DomainType domain);
< Fault walkTrickBoxCheck(Addr pa, bool is_secure, Addr va, Addr sz, bool is_exec,
< bool is_write, TlbEntry::DomainType domain, LookupLevel lookup_level);
<
358a396,402
>
> public: /* Testing */
> Fault testTranslation(RequestPtr req, Mode mode,
> TlbEntry::DomainType domain);
> Fault testWalk(Addr pa, Addr size, Addr va, bool is_secure, Mode mode,
> TlbEntry::DomainType domain,
> LookupLevel lookup_level);