diff options
Diffstat (limited to 'dev')
-rw-r--r-- | dev/alpha_console.cc | 8 | ||||
-rw-r--r-- | dev/alpha_console.hh | 3 | ||||
-rw-r--r-- | dev/baddev.cc | 7 | ||||
-rw-r--r-- | dev/baddev.hh | 6 | ||||
-rw-r--r-- | dev/etherlink.cc | 23 | ||||
-rw-r--r-- | dev/ethertap.cc | 6 | ||||
-rw-r--r-- | dev/ide_ctrl.cc | 2 | ||||
-rw-r--r-- | dev/ide_disk.cc | 13 | ||||
-rw-r--r-- | dev/io_device.cc | 8 | ||||
-rw-r--r-- | dev/io_device.hh | 12 | ||||
-rw-r--r-- | dev/ns_gige.cc | 9 | ||||
-rw-r--r-- | dev/ns_gige.hh | 2 | ||||
-rw-r--r-- | dev/pciconfigall.cc | 5 | ||||
-rw-r--r-- | dev/pcidev.cc | 14 | ||||
-rw-r--r-- | dev/platform.hh | 2 | ||||
-rw-r--r-- | dev/tsunami.cc | 2 | ||||
-rw-r--r-- | dev/tsunami_cchip.cc | 2 | ||||
-rw-r--r-- | dev/tsunami_io.cc | 2 | ||||
-rw-r--r-- | dev/tsunami_pchip.cc | 2 | ||||
-rw-r--r-- | dev/uart.cc | 4 | ||||
-rw-r--r-- | dev/uart.hh | 1 |
21 files changed, 75 insertions, 58 deletions
diff --git a/dev/alpha_console.cc b/dev/alpha_console.cc index 7deabe2fc..8309ea16d 100644 --- a/dev/alpha_console.cc +++ b/dev/alpha_console.cc @@ -56,10 +56,10 @@ using namespace std; AlphaConsole::AlphaConsole(const string &name, SimConsole *cons, SimpleDisk *d, - System *system, BaseCPU *cpu, Platform *platform, + System *system, BaseCPU *cpu, Platform *p, int num_cpus, MemoryController *mmu, Addr a, HierParams *hier, Bus *bus) - : PioDevice(name), disk(d), console(cons), addr(a) + : PioDevice(name, p), disk(d), console(cons), addr(a) { mmu->add_child(this, RangeSize(addr, size)); @@ -79,7 +79,7 @@ AlphaConsole::AlphaConsole(const string &name, SimConsole *cons, SimpleDisk *d, alphaAccess->numCPUs = num_cpus; alphaAccess->mem_size = system->physmem->size(); alphaAccess->cpuClock = cpu->getFreq() / 1000000; - alphaAccess->intrClockFrequency = platform->intrFrequency(); + alphaAccess->intrClockFrequency = platform->intrFrequency(); alphaAccess->diskUnit = 1; alphaAccess->diskCount = 0; @@ -329,6 +329,7 @@ BEGIN_DECLARE_SIM_OBJECT_PARAMS(AlphaConsole) SimObjectParam<BaseCPU *> cpu; SimObjectParam<Platform *> platform; SimObjectParam<Bus*> io_bus; + Param<Tick> pio_latency; SimObjectParam<HierParams *> hier; END_DECLARE_SIM_OBJECT_PARAMS(AlphaConsole) @@ -344,6 +345,7 @@ BEGIN_INIT_SIM_OBJECT_PARAMS(AlphaConsole) INIT_PARAM(cpu, "Processor"), INIT_PARAM(platform, "platform"), INIT_PARAM_DFLT(io_bus, "The IO Bus to attach to", NULL), + INIT_PARAM_DFLT(pio_latency, "Programmed IO latency", 1000), INIT_PARAM_DFLT(hier, "Hierarchy global variables", &defaultHierParams) END_INIT_SIM_OBJECT_PARAMS(AlphaConsole) diff --git a/dev/alpha_console.hh b/dev/alpha_console.hh index 49c3a9f78..96b0a22c2 100644 --- a/dev/alpha_console.hh +++ b/dev/alpha_console.hh @@ -42,7 +42,6 @@ class BaseCPU; class SimConsole; class System; -class Platform; class SimpleDisk; /* @@ -75,7 +74,7 @@ class AlphaConsole : public PioDevice protected: union { AlphaAccess *alphaAccess; - uint8_t *consoleData; + uint8_t *consoleData; }; /** the disk must be accessed from the console */ diff --git a/dev/baddev.cc b/dev/baddev.cc index 73b082d47..bb1d289ab 100644 --- a/dev/baddev.cc +++ b/dev/baddev.cc @@ -37,6 +37,7 @@ #include "base/trace.hh" #include "cpu/exec_context.hh" #include "dev/baddev.hh" +#include "dev/platform.hh" #include "mem/bus/bus.hh" #include "mem/bus/pio_interface.hh" #include "mem/bus/pio_interface_impl.hh" @@ -48,7 +49,7 @@ using namespace std; BadDevice::BadDevice(const string &name, Addr a, MemoryController *mmu, HierParams *hier, Bus *bus, const string &devicename) - : PioDevice(name), addr(a), devname(devicename) + : PioDevice(name, NULL), addr(a), devname(devicename) { mmu->add_child(this, RangeSize(addr, size)); @@ -83,20 +84,24 @@ BadDevice::cacheAccess(MemReqPtr &req) BEGIN_DECLARE_SIM_OBJECT_PARAMS(BadDevice) + SimObjectParam<Platform *> platform; SimObjectParam<MemoryController *> mmu; Param<Addr> addr; SimObjectParam<HierParams *> hier; SimObjectParam<Bus*> io_bus; + Param<Tick> pio_latency; Param<string> devicename; END_DECLARE_SIM_OBJECT_PARAMS(BadDevice) BEGIN_INIT_SIM_OBJECT_PARAMS(BadDevice) + INIT_PARAM(platform, "Platform"), INIT_PARAM(mmu, "Memory Controller"), INIT_PARAM(addr, "Device Address"), INIT_PARAM_DFLT(hier, "Hierarchy global variables", &defaultHierParams), INIT_PARAM_DFLT(io_bus, "The IO Bus to attach to", NULL), + INIT_PARAM_DFLT(pio_latency, "Programmed IO latency", 1000), INIT_PARAM(devicename, "Name of device to error on") END_INIT_SIM_OBJECT_PARAMS(BadDevice) diff --git a/dev/baddev.hh b/dev/baddev.hh index 8680f6b0a..a9e904c62 100644 --- a/dev/baddev.hh +++ b/dev/baddev.hh @@ -31,8 +31,8 @@ * kernel that touches the frame buffer which isn't allowed. */ -#ifndef __BADDEV_HH__ -#define __BADDEV_HH__ +#ifndef __DEV_BADDEV_HH__ +#define __DEV_BADDEV_HH__ #include "base/range.hh" #include "dev/io_device.hh" @@ -90,4 +90,4 @@ class BadDevice : public PioDevice Tick cacheAccess(MemReqPtr &req); }; -#endif // __BADDEV_HH__ +#endif // __DEV_BADDEV_HH__ diff --git a/dev/etherlink.cc b/dev/etherlink.cc index d637e152a..0acc50b0b 100644 --- a/dev/etherlink.cc +++ b/dev/etherlink.cc @@ -261,28 +261,27 @@ REGISTER_SERIALIZEABLE("LinkDelayEvent", LinkDelayEvent) BEGIN_DECLARE_SIM_OBJECT_PARAMS(EtherLink) - SimObjectParam<EtherInt *> interface1; - SimObjectParam<EtherInt *> interface2; - Param<Tick> link_speed; - Param<Tick> link_delay; - SimObjectParam<EtherDump *> packet_dump; + SimObjectParam<EtherInt *> int1; + SimObjectParam<EtherInt *> int2; + Param<Tick> speed; + Param<Tick> delay; + SimObjectParam<EtherDump *> dump; END_DECLARE_SIM_OBJECT_PARAMS(EtherLink) BEGIN_INIT_SIM_OBJECT_PARAMS(EtherLink) - INIT_PARAM(interface1, "interface 1"), - INIT_PARAM(interface2, "interface 2"), - INIT_PARAM_DFLT(link_speed, "link speed in bits per second", 100000000), - INIT_PARAM_DFLT(link_delay, "transmit delay of packets in us", 0), - INIT_PARAM_DFLT(packet_dump, "object to dump network packets to", NULL) + INIT_PARAM(int1, "interface 1"), + INIT_PARAM(int2, "interface 2"), + INIT_PARAM_DFLT(speed, "link speed in bits per second", 100000000), + INIT_PARAM_DFLT(delay, "transmit delay of packets in us", 0), + INIT_PARAM_DFLT(dump, "object to dump network packets to", NULL) END_INIT_SIM_OBJECT_PARAMS(EtherLink) CREATE_SIM_OBJECT(EtherLink) { - return new EtherLink(getInstanceName(), interface1, interface2, link_speed, - link_delay, packet_dump); + return new EtherLink(getInstanceName(), int1, int2, speed, delay, dump); } REGISTER_SIM_OBJECT("EtherLink", EtherLink) diff --git a/dev/ethertap.cc b/dev/ethertap.cc index 1603a9bd3..807765d91 100644 --- a/dev/ethertap.cc +++ b/dev/ethertap.cc @@ -311,7 +311,7 @@ EtherTap::unserialize(Checkpoint *cp, const std::string §ion) BEGIN_DECLARE_SIM_OBJECT_PARAMS(EtherTap) SimObjectParam<EtherInt *> peer; - SimObjectParam<EtherDump *> packet_dump; + SimObjectParam<EtherDump *> dump; Param<unsigned> port; Param<unsigned> bufsz; @@ -320,7 +320,7 @@ END_DECLARE_SIM_OBJECT_PARAMS(EtherTap) BEGIN_INIT_SIM_OBJECT_PARAMS(EtherTap) INIT_PARAM_DFLT(peer, "peer interface", NULL), - INIT_PARAM_DFLT(packet_dump, "object to dump network packets to", NULL), + INIT_PARAM_DFLT(dump, "object to dump network packets to", NULL), INIT_PARAM_DFLT(port, "tap port", 3500), INIT_PARAM_DFLT(bufsz, "tap buffer size", 10000) @@ -329,7 +329,7 @@ END_INIT_SIM_OBJECT_PARAMS(EtherTap) CREATE_SIM_OBJECT(EtherTap) { - EtherTap *tap = new EtherTap(getInstanceName(), packet_dump, port, bufsz); + EtherTap *tap = new EtherTap(getInstanceName(), dump, port, bufsz); if (peer) { tap->setPeer(peer); diff --git a/dev/ide_ctrl.cc b/dev/ide_ctrl.cc index 109908ead..037de1dea 100644 --- a/dev/ide_ctrl.cc +++ b/dev/ide_ctrl.cc @@ -664,6 +664,7 @@ IdeController::unserialize(Checkpoint *cp, const std::string §ion) BEGIN_DECLARE_SIM_OBJECT_PARAMS(IdeController) + Param<Addr> addr; SimObjectVectorParam<IdeDisk *> disks; SimObjectParam<MemoryController *> mmu; SimObjectParam<PciConfigAll *> configspace; @@ -680,6 +681,7 @@ END_DECLARE_SIM_OBJECT_PARAMS(IdeController) BEGIN_INIT_SIM_OBJECT_PARAMS(IdeController) + INIT_PARAM(addr, "Device Address"), INIT_PARAM(disks, "IDE disks attached to this controller"), INIT_PARAM(mmu, "Memory controller"), INIT_PARAM(configspace, "PCI Configspace"), diff --git a/dev/ide_disk.cc b/dev/ide_disk.cc index 073c10436..bfaf3d3aa 100644 --- a/dev/ide_disk.cc +++ b/dev/ide_disk.cc @@ -1171,12 +1171,14 @@ IdeDisk::unserialize(Checkpoint *cp, const string §ion) #ifndef DOXYGEN_SHOULD_SKIP_THIS +enum DriveID { master, slave }; +static const char *DriveID_strings[] = { "master", "slave" }; BEGIN_DECLARE_SIM_OBJECT_PARAMS(IdeDisk) SimObjectParam<DiskImage *> image; SimObjectParam<PhysicalMemory *> physmem; - Param<int> driveID; - Param<int> disk_delay; + SimpleEnumParam<DriveID> driveID; + Param<int> delay; END_DECLARE_SIM_OBJECT_PARAMS(IdeDisk) @@ -1184,16 +1186,15 @@ BEGIN_INIT_SIM_OBJECT_PARAMS(IdeDisk) INIT_PARAM(image, "Disk image"), INIT_PARAM(physmem, "Physical memory"), - INIT_PARAM(driveID, "Drive ID (0=master 1=slave)"), - INIT_PARAM_DFLT(disk_delay, "Fixed disk delay in microseconds", 1) + INIT_ENUM_PARAM(driveID, "Drive ID (0=master 1=slave)", DriveID_strings), + INIT_PARAM_DFLT(delay, "Fixed disk delay in microseconds", 1) END_INIT_SIM_OBJECT_PARAMS(IdeDisk) CREATE_SIM_OBJECT(IdeDisk) { - return new IdeDisk(getInstanceName(), image, physmem, driveID, - disk_delay); + return new IdeDisk(getInstanceName(), image, physmem, driveID, delay); } REGISTER_SIM_OBJECT("IdeDisk", IdeDisk) diff --git a/dev/io_device.cc b/dev/io_device.cc index 7703ad5e3..ffded5858 100644 --- a/dev/io_device.cc +++ b/dev/io_device.cc @@ -31,8 +31,8 @@ #include "mem/bus/dma_interface.hh" #include "sim/builder.hh" -PioDevice::PioDevice(const std::string &name) - : FunctionalMemory(name), pioInterface(NULL), pioLatency(0) +PioDevice::PioDevice(const std::string &name, Platform *p) + : FunctionalMemory(name), platform(p), pioInterface(NULL), pioLatency(0) {} PioDevice::~PioDevice() @@ -43,8 +43,8 @@ PioDevice::~PioDevice() DEFINE_SIM_OBJECT_CLASS_NAME("PioDevice", PioDevice) -DmaDevice::DmaDevice(const std::string &name) - : PioDevice(name), dmaInterface(NULL) +DmaDevice::DmaDevice(const std::string &name, Platform *p) + : PioDevice(name, p), dmaInterface(NULL) {} DmaDevice::~DmaDevice() diff --git a/dev/io_device.hh b/dev/io_device.hh index 8c9dc4a35..649706956 100644 --- a/dev/io_device.hh +++ b/dev/io_device.hh @@ -26,24 +26,26 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef __IO_DEVICE_HH__ -#define __IO_DEVICE_HH__ +#ifndef __DEV_IO_DEVICE_HH__ +#define __DEV_IO_DEVICE_HH__ #include "mem/functional_mem/functional_memory.hh" class BaseInterface; class Bus; class HierParams; +class Platform; template <class BusType> class DMAInterface; class PioDevice : public FunctionalMemory { protected: + Platform *platform; BaseInterface *pioInterface; Tick pioLatency; public: - PioDevice(const std::string &name); + PioDevice(const std::string &name, Platform *p); virtual ~PioDevice(); }; @@ -53,8 +55,8 @@ class DmaDevice : public PioDevice DMAInterface<Bus> *dmaInterface; public: - DmaDevice(const std::string &name); + DmaDevice(const std::string &name, Platform *p); virtual ~DmaDevice(); }; -#endif // __IO_DEVICE_HH__ +#endif // __DEV_IO_DEVICE_HH__ diff --git a/dev/ns_gige.cc b/dev/ns_gige.cc index eee8fbbce..aa47436f7 100644 --- a/dev/ns_gige.cc +++ b/dev/ns_gige.cc @@ -36,7 +36,6 @@ #include "base/inet.hh" #include "cpu/exec_context.hh" -#include "cpu/intr_control.hh" #include "dev/dma.hh" #include "dev/etherlink.hh" #include "dev/ns_gige.hh" @@ -2637,6 +2636,7 @@ REGISTER_SIM_OBJECT("NSGigEInt", NSGigEInt) BEGIN_DECLARE_SIM_OBJECT_PARAMS(NSGigE) + Param<Addr> addr; Param<Tick> tx_delay; Param<Tick> rx_delay; Param<Tick> intr_delay; @@ -2644,7 +2644,7 @@ BEGIN_DECLARE_SIM_OBJECT_PARAMS(NSGigE) SimObjectParam<PhysicalMemory *> physmem; Param<bool> rx_filter; Param<string> hardware_address; - SimObjectParam<Bus*> header_bus; + SimObjectParam<Bus*> io_bus; SimObjectParam<Bus*> payload_bus; SimObjectParam<HierParams *> hier; Param<Tick> pio_latency; @@ -2667,6 +2667,7 @@ END_DECLARE_SIM_OBJECT_PARAMS(NSGigE) BEGIN_INIT_SIM_OBJECT_PARAMS(NSGigE) + INIT_PARAM(addr, "Device Address"), INIT_PARAM_DFLT(tx_delay, "Transmit Delay", 1000), INIT_PARAM_DFLT(rx_delay, "Receive Delay", 1000), INIT_PARAM_DFLT(intr_delay, "Interrupt Delay in microseconds", 0), @@ -2675,7 +2676,7 @@ BEGIN_INIT_SIM_OBJECT_PARAMS(NSGigE) INIT_PARAM_DFLT(rx_filter, "Enable Receive Filter", true), INIT_PARAM_DFLT(hardware_address, "Ethernet Hardware Address", "00:99:00:00:00:01"), - INIT_PARAM_DFLT(header_bus, "The IO Bus to attach to for headers", NULL), + INIT_PARAM_DFLT(io_bus, "The IO Bus to attach to for headers", NULL), INIT_PARAM_DFLT(payload_bus, "The IO Bus to attach to for payload", NULL), INIT_PARAM_DFLT(hier, "Hierarchy global variables", &defaultHierParams), INIT_PARAM_DFLT(pio_latency, "Programmed IO latency in bus cycles", 1), @@ -2715,7 +2716,7 @@ CREATE_SIM_OBJECT(NSGigE) params->tx_delay = tx_delay; params->rx_delay = rx_delay; params->hier = hier; - params->header_bus = header_bus; + params->header_bus = io_bus; params->payload_bus = payload_bus; params->pio_latency = pio_latency; params->dma_desc_free = dma_desc_free; diff --git a/dev/ns_gige.hh b/dev/ns_gige.hh index 8d6016126..bc7a87373 100644 --- a/dev/ns_gige.hh +++ b/dev/ns_gige.hh @@ -91,7 +91,6 @@ struct dp_rom { uint8_t perfectMatch[ETH_ADDR_LEN]; }; -class IntrControl; class NSGigEInt; class PhysicalMemory; class BaseInterface; @@ -302,7 +301,6 @@ class NSGigE : public PciDev /** * Interrupt management */ - IntrControl *intctrl; void devIntrPost(uint32_t interrupts); void devIntrClear(uint32_t interrupts); void devIntrChangeMask(); diff --git a/dev/pciconfigall.cc b/dev/pciconfigall.cc index 609763e92..1a9804f79 100644 --- a/dev/pciconfigall.cc +++ b/dev/pciconfigall.cc @@ -48,9 +48,10 @@ using namespace std; -PciConfigAll::PciConfigAll(const string &name, Addr a, MemoryController *mmu, +PciConfigAll::PciConfigAll(const string &name, + Addr a, MemoryController *mmu, HierParams *hier, Bus *bus, Tick pio_latency) - : PioDevice(name), addr(a) + : PioDevice(name, NULL), addr(a) { mmu->add_child(this, RangeSize(addr, size)); diff --git a/dev/pcidev.cc b/dev/pcidev.cc index d156b6a02..c45afadd4 100644 --- a/dev/pcidev.cc +++ b/dev/pcidev.cc @@ -42,6 +42,7 @@ #include "dev/pciareg.h" #include "dev/pcidev.hh" #include "dev/pciconfigall.hh" +#include "mem/bus/bus.hh" #include "mem/functional_mem/memory_control.hh" #include "sim/builder.hh" #include "sim/param.hh" @@ -51,7 +52,8 @@ using namespace std; PciDev::PciDev(Params *p) - : DmaDevice(p->name), _params(p), plat(p->plat), configData(p->configData) + : DmaDevice(p->name, p->plat), _params(p), plat(p->plat), + configData(p->configData) { // copy the config data from the PciConfigData object if (configData) { @@ -283,6 +285,11 @@ PciDev::unserialize(Checkpoint *cp, const std::string §ion) BEGIN_DECLARE_SIM_OBJECT_PARAMS(PciConfigData) + SimObjectParam<MemoryController *> mmu; + Param<Addr> addr; + SimObjectParam<Bus*> io_bus; + Param<Tick> pio_latency; + Param<uint16_t> VendorID; Param<uint16_t> DeviceID; Param<uint16_t> Command; @@ -320,6 +327,11 @@ END_DECLARE_SIM_OBJECT_PARAMS(PciConfigData) BEGIN_INIT_SIM_OBJECT_PARAMS(PciConfigData) + INIT_PARAM(mmu, "Memory Controller"), + INIT_PARAM(addr, "Device Address"), + INIT_PARAM_DFLT(io_bus, "The IO Bus to attach to", NULL), + INIT_PARAM_DFLT(pio_latency, "Programmed IO latency in bus cycles", 1), + INIT_PARAM(VendorID, "Vendor ID"), INIT_PARAM(DeviceID, "Device ID"), INIT_PARAM_DFLT(Command, "Command Register", 0x00), diff --git a/dev/platform.hh b/dev/platform.hh index 717e49411..47ca6209f 100644 --- a/dev/platform.hh +++ b/dev/platform.hh @@ -47,8 +47,6 @@ class Platform : public SimObject public: /** Pointer to the interrupt controller */ IntrControl *intrctrl; - /** Pointer to the simulation console */ - SimConsole *cons; /** Pointer to the PCI configuration space */ PciConfigAll *pciconfig; diff --git a/dev/tsunami.cc b/dev/tsunami.cc index f98254354..a95b7365d 100644 --- a/dev/tsunami.cc +++ b/dev/tsunami.cc @@ -107,7 +107,6 @@ Tsunami::unserialize(Checkpoint *cp, const std::string §ion) BEGIN_DECLARE_SIM_OBJECT_PARAMS(Tsunami) SimObjectParam<System *> system; - SimObjectParam<SimConsole *> cons; SimObjectParam<IntrControl *> intrctrl; SimObjectParam<PciConfigAll *> pciconfig; Param<int> interrupt_frequency; @@ -117,7 +116,6 @@ END_DECLARE_SIM_OBJECT_PARAMS(Tsunami) BEGIN_INIT_SIM_OBJECT_PARAMS(Tsunami) INIT_PARAM(system, "system"), - INIT_PARAM(cons, "system console"), INIT_PARAM(intrctrl, "interrupt controller"), INIT_PARAM(pciconfig, "PCI configuration"), INIT_PARAM_DFLT(interrupt_frequency, "frequency of interrupts", 1024) diff --git a/dev/tsunami_cchip.cc b/dev/tsunami_cchip.cc index a1f900153..823d1f118 100644 --- a/dev/tsunami_cchip.cc +++ b/dev/tsunami_cchip.cc @@ -51,7 +51,7 @@ using namespace std; TsunamiCChip::TsunamiCChip(const string &name, Tsunami *t, Addr a, MemoryController *mmu, HierParams *hier, Bus* bus, Tick pio_latency) - : PioDevice(name), addr(a), tsunami(t) + : PioDevice(name, t), addr(a), tsunami(t) { mmu->add_child(this, RangeSize(addr, size)); diff --git a/dev/tsunami_io.cc b/dev/tsunami_io.cc index 51ff8b81c..a223c95c7 100644 --- a/dev/tsunami_io.cc +++ b/dev/tsunami_io.cc @@ -162,7 +162,7 @@ TsunamiIO::ClockEvent::unserialize(Checkpoint *cp, const std::string §ion) TsunamiIO::TsunamiIO(const string &name, Tsunami *t, time_t init_time, Addr a, MemoryController *mmu, HierParams *hier, Bus *bus, Tick pio_latency) - : PioDevice(name), addr(a), tsunami(t), rtc(t) + : PioDevice(name, t), addr(a), tsunami(t), rtc(t) { mmu->add_child(this, RangeSize(addr, size)); diff --git a/dev/tsunami_pchip.cc b/dev/tsunami_pchip.cc index 9af19d930..f846725f9 100644 --- a/dev/tsunami_pchip.cc +++ b/dev/tsunami_pchip.cc @@ -51,7 +51,7 @@ using namespace std; TsunamiPChip::TsunamiPChip(const string &name, Tsunami *t, Addr a, MemoryController *mmu, HierParams *hier, Bus *bus, Tick pio_latency) - : PioDevice(name), addr(a), tsunami(t) + : PioDevice(name, t), addr(a), tsunami(t) { mmu->add_child(this, RangeSize(addr, size)); diff --git a/dev/uart.cc b/dev/uart.cc index 2ff94dda5..3c4ab6d04 100644 --- a/dev/uart.cc +++ b/dev/uart.cc @@ -88,8 +88,8 @@ Uart::IntrEvent::scheduleIntr() Uart::Uart(const string &name, SimConsole *c, MemoryController *mmu, Addr a, Addr s, HierParams *hier, Bus *bus, Tick pio_latency, Platform *p) - : PioDevice(name), addr(a), size(s), cons(c), txIntrEvent(this, TX_INT), - rxIntrEvent(this, RX_INT), platform(p) + : PioDevice(name, p), addr(a), size(s), cons(c), + txIntrEvent(this, TX_INT), rxIntrEvent(this, RX_INT) { mmu->add_child(this, RangeSize(addr, size)); diff --git a/dev/uart.hh b/dev/uart.hh index 855915840..d1f167526 100644 --- a/dev/uart.hh +++ b/dev/uart.hh @@ -72,7 +72,6 @@ class Uart : public PioDevice IntrEvent txIntrEvent; IntrEvent rxIntrEvent; - Platform *platform; public: Uart(const std::string &name, SimConsole *c, MemoryController *mmu, |