Commit Graph
100 Commits
Author SHA1 Message Date
Konstantin Kondrashov 2ce6c78af4 Merge branch 'feature/check_block_after_burn' into 'master'
efuse: Validates data after burning and re-burnes it if necessary

Closes ESPCS-817

See merge request espressif/esp-idf!17686
2022-04-27 01:10:42 +08:00
Konstantin Kondrashov df30b362a8 efuse: Validates data after burning and re-burnes it if necessary 2022-04-27 01:10:41 +08:00
Konstantin Kondrashov 04bcc17dcc Merge branch 'bugfix/light_sleep_when_rtc_is_used_for_gettimeofday' into 'master'
esp_hw_support: Fix time spent in light sleep when RTC is used for gettimeofday

See merge request espressif/esp-idf!17740
2022-04-18 13:23:54 +08:00
KonstantinKondrashov 1e0eef52d3 esp_hw_support: Fix time spent in light sleep when RTC is used for gettimeofday
The esp_timer was not advanced correctly.
2022-04-14 15:53:48 +08:00
Konstantin Kondrashov a7578a68c0 Merge branch 'bugfix/ipc_blocking' into 'master'
esp_ipc: Fix a case when ipc_task() can wake up blocking task early

Closes IDFGH-6939

See merge request espressif/esp-idf!17508
2022-03-31 13:28:39 +08:00
Konstantin Kondrashov 44a0108d4c Merge branch 'feature/esp32c3_eco4' into 'master'
esp32c3: Adds ECO4 revision

Closes IDF-4848

See merge request espressif/esp-idf!17514
2022-03-31 13:24:34 +08:00
KonstantinKondrashov 754a563750 esp32c3: Adds ECO4 revision 2022-03-30 00:09:46 +08:00
KonstantinKondrashov 915168c36d esp_ipc: Fix a case when ipc_task() can wake up blocking task early
Closes https://github.com/espressif/esp-idf/issues/8559
2022-03-25 21:15:40 +08:00
KonstantinKondrashov 47be69329b esptool: Update esptool submodule 2022-03-11 04:05:30 +00:00
Konstantin Kondrashov 00ab35ade0 Merge branch 'feature/bootloader_add_app_test_lvl' into 'master'
bootloader: Adds a level selection for the app's test pin.

Closes IDFGH-6703

See merge request espressif/esp-idf!17425
2022-03-10 22:48:15 +08:00
KonstantinKondrashov 21dd929c72 bootloader: Adds a level selection for the app's test pin.
Closes https://github.com/espressif/esp-idf/issues/8332
2022-03-09 19:52:37 +08:00
Konstantin Kondrashov e17b0df8ec Merge branch 'feature/adds_efuses_to_table' into 'master'
efuse: Adds ERR_RST_ENABLE efuse for C3 and S3

See merge request espressif/esp-idf!17294
2022-03-07 13:05:55 +08:00
KonstantinKondrashov 6d11c57b2a efuse: Adds ERR_RST_ENABLE efuse for C3 and S3
Closes https://github.com/espressif/esp-idf/issues/8357
2022-03-02 18:48:42 +08:00
KonstantinKondrashov 7d097511fa soc: Fix efuse_hal_get_chip_revision for esp32 2022-03-01 16:55:43 +08:00
Konstantin Kondrashov 44e5ac2c59 Merge branch 'feature/efuse_hal' into 'master'
hal: Adds efuse hal layer

See merge request espressif/esp-idf!16354
2022-02-28 13:38:43 +08:00
KonstantinKondrashov 9605f3eb1a soc: Adds efuse hal
Replaced eFuse ROM funcs with hal layer
2022-02-24 22:20:09 +08:00
KonstantinKondrashov 0f3cd98b88 doc: Adds note about pre-burned eFuses for Blocks with a coding scheme 2022-02-03 23:14:50 +08:00
KonstantinKondrashov ebdc52d4e2 efuse(esp32c2): Support eFuse key APIs 2022-02-01 17:30:31 +08:00
Konstantin Kondrashov 7f1dc675ae Merge branch 'feature/clean_up_fe_sb_in_bootloader_for_esp32h2' into 'master'
bootloader_support: Removes old code of SB and FE for esp32h2

See merge request espressif/esp-idf!16935
2022-01-28 09:44:16 +00:00
Konstantin Kondrashov c4d91581ca Merge branch 'bugfix/efuse_timesettings_for_esp32s3' into 'master'
efuse: Fixes eFuse timesettings issue on esp32S3

See merge request espressif/esp-idf!16907
2022-01-26 09:33:39 +00:00
KonstantinKondrashov f761cee32e bootloader_support: Removes old code of SB and FE for esp32h2 2022-01-26 15:21:20 +08:00
KonstantinKondrashov 45d2d2470b efuse: Fixes eFuse timesettings issue on esp32S3 2022-01-25 22:09:14 +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
KonstantinKondrashov 4ede9aaa26 efuse: Fixes eFuse timesettings issue on esp32c3 2022-01-21 16:45:50 +08:00
KonstantinKondrashov 041ba0c297 examples: Adds a note on how to meet requirements to run the example_test.py
export PYTHONPATH="$IDF_PATH/tools:$IDF_PATH/tools/ci/python_packages"
python -m pip install -r $IDF_PATH/tools/ci/python_packages/ttfw_idf/requirements.txt

It helps to fix the ModuleNotFoundError issue with ttfw_idf and tiny_test_fw modules.

Closes https://github.com/espressif/esp-idf/issues/7815
2022-01-18 15:55:30 +08:00
KonstantinKondrashov f49787ac9f esp_system: ipc_isr does not use its own initialization task, it is done from ipc_task()
It helps to reduce the memory usage at startup.

Closes https://github.com/espressif/esp-idf/issues/8111
2022-01-13 21:28:08 +08:00
KonstantinKondrashov ff96769b0e esp_system: Fix RTC_WDT protection in esp_restart_noos
Fixed issue - v4.3 app not compatible with 3.1 bootloader
2021-12-21 14:48:14 +08:00
KonstantinKondrashov 4cef1e2f8b esptool/espefuse: execute_scripts can be run nested way
Added args for execute_scripts cmd
Cleaned up only_burn_at_end args, it does not need anymore
2021-12-16 22:32:20 +08:00
KonstantinKondrashov 209702d055 esp_ipc: Update documentation and API descriptions
This commit updates the documentation and API descriptions of
the esp_ipc and esp_ipc_isr features.
2021-11-18 21:34:50 +08:00
KonstantinKondrashov bf9829df5b efuse example: Fix pre-load SB test for S2, C3 (erase revoke bits) 2021-11-02 15:26:24 +08:00
KonstantinKondrashov 884a6b17cc spi_flash: No CPU release time for an erase operation when OS is not running
During the early start, the virtual eFuse mode can call erase operations when OS is not yet running.

Possible workaround: CONFIG_SPI_FLASH_YIELD_DURING_ERASE=n

Fixed for the legacy flash driver as well.
2021-11-01 21:49:24 +08:00
KonstantinKondrashov f45d25d380 efuse_table_gen: Fixes wrong joining fields with omitted names
The issue is related to the non-sequential way of description when
such fields going together sequential.

Related to esp32h2 chip for eFuses: MAC_FACTORY and MAC_EXT.
The issue is in wrong indexes of MAC_EXT.
MAC_EXT got indexes like it is joined to MAC_FACTORY.

const esp_efuse_desc_t* ESP_EFUSE_MAC_FACTORY[] = {
    &MAC_FACTORY[0],
    &MAC_FACTORY[1],
    &MAC_FACTORY[2],
    &MAC_FACTORY[3],
    &MAC_FACTORY[4],
    &MAC_FACTORY[5],
    NULL
};

const esp_efuse_desc_t* ESP_EFUSE_MAC_EXT[] = {
    &MAC_EXT[6],
    &MAC_EXT[7],
    NULL
};

This commit fixed it to:

const esp_efuse_desc_t* ESP_EFUSE_MAC_EXT[] = {
    &MAC_EXT[0],
    &MAC_EXT[1],
    NULL
};
2021-10-28 23:53:38 +08:00
Konstantin Kondrashov 0946f9cce6 Merge branch 'feature/esp32c3_eco3_default' into 'master'
example_tests: Deletes usage esp32c3 ECO0 in CI (by default ECO3)

Closes IDF-3090

See merge request espressif/esp-idf!14658
2021-09-24 09:36:06 +00:00
KonstantinKondrashov fce50ef9e3 unit-test-app/configs(esp32c3): CI sill uses ECO2 for flash_encryption tests 2021-09-24 13:59:42 +08:00
KonstantinKondrashov 709abee65c example_tests: Deletes usage esp32c3 ECO0 in CI (by default ECO3) 2021-09-24 13:55:07 +08:00
Konstantin Kondrashov fb7b40b2c2 Merge branch 'bugfix/update_espefuse_fixes_execute_scripts' into 'master'
esptool/espefuse: Fixes execute_scripts, it should call BURN once at the end

See merge request espressif/esp-idf!14904
2021-08-24 07:33:59 +00:00
KonstantinKondrashov 03baf4f8be espefuse: Fixes execute_scripts, it should call BURN once at the end 2021-08-23 12:19:32 +05:00
Konstantin Kondrashov c480afa70a Merge branch 'bugfix/select_boot_app' into 'master'
partition_table: Fix case when a few similar to otadata partitions in the table

Closes IDFGH-5282

See merge request espressif/esp-idf!13953
2021-08-19 14:33:48 +00:00
KonstantinKondrashov 9b654db032 partition_table: Fix case when a few similar to otadata partitions in the table
It was when in the partition table there is a partition with type="data" and suptype=""(empty),
in this case type=1, suptype=0. It is similar to otadata partition.

This commit fixes it, now it will handle it as type=1, suptype=6 (ESP_PARTITION_SUBTYPE_DATA_UNDEFINED).
2021-08-18 09:23:17 +05:00
Konstantin Kondrashov 92ce4a8054 Merge branch 'bugfix/unicore_systimer_generate_rtos_tick' into 'master'
freertos: Fix settings of systimer for SysTicks in case Unicore

Closes IDF-3692

See merge request espressif/esp-idf!14735
2021-08-13 04:12:28 +00:00
KonstantinKondrashov 263c10cee1 freertos: Fix settings of systimer for SysTicks in case Unicore
systimer was stopped because the option SYSTIMER_TIMER_UNIT1_CORE1_STALL_EN is set by default 1, it blocks counting.
For Unicore should be:
SYSTIMER_TIMER_UNIT1_CORE0_STALL_EN  1
SYSTIMER_TIMER_UNIT1_CORE1_STALL_EN  0
2021-08-12 12:30:52 +05:00
KonstantinKondrashov 3cf4fbc150 efuse(esp32s2): Added flash_ver, psram_ver, pkg_ver efuses 2021-08-06 13:14:54 +08:00
Konstantin Kondrashov 1e8d1344a1 Merge branch 'feature/doc_sbv2_key_not_read_protected' into 'master'
secure_boot_v2(doc): secure_boot_v2 key/s must be readable

See merge request espressif/esp-idf!14619
2021-08-05 05:20:36 +00:00
Konstantin Kondrashov 29f581fc70 freertos(esp32s3): SysTick uses systimer 2021-08-04 20:33:44 +08:00
KonstantinKondrashov 93512edc7a secure_boot_v2(doc): secure_boot_v2 key/s must be readable 2021-08-04 15:39:48 +05:00
Konstantin Kondrashov f00c204fbc Merge branch 'feature/adds_custom_mac_address' into 'master'
efuse: Add CUSTOM_MAC address for ESP32-C3/-S2/-S3/-H2

Closes IDF-1326

See merge request espressif/esp-idf!14417
2021-08-04 06:35:29 +00:00
Konstantin Kondrashov 4972605b16 esp_common: Add API for IPC to run small pieces of code on the other CPU, in the context of the level 4 interrupt 2021-08-03 14:35:29 +08:00
KonstantinKondrashov 40c360a096 efuse: Add CUSTOM_MAC address for ESP32-C3/-S2/-S3/-H2 2021-08-02 14:43:27 +05:00
Konstantin Kondrashov 76a4340bf7 Merge branch 'bugfix/efuse_table_for_c3' into 'master'
efuse: Fix len of SOFT_DIS_JTAG for esp32c3 and esp32h2

Closes IDF-3577

See merge request espressif/esp-idf!14389
2021-07-22 08:47:34 +00:00
Konstantin Kondrashov 1b29a4aa5e Merge branch 'bugfix/sync_rtc_and_esp_timer_before_reboot' into 'master'
esp_system: Adds sync of FRC & RTC counters in esp_restart

Closes ESPCS-509 and IDFGH-4548

See merge request espressif/esp-idf!11841
2021-07-21 12:22:03 +00:00
KonstantinKondrashov 92448e7bd7 secure_boot: Whole 3 bits are set for SOFT_DIS_JTAG eFuse 2021-07-21 17:19:01 +05:00
KonstantinKondrashov 59bbfe5e38 ci: Adds eFuse host test for ESP32-H2 chip 2021-07-21 17:19:01 +05:00
KonstantinKondrashov b8dd163149 efuse: Fix len of SOFT_DIS_JTAG for esp32c3 and esp32h2 2021-07-21 12:10:09 +05:00
Konstantin Kondrashov 9c870b74bb Merge branch 'bugfix/freertos_ut_suspend' into 'master'
freertos: Increases delta for UT - Test suspend-resume CPU. The number of...

Closes IDFCI-688

See merge request espressif/esp-idf!14403
2021-07-21 06:07:34 +00:00
KonstantinKondrashov c19b37d2a9 esp_system: Adds sync of FRC & RTC counters in esp_restart
In case when FRC and RTC counters are very different then
the need to sync them before to restart the ESP
to get the correct system time after reboot.
2021-07-21 10:23:24 +05:00
KonstantinKondrashov 84e5f52a26 freertos: Increases delta for UT - Test suspend-resume CPU. The number of tick_hook should be the same for both CPUs 2021-07-16 18:26:02 +05:00
KonstantinKondrashov 4ccb5515ef fpga/bootloader: Fix LoadProhibited error when bootloader_fill_random() is not in iram_loader_seg 2021-07-16 10:50:06 +10:00
KonstantinKondrashov f9ad16bb66 esp_timer: Timers with skip_unhandled_events option won't wake up system from light sleep 2021-06-19 12:45:17 +08:00
Konstantin Kondrashov 4c0cf40a39 efuse: Burn operation does not block reading 2021-06-18 11:52:47 +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
KonstantinKondrashov 4d35b1fc5b efuse: Updates common_efuse_table for all chips 2021-05-31 08:42:57 +00:00
KonstantinKondrashov 29f853633d efuse: Adds support structure of efuses in efuse_table
Supported a new format of efuse description using '.' in the name.
It means that RD_DIS.KEYx belongs to the range of the RD_DIS name.
RD_DIS,                           EFUSE_BLK0,   32,    7,     Read protection
    RD_DIS.KEY0,                  EFUSE_BLK0,   32,    1,     Read protection for EFUSE_BLK4.
    RD_DIS.KEY1,                  EFUSE_BLK0,   33,    1,     Read protection for EFUSE_BLK5.
2021-05-31 08:42:57 +00:00
KonstantinKondrashov 071e00a088 bootloader: Fix a wrong offset in image_load after refactoring 2021-05-26 18:06:11 +08:00
KonstantinKondrashov 2e4b625f59 simple_ota_example: Adds sha256 check for app images 2021-05-05 22:18:40 +08: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
KonstantinKondrashov 9490d78f49 efuse/esp32s3: Update efuse table 2021-05-04 14:40:15 +08:00
KonstantinKondrashov f35356f69d esp32/psram: ESP32-PICO-V3 does not have PSRAM and does not support external PSRAM 2021-05-04 10:49:25 +08:00
KonstantinKondrashov d1befe83ef otatool: Fix incorrect using otadata.seq&crc in switch_ota_partition cmd
Closes: https://github.com/espressif/esp-idf/issues/6773
2021-04-23 04:55:06 +00:00
KonstantinKondrashov 8e1256ca88 esp32xx: Fix the Number of cycles for RTC_SLOW_CLK calibration 2021-04-20 06:29:42 +00:00
KonstantinKondrashov fd867a11df bootloader: Suppress a Cmake warning - variables were not used by the project
Manually-specified variables were not used by the project: SECURE_BOOT_SIGNING_KEY
2021-04-13 11:28:13 +00:00
KonstantinKondrashov 9f932a2a18 bootloader: Fix error in Make build system when signature options is on 2021-04-13 11:28:13 +00:00
KonstantinKondrashov af3cbe2888 simple_ota_example: Adds configs to test on_update_no_secure_boot option (RSA&ECDSA) 2021-04-13 11:28:13 +00:00
KonstantinKondrashov ec4de4fe5c example_tests: CI uses ECO0 for esp32c3 tests 2021-04-09 14:26:06 +08:00
KonstantinKondrashov 4fbfb03fe1 unit-test-app(config): CI uses ECO0 for esp32c3 UTs 2021-04-09 14:26:08 +08:00
KonstantinKondrashov 1d8f885928 esp32c3: Default supported ESP32-C3 Revision ECO3 2021-04-08 15:06:22 +08:00
KonstantinKondrashov 9295e54c9d docs: Adds secure_boot_v2 for ESP32-C3 ECO3 2021-04-08 14:22:46 +08:00
KonstantinKondrashov 4e23f9f3b7 secure_boot_v2: Adds support SB_V2 for ESP32-C3 ECO3 2021-04-07 19:52:44 +08: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
KonstantinKondrashov b72ace60a5 otatool: Fix a crash when imported as external python lib
Closes: https://github.com/espressif/esp-idf/issues/6733
2021-03-25 11:52:56 +00:00
KonstantinKondrashov aa1338bf23 wdt: Fix timeout and RTC_SLOW_CLK
RTC_SLOW_CLK
ESP32:    150kHz
ESP32-S2:  90kHz
ESP32-S3: 150kHz
ESP32-C3: 150kHz
2021-03-19 00:15:18 +08:00
KonstantinKondrashov a90f29fced wdt: Updates 2021-03-18 02:31:28 +08: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
KonstantinKondrashov 63a4dbb8d2 esp32c3: Universal MAC Address strategy for ESP32C3 is the same as for ESP32 (4 reserved MAC-addresses per device) 2021-03-15 10:26:20 +08:00
KonstantinKondrashov 67ba1c8d57 esp32c3: Updates a description in Kconfig about Universal MAC Address strategy 2021-03-15 10:26:20 +08:00
KonstantinKondrashov b7155a161b otatool: Fixes read_ota_partition cmd, required output arg
Closes: https://github.com/espressif/esp-idf/issues/6559
2021-03-04 06:02:54 +00:00
KonstantinKondrashov f3dd0a37c7 mbedtls: Fix rsa test 2021-03-02 03:18:58 +08:00
KonstantinKondrashov 87aeef65a8 bootloader: Disables unnecessary warning logs when invalid magic byte 2021-03-01 20:34:54 +08:00
KonstantinKondrashov b31bf01484 rtc: Clean up for S2,S3,C3 2021-03-01 16:51:15 +08:00
KonstantinKondrashov e29b99f1a5 libsodium: Enables UTs for ESP32-S2 & C3 2021-02-25 10:41:59 +00:00
KonstantinKondrashov 7bbf4a3422 esp_timer: Fix Test ESP_TIMER_ISR dispatch method is not blocked 2021-02-24 16:08:17 +08: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 70dd884fee doc(esp32c3): Updates secure features doc 2021-02-22 18:01:35 +08:00
KonstantinKondrashov 5a5f5ad031 doc/efuse: Adds efuse doc for ESP32-C3 2021-02-22 15:51:45 +08:00
KonstantinKondrashov 11a2f2acd3 bootloader: Adds a check that app is run under FE 2021-02-15 20:33:50 +08:00
KonstantinKondrashov aa581aba0f doc/ulp(esp32c3): Excludes ulp and some RTC features from ESP32C3 doc 2021-02-10 18:15:04 +08:00
KonstantinKondrashov 63d4911cdb esp_timer: Add ESP_TIMER_ISR dispatch method
Using own spinlock for each list (TASK and ISR disp method)
Reduced the dependency of ISR on the TASK dispatch method
2021-02-08 19:10:11 +08:00