mem_sink.cc (12967:16c791dd6ee6) | mem_sink.cc (13564:9bbd53a77887) |
---|---|
1/* 2 * Copyright (c) 2018 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 --- 275 unchanged lines hidden (view full) --- 284 // Log the response 285 logResponse(pkt->isRead()? READ : WRITE, 286 pkt->req->masterId(), 287 pkt->qosValue(), 288 pkt->getAddr(), 289 removed_entries, responseLatency); 290 291 // Schedule the response | 1/* 2 * Copyright (c) 2018 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 --- 275 unchanged lines hidden (view full) --- 284 // Log the response 285 logResponse(pkt->isRead()? READ : WRITE, 286 pkt->req->masterId(), 287 pkt->qosValue(), 288 pkt->getAddr(), 289 removed_entries, responseLatency); 290 291 // Schedule the response |
292 port.schedTimingResp(pkt, curTick() + responseLatency, true); | 292 port.schedTimingResp(pkt, curTick() + responseLatency); |
293 DPRINTF(QOS, 294 "%s response scheduled at time %d\n", 295 __func__, curTick() + responseLatency); 296 297 // Finally - handle retry requests - this handles control 298 // to the port, so do it last 299 if (busState == READ && retryRdReq) { 300 retryRdReq = false; --- 38 unchanged lines hidden (view full) --- 339 numReadRetries.name(name() + ".numReadRetries") 340 .desc("Number of read retries"); 341 numWriteRetries.name(name() + ".numWriteRetries") 342 .desc("Number of write retries"); 343} 344 345MemSinkCtrl::MemoryPort::MemoryPort(const std::string& n, 346 MemSinkCtrl& m) | 293 DPRINTF(QOS, 294 "%s response scheduled at time %d\n", 295 __func__, curTick() + responseLatency); 296 297 // Finally - handle retry requests - this handles control 298 // to the port, so do it last 299 if (busState == READ && retryRdReq) { 300 retryRdReq = false; --- 38 unchanged lines hidden (view full) --- 339 numReadRetries.name(name() + ".numReadRetries") 340 .desc("Number of read retries"); 341 numWriteRetries.name(name() + ".numWriteRetries") 342 .desc("Number of write retries"); 343} 344 345MemSinkCtrl::MemoryPort::MemoryPort(const std::string& n, 346 MemSinkCtrl& m) |
347 : QueuedSlavePort(n, &m, queue), memory(m), queue(memory, *this) | 347 : QueuedSlavePort(n, &m, queue, true), memory(m), queue(memory, *this, true) |
348{} 349 350AddrRangeList 351MemSinkCtrl::MemoryPort::getAddrRanges() const 352{ 353 AddrRangeList ranges; 354 ranges.push_back(memory.getAddrRange()); 355 return ranges; --- 37 unchanged lines hidden --- | 348{} 349 350AddrRangeList 351MemSinkCtrl::MemoryPort::getAddrRanges() const 352{ 353 AddrRangeList ranges; 354 ranges.push_back(memory.getAddrRange()); 355 return ranges; --- 37 unchanged lines hidden --- |