class AmlSdmmc
Defined at line 42 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.h
Public Members
static const char[] kDriverName
static const size_t kMaxDmaDescriptors
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
Protected Members
SdmmcHostInfo dev_info_
bool power_suspended_
bool three_level_power_
mutex lock_
mutex tuning_lock_
Public Methods
void AmlSdmmc (fdf::DriverStartArgs start_args, fdf::UnownedSynchronizedDispatcher dispatcher)
Defined at line 63 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.h
void ~AmlSdmmc ()
Defined at line 79 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.h
zx::result<> Start ()
Defined at line 92 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void AckInBandInterrupt (fdf::Arena & arena, AckInBandInterruptCompleter::Sync & completer)
Defined at line 104 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.h
void handle_unknown_method (fidl::UnknownMethodMetadata<fuchsia_hardware_power::PowerTokenProvider> md, fidl::UnknownMethodCompleter::Sync & completer)
Defined at line 115 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.h
void PrepareStop (fdf::PrepareStopCompleter completer)
Defined at line 1742 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void HostInfo (fdf::Arena & arena, HostInfoCompleter::Sync & completer)
fuchsia_hardware_sdmmc::Sdmmc implementation
Defined at line 646 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void SetSignalVoltage (SetSignalVoltageRequestView request, fdf::Arena & arena, SetSignalVoltageCompleter::Sync & completer)
Defined at line 944 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void SetBusWidth (SetBusWidthRequestView request, fdf::Arena & arena, SetBusWidthCompleter::Sync & completer)
Defined at line 650 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void SetBusFreq (SetBusFreqRequestView request, fdf::Arena & arena, SetBusFreqCompleter::Sync & completer)
Defined at line 697 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void SetTiming (SetTimingRequestView request, fdf::Arena & arena, SetTimingCompleter::Sync & completer)
Defined at line 899 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void HwReset (fdf::Arena & arena, HwResetCompleter::Sync & completer)
Defined at line 837 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void PerformTuning (PerformTuningRequestView request, fdf::Arena & arena, PerformTuningCompleter::Sync & completer)
Defined at line 1388 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void RegisterInBandInterrupt (RegisterInBandInterruptRequestView request, fdf::Arena & arena, RegisterInBandInterruptCompleter::Sync & completer)
Defined at line 691 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void RegisterVmo (RegisterVmoRequestView request, fdf::Arena & arena, RegisterVmoCompleter::Sync & completer)
Defined at line 1542 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void UnregisterVmo (UnregisterVmoRequestView request, fdf::Arena & arena, UnregisterVmoCompleter::Sync & completer)
Defined at line 1584 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void Request (RequestRequestView request, fdf::Arena & arena, RequestCompleter::Sync & completer)
Defined at line 1615 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void GetToken (GetTokenCompleter::Sync & completer)
fuchsia_hardware_power::PowerTokenProvider implementation
Defined at line 376 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t SuspendPower ()
Defined at line 738 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t ResumePower ()
Defined at line 771 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t Init (const std::string & instance_identifier)
Visible for tests
Defined at line 1714 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
Protected Methods
std::optional<compat::DeviceServer::BanjoConfig> get_banjo_config ()
Defined at line 128 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.h
const zx::bti & bti ()
Visible for tests
Defined at line 147 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.h
const fdf::MmioBuffer & mmio ()
Defined at line 148 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.h
void * descs_buffer ()
Defined at line 152 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.h
zx_status_t WaitForInterruptImpl ()
Defined at line 513 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
void WaitForBus ()
Defined at line 1237 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t SetBusWidthImpl (fuchsia_hardware_sdmmc::wire::SdmmcBusWidth bus_width)
Defined at line 669 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t SetBusFreqImpl (uint32_t freq)
Defined at line 716 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t SetTimingImpl (fuchsia_hardware_sdmmc::wire::SdmmcTiming timing)
Defined at line 918 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t HwResetImpl ()
Defined at line 865 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t PerformTuningImpl (uint32_t tuning_cmd_idx)
Defined at line 1410 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t RequestImpl (const fuchsia_hardware_sdmmc::wire::SdmmcReq & req, uint32_t[4] out_response)
Defined at line 1652 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t RegisterVmoImpl (uint32_t vmo_id, uint8_t client_id, zx::vmo vmo, uint64_t offset, uint64_t size, fuchsia_hardware_sdmmc::wire::SdmmcVmoRight rights)
Defined at line 1553 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc
zx_status_t UnregisterVmoImpl (uint32_t vmo_id, uint8_t client_id, zx::vmo * out_vmo)
Defined at line 1595 of file ../../src/devices/block/drivers/aml-sdmmc/aml-sdmmc.cc