|
gem5
v21.0.1.0
|
Classes | |
| struct | BMIRegs |
| Registers used for bus master interface. More... | |
Public Member Functions | |
| const std::string | name () |
| void | select (bool select_device_1) |
| void | accessCommand (Addr offset, int size, uint8_t *data, bool read) |
| void | accessControl (Addr offset, int size, uint8_t *data, bool read) |
| void | accessBMI (Addr offset, int size, uint8_t *data, bool read) |
| Channel (std::string newName) | |
| void | serialize (const std::string &base, std::ostream &os) const |
| void | unserialize (const std::string &base, CheckpointIn &cp) |
Public Attributes | |
| std::string | _name |
| struct IdeController::Channel::BMIRegs | bmiRegs |
| IdeDisk * | device0 = nullptr |
| IDE disks connected to this controller For more details about device0 and device1 see: https://en.wikipedia.org/wiki/Parallel_ATA #Multiple_devices_on_a_cable. More... | |
| IdeDisk * | device1 = nullptr |
| IdeDisk * | selected = nullptr |
| Currently selected disk. More... | |
| bool | selectBit = false |
Definition at line 103 of file ide_ctrl.hh.
| IdeController::Channel::Channel | ( | std::string | newName | ) |
Definition at line 65 of file ide_ctrl.cc.
References bmiRegs, IdeController::Channel::BMIRegs::reset(), and IdeController::Channel::BMIRegs::status.
| void IdeController::Channel::accessBMI | ( | Addr | offset, |
| int | size, | ||
| uint8_t * | data, | ||
| bool | read | ||
| ) |
Definition at line 231 of file ide_ctrl.cc.
References BMICommand, BMIDescTablePtr, BMIStatus, data, DPRINTF, htole(), letoh(), ArmISA::offset, panic, and IdeController::read().
Referenced by IdeController::dispatchAccess().
| void IdeController::Channel::accessCommand | ( | Addr | offset, |
| int | size, | ||
| uint8_t * | data, | ||
| bool | read | ||
| ) |
Definition at line 197 of file ide_ctrl.cc.
References data, ArmISA::offset, IdeController::read(), IdeDisk::readCommand(), select(), selected, and IdeDisk::writeCommand().
Referenced by IdeController::dispatchAccess().
| void IdeController::Channel::accessControl | ( | Addr | offset, |
| int | size, | ||
| uint8_t * | data, | ||
| bool | read | ||
| ) |
Definition at line 217 of file ide_ctrl.cc.
References data, ArmISA::offset, and IdeController::read().
Referenced by IdeController::dispatchAccess().
|
inline |
Definition at line 108 of file ide_ctrl.hh.
References _name.
|
inline |
Definition at line 143 of file ide_ctrl.hh.
References device0, device1, selectBit, and selected.
Referenced by accessCommand(), and IdeController::IdeController().
| void IdeController::Channel::serialize | ( | const std::string & | base, |
| std::ostream & | os | ||
| ) | const |
Definition at line 407 of file ide_ctrl.cc.
References X86ISA::base, paramOut(), and ArmISA::status.
Referenced by IdeController::serialize().
| void IdeController::Channel::unserialize | ( | const std::string & | base, |
| CheckpointIn & | cp | ||
| ) |
Definition at line 435 of file ide_ctrl.cc.
References X86ISA::base, paramIn(), and ArmISA::status.
Referenced by IdeController::unserialize().
| std::string IdeController::Channel::_name |
Definition at line 105 of file ide_ctrl.hh.
Referenced by name().
| struct IdeController::Channel::BMIRegs IdeController::Channel::bmiRegs |
Referenced by Channel(), IdeController::intrPost(), and IdeController::setDmaComplete().
| IdeDisk* IdeController::Channel::device0 = nullptr |
IDE disks connected to this controller For more details about device0 and device1 see: https://en.wikipedia.org/wiki/Parallel_ATA #Multiple_devices_on_a_cable.
Definition at line 135 of file ide_ctrl.hh.
Referenced by IdeController::IdeController(), select(), and IdeController::setDmaComplete().
| IdeDisk * IdeController::Channel::device1 = nullptr |
Definition at line 135 of file ide_ctrl.hh.
Referenced by IdeController::IdeController(), select(), and IdeController::setDmaComplete().
| bool IdeController::Channel::selectBit = false |
Definition at line 140 of file ide_ctrl.hh.
Referenced by select().
| IdeDisk* IdeController::Channel::selected = nullptr |
Currently selected disk.
Definition at line 138 of file ide_ctrl.hh.
Referenced by accessCommand(), IdeController::isDiskSelected(), and select().