Commit Graph

31271 Commits

Author SHA1 Message Date
David Cermak
5e07ffb444 fix(esp_netif): Mark esp_netif_next deprecated and fix usages
* Uses netif_find_if() in IPv6 examples
* Fixes esp_netif_next() usage in L2TAP
2023-11-22 09:59:37 +00:00
David Cermak
80cc7e8928 feat(esp_netif): Added new API to search in netif list 2023-11-22 09:59:37 +00:00
David Cermak
65917bb8c3 fix(esp_netif): Lock netif list with TCPIP context
This commit removes the lock from the list manipulation code in esp_netif_objects.c,
 because we already have another lock/task context for lwip.
So the list manipulation is unsafe and safety must be assured by the stack layer
(in esp_netif_lwip).
Problems with current locking:
* implementation of locking was wrong -- lazy init style of creating the mutex is not
  thread safe (and destroying it if we have no interface makes the problem exhibit very frequently)
* locking only the list won't solve issues when assessing interfaces atomically
* maintaining multiple locks is problematic, as we often switch between
lwip context and user context in internal implementation of esp_netif_lwip

Closes https://github.com/espressif/esp-idf/issues/12261
2023-11-22 09:59:37 +00:00
Jiang Jiang Jian
2cc61caf7b Merge branch 'bugfix/add_par_check_in_ag_cind_res_v5.1' into 'release/v5.1'
Bugfix/add par check in ag cind res v5.1

See merge request espressif/esp-idf!27257
2023-11-22 17:47:28 +08:00
Jiang Jiang Jian
d5e87fed74 Merge branch 'bugfix/spp_deinit_crash_v5.1' into 'release/v5.1'
fix(bt/bluedroid): Fix the crash of invalid access to released resources (v5.1)

See merge request espressif/esp-idf!27251
2023-11-22 17:45:48 +08:00
Jiang Jiang Jian
8b6977b883 Merge branch 'bugfix/coex_cfg_option_invisible_v5.1' into 'release/v5.1'
fix(esp_coex): Fix dependency errors in coexist configuration (Backport v5.1)

See merge request espressif/esp-idf!26577
2023-11-22 17:45:05 +08:00
Jiang Jiang Jian
b09e1d860d Merge branch 'bugfix/fix_psram_access_faild_after_pd_cpu_wakeup_v5.1' into 'release/v5.1'
fix(esp_pm): fix psram access failed after pd_cpu wakeup if uart driver driven console is used (backport v5.1)

See merge request espressif/esp-idf!27051
2023-11-22 17:44:32 +08:00
zwx
f710a49680 feat(docs) Add RF Coexist docs for H2 2023-11-22 17:04:55 +08:00
darshan
8dcd59f34f feat(nimble): Added API to retrieve the size of the controller's white list (v5.1) 2023-11-22 10:29:36 +05:30
Shu Chen
ecbbd3c3d9 Merge branch 'backport/add_ot_radio_stats_enable_config_5_1' into 'release/v5.1'
feat(openthread): backport some openthread features(BackportV5.1)

See merge request espressif/esp-idf!26885
2023-11-22 12:23:53 +08:00
Rahul Tank
3662303f31 Merge branch 'bugfix/generate_new_irk_across_reboot_v5.1' into 'release/v5.1'
fix(nimble): Generate a new unique IRK for every chip. (v5.1)

See merge request espressif/esp-idf!27117
2023-11-22 03:03:39 +08:00
Ivan Grokhotkov
6481b0161c
ci: add build test for CONFIG_ESP_CONSOLE_USB_CDC_SUPPORT_ETS_PRINTF 2023-11-21 17:33:30 +01:00
Ivan Grokhotkov
e2f1327a5c
examples: re-enable system/console/advanced_usb_cdc for ESP32-S3
Closes https://github.com/espressif/esp-idf/issues/9364
2023-11-21 17:33:30 +01:00
Ivan Grokhotkov
6ec4937cec
esp_system: usb_console support for ESP32-S3
Closes https://github.com/espressif/esp-idf/issues/8879
Closes https://github.com/espressif/esp-idf/issues/8738
2023-11-21 17:33:30 +01:00
Ivan Grokhotkov
22dd730a7c
esp_rom: convert USB related headers to SPDX, update COPYRIGHTS.rst 2023-11-21 17:33:30 +01:00
Ivan Grokhotkov
6d1f573945
esp_rom: implement usb deinit functions added in S3 ROM for S2
This cleans up usb_console.c and prepares it for S3 support.
2023-11-21 17:33:29 +01:00
Ivan Grokhotkov
228dbe103f
esp_rom: add USB_OTG "port" number for S2 and S3 2023-11-21 17:33:29 +01:00
Ivan Grokhotkov
c7b409aa94
esp_rom: sync changes for ESP32-S3 USB related files, minor fix for S2
Used esp-rom tag esp32s3-20210327 and did manual cleanup.
Rename s_usb_osglue to rom_usb_osglue like it was done for esp32s2.
Some comments in esp32s2 headers are synced from esp32s3.
2023-11-21 17:33:29 +01:00
Ivan Grokhotkov
2c341a8557
console: minor fixes
- wrong comment
- duplicated setvbuf
2023-11-21 17:33:29 +01:00
sonika.rathi
633a3b06db fix(vfs/uart): add UART VFS select callback in IRAM
UART VFS select callback is placed in IRAM when CONFIG_UART_ISR_IN_IRAM is enabled
2023-11-21 14:17:08 +01:00
luomanruo
d24f7d9f12 ble(fix): deinit crash issue 2023-11-21 15:05:22 +08:00
zwl
9cf6280eea fix(ble): fixed ble occasional rx exception issue 2023-11-21 15:03:38 +08:00
luomanruo
2cf6c185dc ci(ble/bluedroid): Add notes in sdkconfig.defaults 2023-11-21 15:03:38 +08:00
luomanruo
11f26f3319 ble: update controller log module 2023-11-21 15:03:38 +08:00
luomanruo
fcc8ce5de5 ble: update c6 h2 lib to 5b1dfd2b, c2 lib to db4e1fb2 2023-11-21 15:03:38 +08:00
luomanruo
2984e14eba ble(fix): Fixed the issue of not returning memory to the memory pool after deinit callout
ble(fix): Fixed the issue of not returning memory to the memory pool after deinit callout
2023-11-21 15:03:38 +08:00
Rahul Tank
9571780d5e ci(nimble): Cleanup sdkconfig files for nimble examples 2023-11-21 12:23:06 +05:30
Aditya Patwardhan
514cd783a3 Merge branch 'bugfix/esp32h2_ecdsa_hardware_k_v5.1' into 'release/v5.1'
fix(esp32h2): program use_hardware_k efuse bit for ECDSA key purpose (v5.1)

See merge request espressif/esp-idf!27271
2023-11-21 13:57:38 +08:00
Rahul Tank
6965a11570 fix(nimble): Generate a new unique Local IRK for each chip 2023-11-21 10:23:42 +05:30
Rahul Tank
4d88e7b9a7 Merge branch 'bugfix/remove_bond_v5.1' into 'release/v5.1'
fix(nimble):Handled IRK/LTK deletion based on key availability (v5.1)

See merge request espressif/esp-idf!26597
2023-11-21 12:47:54 +08:00
Jiang Jiang Jian
d578395041 Merge branch 'bugfix/secure_boot_v2_docs_v5.1' into 'release/v5.1'
fix(docs): correct the target specific macros for secure boot v2 guide (v5.1)

See merge request espressif/esp-idf!27170
2023-11-21 11:10:41 +08:00
morris
64e7343e40 Merge branch 'bugfix/fix_adc_read_zero_h2_v5.1' into 'release/v5.1'
ADC: fix adc raw data get 0 because of signal delay on ESP32H2(v5.1)

See merge request espressif/esp-idf!26976
2023-11-21 11:08:57 +08:00
Jiang Jiang Jian
0fa38244cb Merge branch 'bugfix/newlib_test_correct_assertions_v5.1' into 'release/v5.1'
fix(newlib,ci): wrong floating point number handling in tests (v5.1)

See merge request espressif/esp-idf!27090
2023-11-21 11:08:32 +08:00
Jiang Jiang Jian
de81da8b53 Merge branch 'bugfix/fix_espcoredump_compilation_warning_v5.1' into 'release/v5.1'
fix(espcoredump): fixed compilation warning (v5.1)

See merge request espressif/esp-idf!26591
2023-11-21 11:07:57 +08:00
Jiang Jiang Jian
b3479b3164 Merge branch 'bugfix/docs_hw_breakpoints_num_v5.1' into 'release/v5.1'
fix(docs/jtag): Fix hard-coded HW breakpoints/watchpoints number (v5.1)

See merge request espressif/esp-idf!26500
2023-11-21 11:07:13 +08:00
Jiang Jiang Jian
2277c3c9dd Merge branch 'feature/pseudo_exccause_to_openocd_v5.1' into 'release/v5.1'
Feature/pseudo exccause to openocd (v5.1)

See merge request espressif/esp-idf!26544
2023-11-21 11:06:41 +08:00
Jiang Jiang Jian
58344b1517 Merge branch 'backport-v5.1/gcov-write-fix' into 'release/v5.1'
fix(app_trace): fix host file write API return value

See merge request espressif/esp-idf!26421
2023-11-21 11:06:04 +08:00
morris
6bc8a025d5 Merge branch 'bugfix/ledc_max_duty_cycle_v5.1' into 'release/v5.1'
fix(ledc): fix ledc driver 100% duty cycle configuration (backport v5.1)

See merge request espressif/esp-idf!27179
2023-11-21 10:58:16 +08:00
Jiang Jiang Jian
e718b603e4 Merge branch 'bugfix/clear_ulp_wake_intr_in_wake_source_enable_v5.1' into 'release/v5.1'
fix(esp_hw_support): clear all type ULP wakeup intr status at ulp wakeup source enable (backport v5.1)

See merge request espressif/esp-idf!27188
2023-11-21 10:52:54 +08:00
Jiang Jiang Jian
0e1ec38785 Merge branch 'bugfix/fix_lightsleep_current_leakage_on_usj_pad_v5.1' into 'release/v5.1'
fix(esp_hw_support): fix lightsleep current leakage on usb pad (backport v5.1)

See merge request espressif/esp-idf!27205
2023-11-21 10:51:11 +08:00
gongyantao
1978b711f0 ci(bt/bluedroid): remove configs that are not in effect 2023-11-21 10:09:40 +08:00
Abhinav Kudnar
533b4a2e02 fix(nimble): Handled IRK/LTK deletion based on key availability 2023-11-21 07:15:56 +05:30
Rahul Tank
443a612a46 Merge branch 'bugfix/pairing_when_enc_with_no_key_fails_v5.1' into 'release/v5.1'
fix(nimble): Initate pairing if encryption fails with reason no pin or key missing (v5.1)

See merge request espressif/esp-idf!27017
2023-11-21 09:05:44 +08:00
Rahul Tank
c75bab8fcb fix(nimble): Initate pairing if encryption fails with reason no pin or key missing 2023-11-20 20:22:48 +05:30
Rahul Tank
3b30594eef Merge branch 'bugfix/ble_gap_unpair_oldest_peer_v5.1' into 'release/v5.1'
fix(nimble): Fixed incorrect handling of bonded devices (v5.1)

See merge request espressif/esp-idf!26939
2023-11-20 22:41:11 +08:00
Mahavir Jain
78453c8918
docs(ecdsa): add a note about TRNG dependency for ECDSA peripheral 2023-11-20 16:17:51 +05:30
Mahavir Jain
bb1376ff5d
fix(api-docs): include in the ECDSA APIs for doxygen build 2023-11-20 16:17:11 +05:30
Mahavir Jain
d9abb44049
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-20 16:13:35 +05:30
Mahavir Jain
2cd1635b86
fix(ecdsa): remove unused k_mode from the ECDSA HAL/LL API
For ESP32-H2 case, the hardware k mode is always enforced through
efuse settings (done in startup code).

For ESP32-P4 case, the software k mode is not supported in the peripheral
itself and code was redundant.
2023-11-20 16:05:15 +05:30
Mahavir Jain
0ccfa4b0c2
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-20 16:03:29 +05:30