class SdioControllerDevice

Defined at line 34 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.h

Public Members

static const char[] kDeviceName

Public Methods

void SdioControllerDevice (SdmmcRootDevice * parent, std::unique_ptr<SdmmcDevice> sdmmc)

Defined at line 46 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.h

std::unique_ptr<SdmmcDevice> TakeSdmmcDevice ()

Returns the SdmmcDevice. Used if this SdioControllerDevice fails to probe (i.e., no eligible

device present).

Defined at line 57 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.h

zx_status_t Create (SdmmcRootDevice * parent, std::unique_ptr<SdmmcDevice> sdmmc, std::unique_ptr<SdioControllerDevice> * out_dev)

Defined at line 60 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t Probe (const fuchsia_hardware_sdmmc::SdmmcMetadata & metadata)

Defined at line 73 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioDoRwTxn (uint8_t fn_idx, const sdio_rw_txn_t * txn)

Defined at line 95 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.h

fidl::WireSyncClient<fuchsia_driver_framework::Node> & sdio_controller_node ()

Called by children of this device.

Defined at line 108 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.h

SdmmcRootDevice * parent ()

Defined at line 111 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.h

zx_status_t AddDevice ()

Defined at line 240 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioGetDevHwInfo (uint8_t fn_idx, sdio_hw_info_t * out_hw_info)

Defined at line 317 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioEnableFn (uint8_t fn_idx)

Defined at line 331 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioDisableFn (uint8_t fn_idx)

Defined at line 377 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioIoReady (uint8_t fn_idx, bool * out_ready)

Defined at line 410 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioEnableFnIntr (uint8_t fn_idx)

Defined at line 429 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioDisableFnIntr (uint8_t fn_idx)

Defined at line 466 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioUpdateBlockSize (uint8_t fn_idx, uint16_t blk_sz, bool deflt)

Defined at line 505 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioGetBlockSize (uint8_t fn_idx, uint16_t * out_cur_blk_size)

Defined at line 546 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioDoRwByte (bool write, uint8_t fn_idx, uint32_t addr, uint8_t write_byte, uint8_t * out_read_byte)

Defined at line 566 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx::result<uint8_t> SdioReadByte (uint8_t function, uint32_t address, bool suppress_error_messages)

Defined at line 572 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx::result<uint8_t> SdioWriteByte (uint8_t function, uint32_t address, uint8_t byte, bool read_after_write, bool suppress_error_messages)

Defined at line 588 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioGetInBandIntr (uint8_t fn_idx, zx::interrupt * out_irq)

Defined at line 622 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

void SdioAckInBandIntr (uint8_t fn_idx)

Defined at line 637 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioIoAbort (uint8_t fn_idx)

Defined at line 712 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioIntrPending (uint8_t fn_idx, bool * out_pending)

Defined at line 720 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioDoVendorControlRwByte (bool write, uint8_t addr, uint8_t write_byte, uint8_t * out_read_byte)

Defined at line 736 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioRegisterVmo (uint8_t fn_idx, uint32_t vmo_id, zx::vmo vmo, uint64_t offset, uint64_t size, uint32_t vmo_rights)

Defined at line 747 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioUnregisterVmo (uint8_t fn_idx, uint32_t vmo_id, zx::vmo * out_vmo)

Defined at line 761 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

template <typename T>
zx_status_t SdioDoRwTxn (uint8_t fn_idx, const SdioRwTxn<T> & txn)

TODO(b/309864701): Remove templating when Banjo support has been dropped.

Defined at line 968 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioRequestCardReset ()

Defined at line 774 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t SdioPerformTuning ()

Defined at line 791 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

void Callback (fdf::Arena & arena, CallbackCompleter::Sync & completer)

Defined at line 647 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

void FunctionPowerOn (uint8_t fn_idx)

Defined at line 681 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

void FunctionPowerOff (uint8_t fn_idx)

Defined at line 698 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

zx_status_t StartSdioIrqDispatcherIfNeeded ()

Defined at line 192 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

void StopSdioIrqDispatcher (std::optional<fdf::PrepareStopCompleter> completer)

Defined at line 293 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

fdf::Logger & logger ()

Defined at line 1465 of file ../../src/devices/block/drivers/sdmmc/sdio-controller-device.cc

Records