misc: Use PARAMS
The patch is using the newly defined PARAMS macro to replace custom params() getters in derived class. The patch is also removing redundant _params: Instead of creating yet another _params field, SimObject descendants should use params() to expose the real type of SimObject::_params they already have. Change-Id: I43394cebb9661fe747bdbb332236f0f0181b3dba Signed-off-by: Alexander Klimov <Alexander.Klimov@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/39900 Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com> Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
committed by
Giacomo Travaglini
parent
c8a2114df2
commit
92ba3ba843
@@ -55,12 +55,7 @@
|
||||
class AmbaFake : public AmbaPioDevice
|
||||
{
|
||||
public:
|
||||
typedef AmbaFakeParams Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(AmbaFake);
|
||||
AmbaFake(const Params &p);
|
||||
|
||||
virtual Tick read(PacketPtr pkt);
|
||||
|
||||
@@ -109,8 +109,7 @@ ArmPPIGen::get(ThreadContext* tc)
|
||||
return pin_it->second;
|
||||
} else {
|
||||
// Generate PPI Pin
|
||||
auto &p = static_cast<const ArmPPIParams &>(_params);
|
||||
ArmPPI *pin = new ArmPPI(p, tc);
|
||||
ArmPPI *pin = new ArmPPI(ArmPPIGen::params(), tc);
|
||||
|
||||
pins.insert({cid, pin});
|
||||
|
||||
|
||||
@@ -165,7 +165,8 @@ class ArmSPIGen : public ArmInterruptPinGen
|
||||
class ArmPPIGen : public ArmInterruptPinGen
|
||||
{
|
||||
public:
|
||||
ArmPPIGen(const ArmPPIParams &p);
|
||||
PARAMS(ArmPPI);
|
||||
ArmPPIGen(const Params &p);
|
||||
|
||||
ArmInterruptPin* get(ThreadContext* tc = nullptr) override;
|
||||
protected:
|
||||
|
||||
@@ -263,15 +263,10 @@ class Platform : public Scp
|
||||
public:
|
||||
using ProtocolList = std::unordered_map<uint8_t, Protocol *>;
|
||||
|
||||
Platform(const ScmiPlatformParams &p);
|
||||
PARAMS(ScmiPlatform);
|
||||
Platform(const Params &p);
|
||||
~Platform();
|
||||
|
||||
const ScmiPlatformParams&
|
||||
params() const
|
||||
{
|
||||
return static_cast<const ScmiPlatformParams&>(_params);
|
||||
}
|
||||
|
||||
void handleMessage(AgentChannel *ch, Message &msg);
|
||||
|
||||
/** Returns the number of agents in the system */
|
||||
|
||||
@@ -408,12 +408,6 @@ GenericTimer::GenericTimer(const GenericTimerParams &p)
|
||||
system.setGenericTimer(this);
|
||||
}
|
||||
|
||||
const GenericTimerParams &
|
||||
GenericTimer::params() const
|
||||
{
|
||||
return dynamic_cast<const GenericTimerParams &>(_params);
|
||||
}
|
||||
|
||||
void
|
||||
GenericTimer::serialize(CheckpointOut &cp) const
|
||||
{
|
||||
@@ -469,7 +463,7 @@ void
|
||||
GenericTimer::createTimers(unsigned cpus)
|
||||
{
|
||||
assert(timers.size() < cpus);
|
||||
auto &p = static_cast<const GenericTimerParams &>(_params);
|
||||
auto &p = params();
|
||||
|
||||
const unsigned old_cpu_count(timers.size());
|
||||
timers.resize(cpus);
|
||||
|
||||
@@ -286,9 +286,9 @@ class ArchTimerKvm : public ArchTimer
|
||||
class GenericTimer : public SimObject
|
||||
{
|
||||
public:
|
||||
const GenericTimerParams ¶ms() const;
|
||||
PARAMS(GenericTimer);
|
||||
|
||||
GenericTimer(const GenericTimerParams &p);
|
||||
GenericTimer(const Params &p);
|
||||
|
||||
void serialize(CheckpointOut &cp) const override;
|
||||
void unserialize(CheckpointIn &cp) override;
|
||||
|
||||
@@ -475,12 +475,7 @@ class GicV2 : public BaseGic, public BaseGicRegisters
|
||||
int pendingDelayedInterrupts;
|
||||
|
||||
public:
|
||||
typedef GicV2Params Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(GicV2);
|
||||
GicV2(const Params &p);
|
||||
~GicV2();
|
||||
|
||||
|
||||
@@ -56,7 +56,6 @@ class Gicv3 : public BaseGic
|
||||
friend class Gicv3CPUInterface;
|
||||
friend class Gicv3Redistributor;
|
||||
|
||||
typedef Gicv3Params Params;
|
||||
Gicv3Distributor * distributor;
|
||||
std::vector<Gicv3Redistributor *> redistributors;
|
||||
std::vector<Gicv3CPUInterface *> cpuInterfaces;
|
||||
@@ -111,11 +110,7 @@ class Gicv3 : public BaseGic
|
||||
|
||||
void init() override;
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(Gicv3);
|
||||
|
||||
Tick read(PacketPtr pkt) override;
|
||||
void reset();
|
||||
|
||||
@@ -356,13 +356,7 @@ class Pl111: public AmbaDmaDevice
|
||||
bool enableCapture;
|
||||
|
||||
public:
|
||||
typedef Pl111Params Params;
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(Pl111);
|
||||
Pl111(const Params &p);
|
||||
~Pl111();
|
||||
|
||||
|
||||
@@ -63,11 +63,7 @@ class RealView : public Platform
|
||||
BaseGic *gic;
|
||||
|
||||
public:
|
||||
typedef RealViewParams Params;
|
||||
const Params &
|
||||
params() const {
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(RealView);
|
||||
|
||||
/**
|
||||
* Constructor for the Tsunami Class.
|
||||
|
||||
@@ -97,12 +97,8 @@ class PL031 : public AmbaIntDevice
|
||||
void resyncMatch();
|
||||
|
||||
public:
|
||||
typedef PL031Params Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(PL031);
|
||||
|
||||
/**
|
||||
* The constructor for RealView just registers itself with the MMU.
|
||||
* @param p params structure
|
||||
@@ -129,4 +125,3 @@ class PL031 : public AmbaIntDevice
|
||||
|
||||
|
||||
#endif // __DEV_ARM_RTC_PL031_HH__
|
||||
|
||||
|
||||
@@ -153,12 +153,8 @@ class RealViewCtrl : public BasicPioDevice
|
||||
uint32_t scData;
|
||||
|
||||
public:
|
||||
typedef RealViewCtrlParams Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(RealViewCtrl);
|
||||
|
||||
/**
|
||||
* The constructor for RealView just registers itself with the MMU.
|
||||
* @param p params structure
|
||||
|
||||
@@ -118,7 +118,8 @@ class SMMUv3DeviceInterface : public ClockedObject
|
||||
Port& getPort(const std::string &name, PortID id) override;
|
||||
|
||||
public:
|
||||
SMMUv3DeviceInterface(const SMMUv3DeviceInterfaceParams &p);
|
||||
PARAMS(SMMUv3DeviceInterface);
|
||||
SMMUv3DeviceInterface(const Params &p);
|
||||
|
||||
~SMMUv3DeviceInterface()
|
||||
{
|
||||
@@ -126,12 +127,6 @@ class SMMUv3DeviceInterface : public ClockedObject
|
||||
delete mainTLB;
|
||||
}
|
||||
|
||||
const SMMUv3DeviceInterfaceParams &
|
||||
params() const
|
||||
{
|
||||
return static_cast<const SMMUv3DeviceInterfaceParams &>(_params);
|
||||
}
|
||||
|
||||
DrainState drain() override;
|
||||
|
||||
void setSMMU(SMMUv3 *_smmu) { smmu = _smmu; }
|
||||
|
||||
@@ -149,12 +149,8 @@ class A9GlobalTimer : public BasicPioDevice
|
||||
Timer global_timer;
|
||||
|
||||
public:
|
||||
typedef A9GlobalTimerParams Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(A9GlobalTimer);
|
||||
|
||||
/**
|
||||
* The constructor for RealView just registers itself with the MMU.
|
||||
* @param p params structure
|
||||
|
||||
@@ -162,12 +162,8 @@ class CpuLocalTimer : public BasicPioDevice
|
||||
std::vector<std::unique_ptr<Timer>> localTimer;
|
||||
|
||||
public:
|
||||
typedef CpuLocalTimerParams Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(CpuLocalTimer);
|
||||
|
||||
/**
|
||||
* The constructor for RealView just registers itself with the MMU.
|
||||
* @param p params structure
|
||||
|
||||
@@ -135,12 +135,8 @@ class Sp804 : public AmbaPioDevice
|
||||
Timer timer1;
|
||||
|
||||
public:
|
||||
typedef Sp804Params Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(Sp804);
|
||||
|
||||
/**
|
||||
* The constructor for RealView just registers itself with the MMU.
|
||||
* @param p params structure
|
||||
|
||||
@@ -186,12 +186,7 @@ class VGic : public PioDevice
|
||||
struct std::array<vcpuIntData, VGIC_CPU_MAX> vcpuData;
|
||||
|
||||
public:
|
||||
typedef VGicParams Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(VGic);
|
||||
VGic(const Params &p);
|
||||
~VGic();
|
||||
|
||||
|
||||
@@ -49,21 +49,13 @@ class BadDevice : public BasicPioDevice
|
||||
std::string devname;
|
||||
|
||||
public:
|
||||
typedef BadDeviceParams Params;
|
||||
PARAMS(BadDevice);
|
||||
|
||||
protected:
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
public:
|
||||
/**
|
||||
* Constructor for the Baddev Class.
|
||||
* @param p object parameters
|
||||
* @param a base address of the write
|
||||
*/
|
||||
/**
|
||||
* Constructor for the Baddev Class.
|
||||
* @param p object parameters
|
||||
* @param a base address of the write
|
||||
*/
|
||||
BadDevice(const Params &p);
|
||||
|
||||
virtual Tick read(PacketPtr pkt);
|
||||
|
||||
@@ -128,16 +128,10 @@ class PioDevice : public ClockedObject
|
||||
virtual Tick write(PacketPtr pkt) = 0;
|
||||
|
||||
public:
|
||||
typedef PioDeviceParams Params;
|
||||
PARAMS(PioDevice);
|
||||
PioDevice(const Params &p);
|
||||
virtual ~PioDevice();
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
void init() override;
|
||||
|
||||
Port &getPort(const std::string &if_name,
|
||||
@@ -160,15 +154,9 @@ class BasicPioDevice : public PioDevice
|
||||
Tick pioDelay;
|
||||
|
||||
public:
|
||||
typedef BasicPioDeviceParams Params;
|
||||
PARAMS(BasicPioDevice);
|
||||
BasicPioDevice(const Params &p, Addr size);
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine the address ranges that this device responds to.
|
||||
*
|
||||
|
||||
@@ -55,12 +55,8 @@ class IsaFake : public BasicPioDevice
|
||||
uint64_t retData64;
|
||||
|
||||
public:
|
||||
typedef IsaFakeParams Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(IsaFake);
|
||||
|
||||
/**
|
||||
* The constructor for Isa Fake just registers itself with the MMU.
|
||||
* @param p params structure
|
||||
|
||||
@@ -76,13 +76,7 @@ class MaltaCChip : public BasicPioDevice
|
||||
//uint64_t itint;
|
||||
|
||||
public:
|
||||
typedef MaltaCChipParams Params;
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(MaltaCChip);
|
||||
|
||||
/**
|
||||
* Initialize the Malta CChip by setting all of the
|
||||
|
||||
@@ -102,13 +102,7 @@ class MaltaIO : public BasicPioDevice
|
||||
*/
|
||||
Tick frequency() const;
|
||||
|
||||
typedef MaltaIOParams Params;
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(MaltaIO);
|
||||
|
||||
/**
|
||||
* Initialize all the data for devices supported by Malta I/O.
|
||||
|
||||
@@ -215,16 +215,10 @@ class DistEtherLink : public SimObject
|
||||
Tick linkDelay;
|
||||
|
||||
public:
|
||||
typedef DistEtherLinkParams Params;
|
||||
PARAMS(DistEtherLink);
|
||||
DistEtherLink(const Params &p);
|
||||
~DistEtherLink();
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
Port &getPort(const std::string &if_name,
|
||||
PortID idx=InvalidPortID) override;
|
||||
|
||||
|
||||
@@ -55,16 +55,10 @@ class EtherBus : public SimObject
|
||||
EtherDump *dump;
|
||||
|
||||
public:
|
||||
typedef EtherBusParams Params;
|
||||
PARAMS(EtherBus);
|
||||
EtherBus(const Params &p);
|
||||
virtual ~EtherBus() {}
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
void txDone();
|
||||
void reg(EtherInt *dev);
|
||||
bool busy() const { return (bool)packet; }
|
||||
|
||||
@@ -45,18 +45,12 @@ class EtherInt;
|
||||
class EtherDevice : public PciDevice
|
||||
{
|
||||
public:
|
||||
typedef EtherDeviceParams Params;
|
||||
PARAMS(EtherDevice);
|
||||
EtherDevice(const Params ¶ms)
|
||||
: PciDevice(params),
|
||||
etherDeviceStats(this)
|
||||
{}
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
protected:
|
||||
struct EtherDeviceStats : public Stats::Group
|
||||
{
|
||||
@@ -146,16 +140,10 @@ class EtherDevice : public PciDevice
|
||||
class EtherDevBase : public EtherDevice
|
||||
{
|
||||
public:
|
||||
EtherDevBase(const EtherDevBaseParams ¶ms)
|
||||
PARAMS(EtherDevBase);
|
||||
EtherDevBase(const Params ¶ms)
|
||||
: EtherDevice(params)
|
||||
{}
|
||||
|
||||
const EtherDevBaseParams &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const EtherDevBaseParams &>(_params);
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
#endif // __DEV_NET_ETHERDEVICE_HH__
|
||||
|
||||
@@ -140,16 +140,10 @@ class EtherLink : public SimObject
|
||||
Interface *interface[2];
|
||||
|
||||
public:
|
||||
typedef EtherLinkParams Params;
|
||||
PARAMS(EtherLink);
|
||||
EtherLink(const Params &p);
|
||||
virtual ~EtherLink();
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
Port &getPort(const std::string &if_name,
|
||||
PortID idx=InvalidPortID) override;
|
||||
|
||||
|
||||
@@ -51,17 +51,11 @@
|
||||
class EtherSwitch : public SimObject
|
||||
{
|
||||
public:
|
||||
typedef EtherSwitchParams Params;
|
||||
PARAMS(EtherSwitch);
|
||||
|
||||
EtherSwitch(const Params &p);
|
||||
~EtherSwitch();
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
Port &getPort(const std::string &if_name,
|
||||
PortID idx=InvalidPortID) override;
|
||||
|
||||
|
||||
@@ -56,16 +56,10 @@ class EtherTapInt;
|
||||
class EtherTapBase : public SimObject
|
||||
{
|
||||
public:
|
||||
typedef EtherTapBaseParams Params;
|
||||
PARAMS(EtherTapBase);
|
||||
EtherTapBase(const Params &p);
|
||||
virtual ~EtherTapBase();
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
void serialize(CheckpointOut &cp) const override;
|
||||
void unserialize(CheckpointIn &cp) override;
|
||||
|
||||
@@ -136,16 +130,10 @@ class TapListener;
|
||||
class EtherTapStub : public EtherTapBase
|
||||
{
|
||||
public:
|
||||
typedef EtherTapStubParams Params;
|
||||
PARAMS(EtherTapStub);
|
||||
EtherTapStub(const Params &p);
|
||||
~EtherTapStub();
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
void serialize(CheckpointOut &cp) const override;
|
||||
void unserialize(CheckpointIn &cp) override;
|
||||
|
||||
@@ -171,16 +159,10 @@ class EtherTapStub : public EtherTapBase
|
||||
class EtherTap : public EtherTapBase
|
||||
{
|
||||
public:
|
||||
typedef EtherTapParams Params;
|
||||
PARAMS(EtherTap);
|
||||
EtherTap(const Params &p);
|
||||
~EtherTap();
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
|
||||
protected:
|
||||
int tap;
|
||||
|
||||
@@ -473,12 +473,7 @@ class IGbE : public EtherDevice
|
||||
TxDescCache txDescCache;
|
||||
|
||||
public:
|
||||
typedef IGbEParams Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(IGbE);
|
||||
|
||||
IGbE(const Params ¶ms);
|
||||
~IGbE();
|
||||
|
||||
@@ -326,12 +326,7 @@ class NSGigE : public EtherDevBase
|
||||
NSGigEInt *interface;
|
||||
|
||||
public:
|
||||
typedef NSGigEParams Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(NSGigE);
|
||||
|
||||
NSGigE(const Params ¶ms);
|
||||
~NSGigE();
|
||||
|
||||
@@ -76,8 +76,7 @@ class Base : public EtherDevBase
|
||||
* Construction/Destruction/Parameters
|
||||
*/
|
||||
public:
|
||||
typedef SinicParams Params;
|
||||
const Params ¶ms() const { return (const Params &)_params; }
|
||||
PARAMS(Sinic);
|
||||
Base(const Params &p);
|
||||
};
|
||||
|
||||
|
||||
@@ -154,12 +154,7 @@ class CopyEngine : public PciDevice
|
||||
std::vector<CopyEngineChannel*> chan;
|
||||
|
||||
public:
|
||||
typedef CopyEngineParams Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(CopyEngine);
|
||||
CopyEngine(const Params ¶ms);
|
||||
~CopyEngine();
|
||||
|
||||
|
||||
@@ -51,15 +51,9 @@ class Uart : public BasicPioDevice
|
||||
SerialDevice *device;
|
||||
|
||||
public:
|
||||
typedef UartParams Params;
|
||||
PARAMS(Uart);
|
||||
Uart(const Params &p, Addr pio_size);
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
/**
|
||||
* Inform the uart that there is data available.
|
||||
*/
|
||||
|
||||
@@ -209,12 +209,7 @@ class Uart8250 : public Uart
|
||||
EventFunctionWrapper rxIntrEvent;
|
||||
|
||||
public:
|
||||
typedef Uart8250Params Params;
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(Uart8250);
|
||||
Uart8250(const Params &p);
|
||||
|
||||
Tick read(PacketPtr pkt) override;
|
||||
|
||||
@@ -49,15 +49,9 @@ class DumbTOD : public BasicPioDevice
|
||||
uint64_t todTime;
|
||||
|
||||
public:
|
||||
typedef DumbTODParams Params;
|
||||
PARAMS(DumbTOD);
|
||||
DumbTOD(const Params &p);
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
Tick read(PacketPtr pkt) override;
|
||||
Tick write(PacketPtr pkt) override;
|
||||
|
||||
|
||||
@@ -121,15 +121,9 @@ class Iob : public PioDevice
|
||||
void readJBus(PacketPtr pkt);
|
||||
|
||||
public:
|
||||
typedef IobParams Params;
|
||||
PARAMS(Iob);
|
||||
Iob(const Params &p);
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
Tick read(PacketPtr pkt) override;
|
||||
Tick write(PacketPtr pkt) override;
|
||||
void generateIpi(Type type, int cpu_id, int vector);
|
||||
|
||||
@@ -47,15 +47,9 @@ class MmDisk : public BasicPioDevice
|
||||
uint8_t diskData[SectorSize];
|
||||
|
||||
public:
|
||||
typedef MmDiskParams Params;
|
||||
PARAMS(MmDisk);
|
||||
MmDisk(const Params &p);
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
Tick read(PacketPtr pkt) override;
|
||||
Tick write(PacketPtr pkt) override;
|
||||
|
||||
|
||||
@@ -164,8 +164,7 @@ class IdeController : public PciDevice
|
||||
void dispatchAccess(PacketPtr pkt, bool read);
|
||||
|
||||
public:
|
||||
typedef IdeControllerParams Params;
|
||||
const Params ¶ms() const { return (const Params &)_params; }
|
||||
PARAMS(IdeController);
|
||||
IdeController(const Params &p);
|
||||
|
||||
/** See if a disk is selected based on its pointer */
|
||||
|
||||
@@ -117,13 +117,7 @@ class I8042 : public BasicPioDevice
|
||||
uint8_t readDataOut();
|
||||
|
||||
public:
|
||||
typedef I8042Params Params;
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(I8042);
|
||||
|
||||
I8042(const Params &p);
|
||||
|
||||
|
||||
@@ -85,13 +85,7 @@ class I82094AA : public BasicPioDevice
|
||||
IntRequestPort<I82094AA> intRequestPort;
|
||||
|
||||
public:
|
||||
typedef I82094AAParams Params;
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(I82094AA);
|
||||
|
||||
I82094AA(const Params &p);
|
||||
|
||||
|
||||
@@ -92,13 +92,7 @@ class I8237 : public BasicPioDevice
|
||||
void setMaskBit(Register ®, const uint8_t &command);
|
||||
|
||||
public:
|
||||
typedef I8237Params Params;
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(I8237);
|
||||
|
||||
I8237(const Params &p);
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@ class I8254 : public BasicPioDevice
|
||||
void counterInterrupt(unsigned int num);
|
||||
|
||||
public:
|
||||
typedef I8254Params Params;
|
||||
PARAMS(I8254);
|
||||
|
||||
Port &
|
||||
getPort(const std::string &if_name, PortID idx=InvalidPortID) override
|
||||
@@ -77,12 +77,6 @@ class I8254 : public BasicPioDevice
|
||||
return BasicPioDevice::getPort(if_name, idx);
|
||||
}
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
|
||||
I8254(const Params &p) : BasicPioDevice(p, 4), latency(p.pio_latency),
|
||||
pit(p.name, this)
|
||||
{
|
||||
|
||||
@@ -81,13 +81,7 @@ class I8259 : public BasicPioDevice
|
||||
void handleEOI(int line);
|
||||
|
||||
public:
|
||||
typedef I8259Params Params;
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(I8259);
|
||||
|
||||
I8259(const Params &p);
|
||||
|
||||
|
||||
@@ -55,14 +55,8 @@ class SouthBridge : public SimObject
|
||||
X86ISA::I82094AA * ioApic;
|
||||
|
||||
public:
|
||||
typedef SouthBridgeParams Params;
|
||||
PARAMS(SouthBridge);
|
||||
SouthBridge(const Params &p);
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
};
|
||||
|
||||
#endif //__DEV_X86_SOUTH_BRIDGE_HH__
|
||||
|
||||
@@ -54,13 +54,7 @@ class Speaker : public BasicPioDevice
|
||||
I8254 * timer;
|
||||
|
||||
public:
|
||||
typedef PcSpeakerParams Params;
|
||||
|
||||
const Params &
|
||||
params() const
|
||||
{
|
||||
return dynamic_cast<const Params &>(_params);
|
||||
}
|
||||
PARAMS(PcSpeaker);
|
||||
|
||||
Speaker(const Params &p) : BasicPioDevice(p, 1),
|
||||
latency(p.pio_latency), controlVal(0), timer(p.i8254)
|
||||
|
||||
Reference in New Issue
Block a user