X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fdev%2Fisa_fake.hh;h=07657ad7dfc141a4128ddd484018fba7b7b8eadb;hb=eae1e97fb002b44a9d8c46df2da1ddc1d0156ce4;hp=4c195a97f0d3689356e4cdb03335e748a84f80df;hpb=b82fa633bb9a9bf72b724dcf202985f37ab1d8b8;p=gem5.git diff --git a/src/dev/isa_fake.hh b/src/dev/isa_fake.hh index 4c195a97f..07657ad7d 100644 --- a/src/dev/isa_fake.hh +++ b/src/dev/isa_fake.hh @@ -35,10 +35,13 @@ #ifndef __ISA_FAKE_HH__ #define __ISA_FAKE_HH__ +#include + #include "base/range.hh" #include "dev/io_device.hh" -#include "dev/alpha/tsunami.hh" +// #include "dev/alpha/tsunami.hh" #include "mem/packet.hh" +#include "params/IsaFake.hh" /** * IsaFake is a device that returns, BadAddr, 1 or 0 on all reads and @@ -49,20 +52,21 @@ */ class IsaFake : public BasicPioDevice { - public: - struct Params : public BasicPioDevice::Params - { - Addr pio_size; - bool retBadAddr; - uint8_t retData; - }; protected: - const Params *params() const { return (const Params*)_params; } - uint64_t retData; + uint8_t retData8; + uint16_t retData16; + uint32_t retData32; + uint64_t retData64; public: + typedef IsaFakeParams Params; + const Params * + params() const + { + return dynamic_cast(_params); + } /** - * The constructor for Tsunmami Fake just registers itself with the MMU. + * The constructor for Isa Fake just registers itself with the MMU. * @param p params structure */ IsaFake(Params *p); @@ -80,8 +84,6 @@ class IsaFake : public BasicPioDevice * @param data the data to not write. */ virtual Tick write(PacketPtr pkt); - - void init(); }; #endif // __ISA_FAKE_HH__