This is a tracking issue for the minimal stabilization of esp_hal::flash, the in-tree replacement for esp-storage. The minimal stable surface is:
Flash<'_, Blocking>, constructed with Flash::new(FLASH, Config)
apply_config, and inherent read, write, erase, capacity
Config, ConfigError, flash::Error
- stable
peripherals.FLASH
impl<'d> Flash<'d, Blocking> {
pub fn new(flash: FLASH<'d>, config: Config) -> Result<Self, ConfigError>;
pub fn apply_config(&mut self, config: &Config) -> Result<(), ConfigError>;
#[ram]
pub fn read(&mut self, offset: u32, data: &mut [u8]) -> Result<(), Error>;
#[ram]
pub fn write(&mut self, offset: u32, data: &[u8]) -> Result<(), Error>;
#[ram]
pub fn erase(&mut self, from: u32, to: u32) -> Result<(), Error>;
pub fn capacity(&self) -> usize;
}
Encrypted access, the embedded-storage trait impls and chip_info ship but stay unstable.
To get here will require a few steps, tracked as sub-issues.
This is a tracking issue for the minimal stabilization of
esp_hal::flash, the in-tree replacement for esp-storage. The minimal stable surface is:Flash<'_, Blocking>, constructed withFlash::new(FLASH, Config)apply_config, and inherentread,write,erase,capacityConfig,ConfigError,flash::Errorperipherals.FLASHEncrypted access, the embedded-storage trait impls and
chip_infoship but stay unstable.To get here will require a few steps, tracked as sub-issues.