1/* 2 * Copyright (c) 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 --- 161 unchanged lines hidden (view full) --- 170 pkt->checkFunctional(*i); 171 172 pkt->popLabel(); 173} 174 175bool 176DRAMSim2::recvTimingReq(PacketPtr pkt) 177{ |
178 // sink inhibited packets without further action |
179 if (pkt->memInhibitAsserted()) { |
180 pendingDelete.reset(pkt); 181 return true; 182 } 183 |
184 // we should not get a new request after committing to retry the 185 // current one, but unfortunately the CPU violates this rule, so 186 // simply ignore it for now 187 if (retryReq) 188 return false; 189 |
190 // if we cannot accept we need to send a retry once progress can 191 // be made 192 bool can_accept = nbrOutstanding() < wrapper.queueSize(); 193 194 // keep track of the transaction 195 if (pkt->isRead()) { 196 if (can_accept) { 197 outstandingReads[pkt->getAddr()].push(pkt); --- 200 unchanged lines hidden --- |