diff options
author | Steve Reinhardt <stever@eecs.umich.edu> | 2007-06-30 17:56:30 -0700 |
---|---|---|
committer | Steve Reinhardt <stever@eecs.umich.edu> | 2007-06-30 17:56:30 -0700 |
commit | 2447abe5ce6c40e61eb09430c95a592aa2445349 (patch) | |
tree | eb04bf9cc14d59a90308c301d6cc1afe9cb5bd7a /src/dev | |
parent | d10a843723009ddee79cdbf94a46704df1e5cee6 (diff) | |
download | gem5-2447abe5ce6c40e61eb09430c95a592aa2445349.tar.xz |
Can only call makeAtomicResponse() once...
--HG--
extra : convert_revision : c49aade46aa64f979da35eb653b544ee5bd82f01
Diffstat (limited to 'src/dev')
-rw-r--r-- | src/dev/ide_ctrl.cc | 9 | ||||
-rw-r--r-- | src/dev/ns_gige.cc | 2 | ||||
-rw-r--r-- | src/dev/pcidev.cc | 1 |
3 files changed, 6 insertions, 6 deletions
diff --git a/src/dev/ide_ctrl.cc b/src/dev/ide_ctrl.cc index 01243ae73..07764aaba 100644 --- a/src/dev/ide_ctrl.cc +++ b/src/dev/ide_ctrl.cc @@ -232,8 +232,10 @@ Tick IdeController::readConfig(PacketPtr pkt) { int offset = pkt->getAddr() & PCI_CONFIG_SIZE; - if (offset < PCI_DEVICE_SPECIFIC) - return PciDev::readConfig(pkt); + if (offset < PCI_DEVICE_SPECIFIC) { + return PciDev::readConfig(pkt); + } + assert(offset >= IDE_CTRL_CONF_START && (offset + 1) <= IDE_CTRL_CONF_END); pkt->allocate(); @@ -297,7 +299,6 @@ IdeController::readConfig(PacketPtr pkt) } pkt->makeAtomicResponse(); return configDelay; - } @@ -361,6 +362,7 @@ IdeController::writeConfig(PacketPtr pkt) default: panic("invalid access size(?) for PCI configspace!\n"); } + pkt->makeAtomicResponse(); } /* Trap command register writes and enable IO/BM as appropriate as well as @@ -403,7 +405,6 @@ IdeController::writeConfig(PacketPtr pkt) bm_enabled = false; break; } - pkt->makeAtomicResponse(); return configDelay; } diff --git a/src/dev/ns_gige.cc b/src/dev/ns_gige.cc index 86f664238..17f7b433b 100644 --- a/src/dev/ns_gige.cc +++ b/src/dev/ns_gige.cc @@ -487,7 +487,7 @@ NSGigE::writeConfig(PacketPtr pkt) ioEnable = false; break; } - pkt->makeAtomicResponse(); + return configDelay; } diff --git a/src/dev/pcidev.cc b/src/dev/pcidev.cc index 85337c841..06806f841 100644 --- a/src/dev/pcidev.cc +++ b/src/dev/pcidev.cc @@ -284,7 +284,6 @@ PciDev::writeConfig(PacketPtr pkt) } pkt->makeAtomicResponse(); return configDelay; - } void |