summaryrefslogtreecommitdiff
path: root/src/mem/bus.hh
diff options
context:
space:
mode:
authorKevin Lim <ktlim@umich.edu>2006-07-06 14:54:09 -0400
committerKevin Lim <ktlim@umich.edu>2006-07-06 14:54:09 -0400
commitc8a37ce71514de9362640e8cb18c1744f0e2f83b (patch)
tree70eb71e46428c20bd6a44eed1d08a019abb70e25 /src/mem/bus.hh
parent05eef5ee1569f7a1c399a2b358a11323e88a48f8 (diff)
parent4b741100714c6f20749f344ddd4b16459f28df72 (diff)
downloadgem5-c8a37ce71514de9362640e8cb18c1744f0e2f83b.tar.xz
Merge ktlim@zizzer:/bk/newmem
into zamp.eecs.umich.edu:/z/ktlim2/clean/newmem-merge --HG-- extra : convert_revision : 0c4fbbe0826358a6a58f844bec34ce830ffd4ced
Diffstat (limited to 'src/mem/bus.hh')
-rw-r--r--src/mem/bus.hh12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/mem/bus.hh b/src/mem/bus.hh
index 9c7054b94..3a2896886 100644
--- a/src/mem/bus.hh
+++ b/src/mem/bus.hh
@@ -51,19 +51,22 @@ class Bus : public MemObject
/** a globally unique id for this bus. */
int busId;
+ static const int defaultId = -1;
+
struct DevMap {
int portId;
Range<Addr> range;
};
std::vector<DevMap> portList;
+ AddrRangeList defaultRange;
/** Function called by the port when the bus is recieving a Timing
- transaction.*/
+ transaction.*/
bool recvTiming(Packet *pkt);
/** Function called by the port when the bus is recieving a Atomic
- transaction.*/
+ transaction.*/
Tick recvAtomic(Packet *pkt);
/** Function called by the port when the bus is recieving a Functional
@@ -159,6 +162,9 @@ class Bus : public MemObject
* original send failed for whatever reason.*/
std::list<Port*> retryList;
+ /** Port that handles requests that don't match any of the interfaces.*/
+ Port *defaultPort;
+
public:
/** A function used to return the port associated with this bus object. */
@@ -167,7 +173,7 @@ class Bus : public MemObject
virtual void init();
Bus(const std::string &n, int bus_id)
- : MemObject(n), busId(bus_id) {}
+ : MemObject(n), busId(bus_id), defaultPort(NULL) {}
};