class PlatformDevice

Defined at line 29 of file ../../src/devices/bus/drivers/platform/platform-device.h

This class represents a platform device attached to the platform bus.

Instances of this class are created by PlatformBus at boot time when the board driver

calls the platform bus protocol method pbus_device_add().

Public Methods

const std::string & name ()

Defined at line 41 of file ../../src/devices/bus/drivers/platform/platform-device.h

uint32_t vid ()

Defined at line 42 of file ../../src/devices/bus/drivers/platform/platform-device.h

uint32_t pid ()

Defined at line 43 of file ../../src/devices/bus/drivers/platform/platform-device.h

uint32_t did ()

Defined at line 44 of file ../../src/devices/bus/drivers/platform/platform-device.h

uint32_t instance_id ()

Defined at line 45 of file ../../src/devices/bus/drivers/platform/platform-device.h

PlatformBus * bus ()

Defined at line 47 of file ../../src/devices/bus/drivers/platform/platform-device.h

const PlatformBus * bus ()

Defined at line 48 of file ../../src/devices/bus/drivers/platform/platform-device.h

zx::result<std::unique_ptr<PlatformDevice>> Create (fuchsia_hardware_platform_bus::Node node, PlatformBus * bus, inspect::ComponentInspector & inspector)

Creates a new PlatformDevice instance.

*flags* contains zero or more PDEV_ADD_* flags from the platform bus protocol.

Defined at line 104 of file ../../src/devices/bus/drivers/platform/platform-device.cc

bool HasInterruptVector (uint32_t vector)

Defined at line 115 of file ../../src/devices/bus/drivers/platform/platform-device.h

bool HasInterruptKoid (zx_koid_t koid)

Defined at line 116 of file ../../src/devices/bus/drivers/platform/platform-device.h

zx::event node_token ()

Defined at line 118 of file ../../src/devices/bus/drivers/platform/platform-device.h

void PlatformDevice (PlatformBus * bus, inspect::Node inspect_node, fuchsia_hardware_platform_bus::Node node)

Defined at line 128 of file ../../src/devices/bus/drivers/platform/platform-device.cc

zx::result<> CreateNode ()

Defined at line 303 of file ../../src/devices/bus/drivers/platform/platform-device.cc

zx::result<> Init ()

Defined at line 494 of file ../../src/devices/bus/drivers/platform/platform-device.cc

zx::result<Mmio> GetMmio (uint32_t index)

Defined at line 138 of file ../../src/devices/bus/drivers/platform/platform-device.cc

zx::result<zx::interrupt> GetInterrupt (uint32_t index, uint32_t flags)

Defined at line 176 of file ../../src/devices/bus/drivers/platform/platform-device.cc

zx::result<zx::bti> GetBti (uint32_t index)

Defined at line 237 of file ../../src/devices/bus/drivers/platform/platform-device.cc

zx::result<zx::resource> GetSmc (uint32_t index)

Defined at line 251 of file ../../src/devices/bus/drivers/platform/platform-device.cc

DeviceInfo GetDeviceInfo ()

Defined at line 277 of file ../../src/devices/bus/drivers/platform/platform-device.cc

BoardInfo GetBoardInfo ()

Defined at line 293 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetMmioById (GetMmioByIdRequestView request, GetMmioByIdCompleter::Sync & completer)

Platform device protocol FIDL implementation.

Defined at line 633 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetMmioByName (GetMmioByNameRequestView request, GetMmioByNameCompleter::Sync & completer)

Defined at line 649 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetInterruptById (GetInterruptByIdRequestView request, GetInterruptByIdCompleter::Sync & completer)

Defined at line 673 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetInterruptByName (GetInterruptByNameRequestView request, GetInterruptByNameCompleter::Sync & completer)

Defined at line 683 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetBtiById (GetBtiByIdRequestView request, GetBtiByIdCompleter::Sync & completer)

Defined at line 700 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetBtiByName (GetBtiByNameRequestView request, GetBtiByNameCompleter::Sync & completer)

Defined at line 710 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetSmcById (GetSmcByIdRequestView request, GetSmcByIdCompleter::Sync & completer)

Defined at line 727 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetSmcByName (GetSmcByNameRequestView request, GetSmcByNameCompleter::Sync & completer)

Defined at line 737 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetPowerConfiguration (GetPowerConfigurationCompleter::Sync & completer)

Defined at line 754 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetNodeDeviceInfo (GetNodeDeviceInfoCompleter::Sync & completer)

Defined at line 778 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetBoardInfo (GetBoardInfoCompleter::Sync & completer)

Defined at line 794 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void GetMetadata (GetMetadataRequestView request, GetMetadataCompleter::Sync & completer)

Defined at line 805 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void handle_unknown_method (fidl::UnknownMethodMetadata<fuchsia_hardware_platform_device::Device> metadata, fidl::UnknownMethodCompleter::Sync & completer)

Defined at line 815 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void RegisterController (RegisterControllerRequestView request, RegisterControllerCompleter::Sync & completer)

fuchsia.hardware.interrupt.ControllerRegistry implementation.

Defined at line 821 of file ../../src/devices/bus/drivers/platform/platform-device.cc

void handle_unknown_method (fidl::UnknownMethodMetadata<fuchsia_hardware_interrupt::ControllerRegistry> metadata, fidl::UnknownMethodCompleter::Sync & completer)

Defined at line 827 of file ../../src/devices/bus/drivers/platform/platform-device.cc

Records