table_walker.hh (9016:18093957a102) | table_walker.hh (9152:86c0e6ca5e7c) |
---|---|
1/* 2 * Copyright (c) 2010-2012 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 350 unchanged lines hidden (view full) --- 359 /** Queue of requests that have passed are waiting because the walker is 360 * currently busy. */ 361 std::list<WalkerState *> pendingQueue; 362 363 364 /** Port to issue translation requests from */ 365 SnoopingDmaPort port; 366 | 1/* 2 * Copyright (c) 2010-2012 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 350 unchanged lines hidden (view full) --- 359 /** Queue of requests that have passed are waiting because the walker is 360 * currently busy. */ 361 std::list<WalkerState *> pendingQueue; 362 363 364 /** Port to issue translation requests from */ 365 SnoopingDmaPort port; 366 |
367 /** If we're draining keep the drain event around until we're drained */ 368 Event *drainEvent; 369 |
|
367 /** TLB that is initiating these table walks */ 368 TLB *tlb; 369 370 /** Cached copy of the sctlr as it existed when translation began */ 371 SCTLR sctlr; 372 373 WalkerState *currState; 374 --- 9 unchanged lines hidden (view full) --- 384 virtual ~TableWalker(); 385 386 const Params * 387 params() const 388 { 389 return dynamic_cast<const Params *>(_params); 390 } 391 | 370 /** TLB that is initiating these table walks */ 371 TLB *tlb; 372 373 /** Cached copy of the sctlr as it existed when translation began */ 374 SCTLR sctlr; 375 376 WalkerState *currState; 377 --- 9 unchanged lines hidden (view full) --- 387 virtual ~TableWalker(); 388 389 const Params * 390 params() const 391 { 392 return dynamic_cast<const Params *>(_params); 393 } 394 |
395 /** Checks if all state is cleared and if so, completes drain */ 396 void completeDrain(); |
|
392 virtual unsigned int drain(Event *de); 393 virtual void resume(); 394 virtual MasterPort& getMasterPort(const std::string &if_name, 395 int idx = -1); 396 397 Fault walk(RequestPtr req, ThreadContext *tc, uint8_t cid, TLB::Mode mode, 398 TLB::Translation *_trans, bool timing, bool functional = false); 399 --- 26 unchanged lines hidden --- | 397 virtual unsigned int drain(Event *de); 398 virtual void resume(); 399 virtual MasterPort& getMasterPort(const std::string &if_name, 400 int idx = -1); 401 402 Fault walk(RequestPtr req, ThreadContext *tc, uint8_t cid, TLB::Mode mode, 403 TLB::Translation *_trans, bool timing, bool functional = false); 404 --- 26 unchanged lines hidden --- |