gem5 v25.0.0.1
Loading...
Searching...
No Matches
gem5::X86ISA::I8254::X86Intel8254Timer Class Reference

#include <i8254.hh>

Inheritance diagram for gem5::X86ISA::I8254::X86Intel8254Timer:
gem5::Intel8254Timer gem5::EventManager

Public Member Functions

 X86Intel8254Timer (const std::string &name, I8254 *_parent)
Public Member Functions inherited from gem5::Intel8254Timer
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.
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)

Protected Member Functions

void counterInterrupt (unsigned int num)
Protected Member Functions inherited from gem5::Intel8254Timer
 BitUnion8 (CtrlReg) Bitfield< 7
 EndBitUnion (CtrlReg) BitUnion8(ReadBackCommandVal) Bitfield< 4 > status
 SubBitUnion (select, 3, 1) Bitfield< 3 > cnt2
 EndSubBitUnion (select) EndBitUnion(ReadBackCommandVal) enum SelectVal
const std::string & name () const

Protected Attributes

I8254parent
Protected Attributes inherited from gem5::Intel8254Timer
 sel
Bitfield< 5, 4 > rw
Bitfield< 3, 1 > mode
Bitfield< 0 > bcd
Bitfield< 5 > count
Bitfield< 2 > cnt1
Bitfield< 1 > cnt0
std::string _name
std::array< Counter, 3 > counters
 PIT has three seperate counters.
Protected Attributes inherited from gem5::EventManager
EventQueueeventq
 A pointer to this object's event queue.

Additional Inherited Members

Protected Types inherited from gem5::Intel8254Timer
enum  ReadWriteVal { LatchCommand , LsbOnly , MsbOnly , TwoPhase }
enum  ModeVal {
  InitTc , OneShot , RateGen , SquareWave ,
  SoftwareStrobe , HardwareStrobe
}

Detailed Description

Definition at line 47 of file i8254.hh.

Constructor & Destructor Documentation

◆ X86Intel8254Timer()

gem5::X86ISA::I8254::X86Intel8254Timer::X86Intel8254Timer ( const std::string & name,
I8254 * _parent )
inline

Member Function Documentation

◆ counterInterrupt()

void gem5::X86ISA::I8254::X86Intel8254Timer::counterInterrupt ( unsigned int num)
inlineprotectedvirtual

Reimplemented from gem5::Intel8254Timer.

Definition at line 53 of file i8254.hh.

References parent.

Member Data Documentation

◆ parent

I8254* gem5::X86ISA::I8254::X86Intel8254Timer::parent
protected

Definition at line 50 of file i8254.hh.

Referenced by counterInterrupt(), and X86Intel8254Timer().


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

Generated on Sat Oct 18 2025 08:07:52 for gem5 by doxygen 1.14.0