Deleted Added
sdiff udiff text old ( 7406:ddc26bd4ea7d ) new ( 7436:b578349f9371 )
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

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

379 req->setFlags(Request::UNCACHEABLE);
380 } else {
381 PRRR prrr = tc->readMiscReg(MISCREG_PRRR);
382 NMRR nmrr = tc->readMiscReg(MISCREG_NMRR);
383
384 if (nmrr.ir0 == 0 || nmrr.or0 == 0 || prrr.tr0 != 0x2)
385 req->setFlags(Request::UNCACHEABLE);
386 }
387 return trickBoxCheck(req, mode, 0, false);
388 }
389
390 DPRINTF(TLBVerbose, "Translating vaddr=%#x context=%d\n", vaddr, context_id);
391 // Translation enabled
392
393 TlbEntry *te = lookup(vaddr, context_id);
394 if (te == NULL) {

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

404 return fault;
405
406 te = lookup(vaddr, context_id);
407 if (!te)
408 printTlb();
409 assert(te);
410 }
411
412 uint32_t dacr = tc->readMiscReg(MISCREG_DACR);
413 switch ( (dacr >> (te->domain * 2)) & 0x3) {
414 case 0:
415 DPRINTF(TLB, "TLB Fault: Data abort on domain. DACR: %#x domain: %#x"
416 " write:%d sNp:%d\n", dacr, te->domain, is_write, te->sNp);
417 if (is_fetch)
418 return new PrefetchAbort(vaddr,
419 (te->sNp ? ArmFault::Domain0 : ArmFault::Domain1));

--- 129 unchanged lines hidden ---