Skip to content

Make SPIFFS be an integer number of blocks #5989

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
Jul 9, 2019
Merged
150 changes: 75 additions & 75 deletions boards.txt

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion package/package_esp8266com_index.template.json
Original file line number Diff line number Diff line change
Expand Up @@ -299,4 +299,4 @@
]
}
]
}
}
11 changes: 6 additions & 5 deletions tools/boards.txt.py
Original file line number Diff line number Diff line change
Expand Up @@ -1172,11 +1172,14 @@ def flash_map (flashsize_kb, spiffs_kb = 0):
else:
max_upload_size = 1024 * 1024 - reserved
spiffs_start = (flashsize_kb - spiffs_kb) * 1024
if spiffs_kb < 512:
if spiffs_kb <= 512:
spiffs_blocksize = 4096
else:
spiffs_blocksize = 8192

# Adjust SPIFFS_end to be a multiple of the block size
spiffs_end = spiffs_blocksize * (int)((spiffs_end - spiffs_start)/spiffs_blocksize) + spiffs_start;

strsize = str(int(flashsize_kb / 1024)) + 'M' if (flashsize_kb >= 1024) else str(flashsize_kb) + 'K'
strspiffs = str(int(spiffs_kb / 1024)) + 'M' if (spiffs_kb >= 1024) else str(spiffs_kb) + 'K'
strspiffs_strip = str(int(spiffs_kb / 1024)) + 'M' if (spiffs_kb >= 1024) else str(spiffs_kb) if (spiffs_kb > 0) else ''
Expand Down Expand Up @@ -1217,13 +1220,11 @@ def flash_map (flashsize_kb, spiffs_kb = 0):
if spiffs_kb == 0:
spiffs_start = spiffs_end
page = 0
block = 0
spiffs_blocksize = 0
elif spiffs_kb < 0x80000 / 1024:
page = 0x100
block = 0x1000
else:
page = 0x100
block = 0x2000

print("/* Flash Split for %s chips */" % strsize)
print("/* sketch @0x%X (~%dKB) (%dB) */" % (spi, (max_upload_size / 1024), max_upload_size))
Expand All @@ -1246,7 +1247,7 @@ def flash_map (flashsize_kb, spiffs_kb = 0):
print("PROVIDE ( _SPIFFS_start = 0x%08X );" % (0x40200000 + spiffs_start))
print("PROVIDE ( _SPIFFS_end = 0x%08X );" % (0x40200000 + spiffs_end))
print("PROVIDE ( _SPIFFS_page = 0x%X );" % page)
print("PROVIDE ( _SPIFFS_block = 0x%X );" % block)
print("PROVIDE ( _SPIFFS_block = 0x%X );" % spiffs_blocksize)
print("")
print('INCLUDE "local.eagle.app.v6.common.ld"')

Expand Down
4 changes: 2 additions & 2 deletions tools/sdk/ld/eagle.flash.16m14m.ld
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* Flash Split for 16M chips */
/* sketch @0x40200000 (~1019KB) (1044464B) */
/* empty @0x402FEFF0 (~1028KB) (1052688B) */
/* spiffs @0x40400000 (~14316KB) (14659584B) */
/* spiffs @0x40400000 (~14312KB) (14655488B) */
/* eeprom @0x411FB000 (4KB) */
/* rfcal @0x411FC000 (4KB) */
/* wifi @0x411FD000 (12KB) */
Expand All @@ -15,7 +15,7 @@ MEMORY
}

PROVIDE ( _SPIFFS_start = 0x40400000 );
PROVIDE ( _SPIFFS_end = 0x411FB000 );
PROVIDE ( _SPIFFS_end = 0x411FA000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );

Expand Down
4 changes: 2 additions & 2 deletions tools/sdk/ld/eagle.flash.16m15m.ld
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* Flash Split for 16M chips */
/* sketch @0x40200000 (~1019KB) (1044464B) */
/* empty @0x402FEFF0 (~4KB) (4112B) */
/* spiffs @0x40300000 (~15340KB) (15708160B) */
/* spiffs @0x40300000 (~15336KB) (15704064B) */
/* eeprom @0x411FB000 (4KB) */
/* rfcal @0x411FC000 (4KB) */
/* wifi @0x411FD000 (12KB) */
Expand All @@ -15,7 +15,7 @@ MEMORY
}

PROVIDE ( _SPIFFS_start = 0x40300000 );
PROVIDE ( _SPIFFS_end = 0x411FB000 );
PROVIDE ( _SPIFFS_end = 0x411FA000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );

Expand Down
2 changes: 1 addition & 1 deletion tools/sdk/ld/eagle.flash.1m512.ld
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,6 @@ MEMORY
PROVIDE ( _SPIFFS_start = 0x4027B000 );
PROVIDE ( _SPIFFS_end = 0x402FB000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );
PROVIDE ( _SPIFFS_block = 0x1000 );

INCLUDE "local.eagle.app.v6.common.ld"
4 changes: 2 additions & 2 deletions tools/sdk/ld/eagle.flash.2m1m.ld
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* Flash Split for 2M chips */
/* sketch @0x40200000 (~1019KB) (1044464B) */
/* empty @0x402FEFF0 (~4KB) (4112B) */
/* spiffs @0x40300000 (~1004KB) (1028096B) */
/* spiffs @0x40300000 (~1000KB) (1024000B) */
/* eeprom @0x403FB000 (4KB) */
/* rfcal @0x403FC000 (4KB) */
/* wifi @0x403FD000 (12KB) */
Expand All @@ -15,7 +15,7 @@ MEMORY
}

PROVIDE ( _SPIFFS_start = 0x40300000 );
PROVIDE ( _SPIFFS_end = 0x403FB000 );
PROVIDE ( _SPIFFS_end = 0x403FA000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );

Expand Down
2 changes: 1 addition & 1 deletion tools/sdk/ld/eagle.flash.2m512.ld
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,6 @@ MEMORY
PROVIDE ( _SPIFFS_start = 0x40380000 );
PROVIDE ( _SPIFFS_end = 0x403FB000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );
PROVIDE ( _SPIFFS_block = 0x1000 );

INCLUDE "local.eagle.app.v6.common.ld"
4 changes: 2 additions & 2 deletions tools/sdk/ld/eagle.flash.4m1m.ld
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* Flash Split for 4M chips */
/* sketch @0x40200000 (~1019KB) (1044464B) */
/* empty @0x402FEFF0 (~2052KB) (2101264B) */
/* spiffs @0x40500000 (~1004KB) (1028096B) */
/* spiffs @0x40500000 (~1000KB) (1024000B) */
/* eeprom @0x405FB000 (4KB) */
/* rfcal @0x405FC000 (4KB) */
/* wifi @0x405FD000 (12KB) */
Expand All @@ -15,7 +15,7 @@ MEMORY
}

PROVIDE ( _SPIFFS_start = 0x40500000 );
PROVIDE ( _SPIFFS_end = 0x405FB000 );
PROVIDE ( _SPIFFS_end = 0x405FA000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );

Expand Down
4 changes: 2 additions & 2 deletions tools/sdk/ld/eagle.flash.4m2m.ld
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* Flash Split for 4M chips */
/* sketch @0x40200000 (~1019KB) (1044464B) */
/* empty @0x402FEFF0 (~1028KB) (1052688B) */
/* spiffs @0x40400000 (~2028KB) (2076672B) */
/* spiffs @0x40400000 (~2024KB) (2072576B) */
/* eeprom @0x405FB000 (4KB) */
/* rfcal @0x405FC000 (4KB) */
/* wifi @0x405FD000 (12KB) */
Expand All @@ -15,7 +15,7 @@ MEMORY
}

PROVIDE ( _SPIFFS_start = 0x40400000 );
PROVIDE ( _SPIFFS_end = 0x405FB000 );
PROVIDE ( _SPIFFS_end = 0x405FA000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );

Expand Down
4 changes: 2 additions & 2 deletions tools/sdk/ld/eagle.flash.4m3m.ld
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* Flash Split for 4M chips */
/* sketch @0x40200000 (~1019KB) (1044464B) */
/* empty @0x402FEFF0 (~4KB) (4112B) */
/* spiffs @0x40300000 (~3052KB) (3125248B) */
/* spiffs @0x40300000 (~3048KB) (3121152B) */
/* eeprom @0x405FB000 (4KB) */
/* rfcal @0x405FC000 (4KB) */
/* wifi @0x405FD000 (12KB) */
Expand All @@ -15,7 +15,7 @@ MEMORY
}

PROVIDE ( _SPIFFS_start = 0x40300000 );
PROVIDE ( _SPIFFS_end = 0x405FB000 );
PROVIDE ( _SPIFFS_end = 0x405FA000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );

Expand Down
4 changes: 2 additions & 2 deletions tools/sdk/ld/eagle.flash.8m6m.ld
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* Flash Split for 8M chips */
/* sketch @0x40200000 (~1019KB) (1044464B) */
/* empty @0x402FEFF0 (~1028KB) (1052688B) */
/* spiffs @0x40400000 (~6124KB) (6270976B) */
/* spiffs @0x40400000 (~6120KB) (6266880B) */
/* eeprom @0x409FB000 (4KB) */
/* rfcal @0x409FC000 (4KB) */
/* wifi @0x409FD000 (12KB) */
Expand All @@ -15,7 +15,7 @@ MEMORY
}

PROVIDE ( _SPIFFS_start = 0x40400000 );
PROVIDE ( _SPIFFS_end = 0x409FB000 );
PROVIDE ( _SPIFFS_end = 0x409FA000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );

Expand Down
4 changes: 2 additions & 2 deletions tools/sdk/ld/eagle.flash.8m7m.ld
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* Flash Split for 8M chips */
/* sketch @0x40200000 (~1019KB) (1044464B) */
/* empty @0x402FEFF0 (~4KB) (4112B) */
/* spiffs @0x40300000 (~7148KB) (7319552B) */
/* spiffs @0x40300000 (~7144KB) (7315456B) */
/* eeprom @0x409FB000 (4KB) */
/* rfcal @0x409FC000 (4KB) */
/* wifi @0x409FD000 (12KB) */
Expand All @@ -15,7 +15,7 @@ MEMORY
}

PROVIDE ( _SPIFFS_start = 0x40300000 );
PROVIDE ( _SPIFFS_end = 0x409FB000 );
PROVIDE ( _SPIFFS_end = 0x409FA000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );

Expand Down