gem5  v22.1.0.0
Public Member Functions | Private Attributes | List of all members
gem5::Uart8250::Registers::BankedRegister Class Reference

#include <uart8250.hh>

Inheritance diagram for gem5::Uart8250::Registers::BankedRegister:
gem5::Uart8250::Registers::PairedRegister

Public Member Functions

 BankedRegister (RegisterBase &reg1, RegisterBase &reg2)
 
void select (bool second)
 
const std::string & name () const override
 
void read (void *buf) override
 
void read (void *buf, off_t offset, size_t bytes) override
 
void write (const void *buf) override
 
void write (const void *buf, off_t offset, size_t bytes) override
 
- Public Member Functions inherited from gem5::Uart8250::Registers::PairedRegister
 PairedRegister (RegisterBase &reg1, RegisterBase &reg2)
 
void serialize (std::ostream &os) const override
 
bool unserialize (const std::string &s) override
 

Private Attributes

RegisterBase * selected = nullptr
 

Additional Inherited Members

- Protected Attributes inherited from gem5::Uart8250::Registers::PairedRegister
RegisterBase & _reg1
 
RegisterBase & _reg2
 

Detailed Description

Definition at line 118 of file uart8250.hh.

Constructor & Destructor Documentation

◆ BankedRegister()

gem5::Uart8250::Registers::BankedRegister::BankedRegister ( RegisterBase &  reg1,
RegisterBase &  reg2 
)
inline

Definition at line 124 of file uart8250.hh.

Member Function Documentation

◆ name()

const std::string& gem5::Uart8250::Registers::BankedRegister::name ( ) const
inlineoverride

Definition at line 131 of file uart8250.hh.

References selected.

◆ read() [1/2]

void gem5::Uart8250::Registers::BankedRegister::read ( void *  buf)
inlineoverride

Definition at line 136 of file uart8250.hh.

References selected.

◆ read() [2/2]

void gem5::Uart8250::Registers::BankedRegister::read ( void *  buf,
off_t  offset,
size_t  bytes 
)
inlineoverride

Definition at line 138 of file uart8250.hh.

References gem5::ArmISA::offset, and selected.

◆ select()

void gem5::Uart8250::Registers::BankedRegister::select ( bool  second)
inline

◆ write() [1/2]

void gem5::Uart8250::Registers::BankedRegister::write ( const void *  buf)
inlineoverride

Definition at line 142 of file uart8250.hh.

References selected.

◆ write() [2/2]

void gem5::Uart8250::Registers::BankedRegister::write ( const void *  buf,
off_t  offset,
size_t  bytes 
)
inlineoverride

Definition at line 144 of file uart8250.hh.

References gem5::ArmISA::offset, and selected.

Member Data Documentation

◆ selected

RegisterBase* gem5::Uart8250::Registers::BankedRegister::selected = nullptr
private

Definition at line 121 of file uart8250.hh.

Referenced by name(), read(), select(), and write().


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

Generated on Wed Dec 21 2022 10:23:21 for gem5 by doxygen 1.9.1