pub struct TransferConfig {Show 17 fields
pub iwidth: OspiWidth,
pub instruction: Option<u32>,
pub isize: AddressSize,
pub idtr: bool,
pub adwidth: OspiWidth,
pub address: Option<u32>,
pub adsize: AddressSize,
pub addtr: bool,
pub abwidth: OspiWidth,
pub alternate_bytes: Option<u32>,
pub absize: AddressSize,
pub abdtr: bool,
pub dwidth: OspiWidth,
pub ddtr: bool,
pub dummy: DummyCycles,
pub dqse: bool,
pub sioo: bool,
}Expand description
OSPI transfer configuration.
Fields§
§iwidth: OspiWidthInstruction width (IMODE)
instruction: Option<u32>Instruction Id
isize: AddressSizeNumber of Instruction Bytes
idtr: boolInstruction Double Transfer rate enable
adwidth: OspiWidthAddress width (ADMODE)
address: Option<u32>Device memory address.
In indirect mode, this value + the length of the data being read or written must be within
configured Config::device_size, otherwise the transfer returns an error.
adsize: AddressSizeNumber of Address Bytes
addtr: boolAddress Double Transfer rate enable
abwidth: OspiWidthAlternate bytes width (ABMODE)
alternate_bytes: Option<u32>Alternate Bytes
absize: AddressSizeNumber of Alternate Bytes
abdtr: boolAlternate Bytes Double Transfer rate enable
dwidth: OspiWidthData width (DMODE)
ddtr: boolData Double Transfer rate enable
dummy: DummyCyclesNumber of dummy cycles (DCYC)
dqse: boolData strobe (DQS) management enable
sioo: boolSend instruction only once (SIOO) mode enable Enable this to improve memory-mapped latency. Ensure your device supports this mode. Some manufacturers call this ‘Continuous Read’ mode and require specific bits to be set in alternate bytes (e.g. Winbound W25Q) and specific disable sequences.
Trait Implementations§
Source§impl Clone for TransferConfig
impl Clone for TransferConfig
Source§fn clone(&self) -> TransferConfig
fn clone(&self) -> TransferConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more