Commit Graph

131 Commits

Author SHA1 Message Date
Song Ruo Jing
cde716e093 feat(regi2c): add regi2c support for esp32h4 2025-06-27 17:18:33 +08:00
wanckl
c36f55c451 feat(esp_rom): update rom files for eco3 2025-05-26 11:39:26 +08:00
Island
6897f90612 Merge branch 'feat/reduce_bin_size_and_iram_for_ble_rom_code' into 'master'
feat(ble/controller): Reduce bin size and IRAM for BLE rom code on ESP32-C3 and ESP32-S3

Closes BLERP-1855

See merge request espressif/esp-idf!38987
2025-05-22 20:20:22 +08:00
zhiweijian
1d739291ca feat(ble/controller): Reduce bin size and IRAM for BLE rom code 2025-05-21 10:22:37 +08:00
Laukik Hase
12e2df2d74 feat(esp_tee): Support for ESP32-H2 - the rest of the components 2025-05-20 16:31:23 +05:30
Laukik Hase
223c0d5f9d feat(esp_tee): Use the ROM TLSF implementation for the TEE build 2025-04-08 19:50:27 +05:30
zhiweijian
8012834e2b fix(bt/controller): Fixed controller flash only bug if hci-uart is enabled 2025-03-28 21:52:09 +08:00
Alexey Lapshin
ec68cb3300 feat(newlib): riscv: add CONFIG_LIBC_OPTIMIZED_MISALIGNED_ACCESS config option
This option replaces implementations of functions from ROM:
  - memcpy
  - memcmp
  - memmove
  - str[n]cpy
  - str[n]cmp

The functions used in the firmware will be better optimized for misaligned
memory. Here are some measurements in CPU cycles for 4096-byte buffers:

  memcpy:  28676 -> 4128
  memcmp:  49147 -> 14259
  memmove: 33896 -> 8086
  strcpy:  32771 -> 17313
  strcmp:  32775 -> 13191
2025-03-26 17:27:24 +07:00
Marius Vikhammer
12e9d6514a fix(console): fixed secondary console not working on all chips without VFS 2025-03-07 14:41:19 +08:00
Chen Jichang
a74f9cbe63 feat(esp32h4): add esp_rom and efuse files (stage4) 2025-02-25 19:30:03 +08:00
harshal.patil
37de702e97 feat(nvs_flash): Enable the usage of mbedtls from ROM for bootloader NVS decryption
Bootloader NVS decryption uses hardware ROM APIs to decrypt the NVS contents,
but for targets that do not support AES hardware we could benefit by using the
software mbedtls library that is present in the ROM directly.
2025-01-29 18:51:29 +05:30
Alexey Lapshin
888b5f7e8d feat(newlib): add picolibc support 2024-12-02 21:35:56 +07:00
Laukik Hase
2dee5791a6 feat(esp_tee): Support for ESP-TEE - esptool_py, esp_rom & other components 2024-12-02 11:27:58 +05:30
Shen Weilong
ccc2411191 feat(ble): Support for putting code in flash on ESP32-C2 2024-11-12 18:08:50 +08:00
zhiweijian
4b767d03fe feat(bt/controller): Support controller code run in flash only 2024-10-30 10:05:39 +08:00
Jiang Jiang Jian
9a47de53e1 Merge branch 'feat/support_esp32c2_eco4_rom_mbedtls_v3.6.0_lts' into 'master'
feat(mbedtls): support esp32c2 rev2.0 ROM mbedTLS v3.6.0-LTS

Closes IDF-10680

See merge request espressif/esp-idf!33227
2024-09-09 16:53:53 +08:00
Armando (Dou Yiwen)
5dff189341 Merge branch 'feat/xip_psram_c5' into 'master'
psram: xip_psram support on c5/c61, also fixed cache writeback/invalidate not work issue on c61

Closes IDF-8688, IDF-9292, and IDF-11008

See merge request espressif/esp-idf!33265
2024-09-06 10:39:57 +08:00
Jiang Guang Ming
4955a199a8 feat(esp_rom): include rom.mbedtls.eco4.ld with C2 rev2.0(ECO4) select 2024-09-06 09:55:27 +08:00
Armando
5316a36175 fix(cache): fixed cache writeback/invalidate cannot reach higher vaddr parts 2024-09-05 18:47:02 +08:00
Jiang Guang Ming
53272f7d11 feat(esp_rom): Add esp32c2.rom.eco4.ld 2024-09-03 17:50:39 +08:00
xuxiao
8780375859 feat(wifi): add wifi support for esp32c61 2024-08-30 20:43:06 +08:00
Song Ruo Jing
ab4157b6cf fix(gpio): patched esp_rom_gpio_connect_out_signal for esp32 and esp32s2
The original ROM function enabled output for the pad first, and then connected the signal
This could result in an undesired level change at the pad

Closes https://github.com/espressif/esp-idf/issues/12826
2024-08-15 16:36:18 +08:00
Jiang Jiang Jian
e37ff3565b Merge branch 'bugfix/fix_newlib_nano_float_printf_issues' into 'master'
fix(esp_rom): add new rom caps ESP_ROM_HAS_NEWLIB_PRINTF_BUG

See merge request espressif/esp-idf!30956
2024-07-26 17:37:03 +08:00
xuxiao
c6104388aa feat(wifi): add wifi support for esp32c5 mp 2024-07-24 18:03:40 +08:00
Shen Weilong
f3b92cabfa update(phy): Added phy support for esp32c5 2024-07-23 15:34:58 +08:00
Jiang Guang Ming
6cfd5967e0 Merge branch 'fix/esp_rom_cmakelists_cleanup' into 'master'
fix(esp_rom): cleanup esp_rom CMakeList.txt

See merge request espressif/esp-idf!31756
2024-07-02 17:16:25 +08:00
Jiang Guang Ming
1f2100fc4d fix(esp_rom): cleanup esp_rom CMakeList.txt 2024-06-27 11:45:23 +08:00
Xiaoyu Liu
2cb9419b14 change(esp_rom): optimize target-specific header files layout in components/esp_rom 2024-06-27 11:24:45 +08:00
laokaiyao
1d894680a8 remove(c5beta3): remove c5 beta3 rom files 2024-06-17 12:02:15 +08:00
Fu Zhibo
157efcfdbc feat: support regi2c for esp32c5 2024-06-14 21:02:51 +08:00
Marius Vikhammer
56753c1dad Revert "fix(rom): fixed esprv_int_set_threshold on C5/C61"
This reverts commit 113c8de0fc.
2024-06-14 12:03:51 +08:00
Marius Vikhammer
113c8de0fc fix(rom): fixed esprv_int_set_threshold on C5/C61 2024-06-13 17:53:03 +08:00
Konstantin Kondrashov
a3be04a087 feat(esp_rom): Adds esp_rom_vprintf with the same capabilities as esp_rom_print 2024-05-30 13:30:12 +03:00
Jiang Guang Ming
e829cee2fd fix(esp_rom): add new rom caps ESP_ROM_HAS_NEWLIB_NANO_PRINTF_FLOAT_BUG 2024-05-24 17:40:34 +08:00
gaoxiaojie
aa3d3835ab fix(esp_rom): patch esprv_intc_int_set_type for esp32p4 2024-04-03 10:09:47 +08:00
Guillaume Souchere
39f789df93 feat(esp_rom): patch heap walker to the ROM implementation
modify existing patch of TLSF rom and add multi heap patch
to add the walker feature to the ROM implementation of the
heap component.
2024-03-21 07:41:04 +01:00
Guillaume Souchere
5cc69ce12b feat(heap): Add walker to the heap component
Introduce new APIs in essp_heap_caps.h:
- heap_caps_walk()
- heap_caps_walk_all()

Those functions are triggering a callback for all blocks
(allocated or free) of memory present in heaps meeting
the set of capabilities passed as parameter (or all heaps
for heap_caps_walk_all() function)

test_walker.c added to test the new functionality in
test_apps/heap_test/
2024-03-20 08:33:48 +01:00
laokaiyao
0d8dcd183c feat(esp32c5mp): add temporary esp-rom 2024-03-14 15:09:22 +08:00
Marius Vikhammer
83d1c2f054 refactor(esp_rom): refactor rom LD inclusions to make it easier to add new targets 2024-03-12 09:48:46 +08:00
Marius Vikhammer
efc3f9fa88 Merge branch 'bugfix/rom_systimer_config' into 'master'
fix(rom): fixed systimer always using ROM implementation

See merge request espressif/esp-idf!29354
2024-03-06 12:26:06 +08:00
Marius Vikhammer
b809267359 fix(rom): fixed systimer always using ROM implementation 2024-03-06 09:47:12 +08:00
laokaiyao
3a5d080ec0 refactor(esp32c5): change beta3 path in esp_rom 2024-03-01 10:13:45 +08:00
laokaiyao
1c9ecfa159 feat(esp32c5): supplement of esp_rom for esp32c5 beta3 target 2023-12-05 22:01:15 +08:00
wanglei
5f2c48acd6 feat(esp32c5): add esp32c5 beta3 esp_rom support 2023-12-05 22:01:15 +08:00
Jakob Hasse
7b4cd55d97 refactor(ci): removed unnecessary hal and soc mock header files 2023-11-15 12:15:08 +08:00
Guillaume Souchere
93d4b0b38c fix(heap): Patch tlsf_check_pool in ROM heap
The integrity_walker now calls the integrity check hook to control
free AND used blocks of memory in the TLSF pool. This integrity walker
function is called from tlsf_check_pool.

This commit creates a patch of integrity_walker function to update the
outdated implementation in the ROM.
2023-11-01 09:47:41 +01:00
Jiang Guang Ming
37ec1cc592 feat(mbedtls): support C2 mbedtls can use crypto algorithm in ROM 2023-10-23 13:10:44 +08:00
Jiang Guang Ming
d1fbec028c feat(esp32c3): Add rom ld with ROM tag esp32c3-eco7-20230720 2023-10-20 11:01:07 +08:00
Lou Tianhao
d59e91c030 feature: support_hp_regi2c_for_esp32c6 2023-08-09 14:24:31 +08:00
gaoxiaojie
640d391783 fix(rom_cache): use assembly to implement api cache_writeback_items_freeze
ensure cache freeze -> Writeback enable -> wait done -> cache unfreeze routine
never trigger a window overflow
2023-07-20 10:47:17 +08:00