40 #ifndef __DEV_ARM_RV_HH__
41 #define __DEV_ARM_RV_HH__
45 #include "params/RealViewCtrl.hh"
46 #include "params/RealViewOsc.hh"
47 #include "params/RealViewTemperatureSensor.hh"
82 virtual uint32_t
read()
const = 0;
83 virtual void write(uint32_t value) = 0;
142 static const uint32_t CFG_CTRL_ADDR_MASK = 0x3fffffffUL;
162 return dynamic_cast<const Params *
>(
_params);
189 uint8_t
dcc, uint16_t
dev,
216 uint32_t
read()
const override;
217 void write(uint32_t freq)
override;
236 p->site, p->position, p->dcc, p->device),
242 uint32_t
read()
const override;
243 void write(uint32_t temp)
override {}
251 #endif // __DEV_ARM_RV_HH__
BitUnion32(SysLockReg) Bitfield< 15
Device(RealViewCtrl &parent, DeviceFunc func, uint8_t site, uint8_t pos, uint8_t dcc, uint16_t dev)
void serialize(CheckpointOut &cp) const override
Serialize an object.
This device implements the temperature sensor used in the RealView/Versatile Express platform...
EndBitUnion(SysLockReg) BitUnion32(CfgCtrlReg) Bitfield< 11
Tick write(PacketPtr pkt) override
All writes are simply ignored.
uint32_t flags
This register is used for smp booting.
uint32_t read() const override
This is an implementation of a programmable oscillator on the that can be configured through the Real...
void write(uint32_t temp) override
std::map< uint32_t, Device * > devices
void startup() override
startup() is the final initialization call before simulation.
Tick read(PacketPtr pkt) override
Handle a read to the device.
uint64_t Tick
Tick count type.
const Params * params() const
void unserialize(CheckpointIn &cp) override
Unserialize an object.
System * system
The system this RV device belongs to.
void registerDevice(DeviceFunc func, uint8_t site, uint8_t pos, uint8_t dcc, uint16_t dev, Device *handler)
void serialize(CheckpointOut &cp) const override
Serialize an object.
A Packet is used to encapsulate a transfer between two objects in the memory system (e...
void write(uint32_t freq) override
RealViewCtrlParams Params
virtual void write(uint32_t value)=0
virtual ~RealViewTemperatureSensor()
void unserialize(CheckpointIn &cp) override
Unserialize an object.
virtual uint32_t read() const =0
The ClockDomain provides clock to group of clocked objects bundled under the same clock domain...
std::ostream CheckpointOut
RealViewOsc(RealViewOscParams *p)
uint32_t read() const override
const SimObjectParams * _params
Cached copy of the object parameters.
uint32_t scData
This register contains the result from a system control reg access.
Abstract superclass for simulation objects.
RealViewCtrl(Params *p)
The constructor for RealView just registers itself with the MMU.
Tick clockPeriod() const
Get the clock period.
RealViewTemperatureSensor(RealViewTemperatureSensorParams *p)