Commit Graph
16 Commits
Author SHA1 Message Date
sonika.rathi 2820aa64c3 fix(fatfs): normalize fatfs Python tool CLI output 2026-06-22 12:57:33 +02:00
Adam Múdry d8c30644c7 fix(fatfs): fix formatting in relevant python files to satisfy pre-commit check 2026-04-09 12:56:30 +02:00
Adam Múdry 1d0d45f203 fix(fatfs): fix a bug in SFN generation from LFN and rewrite to match C algorithm
Rewrite build_lfn_short_entry_name() and add _gen_numname_suffix() helper
to match the gen_numname() algorithm in ff.c. This fixes:

- chr(order) producing raw binary instead of ASCII digits
- Collision for order >= 10 when str(order) makes the name exceed 8 chars
- Hex suffix with dynamic stem shortening (matching C implementation)
- CRC16-CCITT hash for seq > 5 to reduce collision probability

Also fix LDIR_Name2_SIZE typo in long_filename_utils.py (should be
LDIR_Name3_SIZE), which made the assertion guard too permissive.

Add ShortFilenameGenerationTestCase with 9 unit tests covering single-digit,
multi-digit, hash-based, and collision-free generation scenarios.
2026-04-09 12:53:43 +02:00
Tomáš Rohlínek 7854b955a1 fix(storage/fatfs): make wl_fatfsgen.py safe mode aware 2024-03-13 12:49:49 +01:00
Adam Múdry 8e50d63fea feat(fatfs): Add an option to use 2 FATs (file allocation tables) in FATFS volumes
Should help with redundancy and data corruption when enabled but uses more space.
2024-01-18 14:03:28 +01:00
Martin Gaňo 21408698e1 fatfsgen.py: Support for detection of minimal partition size 2022-09-30 15:20:49 +02:00
Martin Gaňo 41742c2369 fatfs: enabled reading sector size and sectors count from boot sector in rawflash 2022-09-29 16:16:36 +02:00
Martin Gaňo 2a0ea8703d fatfsgen.py: enabled 512 sized sectors 2022-09-27 10:18:52 +02:00
Martin Gaňo 567f5f963c fatfsgen.py: use lfn record when forbidden character detected in the file name
The file name is recorded as a LFN when it doesn't fit 8.3 pattern or if it contains characters prohibited in SFN
2022-09-21 15:22:51 +00:00
Martin Gaňo 53c2ea2d08 fatfsgen.py: enable multiple dots in the long file name 2022-09-16 13:50:12 +02:00
Martin Gaňo 131b28314e fatfsgen.py: fixed missing NULL terminator 2022-09-14 16:55:13 +02:00
Martin Gaňo 37178dfa74 fatfsparse.py: limit the file content size to correct number 2022-09-12 14:13:03 +00:00
Martin Gaňo 2d173c0777 fatfsgen.py: enabled extension of the FAT table
Closes IDF-5688
2022-08-01 20:29:02 +02:00
Martin Gaňo 2ddcda29b3 fatfsparse.py: Add support for WL 2022-07-26 14:50:07 +02:00
Martin Gaňo 0f160c8f11 fatfs: enable long file names for fatfsparse.py 2022-06-09 15:51:03 +02:00
Martin Gano 8ef66536ed fatfsparse.py: add cluster chaining support to enable reading longer-than-sector files
Closes IDF-4975
2022-05-25 15:49:24 +02:00