fuchsia.hardware.spi
添加了:HEAD
协议
控制器
在 fuchsia.hardware.spi/spi.fidl 中定义
OpenSession
在设备上打开新会话。
一次最多允许一个会话;如果已经存在会话,服务器端将使用 ZX_ERR_ALREADY_BOUND 关闭。
请求
| 名称 | 类型 |
session |
server_end:Device
|
设备
在 fuchsia.hardware.spi/spi.fidl 中定义
AssertCs
为此设备断言 CS。
如果总线上有多个设备,则返回 ZX_ERR_NOT_SUPPORTED。
请求
<EMPTY>
响应
CanAssertCs
如果设备可以调用 |AssertCs()| 和 |DeassertCs()|,则返回 true。
请求
<EMPTY>
响应
DeassertCs
为此设备取消断言 CS。
如果 CS 已取消断言,则返回 ZX_ERR_BAD_STATE。如果总线上有多个设备,则返回 ZX_ERR_NOT_SUPPORTED。
请求
<EMPTY>
响应
Exchange
同时发送和接收数据。tx_buffer 和 rx_buffer 的大小字段必须相同。
请求
响应
ExchangeVector
全双工 SPI 事务。收到的数据将与传输缓冲区长度完全相同。
请求
| 名称 | 类型 |
txdata |
vector<uint8>:8196
|
响应
| 名称 | 类型 |
status |
zx/Status
|
rxdata |
vector<uint8>:8196
|
接收
将数据从设备接收到缓冲区。
请求
响应
ReceiveVector
从 SPI 设备接收半双工数据;始终读取请求的完整大小。
请求
响应
| 名称 | 类型 |
status |
zx/Status
|
data |
vector<uint8>:8196
|
RegisterVmo
注册 VMO 并将所有权转移给驱动程序。 vmo_id:客户端选择的 ID,将用于对此 VMO 执行的操作。 vmo:此 VMO 的句柄、偏移量和大小。对此 VMO 的 IO 操作将相对于此处指定的偏移量和大小。
rights:一个由 SharedVmoRight 值组成的位字段,用于指示此 VMO 的使用方式。调用方应假定驱动程序将使用这些权限映射和/或固定 VMO。
请求
响应
传输
将缓冲区中的数据发送到设备。
请求
响应
TransmitVector
将数据以半双工方式传输到 SPI 设备;成功时始终传输整个缓冲区。
请求
| 名称 | 类型 |
data |
vector<uint8>:8196
|
响应
UnregisterVmo
取消映射和/或取消固定 VMO,并将句柄返回给调用方。
请求
响应
常量
服务
ControllerService
在 fuchsia.hardware.spi/spi.fidl 中定义
| 名称 | 类型 | 传输 |
| device |
fuchsia.hardware.spi/Controller
|
频道 |
服务
在 fuchsia.hardware.spi/spi.fidl 中定义
| 名称 | 类型 | 传输 |
| device |
fuchsia.hardware.spi/Device
|
频道 |
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-25。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-07-25。"],[],[]]