Go to the documentation of this file.
29 #ifndef __DEV_X86_I8259_HH__
30 #define __DEV_X86_I8259_HH__
34 #include "enums/X86I8259CascadeMode.hh"
35 #include "params/I8259.hh"
51 Enums::X86I8259CascadeMode
mode;
97 if (if_name ==
"inputs")
99 else if (if_name ==
"output")
131 #endif //__DEV_X86_I8259_HH__
void unserialize(CheckpointIn &cp) override
Unserialize an object.
void serialize(CheckpointOut &cp) const override
Serialize an object.
const PortID InvalidPortID
static const int NumLines
uint64_t Tick
Tick count type.
int16_t PortID
Port index/ID type, and a symbolic name for an invalid port id.
void raiseInterruptPin(int number)
void requestInterrupt(int line)
Tick read(PacketPtr pkt) override
Pure virtual function that the device must implement.
Tick write(PacketPtr pkt) override
Pure virtual function that the device must implement.
Port & getPort(const std::string &if_name, PortID idx=InvalidPortID) override
Get a port with a given name and index.
Ports are used to interface objects to each other.
This is exposed globally, independent of the ISA.
std::vector< IntSinkPin< I8259 > * > inputs
void signalInterrupt(int line)
Port & getPort(const std::string &if_name, PortID idx=InvalidPortID) override
Get a port with a given name and index.
const SimObjectParams * _params
Cached copy of the object parameters.
std::vector< IntSourcePin< I8259 > * > output
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
const Params * params() const
void lowerInterruptPin(int number)
Enums::X86I8259CascadeMode mode
std::ostream CheckpointOut
void init() override
init() is called after all C++ SimObjects have been created and all ports are connected.
Generated on Wed Sep 30 2020 14:02:12 for gem5 by doxygen 1.8.17