Commit Graph

27 Commits

Author SHA1 Message Date
King Kévin a716cb10cf flash_internal: add support for STM32F401CE 2021-05-14 14:30:15 +02:00
King Kévin 87af738378 flash_internal: remove F1 flash utilities, add F4 section utility
compared to the STM32F1, the STM32F4 does not used 1 KB flash pages.
F4 uses variable large (>= 16 KB) flash sections.
this makes using the last page (128 KB instead of 1KB) for EEPROM highly inefficient.
caching such large pages before reprogramming small portion is also no doable (there is not enough RAM).
thus almost all F1 utilities are not applicable anymore.
to help erasing the right section, a utility to get the section from an address is added.
2020-12-11 00:00:25 +01:00
King Kévin 5a028c23c4 flash_internal: probe_write only tests over advertized flash (works also with linker info) 2020-06-24 11:58:03 +02:00
King Kévin e054774544 flash_internal: don't used unreliable MCUID to figure out flash page size 2020-06-24 11:57:35 +02:00
King Kévin 8142854522 flash_internal: replace probe size with more accurate probe_read and probe_write 2020-06-24 11:57:28 +02:00
King Kévin e71515bcce replace header license with SPDX statement 2020-06-10 19:04:41 +02:00
King Kévin 1ac92ec4ac flash_internal: add function to probe actual flash size 2020-03-08 18:17:37 +01:00
King Kévin 2b3b4431e2 flash_internal: improve page size detection 2020-03-08 18:17:03 +01:00
King Kévin becf280d9a flash_internal: fix, EEPROM now grows from the end since invalidating does not work 2020-02-19 20:59:26 +01:00
King Kévin b7e72bba67 flash_internal: use common page size and flash end address 2020-02-19 20:58:32 +01:00
King Kévin 2520df3e72 flash_internal: fix provided flash size detection 2020-01-10 11:15:09 +01:00
King Kévin 99bf7157b2 flash_internal: fix erase for any bit write 2020-01-06 13:00:46 +01:00
King Kévin ee0b68e836 flash_internal: flash only when data is different 2020-01-04 14:36:13 +01:00
King Kévin f85a3d2439 flash_internal: fix error return code 2020-01-04 14:35:28 +01:00
King Kévin 08cba3cd71 flash_internal: add emulated EEPROM functionnality 2020-01-03 18:13:05 +01:00
King Kévin 0a8b23069a flash_internal: minor, fix spacing 2020-01-03 18:13:00 +01:00
King Kévin 5ed491defb flash_internal: add page size method 2020-01-03 18:12:56 +01:00
King Kévin 822b66ea8f flash_internal: only flash relevant bits 2020-01-03 18:12:50 +01:00
King Kévin a6fb25b6c6 flash_internal: minor, update doc/comment 2020-01-03 18:12:44 +01:00
King Kévin fe16ad18cd flash_internal: minor, fix spacing 2020-01-03 18:09:12 +01:00
King Kévin 5c976064b0 flash_internal: return number of bytes written 2018-10-29 12:29:47 +01:00
King Kévin 6c829a51cf flash: only erase and preserve flash when required or requested 2018-10-28 22:50:51 +01:00
King Kévin 98a1f05ac6 flash_internal: fix page size detection 2018-04-07 11:16:28 +02:00
King Kévin 7b90696b6c flash internal: check enforced flash size 2018-04-06 19:56:57 +02:00
King Kévin 62bfaf3973 cherry-pick from busvoodoo branch, part 4 2018-02-18 15:21:18 +01:00
King Kévin d7220e1106 make flash library more general purpose and optimize if 2017-04-15 13:57:02 +02:00
King Kévin dade16b86a document flash library 2016-08-14 19:25:38 +02:00