[][src]Trait probe_rs::MemoryInterface

pub trait MemoryInterface {
    fn read_word_32(&mut self, address: u32) -> Result<u32, Error>;
fn read_word_8(&mut self, address: u32) -> Result<u8, Error>;
fn read_32(&mut self, address: u32, data: &mut [u32]) -> Result<(), Error>;
fn read_8(&mut self, address: u32, data: &mut [u8]) -> Result<(), Error>;
fn write_word_32(&mut self, address: u32, data: u32) -> Result<(), Error>;
fn write_word_8(&mut self, address: u32, data: u8) -> Result<(), Error>;
fn write_32(&mut self, address: u32, data: &[u32]) -> Result<(), Error>;
fn write_8(&mut self, address: u32, data: &[u8]) -> Result<(), Error>; }

Required methods

fn read_word_32(&mut self, address: u32) -> Result<u32, Error>

Read a 32bit word of at address.

The address where the read should be performed at has to be word aligned. Returns AccessPortError::MemoryNotAligned if this does not hold true.

fn read_word_8(&mut self, address: u32) -> Result<u8, Error>

Read an 8bit word of at address.

fn read_32(&mut self, address: u32, data: &mut [u32]) -> Result<(), Error>

Read a block of 32bit words at address.

The number of words read is data.len(). The address where the read should be performed at has to be word aligned. Returns AccessPortError::MemoryNotAligned if this does not hold true.

fn read_8(&mut self, address: u32, data: &mut [u8]) -> Result<(), Error>

Read a block of 8bit words at address.

fn write_word_32(&mut self, address: u32, data: u32) -> Result<(), Error>

Write a 32bit word at address.

The address where the write should be performed at has to be word aligned. Returns AccessPortError::MemoryNotAligned if this does not hold true.

fn write_word_8(&mut self, address: u32, data: u8) -> Result<(), Error>

Write an 8bit word at address.

fn write_32(&mut self, address: u32, data: &[u32]) -> Result<(), Error>

Write a block of 32bit words at address.

The number of words written is data.len(). The address where the write should be performed at has to be word aligned. Returns AccessPortError::MemoryNotAligned if this does not hold true.

fn write_8(&mut self, address: u32, data: &[u8]) -> Result<(), Error>

Write a block of 8bit words at address.

Loading content...

Implementations on Foreign Types

impl<'_, T> MemoryInterface for &'_ mut T where
    T: MemoryInterface
[src]

Loading content...

Implementors

impl<'probe> MemoryInterface for M0<'probe>[src]

impl<'probe> MemoryInterface for M33<'probe>[src]

impl<'probe> MemoryInterface for M4<'probe>[src]

impl<'probe> MemoryInterface for RiscvCommunicationInterface<'probe>[src]

impl<'probe> MemoryInterface for Riscv32<'probe>[src]

impl<'probe> MemoryInterface for Core<'probe>[src]

impl<AP> MemoryInterface for ADIMemoryInterface<AP> where
    AP: CommunicationInterface + APAccess<MemoryAP, CSW> + APAccess<MemoryAP, TAR> + APAccess<MemoryAP, DRW> + DPAccess
[src]

Loading content...