From b3732747cf52a743d7c4dd4a07479cc533ad5416 Mon Sep 17 00:00:00 2001 From: Ian McIntyre Date: Sat, 20 Dec 2025 16:48:32 -0500 Subject: Consolidate flash algorithm init --- src/imxrt10xx.rs | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) (limited to 'src/imxrt10xx.rs') diff --git a/src/imxrt10xx.rs b/src/imxrt10xx.rs index 095b91d..042574c 100644 --- a/src/imxrt10xx.rs +++ b/src/imxrt10xx.rs @@ -17,26 +17,28 @@ pub trait Imxrt10xx: 'static { fn configure_clocks(ccm: ccm::Instance, ccm_analog: ccm_analog::Instance, dcdc: dcdc::Instance); } -pub struct Algorithm(PhantomData<(C, F)>); +pub struct Algorithm(PhantomData); -impl Algorithm { - pub const fn flash_size_bytes() -> usize { - F::FLASH_CAPACITY_BYTES - } +impl Algorithm { pub const fn flash_address() -> usize { FLEXSPI1_BASE as _ } - pub const fn sector_size_bytes() -> usize { - F::FLASH_SECTOR_SIZE_BYTES + + pub const fn flash_size_bytes() -> usize { + FLASH_SIZE_BYTES } - pub const fn page_size_bytes() -> usize { - F::FLASH_PAGE_SIZE_BYTES + + pub const fn sector_size_bytes() -> usize { + 4 * 1024 } pub fn initialize() -> Self { C::configure_clocks(C::CCM_INSTANCE, C::CCM_ANALOG_INSTANCE, C::DCDC_INSTANCE); - crate::reset(C::FLEXSPI1_INSTANCE, F::FLASH_CAPACITY_BYTES / 1024, 128); - F::initialize(C::FLEXSPI1_INSTANCE); + crate::flash::initialize( + C::FLEXSPI1_INSTANCE, + FLASH_SIZE_BYTES, + C::FLEXSPI_FIFO_CAPACITY_BYTES, + ); Algorithm(PhantomData) } @@ -53,8 +55,8 @@ impl Algorithm { } } -impl flash_algorithm::FlashAlgorithm - for Algorithm +impl flash_algorithm::FlashAlgorithm + for Algorithm { fn new( _: u32, -- cgit v1.2.3