gem5  v21.1.0.2
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
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. More...
 
void writeData (const uint8_t addr, const uint8_t data)
 RTC write data. More...
 
uint8_t readData (const uint8_t addr)
 RTC read data. More...
 
void tickClock ()
 
void serialize (const std::string &base, CheckpointOut &cp) const
 Serialize this object to the given output stream. More...
 
void unserialize (const std::string &base, CheckpointIn &cp)
 Reconstruct the state of this object from a checkpoint. More...
 
- 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. More...
 
void setCurTick (Tick newVal)
 
 EventManager (EventManager &em)
 Event manger manages events in the event queue. More...
 
 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. More...
 

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 Sep 21 2021 12:28:04 for gem5 by doxygen 1.8.17