summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--python/m5/config.py12
-rw-r--r--python/m5/objects/Pci.py12
2 files changed, 17 insertions, 7 deletions
diff --git a/python/m5/config.py b/python/m5/config.py
index 23292d2dc..a954012ea 100644
--- a/python/m5/config.py
+++ b/python/m5/config.py
@@ -972,6 +972,15 @@ class MemorySize(CheckedInt):
self.value = toMemorySize(value)
self._check()
+class MemorySize32(CheckedInt):
+ size = 32
+ unsigned = True
+ def __init__(self, value):
+ if isinstance(value, MemorySize):
+ self.value = value.value
+ else:
+ self.value = toMemorySize(value)
+ self._check()
class Addr(CheckedInt):
size = 64
@@ -1305,7 +1314,8 @@ __all__ = ['SimObject', 'ParamContext', 'Param', 'VectorParam',
'Int32', 'UInt32', 'Int64', 'UInt64',
'Counter', 'Addr', 'Tick', 'Percent',
'TcpPort', 'UdpPort', 'EthernetAddr',
- 'MemorySize', 'Latency', 'Frequency', 'RootClock', 'Clock',
+ 'MemorySize', 'MemorySize32',
+ 'Latency', 'Frequency', 'RootClock', 'Clock',
'NetworkBandwidth', 'MemoryBandwidth',
'Range', 'AddrRange', 'MaxAddr', 'MaxTick', 'AllMemory',
'Null', 'NULL',
diff --git a/python/m5/objects/Pci.py b/python/m5/objects/Pci.py
index defdd10a3..4124d0b92 100644
--- a/python/m5/objects/Pci.py
+++ b/python/m5/objects/Pci.py
@@ -22,12 +22,12 @@ class PciConfigData(SimObject):
BAR3 = Param.UInt32(0x00, "Base Address Register 3")
BAR4 = Param.UInt32(0x00, "Base Address Register 4")
BAR5 = Param.UInt32(0x00, "Base Address Register 5")
- BAR0Size = Param.UInt32(0, "Base Address Register 0 Size")
- BAR1Size = Param.UInt32(0, "Base Address Register 1 Size")
- BAR2Size = Param.UInt32(0, "Base Address Register 2 Size")
- BAR3Size = Param.UInt32(0, "Base Address Register 3 Size")
- BAR4Size = Param.UInt32(0, "Base Address Register 4 Size")
- BAR5Size = Param.UInt32(0, "Base Address Register 5 Size")
+ BAR0Size = Param.MemorySize32('0B', "Base Address Register 0 Size")
+ BAR1Size = Param.MemorySize32('0B', "Base Address Register 1 Size")
+ BAR2Size = Param.MemorySize32('0B', "Base Address Register 2 Size")
+ BAR3Size = Param.MemorySize32('0B', "Base Address Register 3 Size")
+ BAR4Size = Param.MemorySize32('0B', "Base Address Register 4 Size")
+ BAR5Size = Param.MemorySize32('0B', "Base Address Register 5 Size")
CardbusCIS = Param.UInt32(0x00, "Cardbus Card Information Structure")
SubsystemID = Param.UInt16(0x00, "Subsystem ID")