diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2007-07-24 15:48:40 -0700 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2007-07-24 15:48:40 -0700 |
commit | 26b1c455e0aed69eda0cc165b5084edb1b557c38 (patch) | |
tree | 0b7ffa9259c55f9a639a12f09ddef033d78b084b /src/dev/sparc/iob.hh | |
parent | 02c39000bfc6be620382bf89636e3b1bbb2f4cf6 (diff) | |
parent | abc76f20cb98c90e8dab416dd16dfd4a954013ba (diff) | |
download | gem5-26b1c455e0aed69eda0cc165b5084edb1b557c38.tar.xz |
Merge with head.
--HG--
extra : convert_revision : 4a34b3f91c4fc90055596245ae3efec45ea33888
Diffstat (limited to 'src/dev/sparc/iob.hh')
-rw-r--r-- | src/dev/sparc/iob.hh | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/src/dev/sparc/iob.hh b/src/dev/sparc/iob.hh index c05c4f2ef..b2fd6cbf6 100644 --- a/src/dev/sparc/iob.hh +++ b/src/dev/sparc/iob.hh @@ -39,6 +39,7 @@ #include "base/range.hh" #include "dev/io_device.hh" #include "dev/disk_image.hh" +#include "params/Iob.hh" class IntrControl; @@ -123,24 +124,22 @@ class Iob : public PioDevice void readIob(PacketPtr pkt); void readJBus(PacketPtr pkt); - public: - struct Params : public PioDevice::Params - { - Tick pio_delay; - }; - protected: - const Params *params() const { return (const Params*)_params; } + typedef IobParams Params; + Iob(const Params *p); - public: - Iob(Params *p); + const Params * + params() const + { + return dynamic_cast<const Params *>(_params); + } virtual Tick read(PacketPtr pkt); virtual Tick write(PacketPtr pkt); void generateIpi(Type type, int cpu_id, int vector); void receiveDeviceInterrupt(DeviceId devid); - bool receiveJBusInterrupt(int cpu_id, int source, uint64_t d0, uint64_t d1); - + bool receiveJBusInterrupt(int cpu_id, int source, uint64_t d0, + uint64_t d1); void addressRanges(AddrRangeList &range_list); |