template <>

class WireSyncClientImpl

Defined at line 678 of file fidling/gen/sdk/fidl/fuchsia.hardware.pci/fuchsia.hardware.pci/cpp/fidl/fuchsia.hardware.pci/cpp/wire_messaging.h

Methods to make a sync FIDL call directly on an unowned handle or a

const reference to a |::fidl::ClientEnd

<

::fuchsia_hardware_pci::Bus>|,

avoiding setting up a client.

Public Methods

::fidl::WireResult< ::fuchsia_hardware_pci::Bus::GetHostBridgeInfo> GetHostBridgeInfo ()

Retrieve information about the segment group and buses covered by a Bus.

Allocates 88 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_hardware_pci::Bus::GetDevices> GetDevices ()

Retrieve all Devices on the Bus.

Allocates 16 bytes of request buffer on the stack. Response is heap-allocated.

::fidl::WireResult< ::fuchsia_hardware_pci::Bus::ReadBar> ReadBar (const ::fuchsia_hardware_pci::wire::Address & device, uint8_t bar_id, uint64_t offset, uint64_t size)

Read from a Device's base address register (BAR). The BAR must be an MMIO type.

Parameters

|device|: The address of the device to read from.

|bar_id|: The ID of the BAR to read.

|offset|: The offset, in bytes, to start the read (default: 0 bytes).

|size|: The size of the read (default: 128 bytes). The max size for a

read is |READBAR_MAX_SIZE|.

Errors:

|ZX_ERR_NOT_FOUND|: |device| was not found, or |bar_id| did not exist in |device|.

|ZX_ERR_INVALID_ARGS|: |bar_id| is invalid, or offset / size combined

are invalid for the given BAR's size.

|ZX_ERR_NOT_SUPPORTED|: The BAR specified by |bar_id| is not an MMIO BAR.

Allocates 40 bytes of request buffer on the stack. Response is heap-allocated.