通訊協定
BootupWatcher
在 fuchsia.driver.development/development.fidl 中定義
啟動完成時用於觀看的介面,此介面不再繫結和驅動程式庫啟動活動。
WaitForBootup
要求
<EMPTY>
回應
<EMPTY>
CompositeInfoIterator
在 fuchsia.driver.development/iterators.fidl 中定義
用於對複合清單分頁。
GetNext
一次最多傳回 100 個項目。如果沒有剩餘複合數,則會傳回空白。
要求
<EMPTY>
回應
| 名稱 | 類型 | 
|---|---|
| composites | vector<CompositeNodeInfo> | 
CompositeNodeSpecIterator
在 fuchsia.driver.development/iterators.fidl 中定義的
GetNext
如果沒有剩餘的節點群組,則傳回空白。
要求
<EMPTY>
回應
| 名稱 | 類型 | 
|---|---|
| specs | vector<fuchsia.driver.framework/CompositeInfo> | 
DriverInfoIterator
在 fuchsia.driver.development/iterators.fidl 中定義的
GetNext
如果沒有剩餘項目,則傳回空白。
要求
<EMPTY>
回應
| 名稱 | 類型 | 
|---|---|
| drivers | vector<fuchsia.driver.framework/DriverInfo> | 
經理
在 fuchsia.driver.development/development.fidl 中定義
驅動程式庫開發管理工具的介面。這個介面僅供開發作業使用,而且在發布子版本中應停用。
AddTestNode
在根節點下新增測試節點。
要求
| 名稱 | 類型 | 
|---|---|
| args | TestNodeAddArgs | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | Manager_AddTestNode_Result | 
BindAllUnboundNodes
嘗試繫結拓撲中所有未繫結的節點。傳回新的成功繫結。
要求
<EMPTY>
回應
| 名稱 | 類型 | 
|---|---|
| payload | Manager_BindAllUnboundNodes_Result | 
DisableDriver
使用指定驅動程式庫元件網址停用驅動程式庫。系統不會將已停用的驅動程式與節點進行比對。如有提供 |package_hash|,系統只會停用該特定版本的驅動程式庫套件。否則,這項設定會套用至具有指定網址的驅動程式庫所有現有版本。如果沒有任何驅動程式受到影響,則傳回錯誤 ZX_ERR_NOT_FOUND。
要求
| 名稱 | 類型 | 
|---|---|
| driver_url | fuchsia.url/Url | 
| package_hash | string[64]? | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | Manager_DisableDriver_Result | 
EnableDriver
啟用具有指定驅動程式庫元件網址的驅動程式庫。這僅適用於還原 |DisableDriver| 動作。 如果沒有任何驅動程式受到影響,則傳回錯誤 ZX_ERR_NOT_FOUND。
要求
| 名稱 | 類型 | 
|---|---|
| driver_url | fuchsia.url/Url | 
| package_hash | string[64]? | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | Manager_EnableDriver_Result | 
GetCompositeInfo
傳回系統中的複合資料清單。這包括尚未組合且新增至節點拓撲的複合資料。
要求
| 名稱 | 類型 | 
|---|---|
| iterator | server_end<CompositeInfoIterator> | 
GetCompositeNodeSpecs
傳回系統已知的所有複合節點規格清單。如果提供 |name_filter|,傳回的清單只會包含 1 個具有該名稱的規格。
|iterator| 已關閉,並顯示發生錯誤的證詞:ZX_ERR_NOT_FOUND 表示沒有規格,若提供 |name_filter|,則沒有使用該名稱的規格。
要求
| 名稱 | 類型 | 
|---|---|
| name_filter | string? | 
| iterator | server_end<CompositeNodeSpecIterator> | 
GetDriverInfo
傳回系統已知的所有驅動程式清單。如有提供 |driver_filter|,系統會篩選傳回的清單,僅納入篩選器中指定的驅動程式。
|iterator| 已關閉,並顯示錯誤:ZX_ERR_NOT_FOUND。ZX_ERR_NOT_FOUND 表示在 |driver_filter| 中,至少有一個驅動程式庫符合指定路徑的驅動程式。ZX_ERR_BUFFER_TOO_SMALL 表示驅動程式庫的繫結程式繫結數大於指令數量上限 (BIND_PROGRAM_)。
要求
| 名稱 | 類型 | 
|---|---|
| driver_filter | vector<string> | 
| iterator | server_end<DriverInfoIterator> | 
GetNodeInfo
傳回在系統上執行的節點清單。
如果提供 |node_filter|,系統會篩選傳回的清單,僅包含篩選器中指定的節點。如果 |exact_match| 為 true,篩選器就必須與節點的拓撲路徑完全相符,否則就會執行子字串比對。如果沒有符合篩選條件的節點,清單就不會顯示任何內容。
|iterator| 已關閉,並顯示發生錯誤的證詞:ZX_ERR_BAD_PATH 表示指定路徑無效。ZX_ERR_BUFFER_TOO_SMALL 表示指定路徑過長,或節點的屬性數量超過上限 (PROPERTIES_MAX)。
要求
| 名稱 | 類型 | 
|---|---|
| node_filter | vector<string> | 
| iterator | server_end<NodeInfoIterator> | 
| exact_match | bool | 
RemoveTestNode
移除測試節點。節點會以非同步方式移除,而且不保證會在傳回時移除。
要求
| 名稱 | 類型 | 
|---|---|
| name | string[1024] | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | Manager_RemoveTestNode_Result | 
RestartDriverHosts
重新啟動包含 driver_url 指定驅動程式的所有驅動程式庫程式主機,並傳回已重新啟動的驅動程式庫主機數量。|rematch_flags| 將用來決定應繫結哪些現有驅動程式庫重新啟動節點,以及應重新執行比對程序的節點。
要求
| 名稱 | 類型 | 
|---|---|
| driver_url | fuchsia.url/Url | 
| rematch_flags | RestartRematchFlags | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | Manager_RestartDriverHosts_Result | 
WaitForBootup
等待開機完成。
要求
<EMPTY>
回應
<EMPTY>
NodeInfoIterator
在 fuchsia.driver.development/iterators.fidl 中定義的
GetNext
如果沒有剩餘項目,則傳回空白。
要求
<EMPTY>
回應
| 名稱 | 類型 | 
|---|---|
| nodes | vector<NodeInfo> | 
結構
Manager_AddTestNode_Response
在 fuchsia.driver.development/development.fidl 中定義的
<EMPTY>
Manager_BindAllUnboundNodes_Response
在 fuchsia.driver.development/development.fidl 中定義的
| 廣闊 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| binding_result | vector<NodeBindingInfo>[10] | 因此發生的新繫結清單。 | 無預設 | 
Manager_DisableDriver_Response
在 fuchsia.driver.development/development.fidl 中定義的
<EMPTY>
Manager_EnableDriver_Response
在 fuchsia.driver.development/development.fidl 中定義的
<EMPTY>
Manager_RemoveTestNode_Response
在 fuchsia.driver.development/development.fidl 中定義的
<EMPTY>
Manager_RestartDriverHosts_Response
在 fuchsia.driver.development/development.fidl 中定義的
| 廣闊 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| count | uint32 | 無預設 | 
資料表
CompositeNodeInfo
在 fuchsia.driver.development/types.fidl 中定義
包含複合節點的資訊。
| 序數 | 廣闊 | 類型 | 說明 | 
|---|---|---|---|
| 1 | parent_topological_paths | vector<string> | 這個複合元件的父項節點拓撲路徑,依索引排序。 | 
| 2 | topological_path | string | 已建立的複合式節點拓撲路徑。如未建立,則為空白。 | 
| 3 | composite | CompositeInfo | 
NodeBindingInfo
在 fuchsia.driver.development/types.fidl 中定義
連結至驅動程式庫或複合元件的節點繫結相關資訊。
| 序數 | 廣闊 | 類型 | 說明 | 
|---|---|---|---|
| 1 | node_name | string[1024] | 節點的完整拓撲名稱。 | 
| 2 | driver_url | fuchsia.url/Url | 這是繫結至節點的驅動程式庫元件網址。如有這個標記,則不得為 |natural_parents| 和 |legacy_Composite_parents|。 | 
| 3 | composite_parents | vector<fuchsia.driver.framework/CompositeParent> | 這個節點繫結的複合父項。可與 |legacy_natural_parents| 搭配使用,但不能與 |driver_url| 一起顯示。 | 
| 4 | legacy_composite_parents | vector<fuchsia.driver.legacy/CompositeParent> | 這個節點繫結的舊版複合父項。可與 |material_parents| 一併顯示,但不能與 |driver_url| 一併顯示。 | 
NodeInfo
在 fuchsia.driver.development/types.fidl 中定義
| 序數 | 廣闊 | 類型 | 說明 | 
|---|---|---|---|
| 1 | id | uint64 | 用來識別節點的專屬 ID。 | 
| 2 | parent_ids | vector<uint64> | 代表父項的 ID 清單。如有多個,這就是複合節點。 | 
| 3 | child_ids | vector<uint64> | 代表子項的 ID 清單。 | 
| 4 | driver_host_koid | zx/Koid | 驅動程式主機所在程序 KOID。 | 
| 5 | bound_driver_url | fuchsia.url/Url | 驅動程式庫元件資訊清單的網址 | 
| 6 | versioned_info | VersionedNodeInfo | 使用中驅動程式庫架構版本的相關資訊。 已淘汰:18 新增:17 | 
| 7 | moniker | string[1024] | 節點的集合相對路徑名稱。 新增日期:18 | 
| 8 | node_property_list | vector<fuchsia.driver.framework/NodeProperty>[64] | 節點屬性。 新增日期:18 | 
| 9 | offer_list | vector<fuchsia.component.decl/Offer> | 節點提供的元件。 新增日期:18 | 
TestNodeAddArgs
在 fuchsia.driver.development/types.fidl 中定義
| 序數 | 廣闊 | 類型 | 說明 | 
|---|---|---|---|
| 1 | name | string[1024] | 節點名稱。 | 
| 2 | properties | vector<fuchsia.driver.framework/NodeProperty>[64] | 節點屬性。 | 
V1DeviceInfo
在 fuchsia.driver.development/types.fidl 中定義
| 序數 | 廣闊 | 類型 | 說明 | 
|---|---|---|---|
| 1 | topological_path | string[1024] | 驅動程式庫的頂部路徑。 | 
| 2 | bound_driver_libname | string[1024] | 驅動程式庫共用資料庫的路徑。 | 
| 3 | property_list | fuchsia.driver.legacy/DevicePropertyList | 裝置屬性。 | 
| 4 | flags | fuchsia.driver.legacy/DeviceFlags | 追蹤裝置狀態。 | 
| 5 | protocol_id | uint32 | Banjo 通訊協定 ID | 
| 6 | protocol_name | string | Banjo 通訊協定名稱 | 
V2NodeInfo
在 fuchsia.driver.development/types.fidl 中定義
| 序數 | 廣闊 | 類型 | 說明 | 
|---|---|---|---|
| 1 | moniker | string[1024] | 節點的集合相對路徑名稱。 | 
| 2 | node_property_list | vector<fuchsia.driver.framework/NodeProperty>[64] | 節點屬性。 | 
| 3 | offer_list | vector<fuchsia.component.decl/Offer> | 節點提供的元件。 | 
聯合國
CompositeInfo 嚴格
在 fuchsia.driver.development/types.fidl 中定義
包含複合或舊版複合資料的資訊。
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | legacy_composite | fuchsia.driver.legacy/CompositeInfo | |
| 2 | composite | fuchsia.driver.framework/CompositeInfo | 
Manager_AddTestNode_Result 嚴格
在 fuchsia.driver.development/development.fidl 中定義
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | Manager_AddTestNode_Response | |
| 2 | err | fuchsia.driver.framework/NodeError | |
| 3 | framework_err | internal | 
Manager_BindAllUnboundNodes_Result 嚴格
在 fuchsia.driver.development/development.fidl 中定義
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | Manager_BindAllUnboundNodes_Response | |
| 2 | err | zx/Status | |
| 3 | framework_err | internal | 
Manager_DisableDriver_Result 嚴格
在 fuchsia.driver.development/development.fidl 中定義
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | Manager_DisableDriver_Response | |
| 2 | err | zx/Status | |
| 3 | framework_err | internal | 
Manager_EnableDriver_Result 嚴格
在 fuchsia.driver.development/development.fidl 中定義
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | Manager_EnableDriver_Response | |
| 2 | err | zx/Status | |
| 3 | framework_err | internal | 
Manager_RemoveTestNode_Result 嚴格
在 fuchsia.driver.development/development.fidl 中定義
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | Manager_RemoveTestNode_Response | |
| 2 | err | zx/Status | |
| 3 | framework_err | internal | 
Manager_RestartDriverHosts_Result 嚴格
在 fuchsia.driver.development/development.fidl 中定義
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | Manager_RestartDriverHosts_Response | |
| 2 | err | zx/Status | |
| 3 | framework_err | internal | 
VersionedNodeInfo 彈性
在 fuchsia.driver.development/types.fidl 中定義
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | v1 | V1DeviceInfo | |
| 2 | v2 | V2NodeInfo | 
商業智慧
RestartRematchFlags 彈性
類型:uint32
在 fuchsia.driver.development/types.fidl 中定義
這些旗標指出何時應為重新啟動的節點建立 |fuchsia.driver.index.DriverIndex::MatchDriver| 呼叫,以便找出新的驅動程式庫,而不是重複使用先前繫結至節點的驅動程式庫。
| 名稱 | 物超所值 | 說明 | 
|---|---|---|
| REQUESTED | 1 | 重新比對目前繫結至要求驅動程式庫的節點。要求的驅動程式庫網址,是啟動重新啟動作業的驅動程式庫網址。 | 
| NON_REQUESTED | 2 | 重新比對目前繫結至非要求驅動程式庫以外的驅動程式庫節點。這些節點會受到要求的驅動程式庫重新啟動影響,例如當其是共置父項時。 | 
| LEGACY_COMPOSITE | 4 | 重新比對屬於舊版複合節點的節點。 | 
| COMPOSITE_SPEC | 8 | 重新比對建立為已完成複合規格一部分的節點。 | 
觀測站
| 名稱 | 物超所值 | 類型 | 說明 | 
|---|---|---|---|
| BINDING_RESULT_MAX | 10 | uint8 | |
| HASH_LENGTH | 64 | uint8 | |
| NODE_MONIKER_MAX | 1024 | uint32 |