Deleted Added
sdiff udiff text old ( 7694:de057cccee82 ) new ( 7728:cf9db1c47a77 )
full compact
1/*
2 * Copyright (c) 2010 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

--- 306 unchanged lines hidden (view full) ---

315
316 /** Queue of requests that need processing first level translation */
317 std::list<WalkerState *> stateQueueL1;
318
319 /** Queue of requests that have passed first level translation and
320 * require an additional level. */
321 std::list<WalkerState *> stateQueueL2;
322
323 /** Queue of requests that have passed are waiting because the walker is
324 * currently busy. */
325 std::list<WalkerState *> pendingQueue;;
326
327
328 /** Port to issue translation requests from */
329 DmaPort *port;
330
331 /** TLB that is initiating these table walks */
332 TLB *tlb;
333
334 /** Cached copy of the sctlr as it existed when translation began */
335 SCTLR sctlr;
336
337 WalkerState *currState;
338
339 /** If a timing translation is currently in progress */
340 bool pending;
341
342 public:
343 typedef ArmTableWalkerParams Params;
344 TableWalker(const Params *p);
345 virtual ~TableWalker();
346
347 const Params *
348 params() const
349 {

--- 15 unchanged lines hidden (view full) ---

365 void doL1Descriptor();
366 void doL1DescriptorWrapper();
367 EventWrapper<TableWalker, &TableWalker::doL1DescriptorWrapper> doL1DescEvent;
368
369 void doL2Descriptor();
370 void doL2DescriptorWrapper();
371 EventWrapper<TableWalker, &TableWalker::doL2DescriptorWrapper> doL2DescEvent;
372
373 Fault processWalk();
374 void processWalkWrapper();
375 EventWrapper<TableWalker, &TableWalker::processWalkWrapper> doProcessEvent;
376
377 void nextWalk(ThreadContext *tc);
378};
379
380
381} // namespace ArmISA
382
383#endif //__ARCH_ARM_TABLE_WALKER_HH__
384