协议
连接线
在 fuchsia.device.fs/connector.fidl 中定义
连接器可让客户端转发协议的服务器端。
连接
转发协议的服务器端,以便进行连接。
- 请求
server
要传送的协议的服务器端。FIDL 协议 这表明其带外。
- response 此函数没有任何响应。该函数是单向匹配流水线的 其他虚拟文件系统的行为。
请求
名称 | 类型 |
---|---|
server |
handle<channel>
|
控制器
在 fuchsia.device.fs/controller.fidl 中定义
用于在 devhost 中操控设备的接口
装订
尝试将驱动程序绑定到此设备。
- 请求
driver
。表示驱动程序网址的后缀(例如“fvm.cm”)。 如果不为空,则只有驱动程序才会尝试绑定 是与此网址后缀匹配的那些网址。
请求
名称 | 类型 |
---|---|
driver |
string[1024]
|
响应
名称 | 类型 |
---|---|
payload |
Controller_Bind_Result
|
ConnectToController
请连接到同一控制器 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 中定义
序数 | 字段 | 类型 | 说明 |
---|---|---|---|
1 |
connector |
Connector
|
这是要在 devfs 中安装的连接器。
当客户端连接到文件系统中的此节点时,系统会调用 |
2 |
class_name |
string[255]
|
这是在 devfs 中安装此节点的类名称。
该节点将放置在 /dev/class/{class_name} 中。
如果 /dev/class/ 下不存在 |
3 |
inspect |
handle<vmo>
|
这是将安装在 devfs 中的检查数据的 vmo。 可选:如果未提供此属性,则 devfs 的检查数据将为空。 |
4 |
connector_supports |
ConnectionType
|
|连接器|支持的连接类型。 驱动程序框架应处理 连接器。 如果未提供,则仅假定连接器支持的设备类型。 添加时间:HEAD
|
5 |
controller_connector |
Connector
|
这是要在 devfs 中安装的控制器连接器。
当客户端连接到 device_controller 连接时,系统会调用 添加时间:HEAD
|
联合体
Controller_Bind_Result 严格
在 fuchsia.device.fs/controller.fidl 中定义
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
response |
Controller_Bind_Response
|
|
2 |
err |
zx/Status
|
Controller_GetTopologicalPath_Result 严格
在 fuchsia.device.fs/controller.fidl 中定义
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
response |
Controller_GetTopologicalPath_Response
|
|
2 |
err |
zx/Status
|
Controller_Rebind_Result 严格
在 fuchsia.device.fs/controller.fidl 中定义
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
response |
Controller_Rebind_Response
|
|
2 |
err |
zx/Status
|
Controller_ScheduleUnbind_Result 严格
在 fuchsia.device.fs/controller.fidl 中定义
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
response |
Controller_ScheduleUnbind_Response
|
|
2 |
err |
zx/Status
|
Controller_UnbindChildren_Result 严格
在 fuchsia.device.fs/controller.fidl 中定义
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
response |
Controller_UnbindChildren_Response
|
|
2 |
err |
zx/Status
|
位
ConnectionType 柔性
类型:uint8
在 fuchsia.device.fs/connector.fidl 中定义
名称 | 值 | 说明 |
---|---|---|
节点 |
1 | 表示 fuchsia.io/Node 协议。 |
控制器 |
2 | 表示 fuchsia.device/Controller 协议。 |
DEVICE |
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
|