pub struct AcpiGenericAddress {
pub space_id: GasAddressSpace,
pub bit_width: u8,
pub bit_offset: u8,
pub access_width: u8,
pub address: u64,
}
Expand description
GAS - Generic Address Structure
This struct represents an address in some address space - that could be main memory, port I/O, PCI configuration space, etc.
Fields§
§space_id: GasAddressSpace
What address space to access for this value
bit_width: u8
The size in bits of the data pointed to by the address
bit_offset: u8
The offset in bits of the data from the address
access_width: u8
A value representing the access size needed to read data.
The value in this register does not match to number of bytes, rather there is a mapping as follows:
- 1 = Byte access
- 2 = Word access (2 bytes)
- 3 = DWord access (4 bytes)
- 4 = QWord access (8 bytes)
The AcpiGenericAddress::ACCESS_WIDTH_*
consts can be used to reference these values.
This field is not represented by an enum because some values of space_id
could use a different system.
address: u64
The address where the data is stored
Implementations§
Source§impl AcpiGenericAddress
impl AcpiGenericAddress
Sourcepub const ACCESS_WIDTH_1_BYTE: u8 = 1u8
pub const ACCESS_WIDTH_1_BYTE: u8 = 1u8
The value of access_width
corresponding to a byte access
Sourcepub const ACCESS_WIDTH_2_BYTES: u8 = 2u8
pub const ACCESS_WIDTH_2_BYTES: u8 = 2u8
The value of access_width
corresponding to a word access (2 bytes)
Sourcepub const ACCESS_WIDTH_4_BYTES: u8 = 3u8
pub const ACCESS_WIDTH_4_BYTES: u8 = 3u8
The value of access_width
corresponding to a double word access (4 bytes)
Sourcepub const ACCESS_WIDTH_8_BYTES: u8 = 4u8
pub const ACCESS_WIDTH_8_BYTES: u8 = 4u8
The value of access_width
corresponding to a quad word access (8 bytes)
Trait Implementations§
Source§impl Clone for AcpiGenericAddress
impl Clone for AcpiGenericAddress
Source§fn clone(&self) -> AcpiGenericAddress
fn clone(&self) -> AcpiGenericAddress
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more