PROTOCOLS
BootupWatcher
Defined in fuchsia.driver.development/development.fidl
Interface for watching when bootup is complete, in which there are no more bind and driver start activity.
WaitForBootup
Request
<EMPTY>
Response
<EMPTY>
CompositeInfoIterator
Defined in fuchsia.driver.development/iterators.fidl
Used to page through a CompositeList.
GetNext
Returns up to 100 entries at a time. Returns empty when no more composites are left.
Request
<EMPTY>
Response
Name | Type |
---|---|
composites |
vector<CompositeNodeInfo>
|
CompositeNodeSpecIterator
Defined in fuchsia.driver.development/iterators.fidl
GetNext
Returns empty when no more node groups are left.
Request
<EMPTY>
Response
Name | Type |
---|---|
specs |
vector<fuchsia.driver.framework/CompositeInfo>
|
DriverInfoIterator
Defined in fuchsia.driver.development/iterators.fidl
GetNext
Returns empty when no more entries left.
Request
<EMPTY>
Response
Name | Type |
---|---|
drivers |
vector<fuchsia.driver.framework/DriverInfo>
|
Manager
Defined in fuchsia.driver.development/development.fidl
Interface for the driver development manager. This interface should only be used for development and disabled in release builds.
AddTestNode
Adds test node under the root node.
Request
Name | Type |
---|---|
args |
TestNodeAddArgs
|
Response
Name | Type |
---|---|
payload |
Manager_AddTestNode_Result
|
BindAllUnboundNodes
Attempts to bind all unbound nodes in the topology. Returns new successful binds.
Request
<EMPTY>
Response
Name | Type |
---|---|
payload |
Manager_BindAllUnboundNodes_Result
|
DisableDriver
Disables the driver with the given driver component url. Disabled drivers will not be considered for matching to nodes. If a |package_hash| is provided, only that specific version of the driver package will be disabled. Otherwise this applies to all existing versions of a driver with the given url. Returns an error ZX_ERR_NOT_FOUND if no drivers were affected.
Request
Name | Type |
---|---|
driver_url |
fuchsia.url/Url
|
package_hash |
string:64?
|
Response
Name | Type |
---|---|
payload |
Manager_DisableDriver_Result
|
EnableDriver
Enables the driver with the given driver component url. This is only meant to revert a |DisableDriver| action. Returns an error ZX_ERR_NOT_FOUND if no drivers were affected.
Request
Name | Type |
---|---|
driver_url |
fuchsia.url/Url
|
package_hash |
string:64?
|
Response
Name | Type |
---|---|
payload |
Manager_EnableDriver_Result
|
GetCompositeInfo
Returns the list of composites in the system. This includes composites that are not yet assembled and added into the node topology.
Request
Name | Type |
---|---|
iterator |
server_end:CompositeInfoIterator
|
GetCompositeNodeSpecs
Returns a list of all composite node specs that are known to the system. If a |name_filter| is provided, the returned list will only include 1 spec, the one with that exact name.
|iterator| is closed with following epitaphs on error: ZX_ERR_NOT_FOUND indicates that there are no specs or if a |name_filter| is provided, that there are no specs with that name.
Request
Name | Type |
---|---|
name_filter |
string?
|
iterator |
server_end:CompositeNodeSpecIterator
|
GetDriverInfo
Returns a list of all drivers that are known to the system. If a |driver_filter| is provided, the returned list will be filtered to only include drivers specified in the filter.
|iterator| is closed with following epitaphs on error: ZX_ERR_NOT_FOUND indicates that there is no driver matching the given path for at least one driver in |driver_filter|. ZX_ERR_BUFFER_TOO_SMALL indicates that the driver's bind program is longer than the maximum number of instructions (BIND_PROGRAM_INSTRUCTIONS_MAX).
Request
Name | Type |
---|---|
driver_filter |
vector<string>
|
iterator |
server_end:DriverInfoIterator
|
GetNodeInfo
Returns the list of nodes that are running on the system.
If a |node_filter| is provided, the returned list will be filtered to only include nodes specified in the filter. If |exact_match| is true, then the filter must exactly match a node's topological path; otherwise, it performs a substring match. The list will be empty if no nodes match the filter.
|iterator| is closed with following epitaphs on error: ZX_ERR_BAD_PATH indicates that the given path is not valid. ZX_ERR_BUFFER_TOO_SMALL indicates either that the given path is too long, or that the node has more than the maximum number of properties (PROPERTIES_MAX).
Request
Name | Type |
---|---|
node_filter |
vector<string>
|
iterator |
server_end:NodeInfoIterator
|
exact_match |
bool
|
RemoveTestNode
Removes the test node. The node is removed asynchronously and is not guaranteed to be removed by the time this returns.
Request
Name | Type |
---|---|
name |
string:1024
|
Response
Name | Type |
---|---|
payload |
Manager_RemoveTestNode_Result
|
RestartDriverHosts
Restarts all driver hosts containing the driver specified by the driver_url
,
and returns the number of driver hosts that were restarted.
The |rematch_flags| will be used to decide for which restarting nodes the existing driver
should be bound vs. for which ones the matching process should be performed again.
Request
Name | Type |
---|---|
driver_url |
fuchsia.url/Url
|
rematch_flags |
RestartRematchFlags
|
Response
Name | Type |
---|---|
payload |
Manager_RestartDriverHosts_Result
|
WaitForBootup
Waits for bootup to complete.
Request
<EMPTY>
Response
<EMPTY>
NodeInfoIterator
Defined in fuchsia.driver.development/iterators.fidl
GetNext
Returns empty when no more entries left.
Request
<EMPTY>
Response
Name | Type |
---|---|
nodes |
vector<NodeInfo>
|
STRUCTS
Manager_AddTestNode_Response
Defined in fuchsia.driver.development/development.fidl
<EMPTY>
Manager_BindAllUnboundNodes_Response
Defined in fuchsia.driver.development/development.fidl
Field | Type | Description | Default |
---|---|---|---|
binding_result |
vector<NodeBindingInfo>:10
|
List of new bindings that happened as a result of this. |
No default |
Manager_DisableDriver_Response
Defined in fuchsia.driver.development/development.fidl
<EMPTY>
Manager_EnableDriver_Response
Defined in fuchsia.driver.development/development.fidl
<EMPTY>
Manager_RemoveTestNode_Response
Defined in fuchsia.driver.development/development.fidl
<EMPTY>
Manager_RestartDriverHosts_Response
Defined in fuchsia.driver.development/development.fidl
Field | Type | Description | Default |
---|---|---|---|
count |
uint32
|
No default |
TABLES
CompositeNodeInfo
Defined in fuchsia.driver.development/types.fidl
Contains information for a composite node.
Ordinal | Field | Type | Description |
---|---|---|---|
1 |
parent_topological_paths |
vector<string?>
|
The topological paths of the parent nodes of this composite, ordered by index. |
2 |
topological_path |
string
|
The topological path of the created composite node. Empty if not created. |
3 |
composite |
CompositeInfo
|
NodeBindingInfo
Defined in fuchsia.driver.development/types.fidl
Information about a node binding to either a driver or a composite.
Ordinal | Field | Type | Description |
---|---|---|---|
1 |
node_name |
string:1024
|
Full topological name of the node. |
2 |
driver_url |
fuchsia.url/Url
|
This is the component url for the driver that bound to the node. If this is present, then |composite_parents| must not be. |
3 |
composite_parents |
vector<fuchsia.driver.framework/CompositeParent>
|
The composite parents that this node binded to. If this is present, then |driver_url| must not be. |
NodeInfo
Defined in fuchsia.driver.development/types.fidl
Ordinal | Field | Type | Description |
---|---|---|---|
1 |
id |
uint64
|
Unique ID identifying the node. |
2 |
parent_ids |
vector<uint64>
|
List of ids representing parents. If more than one, this is a composite node. |
3 |
child_ids |
vector<uint64>
|
List of ids representing children. |
4 |
driver_host_koid |
zx/Koid
|
The process KOID of the driver host the driver resides within. |
5 |
bound_driver_url |
fuchsia.url/Url
|
URL to the driver component manifest |
7 |
moniker |
string:1024
|
The collection-relative moniker of the node. Added: 18
|
8 |
node_property_list |
vector<fuchsia.driver.framework/NodeProperty>:64
|
Properties of the node. Added: 18
|
9 |
offer_list |
vector<fuchsia.component.decl/Offer>
|
Component offers to the node. Added: 18
|
10 |
quarantined |
bool
|
Whether the node is in a quarantined state. That is, the |bound_driver_url| has failed to start, and the node is no longer running its driver instance. Added: 25
|
11 |
bus_topology |
vector<fuchsia.driver.framework/BusInfo>:20
|
Information about the node's bus topology. Added: NEXT
|
TestNodeAddArgs
Defined in fuchsia.driver.development/types.fidl
Ordinal | Field | Type | Description |
---|---|---|---|
1 |
name |
string:1024
|
Name of the node. |
2 |
properties |
vector<fuchsia.driver.framework/NodeProperty>:64
|
Properties of the node. |
UNIONS
CompositeInfo strict
Defined in fuchsia.driver.development/types.fidl
Contains information for a composite.
Ordinal | Variant | Type | Description |
---|---|---|---|
2 |
composite |
fuchsia.driver.framework/CompositeInfo
|
Manager_AddTestNode_Result strict
Defined in fuchsia.driver.development/development.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
Manager_AddTestNode_Response
|
|
2 |
err |
fuchsia.driver.framework/NodeError
|
|
3 |
framework_err |
internal
|
Manager_BindAllUnboundNodes_Result strict
Defined in fuchsia.driver.development/development.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
Manager_BindAllUnboundNodes_Response
|
|
2 |
err |
zx/Status
|
|
3 |
framework_err |
internal
|
Manager_DisableDriver_Result strict
Defined in fuchsia.driver.development/development.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
Manager_DisableDriver_Response
|
|
2 |
err |
zx/Status
|
|
3 |
framework_err |
internal
|
Manager_EnableDriver_Result strict
Defined in fuchsia.driver.development/development.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
Manager_EnableDriver_Response
|
|
2 |
err |
zx/Status
|
|
3 |
framework_err |
internal
|
Manager_RemoveTestNode_Result strict
Defined in fuchsia.driver.development/development.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
Manager_RemoveTestNode_Response
|
|
2 |
err |
zx/Status
|
|
3 |
framework_err |
internal
|
Manager_RestartDriverHosts_Result strict
Defined in fuchsia.driver.development/development.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
Manager_RestartDriverHosts_Response
|
|
2 |
err |
zx/Status
|
|
3 |
framework_err |
internal
|
BITS
RestartRematchFlags flexible
Type: uint32
Defined in fuchsia.driver.development/types.fidl
These flags indicate when a |fuchsia.driver.index.DriverIndex::MatchDriver| call should be made for a node that is restarting in order to find a new driver, instead of reusing the driver that was previously bound to the node.
Name | Value | Description |
---|---|---|
REQUESTED |
1 | Rematch nodes that are currently bound to the requested driver. The requested driver is the driver url that the restart operation was initiated for. |
NON_REQUESTED |
2 | Rematch nodes that are currently bound to a driver other than the requested driver. These are nodes that are affected by the restart of the requested driver, for example when it is a colocated parent. |
COMPOSITE_SPEC |
8 | Rematch nodes that are created as part of a completed composite spec. |
CONSTANTS
Name | Value | Type | Description |
---|---|---|---|
BINDING_RESULT_MAX |
10
|
uint8 |
|
HASH_LENGTH |
64
|
uint8 |
|
MAX_SEGMENTS |
20
|
uint32 |
Added: NEXT
|
NODE_MONIKER_MAX |
1024
|
uint32 |