pub trait DeviceProxyInterface: Send + Sync {
type RegisterPowerDomainResponseFut: Future<Output = Result<DeviceRegisterPowerDomainResult, Error>> + Send;
type UnregisterPowerDomainResponseFut: Future<Output = Result<DeviceUnregisterPowerDomainResult, Error>> + Send;
type GetSupportedVoltageRangeResponseFut: Future<Output = Result<DeviceGetSupportedVoltageRangeResult, Error>> + Send;
type RequestVoltageResponseFut: Future<Output = Result<DeviceRequestVoltageResult, Error>> + Send;
type GetCurrentVoltageResponseFut: Future<Output = Result<DeviceGetCurrentVoltageResult, Error>> + Send;
type GetPowerDomainStatusResponseFut: Future<Output = Result<DeviceGetPowerDomainStatusResult, Error>> + Send;
type WritePmicCtrlRegResponseFut: Future<Output = Result<DeviceWritePmicCtrlRegResult, Error>> + Send;
type ReadPmicCtrlRegResponseFut: Future<Output = Result<DeviceReadPmicCtrlRegResult, Error>> + Send;
// Required methods
fn register_power_domain(
&self,
min_needed_voltage: u32,
max_supported_voltage: u32,
) -> Self::RegisterPowerDomainResponseFut;
fn unregister_power_domain(&self) -> Self::UnregisterPowerDomainResponseFut;
fn get_supported_voltage_range(
&self,
) -> Self::GetSupportedVoltageRangeResponseFut;
fn request_voltage(&self, voltage: u32) -> Self::RequestVoltageResponseFut;
fn get_current_voltage(
&self,
index: u32,
) -> Self::GetCurrentVoltageResponseFut;
fn get_power_domain_status(&self) -> Self::GetPowerDomainStatusResponseFut;
fn write_pmic_ctrl_reg(
&self,
reg_addr: u32,
value: u32,
) -> Self::WritePmicCtrlRegResponseFut;
fn read_pmic_ctrl_reg(
&self,
reg_addr: u32,
) -> Self::ReadPmicCtrlRegResponseFut;
}Required Associated Types§
type RegisterPowerDomainResponseFut: Future<Output = Result<DeviceRegisterPowerDomainResult, Error>> + Send
type UnregisterPowerDomainResponseFut: Future<Output = Result<DeviceUnregisterPowerDomainResult, Error>> + Send
type GetSupportedVoltageRangeResponseFut: Future<Output = Result<DeviceGetSupportedVoltageRangeResult, Error>> + Send
type RequestVoltageResponseFut: Future<Output = Result<DeviceRequestVoltageResult, Error>> + Send
type GetCurrentVoltageResponseFut: Future<Output = Result<DeviceGetCurrentVoltageResult, Error>> + Send
type GetPowerDomainStatusResponseFut: Future<Output = Result<DeviceGetPowerDomainStatusResult, Error>> + Send
type WritePmicCtrlRegResponseFut: Future<Output = Result<DeviceWritePmicCtrlRegResult, Error>> + Send
type ReadPmicCtrlRegResponseFut: Future<Output = Result<DeviceReadPmicCtrlRegResult, Error>> + Send
Required Methods§
fn register_power_domain( &self, min_needed_voltage: u32, max_supported_voltage: u32, ) -> Self::RegisterPowerDomainResponseFut
fn unregister_power_domain(&self) -> Self::UnregisterPowerDomainResponseFut
fn get_supported_voltage_range( &self, ) -> Self::GetSupportedVoltageRangeResponseFut
fn request_voltage(&self, voltage: u32) -> Self::RequestVoltageResponseFut
fn get_current_voltage(&self, index: u32) -> Self::GetCurrentVoltageResponseFut
fn get_power_domain_status(&self) -> Self::GetPowerDomainStatusResponseFut
fn write_pmic_ctrl_reg( &self, reg_addr: u32, value: u32, ) -> Self::WritePmicCtrlRegResponseFut
fn read_pmic_ctrl_reg(&self, reg_addr: u32) -> Self::ReadPmicCtrlRegResponseFut
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".