gem5 v24.0.0.0
Loading...
Searching...
No Matches
gem5::RiscvRTC::RTC Class Reference

#include <rtc.hh>

Inheritance diagram for gem5::RiscvRTC::RTC:
gem5::MC146818 gem5::EventManager

Public Types

using IntSource = IntSourcePin<RTC>
 

Public Member Functions

 RTC (EventManager *em, const std::string &n, const struct tm time, bool bcd, Tick frequency, int int_pin_count)
 
- Public Member Functions inherited from gem5::MC146818
 MC146818 (EventManager *em, const std::string &name, const struct tm time, bool bcd, Tick frequency)
 
virtual ~MC146818 ()
 
virtual void startup ()
 Start ticking.
 
void writeData (const uint8_t addr, const uint8_t data)
 RTC write data.
 
uint8_t readData (const uint8_t addr)
 RTC read data.
 
void tickClock ()
 
void serialize (const std::string &base, CheckpointOut &cp) const
 Serialize this object to the given output stream.
 
void unserialize (const std::string &base, CheckpointIn &cp)
 Reconstruct the state of this object from a checkpoint.
 
- Public Member Functions inherited from gem5::EventManager
EventQueueeventQueue () const
 
void schedule (Event &event, Tick when)
 
void deschedule (Event &event)
 
void reschedule (Event &event, Tick when, bool always=false)
 
void schedule (Event *event, Tick when)
 
void deschedule (Event *event)
 
void reschedule (Event *event, Tick when, bool always=false)
 
void wakeupEventQueue (Tick when=(Tick) -1)
 This function is not needed by the usual gem5 event loop but may be necessary in derived EventQueues which host gem5 on other schedulers.
 
void setCurTick (Tick newVal)
 
 EventManager (EventManager &em)
 Event manger manages events in the event queue.
 
 EventManager (EventManager *em)
 
 EventManager (EventQueue *eq)
 

Public Attributes

std::vector< std::unique_ptr< IntSource > > intPin
 

Protected Member Functions

void handleEvent ()
 

Additional Inherited Members

- Protected Attributes inherited from gem5::EventManager
EventQueueeventq
 A pointer to this object's event queue.
 

Detailed Description

Definition at line 58 of file rtc.hh.

Member Typedef Documentation

◆ IntSource

Definition at line 61 of file rtc.hh.

Constructor & Destructor Documentation

◆ RTC()

gem5::RiscvRTC::RTC::RTC ( EventManager * em,
const std::string & n,
const struct tm time,
bool bcd,
Tick frequency,
int int_pin_count )

Definition at line 53 of file rtc.cc.

References gem5::csprintf(), gem5::ArmISA::i, intPin, and gem5::ArmISA::n.

Member Function Documentation

◆ handleEvent()

void gem5::RiscvRTC::RTC::handleEvent ( )
protectedvirtual

Reimplemented from gem5::MC146818.

Definition at line 64 of file rtc.cc.

Member Data Documentation

◆ intPin

std::vector<std::unique_ptr<IntSource> > gem5::RiscvRTC::RTC::intPin

Definition at line 63 of file rtc.hh.

Referenced by gem5::RiscvRTC::getPort(), and RTC().


The documentation for this class was generated from the following files:

Generated on Tue Jun 18 2024 16:24:14 for gem5 by doxygen 1.11.0