class SdmmcBlockDevice

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

Public Members

static const char[] kHardwarePowerElementName
static const fuchsia_power_broker::PowerLevel kPowerLevelOff
static const fuchsia_power_broker::PowerLevel kPowerLevelOn
static const fuchsia_power_broker::PowerLevel kPowerLevelBoot

Public Methods

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

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

void SetMetadata (const fuchsia_hardware_sdmmc::SdmmcMetadata & metadata)

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

void handle_unknown_method (fidl::UnknownMethodMetadata<fuchsia_power_broker::ElementRunner> metadata, fidl::UnknownMethodCompleter::Sync & completer)

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

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

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

zx_status_t AddDevice ()

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

std::unique_ptr<SdmmcDevice> TakeSdmmcDevice ()

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

present).

Defined at line 137 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 140 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.h

zx_status_t ProbeSd ()

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

zx_status_t ProbeMmc ()

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

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

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

std::string_view block_name ()

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

SdmmcRootDevice * parent ()

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

bool SupportsInlineEncryption ()

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

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

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

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

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

void SetLevel (fuchsia_power_broker::ElementRunnerSetLevelRequest & request, SetLevelCompleter::Sync & completer)

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

to set this device's power level.

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

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

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

void SendPowerOffNotification ()

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

zx_status_t SuspendPower ()

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

zx_status_t ResumePower ()

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

void Queue (BlockOperation txn)

Called by children of this device.

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

void RpmbQueue (RpmbRequestInfo info)

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

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

Defined at line 1364 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 1353 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

const inspect::Inspector & inspect ()

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

fdf::Logger & logger ()

Defined at line 1362 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 1542 of file ../../src/devices/block/drivers/sdmmc/sdmmc-block-device.cc

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

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