diff options
author | Kevin Lim <ktlim@umich.edu> | 2005-03-14 15:40:51 -0500 |
---|---|---|
committer | Kevin Lim <ktlim@umich.edu> | 2005-03-14 15:40:51 -0500 |
commit | 8f2a84cbe5a0cd26053d49fb0376ec18bcbeb8f4 (patch) | |
tree | 1b707750f5064ed9f89a4a1ecc2f2be4d3daddc0 /python/m5/objects/Device.mpy | |
parent | c12a665c3120b61ed4e09da5d8a52c57406763d5 (diff) | |
parent | 76e6dd01ae4a534adad1d34398fefc819771a781 (diff) | |
download | gem5-8f2a84cbe5a0cd26053d49fb0376ec18bcbeb8f4.tar.xz |
Merge
--HG--
extra : convert_revision : 22919164108afd74f30207606f59a38992991dae
Diffstat (limited to 'python/m5/objects/Device.mpy')
-rw-r--r-- | python/m5/objects/Device.mpy | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/python/m5/objects/Device.mpy b/python/m5/objects/Device.mpy new file mode 100644 index 000000000..47f8db1cb --- /dev/null +++ b/python/m5/objects/Device.mpy @@ -0,0 +1,33 @@ +from FunctionalMemory import FunctionalMemory + +# This device exists only because there are some devices that I don't +# want to have a Platform parameter because it would cause a cycle in +# the C++ that cannot be easily solved. +# +# The real solution to this problem is to pass the ParamXXX structure +# to the constructor, but with the express condition that SimObject +# parameter values are not to be available at construction time. If +# some further configuration must be done, it must be done during the +# initialization phase at which point all SimObject pointers will be +# valid. +simobj FooPioDevice(FunctionalMemory): + type = 'PioDevice' + abstract = True + addr = Param.Addr("Device Address") + mmu = Param.MemoryController(Super, "Memory Controller") + io_bus = Param.Bus(NULL, "The IO Bus to attach to") + pio_latency = Param.Tick(1, "Programmed IO latency in bus cycles") + +simobj FooDmaDevice(FooPioDevice): + type = 'DmaDevice' + abstract = True + +simobj PioDevice(FooPioDevice): + type = 'PioDevice' + abstract = True + platform = Param.Platform(Super, "Platform") + +simobj DmaDevice(PioDevice): + type = 'DmaDevice' + abstract = True + |