Mahavir Jain
7bb29086df
docs: add ECDSA peripheral chapter for H2/P4
...
- Add ECDSA peripheral chapter and instructions to program efuse key block
- Update security guide for ECDSA peripheral mention for device identity
- Link with ESP-TLS guide about using ECDSA peripheral in TLS connection
2023-11-15 09:42:26 +05:30
Mahavir Jain
94bf4710fa
fix(esp32h2): program use_hardware_k efuse bit for ECDSA key purpose
...
In ESP32-H2, the ECDSA peripheral by default uses the TRNG (hardware)
generated k value but it can be overridden to software supplied k.
This can happen through by overriding the `ECDSA_SOFTWARE_SET_K` bit
in the configuration register. Even though the HAL API is not exposed
for this but still it could be achieved by direct register
programming. And for this scenario, if sufficiently random k is not
supplied by the software then it could posses a security risk.
In this change, we are unconditionally programming the efuse
`ESP_EFUSE_ECDSA_FORCE_USE_HARDWARE_K` bit during startup security
checks itself. Additionally, same is ensured in the `esp_efuse_write_key`
API as well. This always enforces the hardware k mode in the ECDSA
peripheral and ensures strongest possible security.
2023-11-15 09:42:26 +05:30
Armando
d3be2541de
fix(adc): rename ADC_ATTEN_DB_11 to ADC_ATTEN_DB_12
...
By design, it's 12 dB. There're errors among chips, so the actual
attenuation will be 11dB more or less
2023-11-06 18:55:49 +08:00
gaoxu
843e07b2d5
docs(adc): added adc calibration doc on h2
2023-11-02 11:33:06 +08:00
gaoxu
0ea0b39725
feat(adc_cali): Add ADC calibration support for ESP32H2
2023-10-31 11:29:30 +08:00
Konstantin Kondrashov
a304cc230e
Merge branch 'feature/esp32h2_adds_adc_calib_efuses' into 'master'
...
feat(efuse): Adds efuse ADC calibration data for ESP32H2
See merge request espressif/esp-idf!26305
2023-10-25 15:58:24 +08:00
Jakob Hasse
548022fbe6
refactor(linux): excluded all non-Linux components from build
...
* All components which won't build (yet) on Linux are excluded.
This enables switching to Linux in an application without
explicitly setting COMPONENTS to main in the main
CMakeLists.txt.
* ESP Timer provides headers for Linux now
* automatically disabling LWIP in Kconfig if it is not available
doc(linux): brought section
"Component Linux/Mock Support Overview" up to date
2023-10-16 17:06:54 +08:00
morris
66497af276
feat(hal): enable hal host test
2023-10-11 11:23:24 +08:00
KonstantinKondrashov
071d1cf865
feat(efuse): Adds efuse ADC calibration data for ESP32H2
2023-10-04 16:00:01 +08:00
Chen Yudong
2e11919f70
fix(ci): change build-test-rules files folder
2023-09-20 19:17:06 +08:00
KonstantinKondrashov
b29f6d5a40
feat(efuse): Support eFuses and doc for ESP32P4
2023-09-12 17:58:17 +08:00
harshal.patil
d86b320892
feat(ecdsa): add ECDSA peripheral support for esp32p4
2023-09-06 11:07:37 +05:30
Armando
dc9ddfc0d4
change(soc): added SOC_EFUSE_SUPPORTED
2023-08-24 12:51:20 +08:00
Armando
7dbd3f6909
feat(ci): Enable p4 example, test_apps and unit tests CI build
2023-08-24 12:51:19 +08:00
KonstantinKondrashov
c09d823b6a
change(efuse): Update eFuses for esp32p4 chip
2023-08-09 19:33:35 +08:00
Armando
706d684418
feat(esp32p4): introduced new target esp32p4, supported hello_world
2023-08-09 19:33:25 +08:00
Konstantin Kondrashov
dd08ec095b
Merge branch 'feature/add_new_pkg_and_flash_efuses_esp32c3' into 'master'
...
feat(efuse): Add flash efuses for esp32c3
Closes IDF-7609
See merge request espressif/esp-idf!24685
2023-07-13 00:57:58 +08:00
Konstantin Kondrashov
9708952fa8
Merge branch 'feature/add_new_pkg_and_flash_psram_efuses' into 'master'
...
feat(efuse): Add flash&psram efuses for S3
Closes IDF-7439
See merge request espressif/esp-idf!24624
2023-07-13 00:57:14 +08:00
KonstantinKondrashov
b95dfc67fa
feat(efuse): Add flash efuses for esp32c3
2023-07-11 19:49:17 +08:00
KonstantinKondrashov
cf46ef954f
feat(efuse): Add flash&psram efuses for S3
2023-07-11 19:41:40 +08:00
laokaiyao
edc1abc8ea
refactor(adc_calib): Simplify 2nd step coefficient calculation
...
- remove unnecessary variables and calculations
- improve readability of code
2023-07-06 14:22:03 +08:00
laokaiyao
f949819976
adc_calib: support calibration v2 on esp32c6
2023-06-26 10:40:36 +08:00
Zim Kalinowski
f59394f36b
Merge branch 'bugfix/efuse-improve-qemu-test' into 'master'
...
efuse: simplify qemu test script
See merge request espressif/esp-idf!24206
2023-06-14 18:30:41 +08:00
Zim Kalinowski
b2dae9c262
efuse: simplify qemu test script
2023-06-14 07:29:35 +02:00
Konstantin Kondrashov
ac188ad074
Merge branch 'bugfix/mac_ext_order_for_c6_h2' into 'master'
...
esp_hw_support: Change the byte order of MAC for IEEE802154 (C6 and H2 chips)
Closes IDF-6809
See merge request espressif/esp-idf!23988
2023-06-13 16:08:13 +08:00
KonstantinKondrashov
f7dfd1f48e
mac_addr(C6 and H2): Fix byte order of MAC_EXT and change format of IEEE802154 MAC
...
The changes only related to C6 and H2 chips where CONFIG_SOC_IEEE802154_SUPPORTED=y.
For this case these APIs return 8 bytes
esp_efuse_mac_get_default() -> 8 bytes
esp_efuse_mac_get_custom() -> 8 bytes
esp_read_mac(..., ESP_MAC_IEEE802154) -> 8 bytes
The rest cases len is 6 bytes
2023-06-08 23:11:32 +08:00
Alexey Gerenkov
c9b7748789
efuse: Use 'hal_memcpy' instead of 'memcpy' in ESP32-H2 driver
2023-06-08 16:49:42 +03:00
Alexey Gerenkov
8846674e54
tools: Upgrade Clang toolchain to 'esp-16.0.0-20230516'
2023-05-31 22:07:15 +03:00
laokaiyao
de8ae73de3
adc_cali: fix the condition of ocode calibration
2023-05-25 21:49:40 +08:00
Zim Kalinowski
451a0f1d33
Merge branch 'feature/adds_new_efuses_for_h2' into 'master'
...
efuse(H2): Adds RF Calibration Information
Closes IDF-7382
See merge request espressif/esp-idf!23827
2023-05-25 14:36:50 +08:00
laokaiyao
ffb40a89d9
adc_cali: supported channel compensation of adc calibration on esp32c6
2023-05-23 22:44:25 +08:00
KonstantinKondrashov
3550a2d185
efuse(c6): Adds adc calib efuses
2023-05-23 20:34:29 +08:00
laokaiyao
caa044c289
adc_cali: supported adc calibration on esp32c6
2023-05-23 20:34:29 +08:00
KonstantinKondrashov
aef81cceee
efuse(H2): Adds RF Calibration Information
2023-05-22 08:40:26 +00:00
laokaiyao
bf2a7b2df6
esp32h4: removed esp32h4 related codes
2023-04-23 12:03:07 +00:00
laokaiyao
b16ed57b2e
esp32h4: removed esp32h4 related files
2023-04-23 12:03:07 +00:00
Jiang Jiang Jian
badf267022
Merge branch 'bugfix/block9_can_not_be_used_for_fe' into 'master'
...
efuse: Prevent burning XTS_AES and ECDSA keys into BLOCK9 (BLOCK_KEY5)
Closes IDF-7175
See merge request espressif/esp-idf!23052
2023-04-06 10:17:07 +08:00
KonstantinKondrashov
5b00d1f396
efuse: Update efuses for esp32 esp32c2 esp32c3 esp32s2 esp32s3
2023-04-04 22:32:32 +08:00
KonstantinKondrashov
3d695b9768
efuse: Prevent burning XTS_AES and ECDSA keys into BLOCK9 (BLOCK_KEY5)
...
eFuse module has a hardware bug.
It is related to ESP32-C3, C6, S3, H2 chips:
- BLOCK9 (BLOCK_KEY5) can not be used by XTS_AES keys.
For H2 chips, the BLOCK9 (BLOCK_KEY5) can not be used by ECDSA keys.
S2 does not have such a hardware bug.
2023-04-04 18:45:48 +08:00
Zim Kalinowski
6e67c54a92
Merge branch 'feature/replace_some_efuses_for_c6' into 'master'
...
efuse(esp32c6): Replace PKG_VERSION BLK_VERSION_MINOR BLK_VERSION_MAJOR
Closes IDF-7174
See merge request espressif/esp-idf!22775
2023-04-04 16:34:29 +08:00
Mahavir Jain
f22daec784
Merge branch 'feature/secure_set_efuses_to_prevent_brick_chip' into 'master'
...
security: write-protect DIS_ICAHE and DIS_DCACHE
Closes IDF-5177
See merge request espressif/esp-idf!22640
2023-03-29 11:51:09 +08:00
KonstantinKondrashov
199e5abbf3
efuse: Adds WR_DIS.DIS_CACHE for esp32 and WR_DIS.DIS_ICACHE for rest chips
...
C2 chip does not have such fields
2023-03-29 00:02:24 +08:00
KonstantinKondrashov
b950f5de8d
efuse: Fix handling aliases in efuse_table_gen
2023-03-29 00:02:24 +08:00
Zim Kalinowski
ee842a1386
Merge branch 'feature/fix_load_efuses_from_flash_when_real_fe_is_on' into 'master'
...
efuse(virtual mode): Fix load_efuses_from_flash when FE is on
Closes IDFGH-9580
See merge request espressif/esp-idf!22793
2023-03-28 17:32:11 +08:00
KonstantinKondrashov
3a31a4c885
efuse: Enable and adjust some efuse tests for H2 chip
2023-03-24 17:21:32 +00:00
Sachin Parekh
d2940c5ff3
mbedtls: Add port layer for ECDSA peripheral
2023-03-24 10:43:40 +05:30
KonstantinKondrashov
88ef0d8aeb
efuse: Fix load_efuses_from_flash when FE is on
...
esp_efuse_utility_load_efuses_from_flash() read emul_efuse
as an encrypted partition, but that is not correct,
this partition was never encrypted.
Need to read it as not encrypted partition.
Fxed the case: If FE is already on then EFUSE VIRT mode can work with it.
Closes https://github.com/espressif/esp-idf/issues/10929
2023-03-23 16:20:43 +08:00
Michael (XIAO Xufeng)
dbbc1ba5be
Merge branch 'feat/merge_nuttx_patch' into 'master'
...
G0, G1: fix issues that prevents using G0/G1 components on other platforms
See merge request espressif/esp-idf!22521
2023-03-21 20:48:21 +08:00
KonstantinKondrashov
77a8b1afef
efuse: Fix some tests, some CI chips may already have blocks written
2023-03-16 18:19:08 +08:00
Gustavo Henrique Nihei
3672144c9f
efuse: Remove dependency on bootloader component headers
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-16 01:50:21 +08:00