pub struct QcomSscBlockBus {
halt_regs: MmioRegion,
config0_regs: MmioRegion,
config1_regs: MmioRegion,
power_state: PowerState,
children: Vec<BusChild>,
}Fields§
§halt_regs: MmioRegion§config0_regs: MmioRegion§config1_regs: MmioRegion§power_state: PowerState§children: Vec<BusChild>Implementations§
Source§impl QcomSscBlockBus
impl QcomSscBlockBus
Sourcepub fn init_halt_regs(&mut self, base: usize)
pub fn init_halt_regs(&mut self, base: usize)
Initializes halt regs.
Sourcepub fn init_config_regs(&mut self, config0_base: usize, config1_base: usize)
pub fn init_config_regs(&mut self, config0_base: usize, config1_base: usize)
Initializes config regs.
Sourcefn ensure_mapped(&self) -> Result<(), BusError>
fn ensure_mapped(&self) -> Result<(), BusError>
Ensures every MMIO region (halt, config0, config1) has been mapped by platform code before any register access.
Accessing an unmapped MmioRegion would trip its internal
assertions (kernel panic); failing early with
BusError::InitFailed turns a hard crash into a clean
driver-registration failure instead.
Sourcefn bus_deinit(&self) -> Result<(), BusError>
fn bus_deinit(&self) -> Result<(), BusError>
Performs the bus deinit operation.
The safety clamps are always applied, even when the halt handshake times out; the timeout is reported through the returned error.
Trait Implementations§
Source§impl BusDriver for QcomSscBlockBus
impl BusDriver for QcomSscBlockBus
Source§fn compatible(&self) -> &[&str]
fn compatible(&self) -> &[&str]
Performs the compatible operation.
Source§fn as_firewall(&self) -> Option<&dyn FirewallController>
fn as_firewall(&self) -> Option<&dyn FirewallController>
Returns the optional [
FirewallController] capability, if any. Read moreSource§fn probe(&self) -> bool
fn probe(&self) -> bool
Returns
true if the driver believes the hardware is present. Read moreSource§fn error_count(&self) -> u64
fn error_count(&self) -> u64
Performs the error count operation.
Source§fn handle_irq(&mut self) -> bool
fn handle_irq(&mut self) -> bool
Handles irq.
Auto Trait Implementations§
impl Freeze for QcomSscBlockBus
impl RefUnwindSafe for QcomSscBlockBus
impl Send for QcomSscBlockBus
impl Sync for QcomSscBlockBus
impl Unpin for QcomSscBlockBus
impl UnsafeUnpin for QcomSscBlockBus
impl UnwindSafe for QcomSscBlockBus
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more