Device: Remove overloaded pio_latency parameter
authorAndreas Hansson <andreas.hansson@arm.com>
Tue, 21 Aug 2012 09:50:03 +0000 (05:50 -0400)
committerAndreas Hansson <andreas.hansson@arm.com>
Tue, 21 Aug 2012 09:50:03 +0000 (05:50 -0400)
This patch removes the overloading of the parameter, which seems both
redundant, and possibly incorrect.

The PciConfigAll now also uses a Param.Latency rather than a
Param.Tick. For backwards compatibility it still sets the pio_latency
to 1 tick. All the comments have also been updated to not state that
it is in simticks when it is not necessarily the case.

12 files changed:
src/arch/x86/X86LocalApic.py
src/dev/Device.py
src/dev/Pci.py
src/dev/sparc/T1000.py
src/dev/x86/Cmos.py
src/dev/x86/I8042.py
src/dev/x86/I82094AA.py
src/dev/x86/I8237.py
src/dev/x86/I8254.py
src/dev/x86/I8259.py
src/dev/x86/PcSpeaker.py
src/dev/x86/SouthBridge.py

index 283d94ba734d3825e210e85a6a86050d50fc67b2..0bc36612d24d60a6f341fe41960f02363174f466 100644 (file)
@@ -46,7 +46,6 @@ from Device import BasicPioDevice
 class X86LocalApic(BasicPioDevice):
     type = 'X86LocalApic'
     cxx_class = 'X86ISA::Interrupts'
-    pio_latency = Param.Latency('1ns', 'Programmed IO latency in simticks')
     int_master = MasterPort("Port for sending interrupt messages")
     int_slave = SlavePort("Port for receiving interrupt messages")
     int_latency = Param.Latency('1ns', \
index 96c95ebc95cf0ea609793038e67319cebd65a07a..60c21df914aa3b234c0fb2af80fd19670064837a 100644 (file)
@@ -40,7 +40,7 @@ class BasicPioDevice(PioDevice):
     type = 'BasicPioDevice'
     abstract = True
     pio_addr = Param.Addr("Device Address")
-    pio_latency = Param.Latency('1ns', "Programmed IO latency in simticks")
+    pio_latency = Param.Latency('1ns', "Programmed IO latency")
 
 class DmaDevice(PioDevice):
     type = 'DmaDevice'
index c866f9386590f11d0f6b2abfb9a25d60f56ad4d2..db2791ed5a0d87b4a3818b92fb1330f72a186cf2 100644 (file)
@@ -34,7 +34,9 @@ from Device import BasicPioDevice, DmaDevice, PioDevice
 class PciConfigAll(PioDevice):
     type = 'PciConfigAll'
     platform = Param.Platform(Parent.any, "Platform this device is part of.")
-    pio_latency = Param.Tick(1, "Programmed IO latency in simticks")
+    # @todo: This latency is unrealistically low and only kept at 1 tick
+    # to not change any regressions
+    pio_latency = Param.Latency('1t', "Programmed IO latency")
     bus = Param.UInt8(0x00, "PCI bus to act as config space for")
     size = Param.MemorySize32('16MB', "Size of config space")
 
@@ -47,7 +49,7 @@ class PciDevice(DmaDevice):
     pci_bus = Param.Int("PCI bus")
     pci_dev = Param.Int("PCI device number")
     pci_func = Param.Int("PCI function code")
-    pio_latency = Param.Latency('1ns', "Programmed IO latency in simticks")
+    pio_latency = Param.Latency('1ns', "Programmed IO latency")
     config_latency = Param.Latency('20ns', "Config read or write latency")
 
     VendorID = Param.UInt16("Vendor ID")
index aa66a90041ec5e5e073d8d22ee3cbac051b30e20..03a59ac670a31db4655c41cf137608c4140ff57e 100644 (file)
@@ -47,7 +47,7 @@ class DumbTOD(BasicPioDevice):
 class Iob(PioDevice):
     type = 'Iob'
     platform = Param.Platform(Parent.any, "Platform this device is part of.")
-    pio_latency = Param.Latency('1ns', "Programed IO latency in simticks")
+    pio_latency = Param.Latency('1ns', "Programed IO latency")
 
 
 class T1000(Platform):
index 0e09d417bc89fe2f6496fdbc1b14c5576624096f..266fb8937dfdcf27c6743e029c00a97d5e9568d0 100644 (file)
@@ -36,6 +36,5 @@ class Cmos(BasicPioDevice):
     cxx_class='X86ISA::Cmos'
     time = Param.Time('01/01/2012',
         "System time to use ('Now' for actual time)")
-    pio_latency = Param.Latency('1ns', "Programmed IO latency in simticks")
     int_pin = Param.X86IntSourcePin(X86IntSourcePin(),
             'Pin to signal RTC alarm interrupts to')
index 31192adcda86e183760af25a2ac33029bb2e1fd5..57bf32ca0f8d2b3bc21b9b04905f5d902825b141 100644 (file)
@@ -34,7 +34,6 @@ from X86IntPin import X86IntSourcePin
 class I8042(BasicPioDevice):
     type = 'I8042'
     cxx_class = 'X86ISA::I8042'
-    pio_latency = Param.Latency('1ns', "Programmed IO latency in simticks")
     # This isn't actually used for anything here.
     pio_addr = 0x0
     data_port = Param.Addr('Data port address')
index 09923f6c2610a478efdf8b0b264dd41723f9edd3..3b076a9d68ff50f4be1fa18738079c9313e8fac2 100644 (file)
@@ -35,8 +35,6 @@ class I82094AA(BasicPioDevice):
     type = 'I82094AA'
     cxx_class = 'X86ISA::I82094AA'
     apic_id = Param.Int(1, 'APIC id for this IO APIC')
-    pio_latency = Param.Latency('1ns', "Programmed IO latency in simticks")
-    pio_addr = Param.Addr("Device address")
     int_master = MasterPort("Port for sending interrupt messages")
     int_latency = Param.Latency('1ns', \
             "Latency for an interrupt to propagate through this device.")
index 20788a1641cf59af8c1009e5618ff6abcc54291b..0121c3d2492de23d40fcf3c2f68ea4e8910311b3 100644 (file)
@@ -33,4 +33,3 @@ from Device import BasicPioDevice
 class I8237(BasicPioDevice):
     type = 'I8237'
     cxx_class = 'X86ISA::I8237'
-    pio_latency = Param.Latency('1ns', "Programmed IO latency in simticks")
index f468717cc9f6b372dd8c4b97d78d5933fb0238ef..6fdcb1c8d05125bdeace6d7865b19277bc4c083f 100644 (file)
@@ -34,6 +34,5 @@ from X86IntPin import X86IntSourcePin
 class I8254(BasicPioDevice):
     type = 'I8254'
     cxx_class = 'X86ISA::I8254'
-    pio_latency = Param.Latency('1ns', "Programmed IO latency in simticks")
     int_pin = Param.X86IntSourcePin(X86IntSourcePin(),
             'Pin to signal timer interrupts to')
index 0a516d30ab202adfa687f02bf4f0c16aa6dd5765..30ea142256e268fff0b5023aa44ca8fb215093e6 100644 (file)
@@ -40,7 +40,6 @@ class X86I8259CascadeMode(Enum):
 class I8259(BasicPioDevice):
     type = 'I8259'
     cxx_class='X86ISA::I8259'
-    pio_latency = Param.Latency('1ns', "Programmed IO latency in simticks")
     output = Param.X86IntSourcePin(X86IntSourcePin(),
             'The pin this I8259 drives')
     mode = Param.X86I8259CascadeMode('How this I8259 is cascaded')
index 7ca62ec1eac25260971f4be28f6407098dc6158c..cc1f5517a63266de6692d5da6de59acd51ba325a 100644 (file)
@@ -33,5 +33,4 @@ from Device import BasicPioDevice
 class PcSpeaker(BasicPioDevice):
     type = 'PcSpeaker'
     cxx_class = 'X86ISA::Speaker'
-    pio_latency = Param.Latency('1ns', "Programmed IO latency in simticks")
     i8254 = Param.I8254('Timer that drives the speaker')
index 87f4c3798ff493b615b7a84eac1a66f2b58f4cba..7ac208d5e563330f7d506981d511f9d8f65379ab 100644 (file)
@@ -45,7 +45,6 @@ def x86IOAddress(port):
 
 class SouthBridge(SimObject):
     type = 'SouthBridge'
-    pio_latency = Param.Latency('1ns', "Programmed IO latency in simticks")
     platform = Param.Platform(Parent.any, "Platform this device is part of")
 
     _pic1 = I8259(pio_addr=x86IOAddress(0x20), mode='I8259Master')