class PciConfig
Defined at line 36 of file ../../zircon/kernel/dev/pcie/include/dev/pci_config.h
PciConfig supplies the factory for creating the appropriate pci config
object based on the address space of the pci device.
Public Members
static PciReg kVendorId
static PciReg kDeviceId
static PciReg kCommand
static PciReg kStatus
static PciReg kRevisionId
static PciReg kProgramInterface
static PciReg kSubClass
static PciReg kBaseClass
static PciReg kCacheLineSize
static PciReg kLatencyTimer
static PciReg kHeaderType
static PciReg kBist
static PciReg kCardbusCisPtr
static PciReg kSubsystemVendorId
static PciReg kSubsystemId
static PciReg kExpansionRomAddress
static PciReg kCapabilitiesPtr
static PciReg kInterruptLine
static PciReg kInterruptPin
static PciReg kMinGrant
static PciReg kMaxLatency
static const uint8_t kStdCfgEnd
static PciReg kPrimaryBusId
static PciReg kSecondaryBusId
static PciReg kSubordinateBusId
static PciReg kSecondaryLatencyTimer
static PciReg kIoBase
static PciReg kIoLimit
static PciReg kSecondaryStatus
static PciReg kMemoryBase
static PciReg kMemoryLimit
static PciReg kPrefetchableMemoryBase
static PciReg kPrefetchableMemoryLimit
static PciReg kPrefetchableMemoryBaseUpper
static PciReg kPrefetchableMemoryLimitUpper
static PciReg kIoBaseUpper
static PciReg kIoLimitUpper
static PciReg kBridgeExpansionRomAddress
static PciReg kBridgeControl
Protected Members
PciAddrSpace addr_space_
Public Methods
PciReg32 kBAR (uint bar)
0x10 is the address of the first BAR in config space
BAR rather than BaseAddress for space / sanity considerations
Defined at line 54 of file ../../zircon/kernel/dev/pcie/include/dev/pci_config.h
uintptr_t base ()
Defined at line 105 of file ../../zircon/kernel/dev/pcie/include/dev/pci_config.h
PciAddrSpace addr_space ()
Defined at line 106 of file ../../zircon/kernel/dev/pcie/include/dev/pci_config.h
fbl::RefPtr<PciConfig> Create (uintptr_t base, PciAddrSpace addr_type)
Create a Pci Configuration object of the appropriate type.
Parameters
Returns
a pointer to a new PciConfig instance on success, nullptr on failure.
Defined at line 165 of file ../../zircon/kernel/dev/pcie/pci_config.cc
void DumpConfig (uint16_t len)
Virtuals
Defined at line 184 of file ../../zircon/kernel/dev/pcie/pci_config.cc
uint8_t Read (const PciReg8 addr)
uint16_t Read (const PciReg16 addr)
uint32_t Read (const PciReg32 addr)
void Write (const PciReg8 addr, uint8_t val)
void Write (const PciReg16 addr, uint16_t val)
void Write (const PciReg32 addr, uint32_t val)
void ~PciConfig ()
Defined at line 117 of file ../../zircon/kernel/dev/pcie/include/dev/pci_config.h
Protected Methods
void PciConfig (uintptr_t base, PciAddrSpace addr_space)
Defined at line 120 of file ../../zircon/kernel/dev/pcie/include/dev/pci_config.h
MMIO_PTR uint8_t volatile * mmio_base ()
Defined at line 122 of file ../../zircon/kernel/dev/pcie/include/dev/pci_config.h
uintptr_t pio_base ()
Defined at line 127 of file ../../zircon/kernel/dev/pcie/include/dev/pci_config.h