class Bus
Defined at line 74 of file ../../src/devices/pci/drivers/pci/bus.h
Forward declaration of Bus to avoid recursive header inclusion between
bus.h and root.h
Public Methods
zx_status_t UnlinkDevice (pci::Device * device)
Defined at line 22 of file ../../src/devices/pci/drivers/pci/bus_device_interface.cc
zx_status_t AllocateMsi (uint32_tcount,zx::msi *msi,msi_allocation_info_t *out_info)
Defined at line 28 of file ../../src/devices/pci/drivers/pci/bus_device_interface.cc
zx_status_t GetMsiHandle (const zx::msi &allocation,uint32_toptions,uint16_tmsi_id,const zx::vmo &cfg_vmo,uint64_tcfg_offset,zx::interrupt *out_interrupt)
Defined at line 33 of file ../../src/devices/pci/drivers/pci/bus_device_interface.cc
zx_status_t GetBti (const pci::Device *device,uint32_tindex,zx::bti *bti)
Defined at line 56 of file ../../src/devices/pci/drivers/pci/bus_device_interface.cc
void Bus (zx_device_t *parent,const pciroot_protocol_t *pciroot,pci_platform_info_tinfo,std::optional<fdf::MmioBuffer>ecam)
Defined at line 79 of file ../../src/devices/pci/drivers/pci/bus.h
zx_status_t Create (zx_device_t * parent)
void ~Bus ()
Defined at line 410 of file ../../src/devices/pci/drivers/pci/bus.cc
zx::result<fdf::MmioBuffer> MapConfigRegion (zx::vmo cam_vmo)
Map an ecam VMO for Bus and Config use.
Defined at line 140 of file ../../src/devices/pci/drivers/pci/bus.cc
zx_status_t Initialize ()
Defined at line 84 of file ../../src/devices/pci/drivers/pci/bus.cc
zx_status_t LinkDevice (fbl::RefPtr<pci::Device> device)
Bus Device Interface implementation
Defined at line 15 of file ../../src/devices/pci/drivers/pci/bus_device_interface.cc
uint16_t GetSegmentGroup ()
Defined at line 94 of file ../../src/devices/pci/drivers/pci/bus_device_interface.cc
zx_status_t AddToSharedIrqList (pci::Device *device,uint32_tvector,zx::unowned_interruptirq_handle)
Defined at line 64 of file ../../src/devices/pci/drivers/pci/bus_device_interface.cc
zx_status_t RemoveFromSharedIrqList (pci::Device * device, uint32_t vector)
Defined at line 96 of file ../../src/devices/pci/drivers/pci/bus_device_interface.cc
void GetDevices (GetDevicesCompleter::Sync & completer)
Defined at line 29 of file ../../src/devices/pci/drivers/pci/device_service.cc
void DdkRelease ()
All methods related to the fuchsia.hardware.pci service and the DDK.
Defined at line 108 of file ../../src/devices/pci/drivers/pci/bus.h
void GetHostBridgeInfo (GetHostBridgeInfoCompleter::Sync & completer)
Defined at line 111 of file ../../src/devices/pci/drivers/pci/device_service.cc
void ReadBar (ReadBarRequestView request, ReadBarCompleter::Sync & completer)
Defined at line 121 of file ../../src/devices/pci/drivers/pci/device_service.cc
Protected Methods
fbl::Mutex * devices_lock ()
These are used by the derived TestBus class.
Defined at line 115 of file ../../src/devices/pci/drivers/pci/bus.h
pci::DeviceTree & devices ()
Defined at line 116 of file ../../src/devices/pci/drivers/pci/bus.h
SharedIrqMap & shared_irqs ()
Defined at line 117 of file ../../src/devices/pci/drivers/pci/bus.h
LegacyIrqs & legacy_irqs ()
Defined at line 118 of file ../../src/devices/pci/drivers/pci/bus.h
const PciFidl::BoardConfiguration & board_config ()
Defined at line 119 of file ../../src/devices/pci/drivers/pci/bus.h
void HandleLegacyIrq (async_dispatcher_t *dispatcher,async::Irq *irq,zx_status_tstatus,const zx_packet_interrupt_t *interrupt,uint32_tvector)
Defined at line 438 of file ../../src/devices/pci/drivers/pci/bus.cc
void HandleDeviceLegacyIrqUntriggered (async_dispatcher_t *dispatcher,async::Wait *wait,zx_status_tstatus,const zx_packet_signal_t *signal,pci::Device *device)
Invoked on dispatcher_ when a device driver acknowledges its virtual interrupt.
Defined at line 419 of file ../../src/devices/pci/drivers/pci/bus.cc