aboutsummaryrefslogtreecommitdiff
path: root/imxrt1040evk/src
diff options
context:
space:
mode:
Diffstat (limited to 'imxrt1040evk/src')
-rw-r--r--imxrt1040evk/src/lib.rs7
-rw-r--r--imxrt1040evk/src/main.rs25
2 files changed, 32 insertions, 0 deletions
diff --git a/imxrt1040evk/src/lib.rs b/imxrt1040evk/src/lib.rs
new file mode 100644
index 0000000..ad2bb57
--- /dev/null
+++ b/imxrt1040evk/src/lib.rs
@@ -0,0 +1,7 @@
+#![no_std]
+
+use cortex_m as _;
+
+pub use imxrt1040_flash_algos::flash::winbond::W25q64 as Flash;
+
+pub type Algorithm = imxrt1040_flash_algos::Algorithm<Flash>;
diff --git a/imxrt1040evk/src/main.rs b/imxrt1040evk/src/main.rs
new file mode 100644
index 0000000..87d76cf
--- /dev/null
+++ b/imxrt1040evk/src/main.rs
@@ -0,0 +1,25 @@
+#![no_std]
+#![no_main]
+
+use defmt_rtt as _;
+use panic_probe as _;
+
+use imxrt1040evk::Algorithm;
+
+flash_algorithm::algorithm!(Algorithm, {
+ device_name: "imxrt1040_w25q64_132mhz",
+ device_type: DeviceType::Onchip,
+ flash_address: Algorithm::flash_address() as _,
+ flash_size: Algorithm::flash_size_bytes() as _,
+ // We support page crossings. Suggest a larger page
+ // size so that probe-rs places larger buffers into
+ // RAM per programming operation, reducing overhead.
+ page_size: 4096,
+ empty_value: 0xFF,
+ program_time_out: 1000,
+ erase_time_out: 2000,
+ sectors: [{
+ size: Algorithm::sector_size_bytes() as u32,
+ address: 0x0,
+ }]
+});