class ProxyConfig
Defined at line 24 of file ../../src/devices/pci/drivers/pci/config.h
ProxyConfig is used with PCI buses that do not support MMIO config space,
or require special controller configuration before config access. Examples
of this are IO config on x64 due to needing to synchronize CF8/CFC with
ACPI, and Designware on ARM where the controller needs to be configured to
map a given device's configuration space in before access.
For proxy configuration access all operations are passed to the pciroot
protocol implementation hosted in the same devhost as the pci bus driver.
Public Methods
zx::result<std::unique_ptr<Config>> Create (pci_bdf_t bdf, ddk::PcirootProtocolClient * proto)
Proxy Config Implementation
Defined at line 13 of file ../../src/devices/pci/drivers/pci/config.cc
uint8_t Read (PciReg8 addr)
Defined at line 19 of file ../../src/devices/pci/drivers/pci/config.cc
uint16_t Read (PciReg16 addr)
Defined at line 25 of file ../../src/devices/pci/drivers/pci/config.cc
uint32_t Read (PciReg32 addr)
Defined at line 31 of file ../../src/devices/pci/drivers/pci/config.cc
void Write (PciReg8 addr, uint8_t val)
Defined at line 37 of file ../../src/devices/pci/drivers/pci/config.cc
void Write (PciReg16 addr, uint16_t val)
Defined at line 41 of file ../../src/devices/pci/drivers/pci/config.cc
void Write (PciReg32 addr, uint32_t val)
Defined at line 45 of file ../../src/devices/pci/drivers/pci/config.cc
const char * type ()
Defined at line 49 of file ../../src/devices/pci/drivers/pci/config.cc