X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fdev%2Fbaddev.cc;h=356574c718593c56276619dd1664c756d309a7d2;hb=d4e83a400189ef91a5b0f444c9c99d443cc1a251;hp=1bab9349262fa032c772a48edca0f266ec86456f;hpb=7be58fd5f4c3f9f112b19de3a81861bded21acb0;p=gem5.git diff --git a/src/dev/baddev.cc b/src/dev/baddev.cc index 1bab93492..356574c71 100644 --- a/src/dev/baddev.cc +++ b/src/dev/baddev.cc @@ -37,63 +37,38 @@ #include #include "base/trace.hh" +#include "config/the_isa.hh" #include "dev/baddev.hh" #include "dev/platform.hh" #include "mem/port.hh" -#include "sim/builder.hh" +#include "params/BadDevice.hh" #include "sim/system.hh" using namespace std; using namespace TheISA; BadDevice::BadDevice(Params *p) - : BasicPioDevice(p), devname(p->device_name) + : BasicPioDevice(p), devname(p->devicename) { - pioSize = 0xf; + pioSize = 0x10; } Tick BadDevice::read(PacketPtr pkt) { panic("Device %s not imlpmented\n", devname); + M5_DUMMY_RETURN } Tick BadDevice::write(PacketPtr pkt) { panic("Device %s not imlpmented\n", devname); + M5_DUMMY_RETURN } -BEGIN_DECLARE_SIM_OBJECT_PARAMS(BadDevice) - - Param devicename; - Param pio_addr; - SimObjectParam system; - SimObjectParam platform; - Param pio_latency; - -END_DECLARE_SIM_OBJECT_PARAMS(BadDevice) - -BEGIN_INIT_SIM_OBJECT_PARAMS(BadDevice) - - INIT_PARAM(devicename, "Name of device to error on"), - INIT_PARAM(pio_addr, "Device Address"), - INIT_PARAM(system, "system object"), - INIT_PARAM(platform, "platform"), - INIT_PARAM_DFLT(pio_latency, "Programmed IO latency", 1000) - -END_INIT_SIM_OBJECT_PARAMS(BadDevice) - -CREATE_SIM_OBJECT(BadDevice) +BadDevice * +BadDeviceParams::create() { - BadDevice::Params *p = new BadDevice::Params; - p->name =getInstanceName(); - p->platform = platform; - p->pio_addr = pio_addr; - p->pio_delay = pio_latency; - p->system = system; - p->device_name = devicename; - return new BadDevice(p); + return new BadDevice(this); } - -REGISTER_SIM_OBJECT("BadDevice", BadDevice)