pub struct Memory<'probe> { /* private fields */ }
Expand description
A struct to allow memory access via an ARM probe.
Implementations
sourceimpl<'probe> Memory<'probe>
impl<'probe> Memory<'probe>
sourcepub fn new(
memory: impl ArmProbe + 'probe + Sized,
ap_sel: MemoryAp
) -> Memory<'probe>
pub fn new(
memory: impl ArmProbe + 'probe + Sized,
ap_sel: MemoryAp
) -> Memory<'probe>
Constructs a new Memory
handle with a ARM probe and a memory AP.
sourcepub fn supports_native_64bit_access(&mut self) -> bool
pub fn supports_native_64bit_access(&mut self) -> bool
Does this interface support native 64-bit wide accesses
sourcepub fn read_word_64(&mut self, address: u64) -> Result<u64, Error>
pub fn read_word_64(&mut self, address: u64) -> Result<u64, Error>
Reads a 64 bit word from address
.
sourcepub fn read_word_32(&mut self, address: u64) -> Result<u32, Error>
pub fn read_word_32(&mut self, address: u64) -> Result<u32, Error>
Reads a 32 bit word from address
.
sourcepub fn read_word_8(&mut self, address: u64) -> Result<u8, Error>
pub fn read_word_8(&mut self, address: u64) -> Result<u8, Error>
Reads an 8 bit word from address
.
sourcepub fn read_64(&mut self, address: u64, data: &mut [u64]) -> Result<(), Error>
pub fn read_64(&mut self, address: u64, data: &mut [u64]) -> Result<(), Error>
Reads data.len()
64 bit words from address
into data
.
sourcepub fn read_32(&mut self, address: u64, data: &mut [u32]) -> Result<(), Error>
pub fn read_32(&mut self, address: u64, data: &mut [u32]) -> Result<(), Error>
Reads data.len()
32 bit words from address
into data
.
sourcepub fn read_8(&mut self, address: u64, data: &mut [u8]) -> Result<(), Error>
pub fn read_8(&mut self, address: u64, data: &mut [u8]) -> Result<(), Error>
Reads data.len()
8 bit words from address
into data
.
sourcepub fn write_word_64(&mut self, address: u64, data: u64) -> Result<(), Error>
pub fn write_word_64(&mut self, address: u64, data: u64) -> Result<(), Error>
Writes a 64 bit word to address
.
sourcepub fn write_word_32(&mut self, address: u64, data: u32) -> Result<(), Error>
pub fn write_word_32(&mut self, address: u64, data: u32) -> Result<(), Error>
Writes a 32 bit word to address
.
sourcepub fn write_word_8(&mut self, address: u64, data: u8) -> Result<(), Error>
pub fn write_word_8(&mut self, address: u64, data: u8) -> Result<(), Error>
Writes a 8 bit word to address
.
sourcepub fn write_64(&mut self, address: u64, data: &[u64]) -> Result<(), Error>
pub fn write_64(&mut self, address: u64, data: &[u64]) -> Result<(), Error>
Writes data.len()
32 bit words from data
to address
.
sourcepub fn write_32(&mut self, address: u64, data: &[u32]) -> Result<(), Error>
pub fn write_32(&mut self, address: u64, data: &[u32]) -> Result<(), Error>
Writes data.len()
32 bit words from data
to address
.
sourcepub fn write_8(&mut self, address: u64, data: &[u8]) -> Result<(), Error>
pub fn write_8(&mut self, address: u64, data: &[u8]) -> Result<(), Error>
Writes data.len()
8 bit words from data
to address
.
sourcepub fn flush(&mut self) -> Result<(), Error>
pub fn flush(&mut self) -> Result<(), Error>
Flushes all pending writes to the target.
This method is necessary when the underlying probe driver implements batching.
sourcepub fn get_arm_interface(
&mut self
) -> Result<&mut ArmCommunicationInterface<Initialized>, Error>
pub fn get_arm_interface(
&mut self
) -> Result<&mut ArmCommunicationInterface<Initialized>, Error>
Tries to borrow the underlying ArmCommunicationInterface
.
sourcepub fn get_arm_probe(&mut self) -> &mut dyn ArmProbe
pub fn get_arm_probe(&mut self) -> &mut dyn ArmProbe
Borrows the underlying [ArmProbe
] driver.
Auto Trait Implementations
impl<'probe> !RefUnwindSafe for Memory<'probe>
impl<'probe> !Send for Memory<'probe>
impl<'probe> !Sync for Memory<'probe>
impl<'probe> Unpin for Memory<'probe>
impl<'probe> !UnwindSafe for Memory<'probe>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more