288 Commits

Author SHA1 Message Date
C.S.M 152b5ccb4c ci(esp32s31): Add ci target test for esp32s31 2026-04-03 11:38:45 +08:00
Ashish Sharma f93575a622 feat(secure_boot): adds api to verify data partition integrity
Closes https://github.com/espressif/esp-idf/issues/17482
2026-03-04 10:22:33 +08:00
hrushikesh.bhosale 126731f5ea refactor(app_update): Removed the common_component dependency
- Removed the common_component build dependency from app_update and
ota examples
2026-02-12 15:48:19 +05:30
Mahavir Jain 21f8ca5e6f feat(app_update): add API for checking the spi mode compatibility
New API to check the SPI flash mode from the incoming firmware image
during OTA updates could prevent bootloader/app incompatibility of
DIO vs QIO flash modes.

More information:
 - https://github.com/espressif/esp-hosted-mcu/issues/143#issuecomment-3741753788
 - https://github.com/espressif/esp-idf/issues/9674#issuecomment-1232533757
 - https://github.com/espressif/esp-idf/issues/9542#issuecomment-1211317354
2026-02-10 12:53:50 +05:30
Chen Ji Chang 7a8a5d8852 Merge branch 'test/parlio_flash_enc_test' into 'master'
test(parlio,rmt,lcd): add virtual flash encryption test

Closes IDF-15064, IDF-15065, and IDF-15069

See merge request espressif/esp-idf!45006
2026-02-06 19:26:22 +08:00
Chen Jichang b8c527a87c refactor(flash_enc): move esp_flash_encryption_enabled() to efuse component 2026-02-05 11:42:08 +08:00
nilesh.kale 5f80b77b55 fix: Add conflict detection for concurrent OTA operations on same partition
This change adds conflict detection to prevent multiple OTA operations from
being initiated on the same partition simultaneously.

Closes https://github.com/espressif/esp-idf/issues/18127
2026-02-04 12:04:50 +05:30
Mahavir Jain 9eb3b5e784 Merge branch 'contrib/github_pr_18025' into 'master'
feat(app_update): esp_ota_set_boot_partition_without_validate() (GitHub PR)

Closes IDFGH-16972

See merge request espressif/esp-idf!45555
2026-02-03 10:51:17 +05:30
Mahavir Jain ab97927dab feat(app_update): misc cleanup and rename API for clarity 2026-01-30 14:32:31 +05:30
Michael (XIAO Xufeng) 5984b29af5 Merge branch 'refactor/spi_flash_private' into 'master'
refactor(spi_flash): reorganize header files, improve encapsulation and simplify ROM implementation

See merge request espressif/esp-idf!44347
2026-01-28 17:39:51 +08:00
Mahavir Jain a174994cba Merge branch 'fix/app_update_tests' into 'master'
fix(app_update): Fix tests for app_update on ESP32C5

See merge request espressif/esp-idf!45401
2026-01-27 10:32:42 +05:30
Konstantin Kondrashov e86fc30571 fix(app_update): Fix tests for app_update on ESP32C5 2026-01-23 14:32:39 +02:00
igor.udot 4c26ab876b ci: update build-test-rules to use common_components 2026-01-23 10:14:09 +08:00
Xiao Xufeng 8dbf23630a refactor(spi_flash): reorganize header files and improve API encapsulation
This commit reorganizes SPI flash header files to better reflect their
visibility and intended usage:

1. Rename `esp_flash_port/` to `esp_flash_chips/`:
   - Better reflects that these headers are for chip driver implementations
   - All chip driver headers moved to `esp_flash_chips/` directory
   - Added README.md explaining semi-public nature of these headers

2. Move internal headers to `esp_private/`:
   - `esp_flash_internal.h` -> `esp_private/esp_flash_internal.h`
   - `memspi_host_driver.h` -> `esp_private/memspi_host_driver.h`

3. Move chip driver related headers to `esp_flash_chips/`:
   - `esp_private/esp_flash_types.h` -> `esp_flash_chips/esp_flash_types.h`
   - `spi_flash/spi_flash_defs.h` -> `esp_flash_chips/spi_flash_defs.h`
   - `spi_flash_override.h` -> `esp_flash_chips/spi_flash_override.h`
   - All `spi_flash_chip_*.h` headers moved to `esp_flash_chips/`

4. Code improvements:
   - Remove unused includes (e.g., `spi_flash_override.h` from `cache_utils.c`)
   - Use public API `esp_flash_get_size()` instead of direct member access
   - Add `esp_flash_is_quad_mode` to linker.lf for IRAM placement

5. Documentation updates:
   - Add README.md in `esp_flash_chips/` explaining semi-public headers
   - Update programming guide with warnings about internal headers
   - Update both English and Chinese documentation

6. Update all references across the codebase:
   - Update includes in `spi_flash` component
   - Update `bootloader_support`, `app_update`, `esp_tee`, `espcoredump`
   - Update example projects

Breaking changes:
- Headers moved to new locations require include path updates
- `custom_flash_driver` example temporarily disabled until external
  components are updated
2026-01-23 03:38:54 +08:00
Pechorin 53d619a36f doc: clarify NULL return value of esp_ota_get_last_invalid_partition
Clarified return value of esp_ota_get_last_invalid_partition function.
2026-01-14 13:35:18 +05:00
Nebojša Cvetković 47ab3735c2 feat(app_update): esp_ota_set_boot_partition_without_validate() 2025-12-18 11:25:06 +00:00
C.S.M f405e51784 ci(esp32s31): Add ci build test for esp32s31 2025-12-11 15:17:15 +08:00
wanckl 4fe7e6ac18 ci(p4): p4 eco5 enable parts of special tests 2025-12-08 13:59:25 +08:00
Aditya Patwardhan e2025fce69 Merge branch 'fix/align_ota_written_size_during_ota_resumption_to_last_16_byte_boundry' into 'master'
fix(esp_https_ota): align OTA resumption offset to 16-byte boundary

See merge request espressif/esp-idf!42742
2025-12-05 14:05:41 +05:30
Igor Udot 84d2b57df9 Merge branch 'ci/check_build_test_rules' into 'master'
ci: fix mismatch in check_build_test_rules

Closes CII-49 and CII-50

See merge request espressif/esp-idf!43937
2025-12-05 11:56:39 +08:00
igor.udot 8c233aa9bd ci: temp_skip_ci for p4 2025-12-04 18:08:33 +08:00
nilesh.kale a7944d1aea Revert "fix: add check to ensure OTA buffer size for 16-byte aligned"
This reverts commit 873fd18c5a.
2025-12-04 10:51:35 +05:30
Konstantin Kondrashov 642126dde0 feat(bootloader_support): Update depends_components
Where bootloader_support is used as depends_components:
- components/app_update/test_apps
- components/bootloader_support/test_apps/bootloader_support
- components/bootloader_support/test_apps/rtc_custom_section
- examples/custom_bootloader/bootloader_extra_dir
- examples/custom_bootloader/bootloader_hooks
- examples/custom_bootloader/bootloader_multiboot
- examples/custom_bootloader/bootloader_override
- examples/security/flash_encryption
- examples/security/security_features_app
- examples/system/efuse
- examples/system/ota/native_ota_example
- tools/test_apps/system/mmu_page_size
2025-11-26 18:23:09 +02:00
Mahavir Jain 4f7e2a3597 Merge branch 'contrib/github_pr_17894' into 'master'
docs: fix typos in some files (GitHub PR)

Closes IDFGH-16818

See merge request espressif/esp-idf!43463
2025-11-19 00:09:09 +05:30
khanhkhanhlele 22ad2e6c4c Fix typos in some files 2025-11-18 11:17:45 +07:00
armando b25ba4a0c1 ci(p4): disable p4 rev3 invalid tests temporarily 2025-11-17 12:11:39 +08:00
nilesh.kale 873fd18c5a fix: add check to ensure OTA buffer size for 16-byte aligned
This commit added guide to, round off OTA written size to allowed
aignmnet when flash ecnryption enabled.
2025-10-07 11:19:35 +05:30
Peter Dragun 800f141f94 Merge branch 'feat/esptool_v5' into 'master'
Update esptool to v5: replace deprecated commands, documentation updates and cleanup

Closes IDF-12564

See merge request espressif/esp-idf!41176
2025-10-01 14:36:26 +08:00
Peter Dragun e3198fff3c feat: Update esptool to v5 2025-09-30 15:28:55 +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
Konstantin Kondrashov dcf486359e feat(log): Optimize log tag init for bin logging 2025-09-15 15:59:52 +03:00
Mahavir Jain ce4ef7a2bf cleanup: remove ota app descriptor source
Leftover from earlier cleanup commit 42914e01ee
2025-09-03 09:09:04 +05:30
Mahavir Jain 42914e01ee feat: remove some deprecated APIs from 6.0 release 2025-08-20 14:20:37 +05:30
Marek Fiala 9d35d63651 feat(cmake): Update minimum cmake version to 3.22 (whole repository) 2025-08-19 14:44:32 +02:00
Darian Leung 5454499877 refactor: Use enum values for gpio pull up/down fields
Ensure that enum values are used When assigning `pull_up_en` and `pull_down_en`
fields of `gpio_config_t`. Helps avoid `invalid conversion` errors when
building those code snippets in C++.
2025-08-07 11:45:11 +08:00
Marius Vikhammer bf84ab652a change(test_utils): moved test_utils component to tools/test_apps/components/ 2025-07-21 14:05:50 +08:00
Sudeep Mohanty ef4d6462e2 refactor(esptool_py): Move flash target creation to project level and add utility functions
This commit refactors the esptool_py component to provide utility
functions for flash target management instead of creating the targets
directly. Flash target creation is now moved to the project level in
build.cmake file when idf_build_executable() runs.

The following changes were done in this commit:
- Added __esptool_py_setup_tools(), __esptool_py_setup_estool_py_args()
  and __ensure_esptool_py_setup() functions to centralize esptool_py
  setup.
- Added __esptool_py_setup_main_flash_target() which is called by
  idf_build_executable() to create the flash targets.
- Updated esptool_py_flash_target(), esptool_py_custom_target() to
  accept an optional FILENAME_PREFIX argument to enable creation of
  build artifacts based on custom names.
- Create placeholder flash targets early in the build process when
  idf_build_process() is called for components to add dependencies on
  these targets.
- Moved app-flash target creation from esptool_py/CMakeLists.txt to
  build.cmake.
- Added function description to esptool_py functions.
2025-07-10 11:26:28 +02:00
Konstantin Kondrashov 3a7c1a2e74 feat(bootloader): Bootloader OTA update with recovery bootloader feat 2025-06-12 18:47:33 +08:00
Nilesh Kale 996a9ca25f fix(app_update): Do not change ota_seq when partition is the same
Revised logic to always update non-running otadata at the time of setting ota boot partition

Closes https://github.com/espressif/esp-idf/issues/14688
2025-05-21 11:33:03 +05:30
Xiao Xufeng 477af3b4a8 ci(mmap): enable mmap and XIP related cases for c5 2025-04-11 11:02:11 +08:00
Chen Jichang 6c4271d4bb feat(esp32h4): disable unsupported build 2025-03-28 14:41:29 +08:00
igor.udot daf2d31008 test: format all test scripts 2025-03-05 12:08:48 +08:00
gaoxu 5ef4f20778 feat(esp32h21): disable unsupported build test 2025-02-06 15:47:51 +08:00
nilesh.kale 5c5df89950 feat(esp_https_ota): added ota resumption feature
This commit enabled configurable OTA resumption feature in advanced ota example.
This resumes downloading OTA image from where it left off in case of
an error or reboot.

Closes https://github.com/espressif/esp-idf/issues/13127
2025-01-23 17:13:15 +05:30
Nebojsa Cvetkovic ef1ee48773 feat(app_update): esp_ota_mark_app_invalid_rollback() without reboot 2025-01-09 15:04:01 +05:30
Konstantin Kondrashov 15870abd87 feat(app_update): Adds test for invalidating OTA data slot of last boot app 2024-12-21 13:08:00 +02:00
Konstantin Kondrashov c9ea30e6c0 fix(app_update): Invalidate ota data slot of last boot app in esp_ota_begin
Closes https://github.com/espressif/esp-idf/issues/14808
2024-12-20 14:55:48 +02:00
gaoxu 64bbb53b8f feat(esp32h21): introduce target esp32h21(stage 1) 2024-11-12 15:42:27 +08:00
Konstantin Kondrashov 97d150d69a feat(app_update): OTA update bootloader, partition_table and other partitions
Passive app partition can be used as the staging partition where a new image is loaded.
Then copy it to the final partition.

Closes: https://github.com/espressif/esp-idf/issues/14195
Closes: https://github.com/espressif/esp-idf/issues/13824
2024-11-07 13:48:51 +02:00
Konstantin Kondrashov 02d61c1c5a feat(esp_partition): Adds new esp_partition APIs 2024-09-26 08:42:12 +03:00