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