template <>
class WireSyncBufferClientImpl
Defined at line 2320 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
Public Methods
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::HostInfo> HostInfo ()
Get host info.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2327 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::SetSignalVoltage> SetSignalVoltage (::fuchsia_hardware_sdmmc::wire::SdmmcVoltage voltage)
Set signal voltage.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2335 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::SetBusWidth> SetBusWidth (::fuchsia_hardware_sdmmc::wire::SdmmcBusWidth bus_width)
Set bus width.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2343 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::SetBusFreq> SetBusFreq (uint32_t bus_freq)
Set bus frequency, zero means disable the clock to the card.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2351 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::SetTiming> SetTiming (::fuchsia_hardware_sdmmc::wire::SdmmcTiming timing)
Set mmc timing.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2359 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::HwReset> HwReset ()
Issue a hw reset.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2367 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::PerformTuning> PerformTuning (uint32_t cmd_idx)
Perform tuning.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2375 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::RegisterInBandInterrupt> RegisterInBandInterrupt (::fdf::ClientEnd< ::fuchsia_hardware_sdmmc::InBandInterrupt> && interrupt_cb)
Register the given callback to be called when an in-band interrupt is received from the
card. Before calling the callback the protocol implementation will disable the in-band
interrupt in the controller. In-band interrupts can be re-enabled by calling
`AckInBandInterrupt()` once the previous interrupt has been handled by the client.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2386 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fidl::OneWayStatus AckInBandInterrupt ()
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2393 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::RegisterVmo> RegisterVmo (uint32_t vmo_id, uint8_t client_id, ::zx::vmo && vmo, uint64_t offset, uint64_t size, ::fuchsia_hardware_sdmmc::wire::SdmmcVmoRight vmo_rights)
In the methods below, vmo_id is used to uniquely identify a VMO that will be passed to
Request in an SdmmcBufferRegion. VMO IDs are chosen by the caller, and may be any uint32
value.
Registers a VMO and transfers ownership to the protocol implementation. vmo_rights is a bit
field containing SdmmcVmoRight values, and determines the read/write permissions used by
the implementation when pinning or mapping the VMO. The implementation may pin vmo during
this call or any time it is used in a request, and may keep it pinned until the VMO is
unregistered. client_id may be in [0, SDMMC_MAX_CLIENT_ID] and identifies the ID space for
this VMO to be registered in (that is, two different VMOs may use the same ID if they are
registered for different clients).
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2410 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::UnregisterVmo> UnregisterVmo (uint32_t vmo_id, uint8_t client_id)
The callee unmaps/unpins the VMO and returns ownership to the caller.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2418 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h
::fdf::WireUnownedResult< ::fuchsia_hardware_sdmmc::Sdmmc::Request> Request (::fidl::VectorView< ::fuchsia_hardware_sdmmc::wire::SdmmcReq> reqs)
Perform the requests in order, atomically (i.e., no intervening requests). Furthermore,
calls are replied to in the order they are received. If an error occurs, abort any remaining
requests. Else, return the response of the last request.
The protocol implementation chooses whether or not to use DMA
depending on the properties of the request and the capabilities of the controller.
Clients are responsible for performing the following cache operations:
After read requests:
- Call zx_cache_flush with ZX_CACHE_FLUSH_DATA | ZX_CACHE_FLUSH_INVALIDATE on buffers that
have been mapped by the client.
- Call zx_vmo_op_range with ZX_VMO_OP_CACHE_CLEAN_INVALIDATE on all other buffers.
Note that writing to any portion of a buffer before Request has returned can corrupt the
received data.
Before write requests:
- Call zx_cache_flush with ZX_CACHE_FLUSH_DATA on buffers that have been mapped by the
client.
- Call zx_vmo_op_range with ZX_VMO_OP_CACHE_CLEAN on all other buffers.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.
Defined at line 2446 of file fidling/gen/sdk/fidl/fuchsia.hardware.sdmmc/fuchsia.hardware.sdmmc/cpp/fidl/fuchsia.hardware.sdmmc/cpp/driver/wire_messaging.h