Go to the documentation of this file.
29 #ifndef __DEV_MC146818_HH__
30 #define __DEV_MC146818_HH__
43 warn(
"No RTC event handler defined.\n");
113 void setTime(
const struct tm time);
131 static inline bool rega_dv_disabled(
const RtcRegA &
reg);
152 bool bcd,
Tick frequency);
182 #endif // __DEV_MC146818_HH__
void unserialize(const std::string &base, CheckpointIn &cp)
Reconstruct the state of this object from a checkpoint.
Bitfield< 6, 4 > dv
1 = date and time update in progress
Bitfield< 0 > dse
0 = 12 hours, 1 = 24 hours
void scheduleIntr()
Schedule the RTC periodic interrupt.
const char * description() const
Event description.
uint64_t Tick
Tick count type.
Bitfield< 6 > pie
stop clock updates
RtcRegB stat_regB
RTC status register B.
RTCTickEvent tickEvent
RTC tick event.
BitUnion8(RtcRegA) Bitfield< 7 > uip
void serialize(const std::string &base, CheckpointOut &cp) const
Serialize this object to the given output stream.
Event for RTC periodic interrupt.
Bitfield< 2 > dm
1 = output sqare wave at SQW pin
uint8_t readData(const uint8_t addr)
RTC read data.
RTCEvent(MC146818 *_parent, Tick i)
Event for RTC periodic interrupt.
virtual void process()
Event process to occur at interrupt.
RTCTickEvent(MC146818 *_parent)
These are variables that are set based on the simulator frequency.
Real-Time Clock (MC146818)
virtual const char * description() const
Event description.
void process()
Event process to occur at interrupt.
Bitfield< 5 > aie
1 = enable periodic clock interrupt
EndBitUnion(RtcRegA) static inline bool rega_dv_disabled(const RtcRegA ®)
Is the DV field in regA set to disabled?
void writeData(const uint8_t addr, const uint8_t data)
RTC write data.
MC146818(EventManager *em, const std::string &name, const struct tm time, bool bcd, Tick frequency)
const std::string & name() const
Bitfield< 1 > format24h
0 = BCD, 1 = Binary coded time
Bitfield< 4 > uie
1 = enable alarm interrupt
std::ostream CheckpointOut
Bitfield< 3, 0 > rs
Divider configuration.
Bitfield< 3 > sqwe
1 = enable update-ended interrupt
void setTime(const struct tm time)
RTCEvent event
RTC periodic interrupt event.
virtual void handleEvent()
virtual void startup()
Start ticking.
Generated on Wed Sep 30 2020 14:02:11 for gem5 by doxygen 1.8.17