Programmable Interval Timer (Intel 8254)
More...
#include <intel_8254_timer.hh>
|
virtual | ~Intel8254Timer () |
|
| Intel8254Timer (EventManager *em, const std::string &name) |
|
void | writeControl (const CtrlReg data) |
| Write control word.
|
|
uint8_t | readCounter (unsigned int num) |
|
void | writeCounter (unsigned int num, const uint8_t data) |
|
bool | outputHigh (unsigned int num) |
|
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.
|
|
void | startup () |
| Start ticking.
|
|
EventQueue * | eventQueue () 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) |
|
Programmable Interval Timer (Intel 8254)
Definition at line 47 of file intel_8254_timer.hh.
◆ ModeVal
Enumerator |
---|
InitTc | |
OneShot | |
RateGen | |
SquareWave | |
SoftwareStrobe | |
HardwareStrobe | |
Definition at line 83 of file intel_8254_timer.hh.
◆ ReadWriteVal
◆ ~Intel8254Timer()
virtual gem5::Intel8254Timer::~Intel8254Timer |
( |
| ) |
|
|
inlinevirtual |
◆ Intel8254Timer()
gem5::Intel8254Timer::Intel8254Timer |
( |
EventManager * | em, |
|
|
const std::string & | name ) |
◆ BitUnion8()
gem5::Intel8254Timer::BitUnion8 |
( |
CtrlReg | | ) |
|
|
protected |
◆ counterInterrupt()
virtual void gem5::Intel8254Timer::counterInterrupt |
( |
unsigned int | num | ) |
|
|
inlineprotectedvirtual |
◆ EndBitUnion()
gem5::Intel8254Timer::EndBitUnion |
( |
CtrlReg | | ) |
|
|
protected |
◆ EndSubBitUnion()
gem5::Intel8254Timer::EndSubBitUnion |
( |
select | | ) |
|
|
inlineprotected |
◆ name()
const std::string & gem5::Intel8254Timer::name |
( |
| ) |
const |
|
inlineprotected |
◆ outputHigh()
bool gem5::Intel8254Timer::outputHigh |
( |
unsigned int | num | ) |
|
|
inline |
◆ readCounter()
uint8_t gem5::Intel8254Timer::readCounter |
( |
unsigned int | num | ) |
|
|
inline |
◆ serialize()
void gem5::Intel8254Timer::serialize |
( |
const std::string & | base, |
|
|
CheckpointOut & | cp ) const |
◆ startup()
void gem5::Intel8254Timer::startup |
( |
| ) |
|
◆ SubBitUnion()
gem5::Intel8254Timer::SubBitUnion |
( |
select | , |
|
|
3 | , |
|
|
1 | ) |
|
protected |
◆ unserialize()
void gem5::Intel8254Timer::unserialize |
( |
const std::string & | base, |
|
|
CheckpointIn & | cp ) |
◆ writeControl()
void gem5::Intel8254Timer::writeControl |
( |
const CtrlReg | data | ) |
|
◆ writeCounter()
void gem5::Intel8254Timer::writeCounter |
( |
unsigned int | num, |
|
|
const uint8_t | data ) |
|
inline |
◆ _name
std::string gem5::Intel8254Timer::_name |
|
protected |
◆ bcd
Bitfield<0> gem5::Intel8254Timer::bcd |
|
protected |
◆ cnt0
Bitfield<1> gem5::Intel8254Timer::cnt0 |
|
protected |
◆ cnt1
Bitfield<2> gem5::Intel8254Timer::cnt1 |
|
protected |
◆ count
Bitfield<5> gem5::Intel8254Timer::count |
|
protected |
◆ counters
std::array<Counter, 3> gem5::Intel8254Timer::counters |
|
protected |
◆ mode
Bitfield<3, 1> gem5::Intel8254Timer::mode |
|
protected |
◆ rw
Bitfield<5, 4> gem5::Intel8254Timer::rw |
|
protected |
◆ sel
gem5::Intel8254Timer::sel |
|
protected |
The documentation for this class was generated from the following files: