class Node

Defined at line 70 of file ../../sdk/lib/driver/devicetree/manager/node.h

Node represents the nodes in the device tree along with it's properties.

Public Methods

void Node (Node * parent, std::string_view name, devicetree::Properties properties, uint32_t id, NodeManager * manager)

Defined at line 32 of file ../../sdk/lib/driver/devicetree/manager/node.cc

void AddBindProperty (fuchsia_driver_framework::NodeProperty2 prop)

Add |prop| as a bind property of the device, when it is eventually published.

Defined at line 67 of file ../../sdk/lib/driver/devicetree/manager/node.cc

void AddMmio (fuchsia_hardware_platform_bus::Mmio mmio)

Defined at line 71 of file ../../sdk/lib/driver/devicetree/manager/node.cc

void AddBti (fuchsia_hardware_platform_bus::Bti bti)

Defined at line 79 of file ../../sdk/lib/driver/devicetree/manager/node.cc

void AddIrq (fuchsia_hardware_platform_bus::Irq irq)

Defined at line 87 of file ../../sdk/lib/driver/devicetree/manager/node.cc

zx::result<> RegisterIommu (uint32_t iommu_id, fuchsia_hardware_platform_bus::Iommu iommu)

Registers an iommu with the platform bus.

Defined at line 95 of file ../../sdk/lib/driver/devicetree/manager/node.h

void AddMetadata (fuchsia_hardware_platform_bus::Metadata metadata)

Defined at line 95 of file ../../sdk/lib/driver/devicetree/manager/node.cc

void SetDriverHost (std::string_view driver_host)

Sets the driver host that the driver that binds to this node will end up in.

Defined at line 100 of file ../../sdk/lib/driver/devicetree/manager/node.h

void AddBootMetadata (fuchsia_hardware_platform_bus::BootMetadata boot_metadata)

Defined at line 103 of file ../../sdk/lib/driver/devicetree/manager/node.cc

void AddNodeSpec (const fuchsia_driver_framework::ParentSpec2 & spec)

Defined at line 111 of file ../../sdk/lib/driver/devicetree/manager/node.cc

const std::string & name ()

Defined at line 115 of file ../../sdk/lib/driver/devicetree/manager/node.h

const std::string & fdf_name ()

Defined at line 116 of file ../../sdk/lib/driver/devicetree/manager/node.h

void AddSmc (fuchsia_hardware_platform_bus::Smc smc)

Defined at line 116 of file ../../sdk/lib/driver/devicetree/manager/node.cc

std::string_view driver_host ()

Defined at line 118 of file ../../sdk/lib/driver/devicetree/manager/node.h

const std::unordered_map<std::string_view, devicetree::PropertyValue> & properties ()

Defined at line 124 of file ../../sdk/lib/driver/devicetree/manager/node.h

void AddPowerConfig (fuchsia_hardware_power::PowerElementConfiguration config)

Defined at line 124 of file ../../sdk/lib/driver/devicetree/manager/node.cc

uint32_t GetPublishIndex ()

Returns the index of the node in the nodes publish list.

Defined at line 132 of file ../../sdk/lib/driver/devicetree/manager/node.cc

std::optional<Phandle> phandle ()

Defined at line 133 of file ../../sdk/lib/driver/devicetree/manager/node.h

zx::result<> ChangePublishOrder (uint32_t new_index)

Move this node up/down in the publish list.

Returns error if the index is out of range.

Defined at line 134 of file ../../sdk/lib/driver/devicetree/manager/node.cc

NodeID id ()

Defined at line 135 of file ../../sdk/lib/driver/devicetree/manager/node.h

RegisterType register_type ()

Defined at line 137 of file ../../sdk/lib/driver/devicetree/manager/node.h

zx::result<> Publish (fdf::WireSyncClient<fuchsia_hardware_platform_bus::PlatformBus> & pbus, fidl::SyncClient<fuchsia_driver_framework::CompositeNodeManager> & mgr, fidl::SyncClient<fuchsia_driver_framework::Node> & fdf_node)

Publish this node.

TODO(https://fxbug.dev/42059490): Switch to fdf::SyncClient when it's available.

Defined at line 138 of file ../../sdk/lib/driver/devicetree/manager/node.cc

void set_register_type (RegisterType type)

Defined at line 139 of file ../../sdk/lib/driver/devicetree/manager/node.h

ParentNode parent ()

Defined at line 284 of file ../../sdk/lib/driver/devicetree/manager/node.cc

std::vector<ChildNode> children ()

Defined at line 286 of file ../../sdk/lib/driver/devicetree/manager/node.cc

template <typename T>
typename GetPropertyReturn<T>::type GetProperty (std::string_view property_name)

Defined at line 298 of file ../../sdk/lib/driver/devicetree/manager/node.cc

zx::result<ReferenceNode> GetReferenceNode (Phandle parent)

Defined at line 280 of file ../../sdk/lib/driver/devicetree/manager/node.cc