summaryrefslogtreecommitdiff
path: root/src/mem/bus.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem/bus.hh')
-rw-r--r--src/mem/bus.hh14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/mem/bus.hh b/src/mem/bus.hh
index 95699cf22..a3469a478 100644
--- a/src/mem/bus.hh
+++ b/src/mem/bus.hh
@@ -321,11 +321,13 @@ class BaseBus : public MemObject
Tick calcPacketTiming(PacketPtr pkt);
/**
- * Ask everyone on the bus what their size is
+ * Ask everyone on the bus what their size is and determine the
+ * bus size as either the maximum, or if no device specifies a
+ * block size return the default.
*
- * @return the max of all the sizes
+ * @return the max of all the sizes or the default if none is set
*/
- unsigned findBlockSize();
+ unsigned deviceBlockSize() const;
std::set<PortID> inRecvRangeChange;
@@ -348,9 +350,7 @@ class BaseBus : public MemObject
addresses not handled by another port to default device. */
const bool useDefaultRange;
- const uint32_t defaultBlockSize;
- uint32_t cachedBlockSize;
- bool cachedBlockSizeValid;
+ uint32_t blockSize;
BaseBus(const BaseBusParams *p);
@@ -358,6 +358,8 @@ class BaseBus : public MemObject
public:
+ virtual void init();
+
/** A function used to return the port associated with this bus object. */
virtual MasterPort& getMasterPort(const std::string& if_name, int idx = -1);
virtual SlavePort& getSlavePort(const std::string& if_name, int idx = -1);