class SdmmcBlockDevice

Defined at line 103 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

Public Members

static const char[] kHardwarePowerElementName
static const uint8_t kPowerLevelOff
static const uint8_t kPowerLevelOn

Public Methods

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

Defined at line 67 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

zx_status_t AddDevice ()

Defined at line 79 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

bool SuspendEnabled ()

We always return true here, if our config says that we don't support power

management, suspend and resume will be no-ops.

Defined at line 120 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

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

Defined at line 129 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

std::unique_ptr<SdmmcDevice> TakeSdmmcDevice ()

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

present).

Defined at line 138 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

zx_status_t Probe (const fuchsia_hardware_sdmmc::SdmmcMetadata & metadata)

Probe for SD first, then MMC.

Defined at line 141 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

zx_status_t ProbeSd ()

Defined at line 146 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

zx_status_t ProbeMmc ()

Defined at line 150 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

void SetPowerSuspendedForTest (bool suspended)

Defined at line 161 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

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

Defined at line 172 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

const char * block_name ()

Defined at line 173 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

SdmmcRootDevice * parent ()

Defined at line 174 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

bool SupportsInlineEncryption ()

Defined at line 176 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

void SetMetadata (const fuchsia_hardware_sdmmc::SdmmcMetadata & metadata)

Defined at line 180 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

const std::vector<std::unique_ptr<PartitionDevice>> & child_partition_devices ()

Defined at line 182 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

const std::unique_ptr<RpmbDevice> & child_rpmb_device ()

Defined at line 185 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

void SetLevel (uint8_t level)

Implement fuchsia.power.broker.ElementRunner, allowing Power Broker

to set this device's power level.

Defined at line 395 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void Suspend (fdf_power::SuspendCompleter completer)

Defined at line 381 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void Resume (fdf_power::ResumeCompleter completer)

Defined at line 388 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void HostInfo (fdf::Arena & arena, HostInfoCompleter::Sync & completer)

fuchsia.hardware.cqhci.Cqhci

Defined at line 431 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void InitializeCommandQueueing (InitializeCommandQueueingRequestView request, fdf::Arena & arena, InitializeCommandQueueingCompleter::Sync & completer)

Defined at line 435 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void EnableCqhci (fdf::Arena & arena, EnableCqhciCompleter::Sync & completer)

Defined at line 451 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void DisableCqhci (fdf::Arena & arena, DisableCqhciCompleter::Sync & completer)

Defined at line 473 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void StopWorkerDispatcher (std::optional<fdf::StopCompleter> completer)

Defined at line 496 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void SendPowerOffNotification ()

Defined at line 544 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

zx_status_t SuspendPower ()

Defined at line 1153 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

zx_status_t ResumePower ()

Defined at line 1190 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void RpmbQueue (RpmbRequestInfo info)

Called by children of this device.

Defined at line 1055 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void OnRequests (PartitionDevice & partition, cpp20::span<block_server::Request> requests)

Defined at line 1283 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void SetBlockInfo (uint32_t block_size, uint64_t block_count)

Visible for testing.

Defined at line 1272 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

const inspect::Inspector & inspect ()

Defined at line 1277 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

fdf::Logger & logger ()

Defined at line 1281 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void ProgramKey (ProgramKeyRequestView request, ProgramKeyCompleter::Sync & completer)

fuchsia.hardware.inlineencryption.Device

Defined at line 1473 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

void DeriveRawSecret (DeriveRawSecretRequestView request, DeriveRawSecretCompleter::Sync & completer)

Defined at line 1490 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc