Martin Vychodil
6c8c76f257
Merge branch 'bugfix/fatfs_memory_leak_with_dyn_buffer' into 'master'
...
fix(fatfs): fix a memory leak bug when FF_USE_DYN_BUFFER was enabled
Closes IDF-15593
See merge request espressif/esp-idf!47769
2026-04-22 04:33:30 +08:00
LiPeng
a8b5b8d582
fix(fatfs): fix a memory leak bug when FF_USE_DYN_BUFFER was enabled
2026-04-21 11:54:39 +08:00
Adam Múdry
c55b61d99f
Merge branch 'fix/python3.14_test_fatfsgen' into 'master'
...
fix(fatfs): fix operator precedence bug in BootSector.__str__ for Python 3.14 compatibility
Closes IDF-15550
See merge request espressif/esp-idf!47479
2026-04-13 16:08:16 +02:00
Adam Múdry
b29b9dc4d2
Merge branch 'feat/cmake_add_partition_flash_binary_function' into 'master'
...
feat(esp_partition): Add esp_partition_register_target Cmake function
Closes IDF-11870 and DOC-14244
See merge request espressif/esp-idf!37176
2026-04-13 15:54:27 +02:00
Adam Múdry
749c446a7e
feat(esp_partition): Add esp_partition_flash_binary() CMake function
...
Add a new CMake function esp_partition_flash_binary() that provides a
unified API for registering partition data binaries to be flashed. It
replaces the direct esptool_py_flash_target calls scattered across
components (spiffs, fatfs, nvs_flash) with a single function that:
- Resolves partition offset from the partition table automatically
- Determines encryption requirements (auto-detect or ALWAYS_PLAINTEXT)
- Creates per-partition flash targets (e.g. idf.py <partition>-flash)
- Optionally includes the binary in `idf.py flash` via FLASH_IN_PROJECT
On the linux target, the function registers binaries for pre-loading
into the emulated flash. A build-time manifest (linux_flash_data.txt)
is generated via file(GENERATE), and partition_linux.c reads it at
runtime to copy each binary into the memory-mapped flash buffer at
the correct offset.
The partition_ops example is updated to use the new function and
includes a custom_partition with pre-built data to demonstrate the
full workflow, including on the linux target.
2026-04-10 15:22:50 +02:00
wanckl
99bf74f022
feat(driver_spi): s31 gpspi driver support
2026-04-10 14:22:17 +08:00
Martin Vychodil
a8136c5a20
Merge branch 'fix/fatfsgen-sfn-ascii-numeric-tail' into 'master'
...
fix(fatfs): fix SFN generation from LFN (numeric tail ASCII encoding, switching to CRC hex numbers to mirror FATFS logic, etc.)
Closes IDF-15479
See merge request espressif/esp-idf!46828
2026-04-09 23:43:58 +08:00
Adam Múdry
5867550fb8
fix(fatfs): fix operator precedence bug in BootSector.__str__ for Python 3.14 compatibility
...
The condition filtering attributes lacked parentheses, causing the
'not startswith(_)' guard to only apply to str attributes. Python 3.14's
new __firstlineno__ (int) class attribute leaked into the output.
Also includes ruff auto-formatting fixes (imports, trailing commas,
union type annotations).
2026-04-09 15:36:43 +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
Martin Vychodil
85ead6f5d4
fix(fatfs): Added tests for FATFS re-registration and VFS adapter early returns
2026-04-07 13:12:54 +02:00
Martin Vychodil
8240eea180
fix(fatfs): Fixed VFS adapter early return paths
2026-04-07 13:12:42 +02:00
Martin Vychodil
26ceedb5f8
fix(fatfs): Fixed uninitialized FATFS pointer for already mounted path
2026-04-07 12:08:49 +02:00
Martin Vychodil
7043fb0d14
feat(fatfs): Added BDL support to FatFS component
2026-04-07 07:11:21 +02:00
jay candel
11c2d1b472
fix(fatfs): correct preprocessor guard for fail label in f_open
2026-03-23 17:53:26 +01:00
sonika.rathi
bcfc900fe1
fix(fatfs): remove incorrect retval description from void ff_mutex_delete
2026-03-17 15:37:18 +01:00
sonika.rathi
5381064130
fix(fatfs): fix f_getfree crash when volume not mounted or mount failed
2026-03-17 15:37:17 +01:00
Evgeny Torbin
d0f062c018
ci: remove unused test cases
2026-03-12 12:02:10 +01:00
Tomáš Rohlínek
96f820e535
feat(storage/fatfs): Allow fatfs buffers to be aligned for DMA access
2026-02-25 12:50:20 +01:00
Tomas Rohlinek
ff2b43f31b
Merge branch 'fix/minimize_dependencies' into 'master'
...
feat(storage): Minimize dependencies for test cases
Closes IDF-15321
See merge request espressif/esp-idf!45832
2026-02-24 16:06:21 +01:00
Tomáš Rohlínek
4575ac1f5e
feat(storage): Minimize dependencies for test cases
2026-02-18 13:43:27 +01:00
Adam Múdry
d58b9406d8
fix: Update examples etc. to use esp_vfs_fat_register
...
Instead of deprecated esp_vfs_fat_register_cfg
2026-02-04 16:33:40 +01:00
Adam Múdry
38256a6b11
refactor(fatfs): Update esp_vfs_fat_register function prototype
...
to match esp_vfs_fat_register_cfg
2026-02-04 16:33:40 +01:00
Adam Múdry
1e195254e7
fix(fatfs): fatfs test_apps remove esp32c3 from sdcard_sdmode test
2026-01-28 13:42:33 +01:00
Igor Udot
f4cb052666
Merge branch 'ci/base_components' into 'master'
...
ci: use common_components in depends_components
See merge request espressif/esp-idf!45070
2026-01-26 09:08:11 +08:00
igor.udot
4c26ab876b
ci: update build-test-rules to use common_components
2026-01-23 10:14:09 +08:00
Adam Múdry
d989204741
fix(fatfs): Calculate max_pos in wl_fatfsgen.py safe mode correctly
2026-01-22 15:17:36 +01:00
Adam Múdry
5e8a6c0816
fix: Satisfy Python formatter
2026-01-22 15:11:17 +01:00
Tomáš Rohlínek
8c9d62de98
feat(storage/vfs): Remove old API usage
2025-12-16 17:48:55 +08:00
C.S.M
f405e51784
ci(esp32s31): Add ci build test for esp32s31
2025-12-11 15:17:15 +08:00
sonika.rathi
075417de1a
fix(fatfs): In vfs_fat_* calls, add _lock_acquire in missing places
2025-11-27 15:24:29 +01:00
Sonika Rathi
7fb2f80fe0
Merge branch 'feat/vfs_linux' into 'master'
...
feat(vfs): Add support for linux target in VFS
See merge request espressif/esp-idf!39524
2025-11-27 22:12:06 +08:00
Martin Vychodil
a6e7046c30
Merge branch 'feat/fatfs_r_0_16' into 'master'
...
feat(storage/fatfs): Update to FatFS R0.16
Closes IDF-14371
See merge request espressif/esp-idf!42810
2025-11-19 19:47:42 +08:00
Tomáš Rohlínek
36045c6ca1
feat(storage/fatfs): Make host_test results easier to understand
2025-11-10 12:48:53 +01:00
Tomáš Rohlínek
f781970329
feat(storage/fatfs): Update to FatFS R0.16
2025-11-10 12:42:52 +01:00
sonika.rathi
6216b017f0
feat(vfs): add 'fatfs' host test to include 'vfs' support
2025-11-05 09:49:21 +01:00
Tomáš Rohlínek
f6ba0d8aa0
feat(storage/fatfs): Update default configuration to better fit average usecase
2025-10-15 09:30:02 +02:00
Chen Chen
a4710cc206
refactor(driver): remove redundant driver dependencies
...
now the driver component only contains legacy code for i2c, twai and
touch sensor
2025-09-30 15:47:45 +08:00
Adam Múdry
beaf579f9b
fix(storage): Refactor FATFS VFS functions to be easier to understand
2025-09-26 18:17:15 +08:00
Armando (Dou Yiwen)
a4c03ceb01
Merge branch 'change/remove_deprecated_items' into 'master'
...
change: remove deprecated items
See merge request espressif/esp-idf!41769
2025-09-16 13:43:28 +00:00
armando
00022a379a
change: remove deprecated items
2025-09-15 10:52:28 +08:00
sonika.rathi
b6956d7bc8
fix(fatfs): fix overflowed constant issue observed in mount_volume of ff.c
2025-08-26 13:58:56 +02:00
Marek Fiala
9d35d63651
feat(cmake): Update minimum cmake version to 3.22 (whole repository)
2025-08-19 14:44:32 +02:00
Sudeep Mohanty
30083e07be
refactor(esptool_py): Re-evalute dependencies of esptool_py
...
This commit establishes the foundation for making the esptool_py
component idempotent.
The following changes are made in this commit:
- Removes unnecessary dependency of esp_wifi component on esptool_py.
- Add missing esptool_py dependencies to components which directly use
esptool_py specific functions or variables but do not declare a public
or private dependency.
2025-07-10 11:26:28 +02:00
Alexey Lapshin
e82d51a9ee
fix(picolibc): fix missed headers in sources
2025-06-25 18:01:50 +07:00
Adam Múdry
93ff1aec46
Merge branch 'feat/remove_const_from_voltopart' into 'master'
...
feat(fatfs/diskio): Remove const from PARTITION VolToPart
Closes IDFGH-13211
See merge request espressif/esp-idf!38150
2025-04-16 23:46:19 +08:00
Tomas Rohlinek
7005b101bf
Merge branch 'fix/fatfs_use_dyn_buf_kconfig_mistake' into 'master'
...
fix(fatfs): Mistake in Kconfig for FATFS_USE_DYN_BUFFERS
Closes IDF-11789
See merge request espressif/esp-idf!35182
2025-04-09 23:45:03 +08:00
Tomáš Rohlínek
b1997ebab6
feat(storage/fatfs): add dynamic buffer usage test
2025-04-09 14:02:44 +02:00
Martin Vychodil
fe73a61b2b
Merge branch 'fix/fatfs_rw_mount_ro_image' into 'master'
...
feat(storage/fatfs): increase log legibility for fatfs mount
Closes IDF-12569
See merge request espressif/esp-idf!37407
2025-04-09 16:29:57 +08:00
Adam Múdry
82dac1f1bd
fix(fatfs): Mistake in Kconfig for FATFS_USE_DYN_BUFFERS
2025-04-09 09:18:02 +02:00