79c79
< TLB::TLB(const Params *p) : SimObject(p), size(p->size)
---
> TLB::TLB(const Params *p) : SimObject(p), configAddress(0), size(p->size)
150a151,156
> TLB::setConfigAddress(uint32_t addr)
> {
> configAddress = addr;
> }
>
> void
481c487,499
< req->setPaddr(PhysAddrPrefixIO | IOPort);
---
> if (IOPort == 0xCF8 && req->getSize() == 4) {
> req->setMmapedIpr(true);
> req->setPaddr(MISCREG_PCI_CONFIG_ADDRESS * sizeof(MiscReg));
> } else if ((IOPort & ~mask(2)) == 0xCFC) {
> Addr configAddress =
> tc->readMiscRegNoEffect(MISCREG_PCI_CONFIG_ADDRESS);
> if (bits(configAddress, 31, 31)) {
> req->setPaddr(PhysAddrPrefixPciConfig |
> bits(configAddress, 30, 0));
> }
> } else {
> req->setPaddr(PhysAddrPrefixIO | IOPort);
> }