pub struct HardwareDoorbellPeripheral {
pub name: String,
pub page: u32,
pub type: HardwareDoorbellPeripheralType,
pub length: u32,
pub parties: Vec<HardwareDoorbellParty>,
pub party_page: u32,
pub channels: u32,
pub channel_page: u32,
pub clock: Option<DoorbellClock>,
pub window_length: Option<u32>,
}Fields§
§name: String§page: u32§type: HardwareDoorbellPeripheralType§length: u32Length of the whole register block, spanning every per-side window.
The block has no single base: each party reaches its own window at
HardwareDoorbellParty::memory.
parties: Vec<HardwareDoorbellParty>§party_page: u32§channels: u32§channel_page: u32§clock: Option<DoorbellClock>Optional device-tree clock this doorbell’s register block needs kept
enabled from the Linux side, emitted as clocks = <&provider id> on the
generic-uio node. STM32MP2 IPCC/HSEM reference the SCMI clock domain;
i.MX MUs live in an always-on domain and carry no clock.
window_length: Option<u32>Length of one per-side register window, when the block exposes several.
An i.MX MU’s length spans both processor views, and each view is one
window of this length. Absent means the block has a single window
spanning all of length (STM32 IPCC/HSEM).
Implementations§
Source§impl HardwareDoorbellPeripheral
impl HardwareDoorbellPeripheral
Sourcepub fn party_window_length(&self) -> u32
pub fn party_window_length(&self) -> u32
Length of one party’s register window.
Falls back to the whole block for single-window peripherals.
Trait Implementations§
Source§impl Clone for HardwareDoorbellPeripheral
impl Clone for HardwareDoorbellPeripheral
Source§fn clone(&self) -> HardwareDoorbellPeripheral
fn clone(&self) -> HardwareDoorbellPeripheral
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more