diff options
Diffstat (limited to 'src/dev/x86/south_bridge/south_bridge.hh')
-rw-r--r-- | src/dev/x86/south_bridge/south_bridge.hh | 41 |
1 files changed, 16 insertions, 25 deletions
diff --git a/src/dev/x86/south_bridge/south_bridge.hh b/src/dev/x86/south_bridge/south_bridge.hh index 171589cf3..9e7963a7b 100644 --- a/src/dev/x86/south_bridge/south_bridge.hh +++ b/src/dev/x86/south_bridge/south_bridge.hh @@ -31,39 +31,30 @@ #ifndef __DEV_X86_SOUTH_BRIDGE_SOUTH_BRIDGE_HH__ #define __DEV_X86_SOUTH_BRIDGE_SOUTH_BRIDGE_HH__ -#include "base/range_map.hh" -#include "dev/io_device.hh" -#include "dev/x86/south_bridge/i8254.hh" -#include "dev/x86/south_bridge/speaker.hh" -#include "dev/x86/south_bridge/sub_device.hh" +#include "sim/sim_object.hh" #include "params/SouthBridge.hh" -class SouthBridge : public PioDevice +namespace X86ISA { - protected: - AddrRangeList rangeList; - - typedef range_map<Addr, X86ISA::SubDevice *> RangeMap; - typedef RangeMap::iterator RangeMapIt; - RangeMap rangeMap; - + class I8254; + class I8259; + class Cmos; + class Speaker; +} - void addDevice(X86ISA::SubDevice &); +class SouthBridge : public SimObject +{ + protected: + Platform * platform; public: - // I8254 Programmable Interval Timer - X86ISA::I8254 pit; - - // PC speaker - X86ISA::Speaker speaker; + X86ISA::I8254 * pit; + X86ISA::I8259 * pic1; + X86ISA::I8259 * pic2; + X86ISA::Cmos * cmos; + X86ISA::Speaker * speaker; public: - - void addressRanges(AddrRangeList &range_list); - - Tick read(PacketPtr pkt); - Tick write(PacketPtr pkt); - typedef SouthBridgeParams Params; SouthBridge(const Params *p); |