Commit Graph
100 Commits
Author SHA1 Message Date
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
KonstantinKondrashov bcbee89030 esp_timer: Add a Kconfig option to configure the interrupt level 2021-02-08 18:27:10 +08:00
KonstantinKondrashov 43ebb8ea61 efuse: Updates description of uart_print_control efuse 2021-02-08 18:02:55 +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
KonstantinKondrashov 1f37a5f162 spi_flash(esp32-s2): Add the workaround of a reboot issue when SPI HW suspend is enabled 2021-01-25 11:13:38 +08:00
KonstantinKondrashov 60e58eaddb spi_flash: Add auto-suspend mode for ESP32-S2
Uses HW auto_wait_idle, HW auto_suspend and SW resume
2021-01-25 11:13:38 +08:00
KonstantinKondrashov afef16c2e9 spi_flash: Support suspend/resume mode for operations
- Adds arbitration between the erase and write in suspend mode
     (If the flash memory is suspended then only a read operation can be performed.)
- espcoredump: Dump does not use suspend feature, just resume before continue.
- spi_flash: Add release_cpu() to do suspend/release_cpu/resume
2021-01-25 11:13:38 +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
KonstantinKondrashov e62d4a6b81 esp32s3: BROWNOUT reset reason is set directly without using the brownout ISR 2021-01-18 15:38:09 +08:00
KonstantinKondrashov f58c296336 esp32s2: BROWNOUT reset reason is set directly without using the brownout ISR 2021-01-18 15:38:09 +08:00
KonstantinKondrashov d81a93ae4c esp32c3: Adds support BROWNOUT reset 2021-01-18 15:38:09 +08:00
Konstantin Kondrashov d23c7690f2 esp32c3: Add UTs for reset_reason 2021-01-18 07:12:21 +08:00
KonstantinKondrashov dada7cd035 global: Uses CCOUNT API instead of XTHAL macro 2021-01-12 16:24:23 +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
KonstantinKondrashov aec5776091 newlib: Fix a case in FD_ISSET macro when n==-1 2021-01-06 20:54:24 +00:00
KonstantinKondrashov aa96c9a4d8 esp_timer: Add an option to skip unhandled events for periodic timers
- Added an option to skip unhandled events for periodic timers. Useful for light sleep.
- Added doc about this case
- Added Test a latency between a call of callback and real event (14-16us). and UT to check skip_unhandled_events.
- Fixed for esp_timer_dump() if name of timer is NULL
- Refactored timer_process_alarm()
- Added the delete function after using in UTs
2020-12-09 17:19:19 +08:00
Konstantin Kondrashov 4a487af43a efuse: Add new APIs for keys, purposes, wr/rd protection
- the batch mode can be called recursively
2020-12-04 10:42:57 +08:00
KonstantinKondrashov 48c498bdca esp32s2/fpga: Fix a clock configure in bootloader 2020-11-06 07:25:35 +00:00
KonstantinKondrashov f2c9c1e4ab efuse: Fix the order of writing in batch mode for esp32s2 and s3 2020-11-06 07:25:35 +00:00
KonstantinKondrashov e0d0200aed esp_timer: Use Task Notification instead of semaphore 2020-11-06 06:43:22 +00:00
KonstantinKondrashov e9978f7623 esp32xx: Fix default values for all RTC sources in RTC_CLK_CAL_CYCLES option
Closes: https://github.com/espressif/esp-idf/issues/6037
2020-10-28 16:25:07 +08:00
KonstantinKondrashov 99226734e2 esp_common: Fix range of MACs for interal usage with wrong crc
Closes: https://github.com/espressif/esp-idf/issues/5937
2020-10-20 22:12:28 +08:00
KonstantinKondrashov 5f975a8168 bootloader: Change range of the factory reset pin in Kconfig
Closes: https://github.com/espressif/esp-idf/issues/5489
2020-10-20 21:28:37 +08:00
Konstantin Kondrashov 9386cafbc3 time: Fix gettimeofday for ESP32-S3 2020-10-20 14:09:32 +08:00
KonstantinKondrashov b19c4739c3 bootloader: Secure_boot name replaced by secure_boot_v1 & secure_boot_v2
- espefuse.py burn_key secure_boot is no longer used.
- Secure boot V1: espefuse.py burn_key secure_boot_v1 file.bin
- Secure boot V2: espefuse.py burn_key secure_boot_v2 file.bin
2020-10-15 16:48:23 +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
KonstantinKondrashov 7ae7adf16a newlib: Fix clock_getres() improves accuracy
Returns not rounded value of resolution for WITH_RTC and !WITH_FRC
2020-10-07 18:01:35 +08:00
KonstantinKondrashov 55dc1524ee partition_table: Extend the get_partition_info command
A manufactory tool needs to retrieve info about partitions.  With a new flag - "--part_list" we can get a list of partitions with the same type/subtype and easily iterate by it.

- name and flag arguments
- added flag "--part_list" to get a list of partitions with the same type/subtype
- save prev behavior of the get_partition_info command (return the only first item)
- added host test
2020-10-05 17:56:43 +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
KonstantinKondrashov 0319eb5984 esp32s2/soc: Fix periph_ll_periph_enabled
Logs, before to go the deepsleep, were not completely flushed.
2020-09-07 08:32:18 +00:00