fuchsia.device.fs

新增:12

通訊協定

連接線

定義於 fuchsia.device.fs/connector.fidl

連接器可讓用戶端將通訊協定的伺服器端轉送。

連線

轉送通訊協定的端點,以使其可以連線。

  • 要求 server 為要提供的通訊協定端點。用於傳輸資料的 FIDL 通訊協定 這句話經斷章取義。
  • 回應 此函式沒有回應。函式是單向比對管道的單向方法 其他虛擬檔案系統的行為

要求

名稱類型
server handle<channel>

控制器

fuchsia.device.fs/controller.fidl 中定義

在開發主機中操控裝置的介面

新增時間:HEAD

裝訂

嘗試將驅動程式庫繫結至這部裝置。

  • 要求 driver。這代表驅動程式庫程式網址的後置字串 (例如「fvm.cm」)。 如果這個值為其他值,表示只會嘗試進行繫結作業的驅動程式 與此網址尾碼相符的網址。

要求

名稱類型
driver string[1024]

回應

名稱類型
payload Controller_Bind_Result

ConnectToController

連線至相同的 Controller FIDL 通訊協定。

要求

名稱類型
server server_end<Controller>

ConnectToDeviceFidl

連線至基礎裝置的 FIDL 通訊協定。 這個連線不會透過 fuchsia.device.Controller 進行多工處理 或 fuchsia.io.Node。

要求

名稱類型
server handle<channel>

GetTopologicalPath

傳回這部裝置的拓撲路徑

要求

<空白>

回應

名稱類型
payload Controller_GetTopologicalPath_Result

重新繫結

將這部裝置的所有子項解除繫結,然後嘗試將驅動程式庫繫結至裝置。 直到繫結完成之後才會傳回。

  • 要求 driver。這代表驅動程式庫程式網址的後置字串 (例如「fvm.cm」)。 如果這個值為其他值,表示只會嘗試進行繫結作業的驅動程式 與此網址尾碼相符的網址。

要求

名稱類型
driver string[1024]

回應

名稱類型
payload Controller_Rebind_Result

ScheduleUnbind

中斷這部裝置的連線,並允許其家長再次繫結。 這項作業可能需要在退貨前完成。

要求

<空白>

回應

名稱類型
payload Controller_ScheduleUnbind_Result

UnbindChildren

這個 API 將以同步的方式解除繫結這部裝置的所有子項。 這樣可避免客戶為了移除裝置而觀看影片。

要求

<空白>

回應

名稱類型
payload Controller_UnbindChildren_Result

結構

Controller_Bind_Response

fuchsia.device.fs/controller.fidl 中定義

<空白>

Controller_GetTopologicalPath_Response

fuchsia.device.fs/controller.fidl 中定義

欄位類型說明預設
path string[1024] 無預設

Controller_Rebind_Response

fuchsia.device.fs/controller.fidl 中定義

<空白>

Controller_ScheduleUnbind_Response

fuchsia.device.fs/controller.fidl 中定義

<空白>

Controller_UnbindChildren_Response

fuchsia.device.fs/controller.fidl 中定義

<空白>

資料表

DevfsAddArgs 資源

定義於 fuchsia.device.fs/connector.fidl

新增時間:HEAD

序數欄位類型說明
connector Connector

這是要安裝在 devfs 中的連接器。 用戶端連線至檔案系統中的這個節點時,系統就會呼叫 Connect()。 選用:如未提供,devf 中會顯示空白節點。

class_name string[255]

這是在 devfs 中安裝這個節點的類別名稱。 節點會放在 /dev/class/{class_name} 中 如果 /dev/class 之下沒有 class_name,系統將建立該類別。 選用:如果未提供此引數,系統只會透過拓撲路徑新增節點。

inspect handle<vmo>

這是將在 devf 安裝的檢查資料 VMO。 選用:如果未提供這個值,devfs 的檢查資料會是空白。

connector_supports ConnectionType

|連接器|支援的連線類型狀態。 驅動程式庫程式架構應處理 。 如果未提供,系統只會假設連接器支援的裝置類型。

新增時間:HEAD
controller_connector Connector

這是要安裝在 devfs 中的控制器連接器。 在用戶端連線至 device_controller 連線時,系統會呼叫 Connect() 針對這個節點建立檔案系統 選用:如果未提供此引數,Node 會原生處理連線。 這個選項僅供 Compat 輔助程式或測試中使用

新增時間:HEAD

聯合國

Controller_Bind_Result 嚴格

fuchsia.device.fs/controller.fidl 中定義

序數Variant類型說明
response Controller_Bind_Response
err zx/Status

Controller_GetTopologicalPath_Result 嚴格

fuchsia.device.fs/controller.fidl 中定義

序數Variant類型說明
response Controller_GetTopologicalPath_Response
err zx/Status

Controller_Rebind_Result 嚴格

fuchsia.device.fs/controller.fidl 中定義

序數Variant類型說明
response Controller_Rebind_Response
err zx/Status

Controller_ScheduleUnbind_Result 嚴格

fuchsia.device.fs/controller.fidl 中定義

序數Variant類型說明
response Controller_ScheduleUnbind_Response
err zx/Status

Controller_UnbindChildren_Result 嚴格

fuchsia.device.fs/controller.fidl 中定義

序數Variant類型說明
response Controller_UnbindChildren_Response
err zx/Status

商業智慧

ConnectionType 彈性

類型:uint8

定義於 fuchsia.device.fs/connector.fidl

新增日期:16

名稱說明
1

代表 fuchsia.io/Node 通訊協定。

2

代表 fuchsia.device/Controller 通訊協定。

4

代表裝置專屬 FIDL。

觀測站

名稱類型說明
DEVICE_CONTROLLER_NAME device_controller String

這個名稱保留給存取 fuchsia.device/Controller 通訊協定時使用 /dev/.無法使用這個名稱建立裝置。

DEVICE_PROTOCOL_NAME device_protocol String

這個名稱保留給存取裝置專用通訊協定時使用 /dev/.無法使用這個名稱建立裝置。

MAX_DEVICE_PATH_LEN 1024 uint64

裝置路徑的長度上限

新增時間:HEAD
MAX_DRIVER_PATH_LEN 1024 uint64

驅動程式庫路徑的長度上限

新增時間:HEAD