simple_mem.cc (11190:0964165d1857) | simple_mem.cc (11192:4c28abcf8249) |
---|---|
1/* 2 * Copyright (c) 2010-2013 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 --- 83 unchanged lines hidden (view full) --- 92 } 93 94 pkt->popLabel(); 95} 96 97bool 98SimpleMemory::recvTimingReq(PacketPtr pkt) 99{ | 1/* 2 * Copyright (c) 2010-2013 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 --- 83 unchanged lines hidden (view full) --- 92 } 93 94 pkt->popLabel(); 95} 96 97bool 98SimpleMemory::recvTimingReq(PacketPtr pkt) 99{ |
100 // sink inhibited packets without further action |
|
100 if (pkt->memInhibitAsserted()) { | 101 if (pkt->memInhibitAsserted()) { |
101 // snooper will supply based on copy of packet 102 // still target's responsibility to delete packet | |
103 pendingDelete.reset(pkt); 104 return true; 105 } 106 | 102 pendingDelete.reset(pkt); 103 return true; 104 } 105 |
107 // we should never get a new request after committing to retry the 108 // current one, the bus violates the rule as it simply sends a 109 // retry to the next one waiting on the retry list, so simply 110 // ignore it | 106 // we should not get a new request after committing to retry the 107 // current one, but unfortunately the CPU violates this rule, so 108 // simply ignore it for now |
111 if (retryReq) 112 return false; 113 114 // if we are busy with a read or write, remember that we have to 115 // retry 116 if (isBusy) { 117 retryReq = true; 118 return false; --- 163 unchanged lines hidden --- | 109 if (retryReq) 110 return false; 111 112 // if we are busy with a read or write, remember that we have to 113 // retry 114 if (isBusy) { 115 retryReq = true; 116 return false; --- 163 unchanged lines hidden --- |