PROTOCOLS
SpiImpl
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Low-level protocol for spi drivers.
ExchangeVector
Full-duplex SPI transaction. Received data will exactly equal the length of the transmit buffer.
Request
Name | Type |
---|---|
chip_select |
uint32
|
txdata |
vector<uint8>
|
Response
Name | Type |
---|---|
payload |
SpiImpl_ExchangeVector_Result
|
ExchangeVmo
Request
Name | Type |
---|---|
chip_select |
uint32
|
tx_buffer |
fuchsia.hardware.sharedmemory/SharedVmoBuffer
|
rx_buffer |
fuchsia.hardware.sharedmemory/SharedVmoBuffer
|
Response
Name | Type |
---|---|
payload |
SpiImpl_ExchangeVmo_Result
|
GetChipSelectCount
Returns the number of chip select lines available or provided by the driver instance. To be used as a limit on the acceptable values for the `chip_select' field in the Exchange() and ExchangeVmo() methods.
Request
<EMPTY>
Response
Name | Type |
---|---|
count |
uint32
|
LockBus
Lock the bus.
Request
Name | Type |
---|---|
chip_select |
uint32
|
Response
Name | Type |
---|---|
payload |
SpiImpl_LockBus_Result
|
ReceiveVector
Half-duplex receive data from a SPI device; always reads the full size requested.
Request
Name | Type |
---|---|
chip_select |
uint32
|
size |
uint32
|
Response
Name | Type |
---|---|
payload |
SpiImpl_ReceiveVector_Result
|
ReceiveVmo
Request
Name | Type |
---|---|
chip_select |
uint32
|
buffer |
fuchsia.hardware.sharedmemory/SharedVmoBuffer
|
Response
Name | Type |
---|---|
payload |
SpiImpl_ReceiveVmo_Result
|
RegisterVmo
rights is a bit field containing SpiVmoRight values, and determines the read/write permissions used by the implementation when pinning or mapping the VMO.
Request
Name | Type |
---|---|
chip_select |
uint32
|
vmo_id |
uint32
|
vmo |
fuchsia.mem/Range
|
rights |
fuchsia.hardware.sharedmemory/SharedVmoRight
|
Response
Name | Type |
---|---|
payload |
SpiImpl_RegisterVmo_Result
|
ReleaseRegisteredVmos
Release all VMOs registered to this chip_select. Called by the core driver after the client has disconnected and the VMOs are no longer needed.
Request
Name | Type |
---|---|
chip_select |
uint32
|
TransmitVector
Half-duplex transmit data to a SPI device; always transmits the entire buffer on success.
Request
Name | Type |
---|---|
chip_select |
uint32
|
data |
vector<uint8>
|
Response
Name | Type |
---|---|
payload |
SpiImpl_TransmitVector_Result
|
TransmitVmo
Request
Name | Type |
---|---|
chip_select |
uint32
|
buffer |
fuchsia.hardware.sharedmemory/SharedVmoBuffer
|
Response
Name | Type |
---|---|
payload |
SpiImpl_TransmitVmo_Result
|
UnlockBus
Unlock the bus.
Request
Name | Type |
---|---|
chip_select |
uint32
|
Response
Name | Type |
---|---|
payload |
SpiImpl_UnlockBus_Result
|
UnregisterVmo
Request
Name | Type |
---|---|
chip_select |
uint32
|
vmo_id |
uint32
|
Response
Name | Type |
---|---|
payload |
SpiImpl_UnregisterVmo_Result
|
STRUCTS
SpiImpl_ExchangeVector_Response
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Field | Type | Description | Default |
---|---|---|---|
rxdata |
vector<uint8>
|
No default |
SpiImpl_ExchangeVmo_Response
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
<EMPTY>
SpiImpl_LockBus_Response
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
<EMPTY>
SpiImpl_ReceiveVector_Response
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Field | Type | Description | Default |
---|---|---|---|
data |
vector<uint8>
|
No default |
SpiImpl_ReceiveVmo_Response
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
<EMPTY>
SpiImpl_RegisterVmo_Response
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
<EMPTY>
SpiImpl_TransmitVector_Response
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
<EMPTY>
SpiImpl_TransmitVmo_Response
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
<EMPTY>
SpiImpl_UnlockBus_Response
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
<EMPTY>
SpiImpl_UnregisterVmo_Response resource
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Field | Type | Description | Default |
---|---|---|---|
vmo |
handle<vmo>
|
No default |
UNIONS
SpiImpl_ExchangeVector_Result strict
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
SpiImpl_ExchangeVector_Response
|
|
2 |
err |
zx/Status
|
SpiImpl_ExchangeVmo_Result strict
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
SpiImpl_ExchangeVmo_Response
|
|
2 |
err |
zx/Status
|
SpiImpl_LockBus_Result strict
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
SpiImpl_LockBus_Response
|
|
2 |
err |
zx/Status
|
SpiImpl_ReceiveVector_Result strict
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
SpiImpl_ReceiveVector_Response
|
|
2 |
err |
zx/Status
|
SpiImpl_ReceiveVmo_Result strict
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
SpiImpl_ReceiveVmo_Response
|
|
2 |
err |
zx/Status
|
SpiImpl_RegisterVmo_Result strict
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
SpiImpl_RegisterVmo_Response
|
|
2 |
err |
zx/Status
|
SpiImpl_TransmitVector_Result strict
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
SpiImpl_TransmitVector_Response
|
|
2 |
err |
zx/Status
|
SpiImpl_TransmitVmo_Result strict
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
SpiImpl_TransmitVmo_Response
|
|
2 |
err |
zx/Status
|
SpiImpl_UnlockBus_Result strict
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
SpiImpl_UnlockBus_Response
|
|
2 |
err |
zx/Status
|
SpiImpl_UnregisterVmo_Result strict resource
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Ordinal | Variant | Type | Description |
---|---|---|---|
1 |
response |
SpiImpl_UnregisterVmo_Response
|
|
2 |
err |
zx/Status
|
SERVICES
Service
Defined in fuchsia.hardware.spiimpl/spi-impl.fidl
Name | Type | Transport |
---|---|---|
device |
fuchsia.hardware.spiimpl/SpiImpl
|
Driver |