KonstantinKondrashov
73d756d073
bootloader_support(esp32c2): Fix esp_secure_boot_cfg_verify_release_mode API
...
When FE and SB keys are set then:
- 128 low bits are read protected
- 128 hi bits are readable
2023-01-24 18:16:19 +08:00
Guillaume Souchere
a5d6f62e7e
heap: Prevent alloc from IRAM to call dram_alloc_to_iram() on esp32c6 target
...
Since DRAM and IRAM are superposed on esp32c6 it is not necessary to convert a freshly allocated
DRAM addr to its IRAM equivalent when MALLOC_CAP_EXEC is passed to heap_caps_malloc(). Instead,
proceed with a default allocation since the address returned by multi_heap_malloc() already belongs
to the IRAM region.
Applies for esp32c6 and every boards with superposed DRAM and IRAM addresses.
2023-01-23 07:42:20 +01:00
Cao Sen Miao
94120b82c2
esp32h2: add build test
2023-01-17 10:29:04 +08:00
Mahavir Jain
fd34bdb70a
Merge branch 'feature/secure_features_are_enabled_correctly' into 'master'
...
security: Adds new APIs to check that all eFuse security features are enabled correctly
Closes IDF-1814
See merge request espressif/esp-idf!19532
2023-01-13 15:09:55 +08:00
KonstantinKondrashov
df662c30e4
bootloader_support(esp32c2): Fix WR_DIS_RD_DIS burn for secure boot key
...
SB key is left readable, the corresponding bit in RD_DIS is unset.
We set write-protection for RD_DIS to ensure that the SB key is always readable.
2023-01-10 23:35:13 +08:00
KonstantinKondrashov
696f7495a0
security: Adds new APIs to check that all eFuse security features are enabled correctly
2023-01-10 23:35:13 +08:00
morris
f7fdba7f39
apm: disable permission control temporarily for esp32h2
...
Access Protection Mode is not yet configured globally, disable the APM
functionality temporarily for esp32h2 and esp32c6
2023-01-10 16:37:01 +08:00
Wu Zheng Hui
61a04e2257
Merge branch 'bugfix/workaround_for_esp32c6_bad_mspi_freq_on_hs_mode_reset' into 'master'
...
bugfix: workaround for esp32c6 bad mspi freq on hs mode reset
See merge request espressif/esp-idf!21851
2023-01-04 13:38:32 +08:00
wuzhenghui
77f6b70a52
workaround: workaround_for_esp32c6 bad mspi freq on hs mode reset
2022-12-30 19:20:30 +08:00
Cao Sen Miao
4713a9a7f2
ESP32H2: Introduce new chip target esp32h2, hello_world example supported
2022-12-29 12:29:14 +08:00
Chip Weinberger
9e02682097
bootloader_support: Adds better logs for virtual efuses
...
Close https://github.com/espressif/esp-idf/pull/10383
2022-12-21 18:03:41 +08:00
Song Ruo Jing
182e937c5a
clk_tree: Add basic clock support for esp32c6
...
- Support SOC ROOT clock source switch
- Support CPU frequency change
- Support RTC SLOW clock source switch
- Support RTC SLOW clock + RC FAST calibration
Remove FPGA build for esp32c6
2022-12-13 19:18:34 +08:00
Armando
d88236678a
bootloader: fix bootloader_sha256_flash_contents mmap issue
2022-12-01 21:39:57 +08:00
Konstantin Kondrashov
7bc15f78a5
Merge branch 'feature/efuse_remove_warnings_for_memcpy' into 'master'
...
all: Remove warnings for memcpy/memset
Closes IDF-6298
See merge request espressif/esp-idf!21164
2022-12-01 16:03:29 +08:00
KonstantinKondrashov
9fd8f3786a
all: Replaces memset/memcpy with hal_mem.. funcs where were used -Wstringop-overread, -Wstringop-overflow, -Warray-bounds
...
hal: Adds hal_memcpy and hal_memset
2022-11-30 19:22:41 +08:00
Mahavir Jain
bcb4fd7ead
Merge branch 'fix/fix_behaviour_of_api_to_set_fe_release_mode' into 'master'
...
esp_flash_encrypt: If it is supported then Enable secure download mode in...
See merge request espressif/esp-idf!21310
2022-11-30 14:02:34 +08:00
Aditya Patwardhan
8d047ea910
esp_flash_encrypt: If it is supported then Enable secure download mode in release mode instead of disabling it completely.
2022-11-29 11:44:18 +05:30
Song Ruo Jing
7466ddfa8c
ci: Make consistence between pytest_*.py and .build-test-rules.yml for esp32c6 (i.e. to pass check_test_scripts_build_test_rules.py)
2022-11-28 11:58:30 +08:00
Armando (Dou Yiwen)
2ad7b85a9e
Merge branch 'bugfix/improve_ext_virtual_memory_allocation_in_2nd_btld' into 'master'
...
bootloader: improve irom & drom mapping way in 2nd bootloader on esp32c6
Closes IDF-6331
See merge request espressif/esp-idf!21173
2022-11-25 15:24:06 +08:00
Aditya Patwardhan
dfcf5878f8
secure_boot_v2: Fix warning message
2022-11-25 03:25:36 +05:30
C.S.M
28b2deaf24
Merge branch 'feature/add_target_esp32h2' into 'master'
...
ESP32-H2: Introduce new target for ESP32H2
See merge request espressif/esp-idf!21190
2022-11-24 18:31:19 +08:00
Cao Sen Miao
86aa4df5b5
ESP32-H2: Introduce new target for ESP32H2
2022-11-23 14:38:05 +08:00
Armando
ad52655558
bootloader: improve irom/drom mapping way
2022-11-22 18:53:50 +08:00
Omar Chebib
cd21058097
C/Cxx: unify static assertions with the macro ESP_STATIC_ASSERT
...
Closes https://github.com/espressif/esp-idf/issues/9938
2022-11-21 16:18:08 +08:00
wuzhenghui
a7f952238e
bootloader: enable i2c clk at bootloader_hardware init
2022-11-18 11:17:08 +08:00
jiangguangming
8f807d8964
bootloader_support: fix uart1 no printing in the 2nd bootloader stage
2022-11-10 16:24:26 +08:00
Kevin (Lao Kaiyao)
5bed8fab49
Merge branch 'refactor/rename_h2_to_h4' into 'master'
...
esp32h2: renaming esp32h2 to esp32h4
Closes IDF-6098
See merge request espressif/esp-idf!20676
2022-11-09 19:19:43 +08:00
Cao Sen Miao
d9f01ed43c
spi_flash: bringup for esp32c6
2022-11-09 12:50:46 +08:00
laokaiyao
8677216576
esp32h2: renaming esp32h2 to esp32h4
2022-11-08 17:05:33 +08:00
KonstantinKondrashov
1f9260d790
all: Apply new version logic (major * 100 + minor)
2022-11-03 08:36:23 +00:00
Song Ruo Jing
986094482b
soc: Fix esp32c6 super watchdog wrong wprotect key causing chip keeps resetting due to swd
2022-11-01 17:21:49 +08:00
Song Ruo Jing
be0fdfa176
soc: Add a soc cap, SOC_CLK_RC_FAST_D256_SUPPORTED, for whether the target has the RC_FAST_D256 clock
2022-11-01 11:23:26 +08:00
Cao Sen Miao
2c9bb4eb7d
spi_flash: Support select flash mode automatically at run time(Quad flash or Octal flash)
2022-10-18 11:25:35 +08:00
jiangguangming
8774db59f0
esp_rom: remove ESP_ROM_SUPPORT_MULTIPLE_UART
2022-10-14 14:06:40 +08:00
jiangguangming
4c3ce9f21d
esp_rom: fix esp32s3 rom ets_printf bug
2022-10-14 11:43:46 +08:00
wuzhenghui
fbc19fad70
memory_utils: Modify esp_ptr_in_diram_iram to be compatible with esp32c6
2022-09-26 20:32:13 +08:00
wuzhenghui
1c820b0a6d
esp32c6: add bootloader support
2022-09-26 20:24:52 +08:00
Marius Vikhammer
7cef82e0df
bootloader support: move unit tests to pytest
2022-09-15 15:19:42 +08:00
Omar Chebib
3a429b8b7a
Bootloader: print date and time to the banner on boot
...
* Closes https://github.com/espressif/esp-idf/issues/9718
2022-09-08 06:08:49 +00:00
Mahavir Jain
6193e4c8e8
Merge branch 'bugfix/stringop_overflow_warning' into 'master'
...
bootloader_support: fix stringop-overflow warning with `PERF` compiler optimization
See merge request espressif/esp-idf!19932
2022-09-05 16:04:15 +08:00
Mahavir Jain
4aaf02b093
bootloader_support: fix stringop-overflow warning with PERF
compiler optimization
...
This commit fixes build issue because of function `bootloader_common_reset_rtc_retain_mem`
getting inlined with compiler optimization level set to `PERF` (-O2).
Build failure log:
-----------------
In function 'bootloader_common_reset_rtc_retain_mem',
inlined from 'bootloader_common_update_rtc_retain_mem' at /h/esp-idf/components/bootloader_support/src/bootloader_common_loader.c:183:13:
/h/esp-idf/components/bootloader_support/src/bootloader_common_loader.c:159:5: error: 'memset' writing 16 bytes into a region of size 0 overflows the destination [-Werror=stringop-overflow=]
159 | memset(rtc_retain_mem, 0, sizeof(rtc_retain_mem_t));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2022-09-05 10:42:11 +05:30
Marius Vikhammer
a77dce6979
bootloader: dont print assert msg if CONFIG_OPTIMIZATION_ASSERTIONS_SILENT is set
...
Closes https://github.com/espressif/esp-idf/pull/7518
2022-09-02 11:01:50 +08:00
Omar Chebib
779d880580
Merge branch 'bugfix/rtc_retain_mem_always_erased' into 'master'
...
Bootloader: retained memory can now be kept after reboot when custom data enabled
See merge request espressif/esp-idf!19809
2022-09-01 16:42:54 +08:00
Omar Chebib
26c4550e6d
Bootloader: retained memory can now be kept after reboot when custom data enabled
...
User's custom data are not taken into account during the CRC calculation anymore.
Which means taht the retained mem structure is not systematically erased
on each reboot anymore.
2022-08-31 03:23:30 +00:00
wuzhenghui
82ffe7e438
replacing reset by register operations with ROM interfaces to decouple the effects of register name changes
2022-08-31 01:59:36 +00:00
Cao Sen Miao
0de699532d
bootloader_flash: Some bootloader flash functions are not put in IRAM
2022-08-29 17:24:05 +08:00
songruojing
304a8f142d
esp32c6: introduce the target
...
Add esp32c6 target to tools and Kconfig
Create directories and files that are essential for `idf.py --preview set-target esp32c6`
2022-08-19 11:13:02 +08:00
Laukik Hase
0071ea498f
esp_app_format: Fixed build errors and resolved dependencies
2022-08-17 10:59:31 +05:30
Mahavir Jain
b1e1411f7d
Merge branch 'bugfix/add_signature_in_image_len' into 'master'
...
bootloader_support: consider signature sector in image length validation
Closes IDF-5617
See merge request espressif/esp-idf!19272
2022-08-08 20:52:59 +08:00
Mahavir Jain
384f7cd1da
bootloader_support: consider signature sector in image length validation
...
For secure boot enabled cases, bootloader and firmware images have signature
appended and size is variable based on scheme being used. This appended data
must be considered while verifying image length against allocated partition
size to avoid any possibilities of going beyond reserved size.
Closes IDF-5617
2022-08-08 03:22:14 +00:00
jingli
ee3423834e
kconfig: refactor xtal freq kconfig to common configuration item
2022-08-05 19:12:29 +08:00
Ivan Grokhotkov
401c10ecfb
build system: re-add -Wno-format as private flag for some components
2022-08-03 16:42:47 +04:00
Darian
c8ee369a7c
Merge branch 'feature/deprecate-old-cpu-api' into 'master'
...
HAL: Deprecate old CPU/SoC/Interrupt Controller HAL API
Closes IDF-4919 and IDF-5032
See merge request espressif/esp-idf!18987
2022-07-23 00:37:33 +08:00
Cao Sen Miao
ec6a56ed0c
spi_flash: re-enable the HPM mode on several XMC chips
2022-07-22 09:54:56 +08:00
morris
c4e84751a5
driver: fix public header exceptions for driver
2022-07-22 00:12:36 +00:00
Guillaume Souchere
0bac33ed41
esp_system: Remove deprecate section from esp_cpu.h
...
- Remove esp_cpu_in_ocd_mode() from esp_cpu.h. Users should call esp_cpu_dbgr_is_attached() instead.
- Remove esp_cpu_get_ccount() from esp_cpu.h. Users should call esp_cpu_get_cycle_count() instead.
- Remove esp_cpu_set_ccount() from esp_cpu.h. Users should call esp_cpu_set_cycle_count() instead.
- Other IDF components updated to call esp_cpu_dbgr_is_attached(), esp_cpu_get_cycle_count() and esp_cpu_set_cycle_count() as well.
2022-07-22 00:06:06 +08:00
Guillaume Souchere
6005cc9163
hal: Deprecate interrupt_controller_hal.h, cpu_hal.h and cpu_ll.h interfaces
...
This commit marks all functions in interrupt_controller_hal.h, cpu_ll.h and cpu_hal.h as deprecated.
Users should use functions from esp_cpu.h instead.
2022-07-22 00:06:06 +08:00
Jing Li
66395a5c00
system/sleep: further fix spi flash/ram current leakage
2022-07-21 19:14:26 +08:00
Jakob Hasse
33a3616635
refactor (bootloader_support, efuse)!: remove target-specific rom includes
...
The following two functions in bootloader_support are private now:
* esp_secure_boot_verify_sbv2_signature_block()
* esp_secure_boot_verify_rsa_signature_block()
They have been moved into private header files
inside bootloader_private/
* Removed bootloader_reset_reason.h and
bootloader_common_get_reset_reason() completely.
Alternative in ROM component is available.
* made esp_efuse.h independent of target-specific rom header
2022-07-13 10:29:02 +08:00
Song Ruo Jing
ea97cc93ea
Merge branch 'feature/c2_systimer_26mhz' into 'master'
...
esp32c2: 26 MHz XTAL support: Kconfig option, systimer support
Closes IDF-5412 and IDF-5413
See merge request espressif/esp-idf!18835
2022-07-11 16:17:25 +08:00
Marius Vikhammer
6cc871d793
Merge branch 'feature/ulp_riscv_adc' into 'master'
...
ulp-riscv: add support for using ADC as well as an example show-casing it.
Closes IDFGH-7564 and IDF-1714
See merge request espressif/esp-idf!18767
2022-07-11 12:30:31 +08:00
songruojing
b3d8db3ae2
bootloader, esp_system: esp32c2 console uart to support 26MHz xtal
...
Gets the XTAL frequency from the RTC storage register, remove UART_CLK_FREQ_ROM macro from soc.h
2022-07-11 12:24:58 +08:00
Marius Vikhammer
e8b5096f52
ulp-riscv: add support for using ADC as well as an example show-casing it.
2022-07-11 09:31:22 +08:00
Ivan Grokhotkov
f0f9890096
bootloader: set the initial XTAL frequency based on the Kconfig option
2022-07-08 15:04:26 +08:00
KonstantinKondrashov
0f8ff5aa15
efuse: Adds major and minor versions and others
2022-07-05 14:38:27 +08:00
Omar Chebib
7e42038c86
Merge branch 'refactor/move_regi2c_headers' into 'master'
...
Refactor: move regi2c_*.h header files from esp_hw_support to soc component
See merge request espressif/esp-idf!18676
2022-07-04 11:32:30 +08:00
Cao Sen Miao
a690a87829
spi_flash: Remove legacy spi_flash drivers
2022-07-01 11:01:34 +08:00
Omar Chebib
cd48baf979
Refactor: move regi2c_*.h header files from esp_hw_support to soc component
...
When creating G0 layer, some regi2c_*.h headers were moved out from
esp_hw_support (G1) to soc (G0). In order to be consistent with that change,
move all the remaining regi2c_*.h headers to soc too.
2022-06-30 09:40:44 +00:00
Omar Chebib
8fae0f0753
G0: Support Xtensa targets for G0-only compilation
...
G0-only example now supports Xtensa targets. This means that G0 layer
does not depend on G1+ layers anymore
2022-06-20 11:34:20 +00:00
Konstantin Kondrashov
7f109b8181
Merge branch 'bugfix/adds_iram_attr_for_efuse_apis' into 'master'
...
bootloader_efuse: Adds IRAM_ATTR for efuse API
Closes IDFGH-7601
See merge request espressif/esp-idf!18517
2022-06-17 13:24:41 +08:00
Jakob Hasse
27bb68f2d3
Merge branch 'refactor/rename_bootloader_private_include_dir' into 'master'
...
bootloader_support: rename include_bootloader/ -> private_include/
See merge request espressif/esp-idf!18475
2022-06-15 18:46:30 +08:00
KonstantinKondrashov
c4bdcf3207
bootloader_efuse: Adds IRAM_ATTR for efuse API
...
Fixes startup of app for case:
bootloader with 40Mhz and app with 80Mhz (ESPTOOLPY_FLASHFREQ)
Closes https://github.com/espressif/esp-idf/issues/9156
2022-06-15 15:48:41 +08:00
Darian
e213e66ba3
Merge branch 'refactor/esp_hw_support_cpu' into 'master'
...
esp_hw_support: Add new esp_cpu.h abstraction
Closes IDF-4769
See merge request espressif/esp-idf!17091
2022-06-14 21:11:30 +08:00
Jakob Hasse
84082d365b
refactor (bootloader_support): include_bootloader/ -> private_include/
2022-06-14 17:27:50 +08:00
Michael (XIAO Xufeng)
7b8e5888ca
Merge branch 'refactor/add_clk_tree_ll' into 'master'
...
clk_tree: Stage3 - HAL for clock subsystem
Closes IDF-4334
See merge request espressif/esp-idf!18270
2022-06-14 17:16:29 +08:00
Darian Leung
a8a3756b38
hal: Route CPU and Interrupt Controller HAL/LL to esp_cpu calls
...
This commit makes changes to cpu_ll.h, cpu_hal.h, and interrupt_controller_hal.h:
- Moved to esp_hw_support in order to be deprecated in the future
- HAL/LL API now route their calls to esp_cpu.h functions instead
Also updated soc_hal.h as follows:
- Removed __SOC_HAL_..._OTHER_CORES() macros as they dependend on cpu_hal.h
- Made soc_hal.h and soc_ll.h interfaces always inline, and removed soc_hal.c.
This commit also updates the XCHAL_ERRATUM_572 workaround by
- Removing it's HAL function and invoking the workaround it directly the bootloader
- Added missing workaround for the ESP32-S3
2022-06-14 14:40:03 +08:00
Konstantin Kondrashov
7d942e0a5d
Merge branch 'feature/efuse_rst_is_treated_as_poweron_rst' into 'master'
...
reset_reasons: EFUSE_RST is treated as POWERON_RST + checks errors of eFuse BLOCK0
Closes IDF-3702
See merge request espressif/esp-idf!14742
2022-06-13 21:26:13 +08:00
songruojing
c8752cee6a
clk_tree: Refactor rtc_clk.c by adding HAL layer for clock subsystem
2022-06-13 17:47:50 +08:00
KonstantinKondrashov
46f0313d6b
reset_reasons: EFUSE_RST is treated as POWERON_RST
...
ESP32 does not have the EFUSE_RST, the rest chips has this reset reason.
2022-06-09 17:49:03 +08:00
Cao Sen Miao
6589daabb9
MMU: Add configurable mmu page size support on ESP32C2
2022-06-08 19:34:31 +08:00
Michael (XIAO Xufeng)
773715d900
Merge branch 'feature/support_refresh_brownout_v1' into 'master'
...
spi_flash: send reset when brownout detected on XMC flash
Closes IDF-3882
See merge request espressif/esp-idf!16873
2022-06-06 16:27:58 +08:00
Mahavir Jain
2acab7c783
Merge branch 'feature/c2_rng_support' into 'master'
...
esp32c2: Add support for RNG
Closes IDF-4021
See merge request espressif/esp-idf!18149
2022-06-06 12:38:28 +08:00
Michael (XIAO Xufeng)
6a8aed12ee
ci: partially enable ut tests for esp32c2
...
Disabled test cases are tracked in:
IDF-4465, IDF-5045, IDF-5057, IDF-5058, IDF-5059, IDF-5060, IDF-5061, IDF-5131
- test_fatfs: IDF-5136
- test_pm: IDF-5053
- test_cache_mmu: IDF-5138
- test_partitions: IDF-5137
- test_vfs: IDF-5139
- test_freertos: IDF-5140
- test_wpa_supplicant: IDF-5046
- test_mbedtls: IDF-5141
- test_pthread: IDF-5142
- test_protocomm: IDF-5143
- test_lightsleep: IDF-5053
- test_taskwdt: IDF-5055
- test_tcp_transport: IDF-5144
- test_app_update: IDF-5145
- test_timer: IDF-5052
- test_spi: IDF-5146
- test_rtc_clk: IDF-5060
- test_heap: IDF-5167
ci: fixed issues for tests of libgcc, ets_timer, newlib
test_pm: support on C2
2022-06-02 14:23:35 +08:00
Sachin Parekh
8ad3f2ba57
esp32c2: Add support for RNG
2022-06-02 11:36:23 +08:00
Cao Sen Miao
6a2d3509dc
spi_flash: Making XMC flash works more stable when brownout detected
2022-06-02 10:38:55 +08:00
KonstantinKondrashov
dd4642b6ba
secure_boot(esp32c2): Fix case when SB key is pre-loaded
2022-05-31 11:12:21 +00:00
KonstantinKondrashov
505e18237a
bootloader: Support Flash Encryption for ESP32-C2
2022-05-31 11:12:21 +00:00
Anton Maklakov
5751ecbbe9
Merge branch 'bugfix/bootloader_warnings' into 'master'
...
bootloader: minor fixes of warnings
See merge request espressif/esp-idf!18307
2022-05-31 13:36:01 +08:00
Jiang Jiang Jian
2bc5d58807
Merge branch 'feature/support_sleep_for_esp32c2' into 'master'
...
esp32c2: support power management
Closes IDF-4440 and IDF-4617
See merge request espressif/esp-idf!18174
2022-05-30 17:57:18 +08:00
Anton Maklakov
77c3bb9cfe
bootloader: suppress -Wstringop-overflow
2022-05-30 11:45:33 +07:00
Anton Maklakov
aeaebc0977
bootloader: explicit initialization
2022-05-30 11:45:33 +07:00
Wu Zheng Hui
b98622c624
efuse: update efuse name
2022-05-28 22:03:16 +08:00
jingli
ae127b04cd
fix ld err since esp32c2 do not suport config gpio of spi flash via efuse
2022-05-27 19:29:38 +08:00
songruojing
a5b09cf015
rtc_clk: Clean up some clock related enum and macro in soc/rtc.h, replace with new ones in
...
soc/clk_tree_defs.h
2022-05-24 22:59:41 +08:00
Sachin Parekh
7dd62bb044
esp32c2: Remove assert check on len for SHA calculation
2022-05-11 18:00:07 +05:30
Sachin Parekh
2c725264f7
esp32c2: Support Secure Boot V2 based on ECDSA scheme
2022-05-11 18:00:03 +05:30
Gustavo Henrique Nihei
8ffb157791
bootloader: Create option for enabling memory region protection
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-05-03 09:58:25 -03:00
Ivan Grokhotkov
871375cae3
Merge branch 'bugfix/bootloader_support_public_req' into 'master'
...
esp_hw_support: remove public dependency on bootloader_support
See merge request espressif/esp-idf!17792
2022-04-27 17:04:07 +08:00
Cao Sen Miao
4418a855ba
spi_flash: refactor the spi_flash clock configuration, and add support for esp32c2
2022-04-26 15:22:37 +08:00
Marius Vikhammer
d2872095f9
soc: moved kconfig options out of the target component.
...
Moved the following kconfig options out of the target component:
* CONFIG_ESP*_DEFAULT_CPU_FREQ* -> esp_system
* ESP*_REV_MIN -> esp_hw_support
* ESP*_TIME_SYSCALL -> newlib
* ESP*_RTC_* -> esp_hw_support
Where applicable these target specific konfig names were merged into
a single common config, e.g;
CONFIG_ESP*_DEFAULT_CPU_FREQ -> CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ
2022-04-21 12:09:43 +08:00
Ivan Grokhotkov
85cb079838
esp_hw_support: remove public dependency on bootloader_support
...
In c4bcf111
, soc_memory_types.h header was moved from soc to
esp_hw_support. Since some of the functions are also used in
bootloader and because esp_hw_support is not part of the bootloader
build, part of the functions were moved into bootloader_support.
To make these functions available to the app, bootloader_support was
added as a public dependency of esp_hw_support.
Since esp_hw_support is in common requirements list, this has added
bootloader_support as a public requirement to every component in the
build. Adding new public requirements outside of common components
is undesirable, since components may accidentally include headers
from bootloader_support without explicitly declaring it as a
requirement.
This commit reverts this addition. Until a better solution is found,
some part of esp_memory_utils.h is duplicated into
bootloader_memory_utils.h. A CI check is added to make sure these
files stay in sync.
2022-04-16 10:50:12 +02:00
Jakob Hasse
3ceaba5b32
refactor (docs, rng): Clarify RNG usage
2022-04-11 10:55:28 +08:00
Armando
c4bcf1117c
esp_hw_support: move soc_memory_types.h helper functions into esp_hw_support
2022-04-08 11:46:10 +08:00
Omar Chebib
9380fd6bee
G0: remove components/esp32*
dependency on efuse component
2022-03-30 11:40:37 +08:00
morris
de662b987e
driver: fix issue found by coverity scan
2022-03-24 21:36:03 +08:00
Anton Maklakov
68e5d9d585
Remove IRAM_ATTR from any function declarations
...
IRAM_ATTR expands to a unique section attribute. Applying it to both
declaration and definition results in a section conflict.
2022-03-22 09:58:50 +00:00
Marius Vikhammer
453516fbbe
Merge branch 'bugfix/replace_deprecated_options' into 'master'
...
kconfig: replace deprecated options with new values
See merge request espressif/esp-idf!17494
2022-03-16 09:32:55 +08:00
Marius Vikhammer
ca3c056ac9
kconfig: replace deprecated options with new values
2022-03-15 16:28:53 +08:00
Rahul Tank
f376bb5d05
Add support in Nimble for ESP32H2
2022-03-14 11:57:53 +05:30
Michael (XIAO Xufeng)
aab535fe4a
Merge branch 'bugfix/regi2c_ctrl_spinlock_s2' into 'master'
...
hw_support: fixed regi2c not protected by lock on ESP32S2
See merge request espressif/esp-idf!16653
2022-03-13 02:47:53 +08:00
Michael (XIAO Xufeng)
d5bdf95580
hw_support: fixed regi2c not protected by lock on ESP32S2
2022-03-13 00:24:08 +08:00
Armando (Dou Yiwen)
6ed3ffbbf1
Merge branch 'refactor/remove_redundant_rom_cache_dependency' into 'master'
...
cache: remove redundant rom cache dependency in bootloader
Closes IDF-4523
See merge request espressif/esp-idf!17077
2022-03-12 10:11:39 +08:00
Armando
c1cbd7bbf6
cache/mmu: implememnt cache and mmu hal APIs in bootloader
2022-03-11 22:43:11 +08:00
Cao Sen Miao
8dce0cbf6b
spi_flash: Fix bug that in bootloader dummy is 0 when mosi is 0
2022-03-09 18:49:34 +08:00
Cao Sen Miao
85dd785d8d
spi_flash: Building a framework to enable HPM when flash works under high speed mode
2022-03-09 18:49:34 +08:00
Sudeep Mohanty
a9fda54d39
esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
...
This commit updates the visibility of various header files and cleans up
some unnecessary inclusions. Also, this commit removes certain header
include paths which were maintained for backward compatibility.
2022-03-07 11:18:08 +05:30
Armando
e66f59ae0b
rng: fix rng adc digital inpu not disabled issue
2022-03-04 03:49:33 +00:00
Aditya Patwardhan
3b71bd7326
mbedtls-3.0: Fixed ESP32 build issues
...
- Added MBEDLTS_PRIVATE(...) wherever necessary
- For functions like mbedtls_pk_parse_key(...), it is necessary to pass the RNG function
pointers as parameter. Solved for dependent components: wpa_supplicant & openSSL
- For libcoap, the SSLv2 ClientHello handshake method has been deprecated, need to handle this.
Currently, corresponding snippet has been commented.
- Examples tested: hello-world | https_request | wifi_prov_mgr
mbedtls-3.0: Fixed ESP32-C3 & ESP32-S3 build issues
- Removed MBEDTLS_DEPRECATED_REMOVED macro from sha1 port
- DS peripheral: esp_ds_rsa_sign -> removed unsused 'mode' argument
- Added MBEDTLS_PRIVATE(...) wherever required
mbedtls-3.0: Fixed ESP32-S2 build issues
- Fixed outdated function prototypes and usage in mbedlts/port/aes/esp_aes_gcm.c due to changes in GCM module
mbedtls-3.0: Fixed ESP32-H2 build issues
ci: Fixing build stage
- Added MBEDTLS_PRIVATE(...) wherever required
- Added RNG function parameter
- Updated GCM Module changes
- Updated Copyright notices
- Tests:
- build_esp_idf_tests_cmake_esp32
- build_esp_idf_tests_cmake_esp32s2
- build_esp_idf_tests_cmake_esp32c3
- build_esp_idf_tests_cmake_esp32s3
ci: Fixing build stage (mbedtls-related changes)
- Added MBEDTLS_PRIVATE(...) wherever required
- Updated SHAXXX functions
- Updated esp_config according to mbedtls changes
- Tests:
- build_examples_cmake_esp32
- build_examples_cmake_esp32s2
- build_examples_cmake_esp32c3
- build_examples_cmake_esp32s3
ci: Fixing build stage (example-related changes)
- Added MBEDTLS_PRIVATE(...) wherever required
- Updated SHAXXX functions
- Updated esp_config according to mbedtls changes
- Tests:
- build_examples_cmake_esp32
- build_examples_cmake_esp32s2
- build_examples_cmake_esp32c3
- build_examples_cmake_esp32s3
ci: Fixing target_test stage
- Updated test SSL version to TLS_v1_2
- Tests:
- example_test_protocols 1/2
ci: Fixing build stage
- Added checks for MBEDTLS_DHM_C (disabled by default)
- Updated esp_cryptoauthlib submodule
- Updated factory partition size for legacy BLE provisioning example
- Tests:
- build_examples_cmake_esp32
- build_examples_cmake_esp32s2
- build_examples_cmake_esp32c3
- build_examples_cmake_esp32s3
Co-authored-by: Laukik Hase <laukik.hase@espressif.com>
2022-03-03 01:37:10 +05:30
Aditya Patwardhan
45122533e0
mbedtls-3 update:
...
1) Fix build issue in mbedtls
2) skip the public headers check in IDF
3)Update Kconfig Macros
4)Remove deprecated config options
5) Update the sha API according to new nomenclature
6) Update mbedtls_rsa_init usage
7) Include mbedtls/build_info.h instead of mbedtls/config.h
8) Dont include check_config.h
9) Add additional error message in esp_blufi_api.h
2022-03-03 01:37:10 +05:30
Michael (XIAO Xufeng)
78165c541e
Merge branch 'bugfix/bootloader_uart_custom_gpio' into 'master'
...
bootloader: fixed the issue custom_uart_gpio doesn't take effect
Closes IDF-4606
See merge request espressif/esp-idf!16910
2022-03-02 02:35:14 +08:00
Michael (XIAO Xufeng)
395cd494f8
bootloader: fixed the issue custom_uart_gpio doesn't take effect
2022-03-01 17:54:34 +08:00
KonstantinKondrashov
9605f3eb1a
soc: Adds efuse hal
...
Replaced eFuse ROM funcs with hal layer
2022-02-24 22:20:09 +08:00
rudi ;-)
f242a1705a
add support for Flash 32MB..128MB (S2, S3)
...
ESP32-S2 and ESP32-S3
supports up to 1 GB of external flash and RAM
add support for
- 32MB
- 64MB
- 128MB ( example NOR spiFLASH 1G-BIT W25Q01JVZEIQ Winbond 0xEF 0x40 0x21 )
Merges https://github.com/espressif/esp-idf/pull/7688
Signed-off-by: Ivan Grokhotkov <ivan@espressif.com>
2022-02-21 10:26:41 +03:00
morris
ef00bd59dc
esp_rom: extract int matrix route and cpu ticks getter
2022-02-09 13:52:20 +08:00
Mahavir Jain
68f67db984
Merge branch 'feature/efuse_esp8684' into 'master'
...
efuse(esp32c2): Support eFuse key APIs
Closes IDF-3818
See merge request espressif/esp-idf!16290
2022-02-01 11:30:00 +00:00
KonstantinKondrashov
ebdc52d4e2
efuse(esp32c2): Support eFuse key APIs
2022-02-01 17:30:31 +08:00
KonstantinKondrashov
f761cee32e
bootloader_support: Removes old code of SB and FE for esp32h2
2022-01-26 15:21:20 +08:00
KonstantinKondrashov
3a23340e40
bootloader_support: Support eFuse key APIs in SB and FE
2022-01-25 20:25:39 +08:00
KonstantinKondrashov
4eef5fd36f
bootloader: Fixes bootloader_common_get_sha256_of_partition. Adds hash check.
...
Closes https://github.com/espressif/esp-idf/issues/8274
2022-01-25 02:16:18 +08:00
laokaiyao
cf049e15ed
esp8684: rename target to esp32c2
2022-01-19 11:08:57 +08:00
chenjianxing
7a9947f3c6
esp_phy: Update ESP32S2 phy lib to support eco1 chip
2022-01-07 19:59:41 +08:00
Cao Sen Miao
d397464fc4
spi_flash: refactor spi_flash.h to esp_rom_spiflash.h but keep the content in spi_flash.h
2021-12-30 14:12:31 +08:00
Cao Sen Miao
b0decda1e3
bootloader: move bootloader flash support to isolate folders
2021-12-30 14:05:12 +08:00
Cao Sen Miao
3a4db97cec
spi_flash: move patch files to common rom patch folder
2021-12-30 14:05:12 +08:00
Cao Sen Miao
3dd1cfea18
spi_flash: refactor spi_flash.h to decline duplicated code
2021-12-30 14:05:12 +08:00
Sudeep Mohanty
6a2a6e4220
Merge branch 'feature/remove-depricated-cpu-util-functions' into 'master'
...
esp_hw_support: Removed deprecated CPU util functions
Closes IDF-2868
See merge request espressif/esp-idf!16391
2021-12-29 16:44:17 +00:00
morris
1f06c1bd1b
Merge branch 'feature/fast_gpio_esp32c2' into 'master'
...
fast gpio support on esp32c2/esp8684
See merge request espressif/esp-idf!16531
2021-12-29 07:01:41 +00:00
Sudeep Mohanty
e22b4007d3
esp_hw_support: Removed deprecated CPU util functions
...
The following files were deleted:
- components/esp_hw_support/include/soc/cpu.h
- components/soc/esp32s3/include/soc/cpu.h
The following functions are deprecated:
- get_sp()
The following functions declared in soc/cpu.h are now moved to esp_cpu.h:
- esp_cpu_configure_region_protection()
The following functions declared in soc/cpu.h are now moved to components/xtensa/include/esp_cpu_utils.h:
- esp_cpu_process_stack_pc()
All files with soc/cpu.h inclusion are updated to include esp_cpu.h instead.
Signed-off-by: Sudeep Mohanty <sudeep.mohanty@espressif.com>
2021-12-28 16:58:37 +05:30
morris
1a9dbf9e2f
bootloader: print MMU info after 2nd bootloader banner
2021-12-28 10:12:57 +08:00
Jakob Hasse
64a355eba8
feat (bootloader): added rng sampling
...
Set maximum RNG query frequency to save value known from tests
2021-12-27 13:59:20 +08:00
Michael (XIAO Xufeng)
9894019909
bootloader: support unlock MXIC flash chips
2021-12-20 18:01:12 +08:00
Cao Sen Miao
56edc81b5d
spi_flash: add support for th 1M flash
2021-12-13 11:47:48 +08:00
Mahavir Jain
5cdd3999c7
bootloader_support: fix Coverity scan warning
...
Null pointer dereferences (REVERSE_INULL) :
Null-checking "part" suggests that it may be null, but it has already been dereferenced on all paths leading to the check.
2021-12-07 09:49:12 +05:30
Gustavo Henrique Nihei
d0846e48e5
Merge branch 'bugfix/bootloader_utility_warnings' into 'master'
...
bootloader_support: Fix compiler warnings
See merge request espressif/esp-idf!16083
2021-11-26 04:13:37 +00:00
Michael (XIAO Xufeng)
c4310fb0db
Merge branch 'feature/add_h2_beta2_target_support' into 'master'
...
esp32h2: Add support for esp32h2 beta2 version
Closes IDF-4230
See merge request espressif/esp-idf!15630
2021-11-26 03:56:01 +00:00
Gustavo Henrique Nihei
c6391f12db
bootloader_support: Fix unused-but-set-variable compiler warning
...
When building with BOOTLOADER_LOG_LEVEL lesser then VERBOSE, an error
code variable was being set but not consumed, resulting in a compiler
warning.
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-25 21:12:52 +08:00
Gustavo Henrique Nihei
acbf871d2f
bootloader_support: Fix unused-variable compiler warning
...
Builds for every chip other than ESP32 resulted in a compiler warning
due to "drom_load_addr_aligned" and "irom_load_addr_aligned" not being
used, besides being possible to actually reuse them.
Furthermore, extended the logic for the other similar variables.
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-25 21:12:52 +08:00
laokaiyao
f21020ce04
esp32h2: update reg and struct for beta2
2021-11-24 12:34:17 +08:00
wuzhenghui
388615add0
update esp32h2beta2 chip_id to 14
2021-11-24 12:30:43 +08:00
Mahavir Jain
9cecde6fb4
bootloader: add anti-FI checks around secure version in anti-rollback scheme
2021-11-24 11:37:27 +08:00
Anton Maklakov
05d2c540a4
Merge branch 'fix/virt_efuse_example_test' into 'master'
...
efuse_example_test: Fix the example test
See merge request espressif/esp-idf!16065
2021-11-24 01:12:00 +00:00
Gustavo Henrique Nihei
0a15a3fa96
Merge branch 'bugfix/bootloader_debug_buffers' into 'master'
...
bootloader_support: Fix and re-enable bootloader_debug_buffer function
See merge request espressif/esp-idf!15998
2021-11-23 11:54:42 +00:00
Aditya Patwardhan
5d61eea847
efuse_example_test: Fix the example test ( broken due to latest change
...
in info message)
*Unify the log messages when UART ROM Download mode is kept enabled
2021-11-23 15:21:32 +05:30
Gustavo Henrique Nihei
f75f74ac40
bootloader_support: Fix and re-enable bootloader_debug_buffer function
...
The body of the bootloader_debug_buffer function was conditioned to
macros that were never defined, resulting in deactivated code.
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-22 12:13:58 -03:00
Aditya Patwardhan
be65338212
secure_boot: Fix warning when UART ROM DL mode is disabled
...
*Additionally use updated calls to enable rom secure download mode
2021-11-22 12:01:15 +05:30
morris
2e008825a9
Merge branch 'feat/rm_makefiles' into 'master'
...
Build & config: Remove leftover files from the unsupported make build system
Closes IDF-4273 and IDF-2827
See merge request espressif/esp-idf!15829
2021-11-16 03:44:41 +00:00
Roland Dobai
766aa57084
Build & config: Remove leftover files from the unsupported "make" build system
2021-11-11 15:32:36 +01:00
Cao Sen Miao
981abed2b2
spi_flash: refact that flash qio can be overidable
2021-11-11 12:28:21 +08:00
morris
16677b0d3c
global: make periph enable/disable APIs private
...
peripheral enable/disable usually should be managed by driver itself,
so make it as espressif private APIs, not recommended for user to use it
in application code.
However, if user want to re-write the driver or ports to other platform,
this is still possible by including the header in this way:
"esp_private/peripheral_ctrl.h"
2021-11-08 10:37:47 +08:00
Cao Sen Miao
bf6fa70812
ESP8684: update bootloader, bootloader_support, esp_rom
2021-11-06 17:33:44 +08:00
Ivan Grokhotkov
0b376251df
Merge branch 'feature/kconfig_for_reproducible_build' into 'master'
...
Feature: kconfig for reproducible build
See merge request espressif/esp-idf!15100
2021-11-04 22:07:29 +00:00
Mahavir Jain
2a885ae694
secure_boot_v2: fix issue in pre-flashed digest (manual) workflow
...
This commit fixes issue where empty (unprogrammed) digest slot out of
multiple supported (e.g. 3 for ESP32-C3) could cause issue in
workflow enablement process.
Notes:
1. This issue was applicable for chips supporting "secure-boot-v2"
scheme with multiple digests slots
2. This issue was affecting only manual workflow, where digest of
public was pre-flashed in efuse
3. Change in "flash_encrypt.c" is only for additional safety purpose
2021-11-02 15:26:24 +08:00
Fu Hanxi
9919b75ec1
build: add CONFIG_APP_REPRODUCIBLE_BUILD menuconfig option to produce reproducible binaries
2021-10-26 10:43:15 +08:00
Sachin Parekh
724fdbc9f1
secure_boot: Do not allow key revocation in bootloader
2021-10-22 12:20:14 +05:30
Wu Zheng Hui
001c29b077
bootloader: Simplify multi-chip control logic of the cache
2021-10-21 18:09:37 +08:00
Wu Zheng Hui
1080e4f6a2
rename APB_CTRL ro SYS_CON
...
save
2021-09-16 20:57:57 +08:00
chenjianqiang
9b53e18c44
add flash and PSRAM CS IO acquire function
2021-09-15 20:34:17 +08:00
Sachin Parekh
bf1dde7233
bootloader: Enable clock glitch detection
...
Reset the device when clock glitch detected. Clock glitch detection is
only active in bootloader
2021-09-02 12:25:12 +05:30
Yuriy Shestakov
87b958c814
Fixed GLITCH_RTC_RST for esp32-c3 revision 3
...
* Issue: https://github.com/espressif/esp-idf/issues/7082
Signed-off-by: Yuriy Shestakov <yshestakov@gmail.com>
Closes https://github.com/espressif/esp-idf/issues/7082
Closes https://github.com/espressif/esp-idf/pull/7441
2021-09-02 12:25:12 +05:30
Armando
a3dc625da6
mspi: support 120MHz Quad Flash and PSRAM on ESP32S3
2021-08-31 16:06:44 +08:00
wuzhenghui
6ab495b4dc
esp32h2: chip env support
...
brownout init fixed
2021-08-25 11:02:47 +08:00
Armando (Dou Yiwen)
3e172289b0
Merge branch 'feature/support_octal_flash_120m_str_mode_on_esp32s3' into 'master'
...
mspi: support octal flash 120MHz STR mode on esp32s3
Closes IDF-3146
See merge request espressif/esp-idf!14668
2021-08-20 08:40:02 +00:00
Mahavir Jain
85e1258178
Merge branch 'esp32s3/secure_boot' into 'master'
...
bootloader: Enable Secure boot V2 for ESP32-S3
Closes IDF-1787
See merge request espressif/esp-idf!14873
2021-08-20 06:44:19 +00:00
Michael (XIAO Xufeng)
7649db9712
draft: another patch..
2021-08-19 17:02:58 +08:00
Sachin Parekh
2d82560ed5
bootloader: Enable Secure boot V2 for ESP32-S3
2021-08-19 14:08:12 +05:30
Armando
d325f4d557
mspi: support octal flash 120M STR mode on esp32s3
2021-08-19 10:44:30 +08:00
Michael (XIAO Xufeng)
8dcfa1b384
spi_flash: fix the corruption of ROM after calling bootloader_execute_flash_command
...
The user register, especially dummy related ones, needs to be restored, otherwise the ROM function will not work.
Introduced in dd40123129
.
2021-08-18 23:55:39 +08:00
Mahavir Jain
012c9e26a4
Merge branch 'fixes/secure_boot' into 'master'
...
secure_boot/esp32(s2,c3): Disable read protecting of efuses
See merge request espressif/esp-idf!14769
2021-08-17 05:05:00 +00:00
Michael (XIAO Xufeng)
a0d2efe1be
Merge branch 'bugfix/xmc_overerase' into 'master'
...
bootloader: add xmc spi_flash startup flow to improve reliability
See merge request espressif/esp-idf!13895
2021-08-13 15:27:48 +00:00
Sachin Parekh
f430e86c0f
secure_boot/esp32(s2,c3): Disable read protecting of efuses
...
When secure boot is enabled, disable the ability to read protect
efuses that contain the digest.
2021-08-13 13:41:59 +05:30
Michael (XIAO Xufeng)
dd40123129
bootloader: add xmc spi_flash startup flow to improve reliability
2021-08-12 17:22:42 +08:00
KonstantinKondrashov
3cf4fbc150
efuse(esp32s2): Added flash_ver, psram_ver, pkg_ver efuses
2021-08-06 13:14:54 +08:00
Omar Chebib
779e7400b0
uart: uart_set_pin function will now use IOMUX whenever possible
...
By using IOMUX instead of GPIO Matrix for UART, it is now possible
on ESP32 boards to use the UART as a wake up source even if it is
not used as a console.
For other boards where this issue was not present, using IOMUX has
the advantage to be faster than using GPIO matrix, so a highest
baudrate can be used
2021-08-04 12:48:30 +08:00
Cao Sen Miao
c29b3e2e36
spi_flash: move the unlock patch to bootloader and add support for GD
2021-07-29 10:46:33 +08:00
KonstantinKondrashov
92448e7bd7
secure_boot: Whole 3 bits are set for SOFT_DIS_JTAG eFuse
2021-07-21 17:19:01 +05:00
Marius Vikhammer
03545feaea
Merge branch 'feature/s3_flash_enc' into 'master'
...
S3 Flash encryption bringup
Closes IDF-1786 and IDF-2576
See merge request espressif/esp-idf!14259
2021-07-19 08:56:50 +00:00
Omar Chebib
a7b6ec85b8
Merge branch 'feature/move_memory_layout_to_heap' into 'master'
...
G0: Memory layouts are now part of heap components
Closes IDF-1264
See merge request espressif/esp-idf!14028
2021-07-19 06:23:19 +00:00
morris
2058e89448
Merge branch 'feature/fpga_bootloader' into 'master'
...
Boot ESP32 & ESP32-S2 apps on FPGA
See merge request espressif/esp-idf!8270
2021-07-18 08:06:38 +00:00
Angus Gratton
1a626ef6ca
esp32: App can boot on FPGA image
...
Includes fix for detecting ESP32 ECO3 on FPGA
2021-07-16 10:50:06 +10:00
Angus Gratton
192b5925da
bootloader: Can boot to IDF scheduler start on internal-use FPGA
...
On ESP32 & ESP32-S2. Patch doesn't include changes to make the app run fully.
2021-07-16 10:50:06 +10:00
Omar Chebib
c4f57af6c9
G0: Memory layouts are now part of heap components
2021-07-15 11:38:23 +10:00
Marius Vikhammer
b8a322195e
flash encryption: add flash encryption support for ESP32-S3
2021-07-14 18:46:17 +08:00
Omar Chebib
b967dc0dbf
espsystem: add support for RISC-V panic backtrace
...
Add .eh_frame and .eh_frame_hdr sections to the binary (can be
enabled/disabled within menuconfig). These sections are parsed
when a panic occurs. Their DWARF instructions are decoded and
executed at runtime, to retrieve the whole backtrace. This
parser has been tested on both RISC-V and x86 architectures.
This feature needs esptool's merge adjacent ELF sections feature.
2021-07-13 15:42:40 +08:00
morris
3e2d98500f
Merge branch 'refactor/common_rom_rtc_apis' into 'master'
...
soc: define reset reasons in soc component
Closes IDF-1993
See merge request espressif/esp-idf!9829
2021-07-13 07:05:25 +00:00
Angus Gratton
d7d28786b2
Merge branch 'bugfix/secure_boot_sig_verify' into 'master'
...
secure boot: Fix incorrect handling of mbedtls_ctr_drbg_seed() failure in signature verification
See merge request espressif/esp-idf!14300
2021-07-13 06:48:25 +00:00
Angus Gratton
4fe4df8770
Merge branch 'feature/bootloader_pin_level_pr7089' into 'master'
...
bootloader: Add configurable pin level for factory reset (PR)
Closes IDFGH-5337
See merge request espressif/esp-idf!13956
2021-07-13 05:39:25 +00:00
morris
1560d6f1ba
soc: add reset reasons in soc component
2021-07-13 10:45:38 +08:00
Angus Gratton
e3ca61a200
secure boot: Fix incorrect handling of mbedtls_ctr_drbg_seed() failure in signature verification
...
Increase the test app optimization level to one that would find this issue.
2021-07-08 19:17:04 +10:00
Marius Vikhammer
71c1da8952
timer group: add timer group and WDT support for ESP32S3
...
Regenerate timer group header files and update LL, check examples
and update docs.
2021-07-06 16:21:43 +08:00
Angus Gratton
6bbb58c8c2
bootloader: Small cleanup and docs for factory reset level config
...
- Add to docs & config descriptions
- Change to a "choice" to become self-documenting
- Keep the bootloader_common_check_long_hold_gpio() function for compatibility
2021-07-05 12:08:36 +08:00
chegewara
fb7234a13d
bootloader: Add selectable level for factory reset pin
...
Closes https://github.com/espressif/esp-idf/pull/7089
2021-07-05 12:08:36 +08:00
Shu Chen
75bd02bd46
esp32h2: add some more fixes and TODOs
2021-07-01 20:36:39 +08:00
Shu Chen
2df4ddf998
esp32h2: fixes after rebase
2021-07-01 19:53:50 +08:00
Shu Chen
ee23a489b9
esp32h2: code clean up
2021-07-01 19:53:50 +08:00
Shu Chen
c0056813f2
esp32h2: add bootloader support
2021-07-01 19:53:11 +08:00
Michael (XIAO Xufeng)
afc2bc94b3
Merge branch 'feature/add_opi_flash_psram_support' into 'master'
...
spi flash: opi flash psram support and spi timing tuning support on 727
Closes IDF-3097
See merge request espressif/esp-idf!12946
2021-06-28 01:59:19 +00:00
Armando
bc248278f8
spiflash: add octal spi psram support on 727
2021-06-25 19:41:57 +08:00
Cao Sen Miao
f2fe0847d5
usb_serial_jtag: add initial support for S3 (including flashing, monitoring, writing, and reading) but console is not avaliable now
2021-06-18 12:42:41 +08:00
KonstantinKondrashov
57c7ebc4bc
flash_encrypt: Adds API to switch flash encryption "Development" to "Release"
2021-06-17 12:58:04 +05:00
Konstantin Kondrashov
f339b3fc96
efuse(esp32): Deprecate esp_efuse_burn_new_values() & esp_efuse_write_random_key()
...
These functions were used only for esp32 in secure_boot and flash encryption.
Use idf efuse APIs instead of efuse regs.
2021-06-17 07:21:36 +08:00
Angus Gratton
6961e4b3d5
Merge branch 'bugfix/ulp_overflow_rtc_mem' into 'master'
...
ulp: ULP_COPROC_RESERVE_MEM limitation
See merge request espressif/esp-idf!13814
2021-06-08 07:20:46 +00:00
Michael (XIAO Xufeng)
e005ec0899
Merge branch 'feature/s3_base_support' into 'master'
...
soc: S3 base support
See merge request espressif/esp-idf!13827
2021-06-07 12:07:08 +00:00
Angus Gratton
0f1b24891b
Merge branch 'bugfix/esp32_u4wdh_quad_io' into 'master'
...
bootloader: Fix selection of Quad I/O modes on ESP32-U4WDH chip
Closes IDFGH-4353
See merge request espressif/esp-idf!13111
2021-06-07 04:50:54 +00:00
Marius Vikhammer
19a492bc8d
soc: add base support for ESP32-S3
...
Updates the following with changes from verification branches:
* esp_rom linker files
* rtc_cntl and system reg and struct headers
Also updates:
* GDMA driver with new register layout
* esptool submodule commit
2021-06-07 10:40:14 +08:00
Marius Vikhammer
2f705136e9
bootloader: fix verify_load_addresses wrongly reporting "bad load address range"
...
verify_load_addresses would check if load_end was in a certain member range,
but should verify (load_end - 1) which is the actual last byte.
2021-06-04 12:15:52 +08:00
Jan Brudný
dffe49f305
bootloader: update copyright notice
2021-06-02 14:22:09 +02:00
Angus Gratton
f486736cbf
bootloader: Fix "skip validate in deep sleep" on ESP32 & ESP32-S2
...
Regression in 83bf2e1ac1
, this memory region was shifted from fast to slow RTC
memory (no change on ESP32-C3 as no RTC fast memory on this chip.)
2021-06-01 18:58:55 +10:00
KonstantinKondrashov
071e00a088
bootloader: Fix a wrong offset in image_load after refactoring
2021-05-26 18:06:11 +08:00
Angus Gratton
e928d57663
Merge branch 'doc/include_bootloader_random' into 'master'
...
docs: Add RNG functions to API reference
See merge request espressif/esp-idf!13519
2021-05-20 09:14:55 +00:00
Angus Gratton
e886aa1da4
Merge branch 'update_copyright_notice_bootloader_support' into 'master'
...
bootloader: update copyright notice, part 2
See merge request espressif/esp-idf!13495
2021-05-19 00:26:35 +00:00
Angus Gratton
e14edecf5f
docs: Add random number generation to the API Reference System section
2021-05-18 16:05:42 +10:00
Angus Gratton
ede477ea65
paritition_table: Verify the partition table md5sum when loading the app
...
Additionally, always enable the partition MD5 check if flash encryption is on in
Release mode. This ensures the partition table ciphertext has not been modified
(CVE-2021-27926).
The exception is pre-V3.1 ESP-IDF bootloaders and partition tables, which
don't have support for the MD5 entry.
2021-05-18 01:32:59 +00:00
Cao Sen Miao
8c5819dccb
usb_serial_jtag: fix the bug that cannot write with usb_jtag
2021-05-13 13:40:01 +08:00
Jiang Jiang Jian
3c30e688c4
Merge branch 'feature/support_auto_adjust_voltage_storingInEfuse_openGlitchRst' into 'master'
...
ESP32C3: auto adjust voltage dbias storing in efuse and open glitch reset for ECO3
See merge request espressif/esp-idf!13395
2021-05-13 03:49:59 +00:00
Angus Gratton
3f0851a22c
Merge branch 'doc/esp_random' into 'master'
...
esp_hw_support: Clarify the documentation about hardware RNG entropy
Closes IDF-73
See merge request espressif/esp-idf!13454
2021-05-11 01:37:37 +00:00
Jan Brudný
a2686dc4eb
bootloader: update copyright notice
2021-05-10 04:58:34 +02:00
chaijie
eea76d14bb
ESP32C3: auto adjust voltage dbias storing in efuse and open glitch reset for ECO3
...
1. add some efuse api to get rtc & digital voltage
2. set dig_rtc voltage to a fix value storing in efuse no mater which cpu frequency
3. modify hardware code in bootloader to fit all c3 ECO3 version
2021-05-08 17:56:54 +08:00
Angus Gratton
84f2f2932d
Merge branch 'bugfix/esp_partition_get_sha256' into 'master'
...
bootloader_support: Fix bootloader_common_get_sha256_of_partition when CHECK_SIGNATURE is on
Closes IDFGH-5089
See merge request espressif/esp-idf!12795
2021-05-07 23:34:56 +00:00
Angus Gratton
4d4e094d81
esp_hw_support: Clarify the documentation about hardware RNG entropy
2021-05-06 16:59:02 +10:00
Michael (XIAO Xufeng)
58490418ad
Merge branch 'feature/merge_c3_caps' into 'master'
...
soc: merge C3 caps into a single soc_caps.h
See merge request espressif/esp-idf!13337
2021-05-06 05:56:42 +00:00
KonstantinKondrashov
ca481e18e1
bootloader_support: Used esp_image_get_metadata() instead of esp_image_verify()
...
- bootloader_common_get_sha256_of_partition will not do any unnecessery verifies.
- Used esp_image_get_metadata() instead of esp_image_verify().
2021-05-05 11:53:57 +00:00
KonstantinKondrashov
d9be32629e
bootloader: Fixed a case when signed OTA updates fail when debugger is attached due to the wrong image_len.
...
And it fixed another case for bootloader_common_get_sha256_of_partition() when CHECK_SIGNATURE is on
- If RSA signature check is on in Kconfig then sha256 was 0xFFFFF...
because image_load gave image_len which pointed to the end of sign blocks.
And image_digest was filled from a wrong position.
Closes https://github.com/espressif/esp-idf/issues/6873
2021-05-05 11:53:57 +00:00
Jeroen Domburg
2c75f63f89
* ets_delay_us(1) has too much overhead; change logic
...
* Fix MR comments
2021-04-28 16:38:24 +08:00
Marius Vikhammer
504a1e6102
soc: merge C3 caps into a single soc_caps.h
2021-04-28 14:42:35 +08:00
Shubham Patil
c2b0db75e8
bootloader_support: Fix min size of OTA partition in error log
2021-04-22 14:00:42 +05:30
Mahavir Jain
a4f38db53d
bootloader_support: fix min. revision error print for < C3-ECO3 revisions
2021-04-20 14:22:14 +05:30
Mahavir Jain
f9699e2412
bootloader: fix print related to min. chip revision
...
Closes https://github.com/espressif/esp-idf/issues/6890
Closes IDFGH-5106
2021-04-20 14:19:17 +05:30
Angus Gratton
83bf2e1ac1
bootloader: Fix "skip validate on exit deep sleep" when "Use RTC fast memory as heap" is enabled
...
RTC region used to store boot partition needs to remain reserved in the app.
2021-04-15 16:20:58 +10:00
KonstantinKondrashov
9f932a2a18
bootloader: Fix error in Make build system when signature options is on
2021-04-13 11:28:13 +00:00
Michael (XIAO Xufeng)
8cfcf6da7a
Merge branch 'bugfix/enable_gpio18_gpio19_esp32c3' into 'master'
...
gpio: Disable USB JTAG when setting pins 18 and 19 as GPIOs on ESP32C3
Closes IDF-2964
See merge request espressif/esp-idf!12753
2021-04-12 09:39:55 +00:00
Angus Gratton
268b23db96
bootloader: Fix selection of Quad I/O modes on ESP32-U4WDH chip
...
Closes https://github.com/espressif/esp-idf/issues/6191
2021-04-12 18:49:17 +10:00
Omar Chebib
cd79f3907d
gpio: Disable USB JTAG when setting pins 18 and 19 as GPIOs on ESP32C3
...
When `DIS_USB_JTAG` eFuse is NOT burned (`False`), it is not possible
to set pins 18 and 19 as GPIOs. This commit solves this by manually
disabling USB JTAG when using pins 18 or 19.
The functions shall use `gpio_hal_iomux_func_sel` instead of
`PIN_FUNC_SELELECT`.
2021-04-08 14:01:18 +08:00
Angus Gratton
70cab5bd81
Merge branch 'bugfix/ulp_riscv_unintended_wake' into 'master'
...
ulp: unintended wakeup in ulp_riscv
See merge request espressif/esp-idf!12894
2021-04-08 01:52:41 +00:00
chaijie
c101fc3e3d
fix c3 hardware bug before ECO3 and optimizate bbpll config:
...
1. deepsleep poweron reset bug in high temperature before ECO3;
2. brownout reset bug before ECO2;
3. bbpll voltage low bug before ECO3;
4. need xpd iph for xtal before ECO3;
2021-03-31 13:08:56 +00:00
Renz Bagaporo
3639c2322b
ulp: clear rtc int at initialization
...
Closes https://github.com/espressif/esp-idf/issues/6654
2021-03-31 17:15:55 +08:00
Mahavir Jain
531f14aa31
Merge branch 'feature/secure_boot_v1_add_tip_msg' into 'master'
...
secure_boot_v1: Adds a help message in case when sig_block.version is not valid
Closes IDFGH-4982
See merge request espressif/esp-idf!12916
2021-03-26 04:24:13 +00:00
KonstantinKondrashov
7f40717eb2
secure_boot/SIGNED_ON_UPDATE_NO_SECURE_BOOT: Only the first position of signature blocks is used to verify any update
2021-03-25 12:27:05 +00:00
KonstantinKondrashov
cbbd1e88a5
secure_boot_v1: Adds a help message in case when sig_block.version is not valid
...
if sig_block.version is not valid then probably the image without a signature.
2021-03-25 20:01:52 +08:00
Angus Gratton
fa2946d651
Merge branch 'feature/support_esp32s3_beta_3' into 'master'
...
Support ESP32S3 beta 3 target
Closes IDF-2908
See merge request espressif/esp-idf!12661
2021-03-23 10:17:58 +00:00
Marius Vikhammer
2aead8ba57
Support ESP32S3 Beta 3 target
...
Update ROM API. Port changes from bringup branch.
2021-03-18 10:24:22 +08:00
KonstantinKondrashov
a90f29fced
wdt: Updates
2021-03-18 02:31:28 +08:00
Angus Gratton
6a29b45bd4
secure boot v2: Fix issue checking multiple signature blocks on OTA update
2021-03-15 12:30:20 +00:00
Angus Gratton
d709631393
secure boot: Add boot check for SBV2 "check app signature on update"
...
As this mode uses the public keys attached to the existing app's signatures to
verify the next app, checking that a signature block is found on boot prevents
the possibility of deploying a non-updatable device from the factory.
2021-03-15 12:30:20 +00:00
KonstantinKondrashov
95564b4687
secure_boot: Secure Boot V2 verify app signature on update (without Secure boot)
...
- ESP32 ECO3, ESP32-S2/C3/S3
2021-03-15 12:30:20 +00:00
Angus Gratton
fd164b82b6
Merge branch 'refactor/move_from_xtensa' into 'master'
...
Movements from xtensa
Closes IDF-2164
See merge request espressif/esp-idf!10556
2021-03-11 00:24:25 +00:00
Angus Gratton
6f362b9383
bootloader: Add config options to skip validation of app for minimum boot time
2021-03-10 14:00:46 +11:00
Angus Gratton
32ea7dc812
Merge branch 'feature/bootloader_disable_logs_unnecessary_warnings' into 'master'
...
bootloader: Disables unnecessary warning logs when invalid magic byte
Closes IDF-1900
See merge request espressif/esp-idf!12514
2021-03-09 06:28:46 +00:00
Angus Gratton
d6f4d99d93
core system: Fix warnings in compilation when assertions are disabled
...
Adds a CI config for hello world that sets this, to catch future regressions
2021-03-03 10:26:57 +11:00
KonstantinKondrashov
87aeef65a8
bootloader: Disables unnecessary warning logs when invalid magic byte
2021-03-01 20:34:54 +08:00
Renz Bagaporo
0f03f450ff
esp_hw_support: create esp_cpu
...
Create a esp_cpu header that contains CPU-related functions and
utilities.
2021-02-26 13:34:29 +08:00
Angus Gratton
cbc58b85e2
Merge branch 'feature/adds_check_in_app_that_flash_enc_is_on' into 'master'
...
bootloader: Adds a check that app is run under FE
Closes IDF-640
See merge request espressif/esp-idf!12368
2021-02-25 22:39:13 +00:00
KonstantinKondrashov
90f2d3199a
secure_boot: Checks secure boot efuses
...
ESP32 V1 and V2 - protection bits.
ESP32xx V2: revoke bits, protection bits
- refactor efuse component
- adds some APIs for esp32 chips as well as for esp32xx chips
2021-02-23 03:56:21 +08:00
KonstantinKondrashov
11a2f2acd3
bootloader: Adds a check that app is run under FE
2021-02-15 20:33:50 +08:00
Angus Gratton
2c39010b3b
Merge branch 'bugfix/anti_rollback_without_test_app' into 'master'
...
bootloader: Anti-rollback mode doesn't run test_app
See merge request espressif/esp-idf!12225
2021-02-09 14:16:51 +08:00
Michael (XIAO Xufeng)
423a5458dc
Merge branch 'bugfix/support_new_BYflash_chip_boot' into 'master'
...
spi_flash: add external flash support on esp32c3
Closes IDF-2650, IDF-2651, and IDF-2399
See merge request espressif/esp-idf!12121
2021-02-05 20:03:24 +08:00
Cao Sen Miao
cc1c6c30be
flash: check boya chip support
2021-02-04 14:44:50 +08:00
KonstantinKondrashov
25ac1d4d28
bootloader: Anti-rollback mode doesn't run test_app
...
- Cmake shows an error if the partition table has a test app.
- BOOTLOADER_APP_TEST depends on !BOOTLOADER_APP_ANTI_ROLLBACK.
- Bootloader does not boot the test app if secure version is low.
Closes: https://www.esp32.com/viewtopic.php?f=13&t=19164&p=71302#p71302
2021-02-01 23:24:23 +08:00
KonstantinKondrashov
3ed226c362
efuse(esp32c3): Adds getting chip_revision and chip_pkg
2021-01-25 19:37:40 +08:00
Cao Sen Miao
9905da46e0
spi_flash: Add auto suspend mode on esp32c3
2021-01-25 11:14:02 +08:00
Angus Gratton
a7da0c894b
Merge branch 'feature/c3_master_flash_enc_support' into 'master'
...
flash encryption: merge C3 flash encryption changes to master
See merge request espressif/esp-idf!12040
2021-01-22 12:58:38 +08:00
Angus Gratton
fe8a891de9
Merge branch 'feature/support_esp32c3_master_cmake_secure_boot' into 'master'
...
bootloader/esp32c3: Support secure boot
Closes IDF-2115
See merge request espressif/esp-idf!11797
2021-01-21 08:42:49 +08:00
KonstantinKondrashov
88c5fe49b8
soc: Adds a soc_caps define for all chips to define the number of boot key digests
2021-01-19 20:51:13 +08:00
KonstantinKondrashov
98f726fa4b
bootloader/esp32c3: Adds secure boot (not yet supported)
2021-01-19 20:51:13 +08:00
Marius Vikhammer
03fa63b0c9
bootloader: add flash encryption support for C3
...
Adds flash encryption support for C3 and updates docs for S2 & C3
2021-01-18 14:10:54 +08:00
morris
753a929525
global: fix sign-compare warnings
2021-01-12 14:05:08 +08:00
fuzhibo
312a0ad6c1
fix: support bootloader random enable for esp32c3
2021-01-11 14:41:09 +08:00
Angus Gratton
c535d569aa
Merge branch 'bugfix/secure_boot_sig_failed_crash' into 'master'
...
secure boot: Fix crash if signature verification fails in app
Closes IDFGH-4376
See merge request espressif/esp-idf!11846
2021-01-08 16:23:29 +08:00
Angus Gratton
7069736c2a
Merge branch 'feature/bootloader_uses_efuse_keys_api' into 'master'
...
bootloader: Add using of efuse APIs for keys, purposes, wr/rd-protection bits
See merge request espressif/esp-idf!11110
2021-01-08 11:29:50 +08:00
Konstantin Kondrashov
fbba2cb356
bootloader/esp32s2: Add using of efuse APIs for keys, purposes, wr/rd-protection bits for flash encryption, secure boot
2021-01-08 11:29:46 +08:00
Morozov-5F
a8837aa378
secure boot v2: Fix crash if signature verification fails in app
...
sha_handle is "finished" when verify_secure_boot_signature() returns and
should be nulled out.
Alternative version of fix submitted in https://github.com/espressif/esp-idf/pull/6210
Closes https://github.com/espressif/esp-idf/pull/6210
Signed-off-by: Angus Gratton <angus@espressif.com>
2020-12-31 14:43:47 +05:30
Marius Vikhammer
68608f804c
esp32c3: Misc fixes needed to build & run
2020-12-31 15:20:05 +11:00
Marius Vikhammer
eb788deb03
esp_hw_support: merge C3 changes to master
...
Merge RTC related C3 changes to master
2020-12-30 12:20:41 +08:00
Angus Gratton
7a40b1695c
Merge branch 'feature/esp32c3_small_changes' into 'master'
...
esp32c3: Merge small target support changes
Closes IDF-2361
See merge request espressif/esp-idf!11714
2020-12-24 12:36:12 +08:00
Marius Vikhammer
4ff8c7ae98
esp_rom/esp_system: Add flag for ROM multiple UART output, esp32c3 console
...
From internal commit 6d894813
2020-12-24 14:18:01 +11:00
Angus Gratton
adbf182bc5
bootloder_support: esp32c3 only supports XTS-AES-128 flash encryption
2020-12-24 13:40:01 +11:00
Supreet Deshpande
c4cf6d6d26
Secure boot v2: Fixes the issue of passing the flash calculated digest for ota verification.
2020-12-21 11:32:37 +05:30
Supreet Deshpande
e517b4953f
Secure Boot v2: Fix the double padding of the image length during flash encryption
...
Fixes https://github.com/espressif/esp-idf/issues/6236
2020-12-21 11:32:37 +05:30
Angus Gratton
f50dd23872
Merge branch 'feature/merge_esp32c3_bootloader_support' into 'master'
...
esp32c3: add initial bootloader and target component support
Closes IDF-2435 and IDF-2436
See merge request espressif/esp-idf!11433
2020-12-11 15:36:28 +08:00
morris
3f287800eb
bootloader_support: added esp32-c3 support
2020-12-11 11:45:10 +08:00
Marius Vikhammer
0c3714de1c
bootloader_support: re-enable S2 unit test
...
Re-enable "Verify unit test app image"
2020-12-10 08:04:09 +00:00
Ivan Grokhotkov
89d39308a0
bootloader: avoid printing load addresses with '0x'
...
Since idf_monitor decodes anything that looks like a code address and
starts with 0x, bootloader logs often get annotated with function
names such as WindowOverflow and other random and scary looking things
unrelated to the issue the user is facing. Print the addresses without
0x to avoid confusion by decoded function names. Print hexadecimal
size with 'h' suffix to distinguish it from the decimal value that
follows.
2020-12-02 16:33:43 +01:00
Angus Gratton
5228d9f9ce
esp32c3: Apply one-liner/small changes for ESP32-C3
2020-12-01 10:58:50 +11:00
Supreet Deshpande
73d1be4281
Secure Boot V2: Fix an issue leading to manual enablement of Secure Boot v2.
...
Fixes https://github.com/espressif/esp-idf/issues/6050
2020-11-23 06:52:44 +00:00
Angus Gratton
420aef1ffe
Updates for riscv support
...
* Target components pull in xtensa component directly
* Use CPU HAL where applicable
* Remove unnecessary xtensa headers
* Compilation changes necessary to support non-xtensa gcc types (ie int32_t/uint32_t is no
longer signed/unsigned int).
Changes come from internal branch commit a6723fc
2020-11-13 07:49:11 +11:00
Angus Gratton
66fb5a29bb
Whitespace: Automated whitespace fixes (large commit)
...
Apply the pre-commit hook whitespace fixes to all files in the repo.
(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
morris
9de6cba434
ci: add more build test for esp32-s3
2020-10-27 17:22:17 +08:00
Michael (XIAO Xufeng)
8926216723
Merge branch 'bugfix/esp32s2_adc_rng_registers' into 'master'
...
esp32s2: Use regi2c registers to enable bootloader RNG
See merge request espressif/esp-idf!10941
2020-10-26 13:55:05 +08:00
Angus Gratton
57d6026f97
Merge branch 'feature/efuse_support_for_esp32s3' into 'master'
...
efuse: Adds support for esp32-s3 chip
See merge request espressif/esp-idf!10491
2020-10-22 13:53:01 +08:00
Angus Gratton
cb12365221
Merge branch 'feature/add_inttypes_for_esp_app_format' into 'master'
...
bootloader_support: Add missing inttypes include in esp_app_format.h
Closes IDFGH-3950
See merge request espressif/esp-idf!10921
2020-10-22 12:16:22 +08:00
Angus Gratton
639e97437f
esp32s2: Use regi2c registers to enable bootloader RNG
2020-10-22 14:39:59 +11:00
sU8U7SfkcwTJVH7PjaVmej7D
092b63f491
bootloader_support: Add missing inttypes include in esp_app_format.h
...
Signed-off-by: KonstantinKondrashov <konstantin@espressif.com>
Closes: https://github.com/espressif/esp-idf/pull/5837
2020-10-20 21:49:07 +08:00
Angus Gratton
4504318a28
Merge branch 'feature/esp32s2_bootloader_random' into 'master'
...
bootloader_support: Enable RNG entropy source for ESP32-S2
Closes IDF-1347
See merge request espressif/esp-idf!8965
2020-10-19 07:12:59 +08:00
Michael (XIAO Xufeng)
647dea9395
soc: combine xxx_caps.h into one soc_caps.h
...
During HAL layer refactoring and new chip bringup, we have several
caps.h for each part, to reduce the conflicts to minimum. But this is
The capabilities headers will be relataive stable once completely
written (maybe after the featues are supported by drivers).
Now ESP32 and ESP32-S2 drivers are relative stable, making it a good
time to combine all these caps.h into one soc_caps.h
This cleanup also move HAL config and pin config into separated files,
to make the responsibilities of these headers more clear. This is
helpful for the stabilities of soc_caps.h because we want to make it
public some day.
2020-10-17 16:10:15 +08:00
Angus Gratton
04ecdd95cf
bootloader_support makefile: Use consistent indentation
2020-10-16 18:48:26 +11:00
Angus Gratton
b35cb43caf
bootloader_support: Add dummy ESP32-S3 RNG support
2020-10-16 18:48:26 +11:00
Angus Gratton
9311b1e7be
esp32s2: Enable 8M clock source for RNG also
...
Either of these options is sufficient to pass dieharder test suite with
bootloader random output, having both enabled is a bonus.
2020-10-16 18:48:26 +11:00
Angus Gratton
699742acc6
esp32s2: Support bootloader_random_enable()
2020-10-16 18:48:26 +11:00
Angus Gratton
a416452657
Merge branch 'feature/skip_sha256_error_on_fpga' into 'master'
...
bootloader: Skip a sha256 error on FPGA
See merge request espressif/esp-idf!10836
2020-10-16 14:43:06 +08:00
Michael (XIAO Xufeng)
465e5050b6
Merge branch 'bugfix/fix_spi_flash_clock_config_error_s2' into 'master'
...
bootloader_support: fix spi flash clock config error
See merge request espressif/esp-idf!10628
2020-10-16 12:04:32 +08:00
KonstantinKondrashov
3c57d5e0a1
bootloader: Skip a sha256 error on FPGA
2020-10-15 13:27:54 +08:00
KonstantinKondrashov
66b9b589cb
efuse: Adds support for esp32-s2 chip
2020-10-14 16:26:51 +08:00
Supreet Deshpande
2356be7c7a
Secure Boot V2: Fixes the OTA regression with secure boot in ESP32-V3
...
Closes https://github.com/espressif/esp-idf/issues/5905
2020-10-12 07:15:16 +00:00
Michael (XIAO Xufeng)
637ca4b15d
bootloader_support: fix fix spi flash clock config error
...
Relates to: https://github.com/espressif/esp-idf/issues/5099
2020-10-03 04:37:52 +00:00
Mahavir Jain
ab988ab5ca
bootloader_support: move anti rollback API to common loader section
...
API `bootloader_common_get_partition_description` is required for
anti-rollback feature and should be part of common loader code.
2020-09-30 11:13:13 +05:30
Mahavir Jain
5b344610c9
bootloader_support: fix issue in memory mapping for getting app descriptor
...
For getting secure_version field in anti rollback case, bootloader tries
to map whole firmware partition but fails for cases where partition size
is beyond available MMU free pages capacity.
Fix here insures to map only required length upto application descriptor
size in firmware partition.
Closes https://github.com/espressif/esp-idf/issues/5911
2020-09-30 11:13:13 +05:30
morris
6225932201
bootloader_support: add esp32-s3 initial support
2020-09-22 15:15:03 +08:00
Michael (XIAO Xufeng)
3b2e8648eb
bootloader: create public bootloader_flash.h header
...
Move non-public functions into bootloader_flash_priv.h header
2020-09-19 10:52:02 +08:00
Michael (XIAO Xufeng)
fefdee1349
bootloader: fix the WRSR format for ISSI flash chips
...
1. The 2nd bootloader always call `rom_spiflash_unlock()`, but never help to clear the WEL bit when exit. This may cause system unstability.
This commit helps to clear WEL when flash configuration is done.
**RISK:** When the app starts, it didn't have to clear the WEL before it actually write/erase. But now the very first write/erase operation should be done after a WEL clear. Though the risk is little (all the following write/erase also need to clear the WEL), we still have to test this carefully, especially for those functions used by the OTA.
2. The `rom_spiflash_unlock()` function in the patch of ESP32 may (1) trigger the QPI, (2) clear the QE or (3) fail to unlock the ISSI chips.
Status register bitmap of ISSI chip and GD chip:
| SR | ISSI | GD25LQ32C |
| -- | ---- | --------- |
| 0 | WIP | WIP |
| 1 | WEL | WEL |
| 2 | BP0 | BP0 |
| 3 | BP1 | BP1 |
| 4 | BP2 | BP2 |
| 5 | BP3 | BP3 |
| 6 | QE | BP4 |
| 7 | SRWD | SRP0 |
| 8 | | SRP1 |
| 9 | | QE |
| 10 | | SUS2 |
| 11 | | LB1 |
| 12 | | LB2 |
| 13 | | LB3 |
| 14 | | CMP |
| 15 | | SUS1 |
QE bit of other chips are at the bit 9 of the status register (i.e. bit 1 of SR2), which should be read by RDSR2 command.
However, the RDSR2 (35H, Read Status 2) command for chip of other vendors happens to be the QIOEN (Enter QPI mode) command of ISSI chips. When the `rom_spiflash_unlock()` function trys to read SR2, it may trigger the QPI of ISSI chips.
Moreover, when `rom_spiflash_unlock()` try to clear the BP4 bit in the status register, QE (bit 6) of ISSI chip may be cleared by accident. Or if the ISSI chip doesn't accept WRSR command with argument of two bytes (since it only have status register of one byte), it may fail to clear the other protect bits (BP0~BP3) as expected.
This commit makes the `rom_spiflash_unlock()` check whether the vendor is issi. if so, `rom_spiflash_unlock()` only send RDSR to read the status register, send WRSR with only 1 byte argument, and also avoid clearing the QE bit (bit 6).
3. `rom_spiflash_unlock()` always send WRSR command to clear protection bits even when there is no protection bit active. And the execution of clearing status registers, which takes about 700us, will also happen even when there's no bits cleared.
This commit skips the clearing of status register if there is no protection bits active.
Also move the execute_flash_command to be a bootloader API; move
implementation of spi_flash_wrap_set to the bootloader
2020-09-19 10:51:51 +08:00
KonstantinKondrashov
2373f115fc
efuse/esp32: Expands PKG_VER from 3 bit to 4 bits
...
Closes: IDF-1919
2020-09-17 07:44:37 +00:00
KonstantinKondrashov
09af4a9fad
bootloader: Fix esp_get_flash_encryption_mode(). RELEASE = (CRYPT_CNT == max) or (CRYPT_CNT.write_protect == true)
...
If the CRYPT_CNT efuse is max it means the same as a write protection bit for this efuse.
Closes: https://github.com/espressif/esp-idf/issues/5747
2020-09-11 04:20:23 +00:00
Ivan Grokhotkov
b6467257b9
Merge branch 'feature/cmock_component' into 'master'
...
cmock as component replacing unity
See merge request espressif/esp-idf!9859
2020-09-10 16:06:20 +08:00
Ivan Grokhotkov
26016534d8
bootloader: move rtc_retain_mem functions back into .iram_loader.text
...
Introduced 66a32c17
when bootloader_common was moved out of the loader
section.
Also add a test for this configuration.
2020-09-09 10:35:29 +02:00
Ivan Grokhotkov
66a32c1707
bootloader: fix section placement issues found by the check script
...
Summary of changes:
- bootloader_clock split into *_clock_init and *_clock_loader.
Only esp_clk_apb_freq is in *_clock_loader.
- bootloader_common moved out of loader; functions needed in loader
(or, referenced from bootloader_utility) were moved into
bootloader_common_loader.c.
- assert and abort moved into bootloader_panic, made part of the
loader
- rtc_clk and rtc_time made part of loader
2020-09-03 18:14:17 +02:00
Michael (XIAO Xufeng)
9e7eda9770
Merge branch 'feat/spi_flash_override_size' into 'master'
...
spi_flash: add config option to override flash size in bootloader header
See merge request espressif/esp-idf!10131
2020-09-03 02:57:31 +08:00
Jakob Hasse
20c068ef3b
cmock: added cmock as component
...
* changing dependencies from unity->cmock
* added component.mk and Makefile.projbuild
* ignore test dir in gen_esp_err_to_name.py
* added some brief introduction of CMock in IDF
2020-09-02 16:38:37 +08:00
Michael (XIAO Xufeng)
37423083bb
spi_flash: add config option to override flash size in bootloader header
...
Sometimes the flash size read from bootloader is not correct. This may
forbid SPI Flash driver from reading the the area larger than the size
in bootloader header.
When the new config option is enabled, the latest configured
ESPTOOLPY_FLAHSIZE in the app header will be used to override the value
read from bootloader header.
2020-09-02 00:35:53 +08:00
Michael (XIAO Xufeng)
5425ef4ee4
hal: extract hal component from soc component
2020-09-01 13:25:32 +08:00
Sachin Billore
f1dae0d6e1
ESP32 SecureBoot V2: eFuse write operations are updated to use the eFuse Manager APIs
...
Closes IDF-2034
Closes https://github.com/espressif/esp-idf/issues/5771
2020-08-27 04:24:04 +00:00
Angus Gratton
a2dc60b254
Merge branch 'feature/secure_boot_esp32s2' into 'master'
...
Feature/secure boot esp32s2
See merge request espressif/esp-idf!8254
2020-07-28 16:39:34 +08:00
morris
2917651478
esp_rom: extract common ets apis into esp_rom_sys.h
2020-07-27 15:27:01 +08:00
Angus Gratton
a91bd4078f
secure boot: Fixes for ESP32-S2 first boot logic
2020-07-27 00:01:10 +00:00
Angus Gratton
bfc3f85826
bootloader esp32s2: Fix return type of ROM function signature verification
2020-07-27 00:01:10 +00:00
Supreet Deshpande
e640e148cf
Secure boot v2 support for ESP32-S2
2020-07-27 00:01:10 +00:00
Angus Gratton
c871c349f2
Merge branch 'bugfix/bootloader_common_get_sha256_of_partition' into 'master'
...
bootloader_support: Fix bootloader_common_get_sha256_of_partition(), can handle a long image
Closes IDFGH-3594
See merge request espressif/esp-idf!9509
2020-07-23 13:27:48 +08:00
morris
ab0537c079
esp_rom: extract common MD5 hash apis into esp_rom_md5.h
2020-07-21 17:01:28 +08:00
Angus Gratton
442736c5d6
Merge branch 'refactor/common_rom_uart_apis' into 'master'
...
esp_rom: extract common uart apis into esp_rom_uart.h
See merge request espressif/esp-idf!9313
2020-07-21 15:24:21 +08:00
Angus Gratton
3755fb6597
Merge branch 'feature/add_esp32s3_bootloader_ld_file' into 'master'
...
move part of esp32-s3 codes to master (bootloader linker, esp32s3 empty componnet)
See merge request espressif/esp-idf!9608
2020-07-21 14:51:04 +08:00
KonstantinKondrashov
d95c89a1eb
bootloader_support: Fix bootloader_common_get_sha256_of_partition, can handle a long image
...
Closes: IDFGH-3594
2020-07-20 10:55:41 +00:00
Angus Gratton
c09fdc0b09
esp32: Use package identifier to look up SPI flash/PSRAM WP Pin, unless overridden
...
Allows booting in QIO/QOUT mode or with PSRAM on ESP32-PICO-V3 and
ESP32-PICO-V3-O2 without any config changes.
Custom WP pins (needed for fully custom circuit boards) should still be compatible.
2020-07-20 14:08:49 +08:00
chenjianqiang
e9dd4f283a
feat(esp32): support for esp32-pico-v3-02
2020-07-20 12:21:32 +08:00
morris
6316e6eba2
esp_system: add CONFIG_ESP_SYSTEM_RTC_EXT_CRYS
2020-07-20 11:15:24 +08:00
morris
b587428e5d
bootloader: make bootloader offset address in flash configurable
2020-07-20 10:51:05 +08:00
morris
345606e7f3
esp_rom: extract common uart apis into esp_rom_uart.h
2020-07-17 16:00:59 +08:00
morris
458b14a8ea
esp_rom: extract common efuse apis into esp_rom_efuse.h
2020-07-15 10:40:50 +08:00
morris
a4d0033c03
esp_rom: extract common GPIO apis into esp_rom_gpio.h
2020-07-07 11:40:19 +08:00
Ivan Grokhotkov
6dfb2d83a7
bootloader: combine console code for ESP32 and S2, add USB support
2020-06-26 15:38:49 +02:00
Ivan Grokhotkov
5ee75165f2
esp_common: add "USB CDC" option for console output
2020-06-26 15:38:49 +02:00
Ivan Grokhotkov
0620890028
bootloader, rtc: don't disable PLL if it is already enabled
2020-06-24 15:50:51 +02:00
morris
a34409cffc
esp_rom: extract common CRC apis into esp_rom_crc.h
2020-06-23 16:40:14 +08:00
Angus Gratton
a5683f2263
Merge branch 'bugfix/efuse_logs' into 'master'
...
esp32/esp32s2: Reduce using ESP_EARLY_LOGx and move some code after the stdout initialization in startup code
Closes IDFGH-3367
See merge request espressif/esp-idf!8904
2020-06-16 13:47:02 +08:00