io_device.cc (8949:3fa1ee293096) | io_device.cc (8975:7f36d4436074) |
---|---|
1/* 2 * Copyright (c) 2012 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 --- 117 unchanged lines hidden (view full) --- 126 masterId(s->getMasterId(dev->name())), 127 pendingCount(0), actionInProgress(0), drainEvent(NULL), 128 backoffTime(0), minBackoffDelay(min_backoff), 129 maxBackoffDelay(max_backoff), inRetry(false), recvSnoops(recv_snoops), 130 backoffEvent(this) 131{ } 132 133bool | 1/* 2 * Copyright (c) 2012 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 --- 117 unchanged lines hidden (view full) --- 126 masterId(s->getMasterId(dev->name())), 127 pendingCount(0), actionInProgress(0), drainEvent(NULL), 128 backoffTime(0), minBackoffDelay(min_backoff), 129 maxBackoffDelay(max_backoff), inRetry(false), recvSnoops(recv_snoops), 130 backoffEvent(this) 131{ } 132 133bool |
134DmaPort::recvTiming(PacketPtr pkt) | 134DmaPort::recvTimingResp(PacketPtr pkt) |
135{ | 135{ |
136 assert(pkt->isResponse()); | |
137 if (pkt->wasNacked()) { 138 DPRINTF(DMA, "Received nacked %s addr %#x\n", 139 pkt->cmdString(), pkt->getAddr()); 140 141 if (backoffTime < minBackoffDelay) 142 backoffTime = minBackoffDelay; 143 else if (backoffTime < maxBackoffDelay) 144 backoffTime <<= 1; --- 84 unchanged lines hidden (view full) --- 229DmaPort::recvRetry() 230{ 231 assert(transmitList.size()); 232 bool result = true; 233 do { 234 PacketPtr pkt = transmitList.front(); 235 DPRINTF(DMA, "Retry on %s addr %#x\n", 236 pkt->cmdString(), pkt->getAddr()); | 136 if (pkt->wasNacked()) { 137 DPRINTF(DMA, "Received nacked %s addr %#x\n", 138 pkt->cmdString(), pkt->getAddr()); 139 140 if (backoffTime < minBackoffDelay) 141 backoffTime = minBackoffDelay; 142 else if (backoffTime < maxBackoffDelay) 143 backoffTime <<= 1; --- 84 unchanged lines hidden (view full) --- 228DmaPort::recvRetry() 229{ 230 assert(transmitList.size()); 231 bool result = true; 232 do { 233 PacketPtr pkt = transmitList.front(); 234 DPRINTF(DMA, "Retry on %s addr %#x\n", 235 pkt->cmdString(), pkt->getAddr()); |
237 result = sendTiming(pkt); | 236 result = sendTimingReq(pkt); |
238 if (result) { 239 DPRINTF(DMA, "-- Done\n"); 240 transmitList.pop_front(); 241 inRetry = false; 242 } else { 243 inRetry = true; 244 DPRINTF(DMA, "-- Failed, queued\n"); 245 } --- 69 unchanged lines hidden (view full) --- 315 return; 316 } 317 318 DPRINTF(DMA, "Attempting to send %s addr %#x\n", 319 pkt->cmdString(), pkt->getAddr()); 320 321 bool result; 322 do { | 237 if (result) { 238 DPRINTF(DMA, "-- Done\n"); 239 transmitList.pop_front(); 240 inRetry = false; 241 } else { 242 inRetry = true; 243 DPRINTF(DMA, "-- Failed, queued\n"); 244 } --- 69 unchanged lines hidden (view full) --- 314 return; 315 } 316 317 DPRINTF(DMA, "Attempting to send %s addr %#x\n", 318 pkt->cmdString(), pkt->getAddr()); 319 320 bool result; 321 do { |
323 result = sendTiming(pkt); | 322 result = sendTimingReq(pkt); |
324 if (result) { 325 transmitList.pop_front(); 326 DPRINTF(DMA, "-- Done\n"); 327 } else { 328 inRetry = true; 329 DPRINTF(DMA, "-- Failed: queued\n"); 330 } 331 } while (result && !backoffTime && transmitList.size()); --- 60 unchanged lines hidden --- | 323 if (result) { 324 transmitList.pop_front(); 325 DPRINTF(DMA, "-- Done\n"); 326 } else { 327 inRetry = true; 328 DPRINTF(DMA, "-- Failed: queued\n"); 329 } 330 } while (result && !backoffTime && transmitList.size()); --- 60 unchanged lines hidden --- |