summaryrefslogtreecommitdiff
path: root/src/mem
diff options
context:
space:
mode:
authorSteve Reinhardt <stever@eecs.umich.edu>2006-05-26 14:24:46 -0400
committerSteve Reinhardt <stever@eecs.umich.edu>2006-05-26 14:24:46 -0400
commitcdad113afb45a4f3b6d8f7bb3a8f510d42247d6b (patch)
tree2a05a780f8ab37d4762d927a45f7c9bf5cb73839 /src/mem
parente533fad711fce66bf2e4a6669baeb8eaf02799e1 (diff)
downloadgem5-cdad113afb45a4f3b6d8f7bb3a8f510d42247d6b.tar.xz
Add a little more tracing support for Bus/Port stuff.
src/base/traceflags.py: Sort flags so you can find things. Add BusAddrRanges flag for tracking RangeChange events separately from general bus activity. src/mem/bus.cc: Add BusAddrRanges flag for tracking RangeChange events separately from general bus activity. src/mem/port.cc: src/mem/port.hh: Print Config trace message when peers are set up. --HG-- extra : convert_revision : d7c11d5f90c8de5c8d97e473501a268a567e9e44
Diffstat (limited to 'src/mem')
-rw-r--r--src/mem/bus.cc8
-rw-r--r--src/mem/port.cc8
-rw-r--r--src/mem/port.hh4
3 files changed, 14 insertions, 6 deletions
diff --git a/src/mem/bus.cc b/src/mem/bus.cc
index a2ce00139..cfc99a64f 100644
--- a/src/mem/bus.cc
+++ b/src/mem/bus.cc
@@ -130,7 +130,7 @@ Bus::recvStatusChange(Port::Status status, int id)
assert(status == Port::RangeChange &&
"The other statuses need to be implemented.");
- DPRINTF(Bus, "received RangeChange from device id %d\n", id);
+ DPRINTF(BusAddrRanges, "received RangeChange from device id %d\n", id);
assert(id < interfaces.size() && id >= 0);
int x;
@@ -157,7 +157,7 @@ Bus::recvStatusChange(Port::Status status, int id)
dm.portId = id;
dm.range = *iter;
- DPRINTF(Bus, "Adding range %llx - %llx for id %d\n",
+ DPRINTF(BusAddrRanges, "Adding range %llx - %llx for id %d\n",
dm.range.start, dm.range.end, id);
portList.push_back(dm);
}
@@ -178,11 +178,11 @@ Bus::addressRanges(AddrRangeList &resp, AddrRangeList &snoop, int id)
resp.clear();
snoop.clear();
- DPRINTF(Bus, "received address range request, returning:\n");
+ DPRINTF(BusAddrRanges, "received address range request, returning:\n");
for (portIter = portList.begin(); portIter != portList.end(); portIter++) {
if (portIter->portId != id) {
resp.push_back(portIter->range);
- DPRINTF(Bus, " -- %#llX : %#llX\n",
+ DPRINTF(BusAddrRanges, " -- %#llX : %#llX\n",
portIter->range.start, portIter->range.end);
}
}
diff --git a/src/mem/port.cc b/src/mem/port.cc
index ee224d92b..651cb739a 100644
--- a/src/mem/port.cc
+++ b/src/mem/port.cc
@@ -31,10 +31,18 @@
*/
#include "base/chunk_generator.hh"
+#include "base/trace.hh"
#include "mem/packet_impl.hh"
#include "mem/port.hh"
void
+Port::setPeer(Port *port)
+{
+ DPRINTF(Config, "setting peer to %s\n", port->name());
+ peer = port;
+}
+
+void
Port::blobHelper(Addr addr, uint8_t *p, int size, Packet::Command cmd)
{
Request req(false);
diff --git a/src/mem/port.hh b/src/mem/port.hh
index 85209964e..f9103865e 100644
--- a/src/mem/port.hh
+++ b/src/mem/port.hh
@@ -112,9 +112,9 @@ class Port
/** Function to set the pointer for the peer port.
@todo should be called by the configuration stuff (python).
*/
- void setPeer(Port *port) { peer = port; }
+ void setPeer(Port *port);
- /** Function to set the pointer for the peer port.
+ /** Function to set the pointer for the peer port.
@todo should be called by the configuration stuff (python).
*/
Port *getPeer() { return peer; }