Compare commits

..

3322 Commits

Author SHA1 Message Date
Xiao Xufeng
1bdf0a8669 change(version): Update version to 4.3.7 2023-12-31 03:01:03 +08:00
Jiang Jiang Jian
af235c4b3f Merge branch 'bugfix/fix_ble_app_unregister_no_event_4.3' into 'release/v4.3'
fix(bt/bluedroid): Fix ble app unregister no event(backport v4.3)

See merge request espressif/esp-idf!28172
2023-12-29 11:30:07 +08:00
zhanghaipeng
17ea57ef5d fix(bt/bluedroid): Fix ble app unregister no event 2023-12-28 19:18:53 +08:00
Jiang Jiang Jian
738a49f3df Merge branch 'bugfix/increase_btu_task_stack_size' into 'release/v4.3'
fix(bt/bludroid): Increase BTU task stack size

See merge request espressif/esp-idf!28150
2023-12-28 10:24:18 +08:00
linruihao
95962bfee7 fix(bt/bludroid): Increase BTU task stack size 2023-12-27 19:37:44 +08:00
Jiang Jiang Jian
eadee01cec Merge branch 'bugfix/fix_ble_phy_tx_ifs_v4.3' into 'release/v4.3'
fix(phy): Fix ble tx ifs time for ESP32(backport v4.3)

See merge request espressif/esp-idf!28060
2023-12-23 10:53:12 +08:00
zhanghaipeng
c8144baca6 fix(phy): Fix ble tx ifs time for ESP32 2023-12-23 00:23:54 +08:00
Jiang Jiang Jian
a8584edf6c Merge branch 'fix/btc_config_lock_error_v4.3' into 'release/v4.3'
fix(bt/bluedroid): fixed btc_config_lock error (backport v4.3)

See merge request espressif/esp-idf!28074
2023-12-22 19:32:23 +08:00
Island
aab7332a1d Merge branch 'backport/fix_ble_prepare_write_v4.3' into 'release/v4.3'
Backport/fix ble prepare write v4.3

See merge request espressif/esp-idf!27906
2023-12-22 19:14:40 +08:00
Jiang Jiang Jian
2e8d33e1be Merge branch 'bugfix/fix_ble_recorrect_enable_bug_v4.3' into 'release/v4.3'
fix(ble/controller): Fixed BLE recorrect enable bug and fixed BLE bb isr enable by default(backport v4.3)

See merge request espressif/esp-idf!28039
2023-12-22 14:38:57 +08:00
gongyantao
9899c1aa04 fix(bt/bluedroid): fixed btc_config_lock error 2023-12-22 11:54:02 +08:00
Marius Vikhammer
30652c170d Merge branch 'fix/freertos_scheduler_suspension_test' into 'release/v4.3'
fix(freertos): Fixed a failing scheduler suspension unit test

See merge request espressif/esp-idf!28017
2023-12-21 09:48:48 +08:00
zhiweijian
dd65ff5193 fix(ble/controller): Fixed BLE recorrect enable bug and fixed BLE bb isr enable by default 2023-12-20 18:07:36 +08:00
Michael (XIAO Xufeng)
b129edd270 Merge branch 'bugfix/temp_clk_gate_pd_v4.3' into 'release/v4.3'
fix(tsens): Add clear ANALOG_I2C PD in sar_periph(backport v4.3)

See merge request espressif/esp-idf!27962
2023-12-20 17:13:44 +08:00
Sudeep Mohanty
823e15272a fix(freertos): Fixed a failing scheduler suspension unit test
This test fixes the flaky unit test which suspends the scheduler and prompts
a pending context switch.
2023-12-20 08:19:07 +01:00
Island
7cdd2b2fb4 Merge branch 'bugfix/ble_stack_disable_v4.3' into 'release/v4.3'
Bugfix/ble stack disable v4.3(backportv4.3)

See merge request espressif/esp-idf!27647
2023-12-19 12:05:35 +08:00
Michael (XIAO Xufeng)
70626689b3 Merge branch 'doc/update_usj_docs_v4.3' into 'release/v4.3'
docs: update using usb_serial_jtag documents(backport v4.3)

See merge request espressif/esp-idf!27691
2023-12-19 11:13:35 +08:00
zhanghaipeng
f561706053 fix(bt/bluedroid): Fix BLE prepare write 2023-12-18 19:02:53 +08:00
zhanghaipeng
36505e1c82 fix(bt/bluedroid): Fix prepare write for BLE example 2023-12-18 19:02:53 +08:00
Jiang Jiang Jian
67b9c0ac09 Merge branch 'bugfix/update_phy_lib_20231212_v4.3' into 'release/v4.3'
fix(phy): update phy lib to master (v4.3)

See merge request espressif/esp-idf!27912
2023-12-18 13:59:59 +08:00
Jiang Jiang Jian
530cf57163 Merge branch 'bugfix/fix_memory_leak_in_c3_s3_controller_v4.3' into 'release/v4.3'
Fixed memory leak in ESP32C3 and ESP32S3 controller (Backport v4.3)

See merge request espressif/esp-idf!27895
2023-12-18 13:44:18 +08:00
Jiang Jiang Jian
da75b64fe2 Merge branch 'bugfix/When_psram_is_enable_the_number_of_ooseq_is_not_limited_4.3' into 'release/v4.3'
optimize(lwip):when psram is enable the number of ooseq is not limited 4.3

See merge request espressif/esp-idf!27885
2023-12-18 13:44:04 +08:00
Cao Sen Miao
0d226847f1 fix(tsens): Add clear ANALOG_I2C PD in sar_periph 2023-12-18 10:44:59 +08:00
zhanghaipeng
65be8df57d fix(bt/bluedroid): Fix ble gattc deregister 2023-12-18 10:40:28 +08:00
zhanghaipeng
5871b729ee fix(bt/bluedroid): Fix ble adv and scan status when deinit bluedroid 2023-12-18 10:40:28 +08:00
Michael (XIAO Xufeng)
fab98d8996 Merge branch 'fix/twai_tag_not_defined_in_configure_gpio_v4.3' into 'release/v4.3'
fix(twai): fix build error TWAI_TAG used but not defined (v4.3)

See merge request espressif/esp-idf!27834
2023-12-18 01:15:46 +08:00
Xue yun fei
c51da7c24c optimize(lwip):when psram is enable the number of ooseq is not limited 2023-12-15 14:07:43 +08:00
linruihao
1d3a651cbc fix(phy): update phy lib to master
esp32: phy_version: 4790, b35933d, Dec 12 2023
2023-12-15 12:03:04 +08:00
Jiang Jiang Jian
16317f5fdb Merge branch 'bugfix/fix_issuse_in_scan_and_mesh_v4.3' into 'release/v4.3'
fix(wifi): fix issues in scan and wifi mesh (v4.3)

See merge request espressif/esp-idf!27862
2023-12-15 11:33:05 +08:00
Jiang Jiang Jian
eb0f7d0648 Merge branch 'bugfix/temp_clk_gate_v4.3' into 'release/v4.3'
fix(temperature_snesor): Put clock gate enable/disable in to sar_periph_ctrl together (backport v4.3)

See merge request espressif/esp-idf!27759
2023-12-14 19:42:01 +08:00
zhangyanjiao
a9d03cc576 fix(wifi): fix issues in scan and wifi mesh
1. fix(wifi): fix the crash issue when clear scan ap list
2. fix wifi mode error when mesh start after station has connected to router
2023-12-14 18:14:24 +08:00
Jiang Jiang Jian
bcc34871cf Merge branch 'bugfix/authcomplete_failure_v4.3' into 'release/v4.3'
fix(nimble): Fixed authcomplete failure caused by a mismatch in the c1 value (v4.3)

See merge request espressif/esp-idf!27638
2023-12-14 17:48:50 +08:00
Jiang Jiang Jian
b9a538b581 Merge branch 'bugfix/coex_ble_scan_rate_v4.3' into 'release/v4.3'
fix(coex): Fix esp32 ble scan not restart when wifi start stop

See merge request espressif/esp-idf!27813
2023-12-14 17:35:06 +08:00
liuning
594ace7f20 fix(coex): Fix esp32 ble scan not restart when wifi start stop 2023-12-14 10:30:35 +08:00
linruihao
c611a5d884 fix(bt): Update bt lib for ESP32-C3(9129dec) 2023-12-13 20:50:24 +08:00
Cao Sen Miao
b3ab5e6f89 fix(temperature_snesor): Put clock gate enable/disable in to sar_periph_ctrl together 2023-12-13 17:05:26 +08:00
Jiang Jiang Jian
e0c52bc78c Merge branch 'bugfix/nvs_oom_check_wrong_pointer_v4.3' into 'release/v4.3'
nvs: fixed OOM check wrong pointer issue (v4.3)

See merge request espressif/esp-idf!27687
2023-12-13 15:15:03 +08:00
Jiang Jiang Jian
49c2896ce1 Merge branch 'bugfix/fix_some_ble_bugs_v4.3' into 'release/v4.3'
Fixed some BLE bugs (backport v4.3)

See merge request espressif/esp-idf!27679
2023-12-13 15:14:37 +08:00
Jiang Jiang Jian
16e0493cc7 Merge branch 'bugfix/fix_ftm_regression_issues_v4.3' into 'release/v4.3'
fix(esp_wifi): Update wifi libs to fix FTM regression issues

See merge request espressif/esp-idf!27807
2023-12-12 10:02:20 +08:00
wanlei
878fd239d6 fix(twai): fix build error TWAI_TAG used but not defined
bug introduced from efef8401
closes https://github.com/espressif/esp-idf/issues/12760
2023-12-11 16:18:20 +08:00
Nachiket Kukade
c540e00bba fix(esp_wifi): Update wifi libs to fix FTM regression issues 2023-12-09 21:53:56 +05:30
Jiang Jiang Jian
644f19630d Merge branch 'bugfix/freemodbus_timer_struct_not_initialized_v4.3' into 'release/v4.3'
freemodbus: fixed timer config struct not initialized issue (v4.3)

See merge request espressif/esp-idf!27686
2023-12-08 20:42:15 +08:00
chenjianhua
558dca6859 fix(bt): Update bt lib for ESP32-C3 and ESP32-S3(65db61f)
- Fixed remove and clear white list
2023-12-08 20:04:00 +08:00
chenjianhua
79e80d9134 fix(bt): Update bt lib for ESP32(fa43201)
- Fixed assert for instant passed workaround
- Fixed scan evt timeout
- Fixed random address setting when scanning
2023-12-08 19:57:54 +08:00
shangke
fa7e4d8e68 fix(bt/controller): Fixed some HCI commands parameter 2023-12-08 19:57:54 +08:00
chenjianhua
0461975846 fix(bt): Update bt lib for ESP32-C3 and ESP32-S3(b8f0db9)
- Fixed assert when llcp instant passed
- Fixed assert for instant passed workaround
- Fixed add RPA to white list
- Fixed AES encryption for RPA resolution
2023-12-08 19:57:54 +08:00
chenjianhua
657dc39e36 fix(bt/bluedroid): Fixed add RPA to white list 2023-12-08 19:57:54 +08:00
Jiang Jiang Jian
e19f84cff5 Merge branch 'feat/max_ver_c3_199_v4.3' into 'release/v4.3'
feat(soc): Increase max supported version of C3 to 1.99 (v4.3)

See merge request espressif/esp-idf!26826
2023-12-08 19:28:58 +08:00
Cao Sen Miao
a42a1f85f5 docs: update using usb_serial_jtag documents 2023-12-06 10:25:19 +08:00
Michael (XIAO Xufeng)
7f240ea3e0 bugfix (nvs): fixed wrong pointer check 2023-12-06 02:09:56 +08:00
Michael (XIAO Xufeng)
a8ec21707e freemodbus: fixed timer config struct not initialized issue (v4.4) 2023-12-06 02:03:18 +08:00
Darshan Dobariya
425215c0f7 fix(nimble): Fixed authcomplete failure caused by a mismatch in the c1 value (v4.3) 2023-12-05 14:54:52 +05:30
Jiang Jiang Jian
03ccbb6690 Merge branch 'bugfix/fix_wifi_init_reentrant_issue_v4.3' into 'release/v4.3'
Bugfix/fix wifi init reentrant issue v4.3

See merge request espressif/esp-idf!27627
2023-12-05 05:15:59 +08:00
Jiang Jiang Jian
b99bade548 Merge branch 'bugfix/dpp_listen_bugs_v4.3' into 'release/v4.3'
fix(esp_wifi): Backport DPP related bug fixes (v4.3)

See merge request espressif/esp-idf!27350
2023-12-04 23:40:44 +08:00
Jiang Jiang Jian
baf57eca0f Merge branch 'bugfix/remove_bond_v4.3' into 'release/v4.3'
fix(nimble): Handled IRK/LTK deletion based on key availability(v4.3)

See merge request espressif/esp-idf!26608
2023-12-04 20:12:42 +08:00
Jiang Jiang Jian
3cd0cd967e Merge branch 'bugfix/fix_onebyte_watchpoint_setting_v4.3' into 'release/v4.3'
fix(riscv): supports 1 byte and larger than 64byte range watchpoint setting (v4.3)

See merge request espressif/esp-idf!27518
2023-12-04 17:35:46 +08:00
Jiang Jiang Jian
3211b02e98 Merge branch 'bugfix/alarm_args_double_free_v4.3' into 'release/v4.3'
Bugfix/alarm args double free v4.3

See merge request espressif/esp-idf!27541
2023-12-04 17:35:24 +08:00
Jiang Jiang Jian
378c13cb7e Merge branch 'fix/ble_mesh_example_relay_enable_v4.3' into 'release/v4.3'
fix(ble_mesh): Enable relay by default for the specific dev role (v4.3)

See merge request espressif/esp-idf!27509
2023-12-04 17:35:09 +08:00
Island
925654a135 Merge branch 'backport/fix_ble_menuconfig_v4.3' into 'release/v4.3'
Backport/fix ble menuconfig v4.3(backport v4.3)

See merge request espressif/esp-idf!27494
2023-12-04 16:30:17 +08:00
liuning
be30253725 fix(wifi): fix wifi deinit s_wifi_modem_sleep_lock 2023-12-04 16:09:23 +08:00
liuning
47bee14f8c fix(wifi): fix wifi init reentrant issue 2023-12-04 16:08:31 +08:00
Jiang Jiang Jian
8196913f7b Merge branch 'bugfix/fix_cpu_switches_freq_bug_s2_to_v4.3' into 'release/v4.3'
EspS2: fixed the bug of insufficient voltage when the CPU switches frequency(V4.3)

See merge request espressif/esp-idf!26283
2023-12-04 13:36:36 +08:00
jgujarathi
648bb39986 fix(wpa_supplicant): Restructuring DPP init method to ensure cleanup
Restructuring DPP init function to ensure cleanup of variables in case of
init failure
2023-12-04 11:05:50 +05:30
jgujarathi
7947c5ea79 fix(wpa_supplicant): Fix location of clearing up dpp global variables
Fix location of cleaing up dpp global variables to ensure that there are
no concurrency issues.
2023-12-04 11:05:50 +05:30
jgujarathi
505b65846f fix(wpa_supplicant): Fix a memory leak in dpp deinit path
Ensures that the auth information of dpp gets freed when there is
dpp gets deinited.
2023-12-04 11:05:48 +05:30
Jiang Jiang Jian
f994bb8c25 Merge branch 'fix/twai_crash_on_s3_gpio_19and20_v4.3' into 'release/v4.3'
fix(twai): example crash using usb-serial-jtag pins (v4.3)

See merge request espressif/esp-idf!26666
2023-12-04 11:35:32 +08:00
Liu Linyan
4a31a9f92f fix(ble_mesh): Enable relay by default for the specific dev role 2023-12-04 01:20:51 +00:00
Abhinav Kudnar
13944779a8 fix(nimble): Handled IRK/LTK deletion based on key availability. 2023-12-02 03:31:01 +05:30
Jiang Jiang Jian
20b42ca0bb Merge branch 'bugfix/bod_intr_v4.3' into 'release/v4.3'
brownout: Disable the hardware BOD when BOD interrupt is enabled(backport v4.3)

See merge request espressif/esp-idf!27438
2023-12-01 19:23:05 +08:00
wanlei
a730188c3e fix(twai): twai example crash using usb-serial-jtag pins
Calling gpio_hal_iomux_func_sel() via gpio_config() may
disconnects/disables any influence from USJ when using USJ pins
2023-12-01 11:21:25 +00:00
hongshuqing
bcfec3e09e s2 cpu sw freq 2023-12-01 10:08:34 +00:00
zhanghaipeng
dedb6df4d3 fix(bt/bluedroid): Fix BLE SMP register log level 2023-12-01 16:55:40 +08:00
zhanghaipeng
81e3c1c12c fix(bt/bluedroid): Fix bluedroid menuconfig 2023-12-01 16:52:30 +08:00
zhanghaipeng
b8c263b668 docs(bt/bluedroid): Update ble example document 2023-12-01 16:47:32 +08:00
David Čermák
c79f1bc3c1 Merge branch 'fix/esp_netif_lock_v4.3' into 'release/v4.3'
fix(esp_netif): Lock netif list with TCPIP context (v4.3)

See merge request espressif/esp-idf!26715
2023-12-01 00:54:57 +08:00
Jin Cheng
9f2c86c6be fix(bt/bluedroid): Set the alarm_arg to NULL after releasing to avoid double free in BTC layer 2023-11-30 20:07:45 +08:00
wuzhenghui
4c58af8eae fix(riscv): supports 1 byte and larger than 64byte range watchpoint setting 2023-11-30 15:57:16 +08:00
aditi_lonkar
7835d44e88 fix(esp_wifi): Fix WDT when esp_supp_dpp_start_listen called multiple times
Update wifi lib with below changes -
1. Return error for 2nd offchan Tx when 1st API still in progress
2. Fix timer index issue with last timer enum

Co-authored-by: Shyamal Khachane <shyamal.khachane@espressif.com>
2023-11-29 22:24:57 +05:30
Jiang Jiang Jian
1444269b67 Merge branch 'feat/support_esp32c3_v1.1_wifi_v4.3' into 'release/v4.3'
backport(wifi): support esp32c3 v1.1 wifi(v4.3)

See merge request espressif/esp-idf!27424
2023-11-29 23:19:28 +08:00
Michael (XIAO Xufeng)
fae640c19b feat(soc): Increase max supported version of C3 to 1.99 2023-11-29 17:03:26 +08:00
Marius Vikhammer
12dec61cde Merge branch 'bugfix/intr_flags_to_level_v4.3' into 'release/v4.3'
fix(intr_flags_to_level): fix value returned one more than correct value (v4.3)

See merge request espressif/esp-idf!25427
2023-11-29 16:54:50 +08:00
Cao Sen Miao
3f6515232e brownout: Disable the hardware BOD when BOD interrupt is enabled 2023-11-28 17:08:57 +08:00
alanmaxwell
05a3d2d8ce feat(wifi): support esp32c3 v1.1 wifi 2023-11-28 11:36:58 +08:00
Jiang Jiang Jian
7e9d90ca22 Merge branch 'bugfix/backport_wifi_fix_1124_v4.3' into 'release/v4.3'
fix(wifi): backport some wifi bugfix(v4.3)

See merge request espressif/esp-idf!27386
2023-11-28 10:51:40 +08:00
David Cermak
f334e741f0 fix(esp_netif): Fix races in netif object locking 2023-11-27 08:18:57 +01:00
Jiang Jiang Jian
ef90a3d0e0 Merge branch 'feature/support_ble_esp32c3_eco7_v4.3' into 'release/v4.3'
Feature/support ble esp32c3 eco7 (backport v4.3)

See merge request espressif/esp-idf!27342
2023-11-27 13:58:05 +08:00
jgujarathi
9b0309b31a fix(wpa_supplicant): Add HT20_40 capability in assoc requests
- Add the HT2040 capability indication in the extended caps IE of
  assoc requests.
2023-11-27 10:37:32 +08:00
jgujarathi
34339565dc fix(esp_wifi): Ensure beacon timeout gets trigerred for AP config change
- Ensure that beacon timeout gets trigerred for AP config changes when we are in
  powersave.
2023-11-27 10:37:32 +08:00
alanmaxwell
37b1fc9d67 fix(wifi): backport some wifi bugfix
1. Fix multi antenna issue
2. Fix typo in wifi api docs
3. Optimize BB filter timer to pass some corner case
4. Change fragment threshold to 256
5. Support fragment for LR mode
6. Fix rx fragment fail in Open mode.
7. Drop fragmented AMPDUs
8. Fix ampdu duration issue
2023-11-27 10:37:31 +08:00
xueyunfei
f9b7fa964c feat(esp_wifi):static buf for management,control,qos null,null data rx packet 2023-11-27 10:37:31 +08:00
zhiweijian
3881da5bdb feat: support ble esp32c3 eco7 2023-11-24 20:24:50 +08:00
Jiang Guang Ming
37f97d005e feat(esp32c3): Update esp32c3 chip revision 2023-11-24 20:24:38 +08:00
Jiang Guang Ming
0a27b15f3e feat(esp32c3): Add rom ld with ROM tag esp32c3-eco7-20230720 2023-11-24 20:23:29 +08:00
Jiang Jiang Jian
4d8baf8cd7 Merge branch 'bugfix/fix_some_wifi_bugs_231123_v4.3' into 'release/v4.3'
fix(wifi): fix some wifi issues 231123 (Backport v4.3)

See merge request espressif/esp-idf!27374
2023-11-24 20:07:58 +08:00
Jiang Jiang Jian
11ab2e9258 Merge branch 'feat/dynamic_integration_pipeline_v4.3' into 'release/v4.3'
CI: dynamic integration pipeline v4.3

See merge request espressif/esp-idf!27108
2023-11-24 18:48:43 +08:00
muhaidong
fb38539ea9 fix(wifi): fix some wifi bugs
1. fix ccmp pn became large issue
2. sta not pmf capable when requires should reject profile
3. fix softap set config issue
4. allow some special igtk keyindex to workaround faulty APs
5. remove target_power_backoff
6. remove FreqCalCntforScan
7. fix enable psram wapi dhcp fail issue
2023-11-24 11:16:06 +08:00
muhaidong
5eb31b6bd1 fix(wifi): allow some special igtk keyindx to workaround faulty APs 2023-11-24 11:06:44 +08:00
muhaidong
59ff3f12fc fix(wifi): fix some wifi issues
1. fix enable psram wapi dhcp fail issue
3. fix wrong wifi mode connect crash issue
2023-11-24 11:06:44 +08:00
muhaidong
bd19f9c5aa fix(wifi): update scan example for scan get ap records 2023-11-24 11:06:44 +08:00
Jiang Jiang Jian
2f00d01316 Merge branch 'bugfix/wpa_connection_in_ent_mode_v4.3' into 'release/v4.3'
fix(wifi): Fix sta connecting with wpa security in enterprise mode

See merge request espressif/esp-idf!27332
2023-11-24 10:30:35 +08:00
David Čermák
a39355d1a0 Merge branch 'bugfix/emac_rx_buffer_v4.3' into 'release/v4.3'
esp_eth: receive buffer allocation optimization (v4.3)

See merge request espressif/esp-idf!27329
2023-11-24 00:42:23 +08:00
Shreyas Sheth
7cbab6efb0 fix(wifi): Fix sta connecting with wpa security in enterprise mode 2023-11-23 17:52:01 +05:30
Ondrej
f104be7b93 esp_eth: receive buffer allocation optimization
Receive buffers are allocated with a size equal to actual received frame size
2023-11-23 12:32:40 +01:00
Chen Yudong
e983162ec8 ci: add qa-test-tag rules 2023-11-23 08:52:34 +00:00
Chen Yudong
a60cea61a3 ci: dynamic integration test child pipeline 2023-11-23 08:52:34 +00:00
Jiang Jiang Jian
525f5a06ad Merge branch 'bufix/Backport_some_lwip_bugs_for_4.3_1121' into 'release/v4.3'
Bufix/backport some lwip bugs for 4.3 1121

See merge request espressif/esp-idf!27284
2023-11-23 11:52:01 +08:00
xueyunfei
89ba9ebde1 fix(dhcp server):fix set dhcp server poll fail issue 2023-11-22 20:56:09 +08:00
Jiang Jiang Jian
85f2d53e00 Merge branch 'bugfix/fix_pmf_set_race_v4.3' into 'release/v4.3'
WiFi: backported some fixes (v4.3)

See merge request espressif/esp-idf!27303
2023-11-22 16:52:00 +08:00
Jiang Jiang Jian
deffe32153 Merge branch 'bugfix/dpp_config_memset_v4.3' into 'release/v4.3'
Wi-Fi: Fixed some DPP issues (v4.3)

See merge request espressif/esp-idf!27279
2023-11-22 12:27:51 +08:00
Kapil Gupta
d08e533ae7 fix(WiFi): backported some fixes
Added following changes as part of this

1. Prevent PMF config overwritten by tx_cb
2. remove cipher header from tx cb done
2023-11-21 17:54:51 +05:30
Kapil Gupta
806696b112 fix(wpa_supplicant): memzero wifi config before sending config event 2023-11-21 11:38:30 +05:30
Kapil Gupta
c121908ddd fix(wifi): Disallow DPP and WPS concurrency 2023-11-21 11:38:07 +05:30
xueyunfei
4bdfc1be1e Fix(lwip):bugfix for add config for tcp ooseq bufs 2023-11-21 10:51:51 +08:00
Jiang Jiang Jian
0e493db2fe Merge branch 'bugfix/connect_issue_for_zero_rssi_v4.3' into 'release/v4.3'
fix(esp_wifi): Fix issue of station disconnecting immediately after scanning (Backport v4.3)

See merge request espressif/esp-idf!26748
2023-11-21 10:50:23 +08:00
Planck (Lu Zeyu)
0a6fba3fb9 fix(intr_flags_to_level): fix value returned one more than correct value 2023-11-21 02:45:39 +00:00
xueyunfei
6b9b3e41c7 Fix(tcp):optimize tcp connection 2023-11-21 10:32:50 +08:00
xueyunfei
3eb68f9829 Fix(dhcps):fix dhcp subnet option api dos not work issue 2023-11-21 10:25:48 +08:00
Wang Meng Yang
949c2960b3 Merge branch 'bugfix/spp_deinit_crash_v4.3' into 'release/v4.3'
fix(bt/bluedroid): Fix the crash of invalid access to released resources (v4.3)

See merge request espressif/esp-idf!27254
2023-11-21 10:02:11 +08:00
aditi_lonkar
139a0054c7 fix(wpa_supplicant): Fix few dpp bugs
1) Fix crash in dpp Listen without bootstrap
  2) Fix crash on receiving dpp auth_req from hostapd with dpp akm
  3) Ensures that the mode is set to station before dpp init
  4) Ensures that dpp follows the path of init->bootstrap->listen
2023-11-20 21:40:29 +05:30
Sarvesh Bodakhe
3060189023 fix(esp_wifi): Fix issue of station disconnecting immediately when AP RSSI is zero 2023-11-20 18:46:55 +05:30
Island
173f596159 Merge branch 'bugfix/fix_some_ble_bugs_v4.3' into 'release/v4.3'
Fixed some BLE bugs (backport v4.3)

See merge request espressif/esp-idf!27201
2023-11-17 20:22:08 +08:00
Island
64831f3d35 Merge branch 'backport/fix_ble_scan_rsp_v4.3' into 'release/v4.3'
Backport/fix ble scan rsp v4.3(backport v4.3)

See merge request espressif/esp-idf!27003
2023-11-17 18:18:35 +08:00
Jin Cheng
72022dfac3 fix(bt/bluedroid): Fix the crash of invalid access to released resources
It is caused by the delayed timer is alarmed after esp_spp_deinit.
2023-11-17 10:58:51 +08:00
chenjianhua
4621adf8c7 fix(bt): Update bt lib for ESP32-C3 and ESP32-S3(2758518)
- Fixed power state setting when entering modem sleep
- Support get the range of TX power level
- Support clear legacy adv using vendor hci
- Fix bugs in setting adv data and response data when data length is zero
2023-11-16 17:49:39 +08:00
chenjianhua
f404e3155b update esp32 bt-lib (6458728)
- Modify mesh proxy solic uuid to 0x18590303
- Support get the range of TX power level
- Support clear legacy adv using vendor hci
2023-11-16 17:46:43 +08:00
chenjianhua
547946d04b feat(bt/bluedroid): support clear legacy advertising 2023-11-16 17:46:34 +08:00
Jiang Jiang Jian
0418bd2336 Merge branch 'bugfix/update_phy_lib_v4.3' into 'release/v4.3'
fix(phy): update phy lib to master (v4.3)

See merge request espressif/esp-idf!26868
2023-11-15 14:31:07 +08:00
Jiang Jiang Jian
ca6473991f Merge branch 'bugfix/fix_deinit_init_wifi_scan_fail_issue_v4.3' into 'release/v4.3'
Bugfix/fix deinit init wifi scan fail issue v4.3(Backport v4.3)

See merge request espressif/esp-idf!27048
2023-11-14 15:25:28 +08:00
Jiang Jiang Jian
5af1c9e37a Merge branch 'bugfix/spi_master_fifo_use_dma_v4.3' into 'release/v4.3'
fix(spi): fixed undesired touching to DMA (v4.3)

See merge request espressif/esp-idf!26773
2023-11-14 15:22:30 +08:00
muhaidong
481a064d6b change(hal): remove useless code from periph_ll_wifi_bt_module_enable_clk 2023-11-10 14:44:23 +08:00
muhaidong
a3d4897e60 fix(wifi): fix deinit init wifi scan fail issue 2023-11-10 14:12:35 +08:00
Wang Meng Yang
eb53913f47 Merge branch 'bugfix/fix_ble_bond_error_after_reboot_v4.3' into 'release/v4.3'
fix(ble/bluedroid): fixed BLE bond error after reboot (backport v4.3)

See merge request espressif/esp-idf!26980
2023-11-09 19:36:41 +08:00
zhanghaipeng
a607ea496b fix(bt/bluedroid): Fix ble keysize check 2023-11-08 19:49:08 +08:00
zhanghaipeng
76508f4c23 fix(bt/bluedroid): Fix ble adv report evt type 2023-11-08 19:49:04 +08:00
morris
35a5a29f72 Merge branch 'bugfix/fix_wrong_adc_attenuation_name_v4.3' into 'release/v4.3'
fix(adc): rename ADC_ATTEN_DB_11 to ADC_ATTEN_DB_12 (v4.3)

See merge request espressif/esp-idf!26970
2023-11-07 18:47:43 +08:00
zhanghaipeng
6072e77ad3 fix(bt/bluedroid): Fix BLE remove bond list status 2023-11-07 16:29:26 +08:00
zhiweijian
8ff82294ee fix(ble/bluedroid): fixed BLE bond error after reboot 2023-11-07 16:29:17 +08:00
Armando
40d021e39d 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-07 14:14:25 +08:00
Jiang Jiang Jian
f8e9443cbd Merge branch 'bugfix/unable_to_load_bonded_ble_devices_from_nvs_v4.3' into 'release/v4.3'
fix(bt/bluedroid): ble fails to load bonded device info after reboot(backport v4.3)

See merge request espressif/esp-idf!26474
2023-11-06 11:20:39 +08:00
Island
a01caee8bd Merge branch 'backport/fix_ble_bugs_v4.3' into 'release/v4.3'
Backport/fix ble bugs v4.3(backport v4.3)

See merge request espressif/esp-idf!26766
2023-11-03 09:12:59 +08:00
zhangyanjiao
7e817bb081 fix(phy): update phy lib to master
esp32: phy_version 4780,16b31a7,Sep 22 2023,20:42:16
esp32s2: phy_version 2401,2a6dc26,Sep 26 2023,11:22:15
esp32c3: phy_version 1130,b4e4b80,Sep  5 2023,11:09:30
esp32s3: phy_version 620,ec7ec30,Sep  5 2023,13:49:13
2023-11-02 16:04:56 +08:00
zhanghaipeng
8cd82305d1 fix(bt/bluedroid): Optimize compatibility with Android 10 and later devices 2023-11-02 12:27:03 +08:00
zhanghaipeng
69f482f911 feat(bt/bluedroid): Support hid device control point 2023-10-31 16:30:22 +08:00
zhanghaipeng
f825a36c38 fix(bt/bluedroid): Optimize compatibility with IOS and MACOS devices 2023-10-31 16:30:22 +08:00
zhanghaipeng
0e4d03b4de feat(bt/bluedroid): Display BLE permission check handle in error trace 2023-10-31 16:30:22 +08:00
zhanghaipeng
007982aad5 fix(bt/bluedroid): Fix max BLE gattc notify number to improve compatibility 2023-10-31 16:30:22 +08:00
zhanghaipeng
7841271e41 feat(bt/bluedroid): Support BLE gattc notify registration number 2023-10-31 16:30:22 +08:00
zhanghaipeng
1f785edead fix(bt/bluedroid): Fix key size check in BLE smp 2023-10-31 16:30:22 +08:00
Xiao Xufeng
5a5839bedb fix(spi): fixed undesired touching to DMA
Closes https://github.com/espressif/esp-idf/issues/12241
2023-10-31 15:54:42 +08:00
Jiang Jiang Jian
365b867ad0 Merge branch 'bugfix/fix_wifi_no_response_after_m_f_null_v4.3' into 'release/v4.3'
fix(pm): fix wifi station no response after m f null

See merge request espressif/esp-idf!26736
2023-10-31 15:36:17 +08:00
liuning
fd75950796 fix(pm): fix wifi station no response after m f null 2023-10-30 09:41:23 +08:00
gongyantao
3eea6650ab fix(bt/bluedroid): update the newest active device in bluetooth
1: update the newest active device when an ACL link is established and
   the remote device info is not in bond list. This updates will not stored
   into NVRAM until a new device is paired.
2023-10-26 19:43:21 +08:00
Wang Meng Yang
2b6ebac5ca Merge branch 'bugfix/backport_some_ble_bugs_20231020_v4.3' into 'release/v4.3'
Fixed some BLE bugs 20231020 (backport v4.3)

See merge request espressif/esp-idf!26614
2023-10-26 18:20:27 +08:00
Jiang Jiang Jian
2d976635a6 Merge branch 'bugfix/spurious_beacon_timeout_v4.3' into 'release/v4.3'
Fixed some WiFi Issues (Backport v4.3)

See merge request espressif/esp-idf!26616
2023-10-26 14:47:01 +08:00
zhiweijian
1b20c1970c Modify mesh proxy solic uuid to 0x18590303 2023-10-26 02:33:35 +00:00
zhiweijian
56ef2d06f7 feat: add config to disable ble hci uart flow control 2023-10-26 02:33:35 +00:00
zhiweijian
c0be439b92 change: enable pll track by default on ESP32 2023-10-26 02:33:35 +00:00
zhiweijian
0c9997c2ca Add mesh adv type for exception list 2023-10-26 02:33:35 +00:00
zhiweijian
bba23a4b9f Update ble lib for ESP32-C3
- Add new mesh types for exception list on ESP32-C3
- Fixed address resolution for directed adv with RPA when scanning on ESP32-C3
- Fixed resolvable private address renew after timeout on ESP32-C3
- Fixed extended adv address setting after adv restart on ESP32-C3
- Fixed scan channel index setting for extended scan on ESP32-C3
- Add API to set aux channel index for extended adv on ESP32-C3
- modify mesh proxy solic uuid to 0x18590303 on ESP32-C3
- Fixed DTM payload length cannot be 0 on ESP32-C3
- Added config to enable Hw recorrect eco on ESP32-C3
- report the number of packets sent on the TX end on ESP32-C3
2023-10-26 02:33:35 +00:00
zhiweijian
fbf871a611 Fixed bluedroid host build warning when log is disabled 2023-10-26 02:33:35 +00:00
Jiang Jiang Jian
a6bcdf9637 Merge branch 'bugfix/minor_enterprise_fixes_v4.3' into 'release/v4.3'
Drop Eapol msg if EAP success is not processed (Backport v4.3)

See merge request espressif/esp-idf!25070
2023-10-25 16:41:01 +08:00
Jiang Jiang Jian
a94a8cfce2 Merge branch 'ci/fix_integration_test_download_bin_4.3' into 'release/v4.3'
ci(fix): integration test download test bin (4.3)

See merge request espressif/esp-idf!26648
2023-10-25 16:19:26 +08:00
Chen Yudong
4dd1f02c4f ci(fix): integration test download test bin 2023-10-24 17:00:46 +08:00
Island
b84f9529e1 Merge branch 'backport_v4.3' into 'release/v4.3'
Fix some BLE bugs in bluedroid hostr(backport v4.3)

See merge request espressif/esp-idf!26166
2023-10-23 12:03:45 +08:00
Shyamal Khachane
ad3b52b058 fix(esp_wifi): Drop Eapol msg if EAP success is not processed 2023-10-21 21:49:27 +05:30
jgujarathi
085bf0ed5a fix(esp_wifi): Fixes issues in PMKSA and AID assignment
- Fix missing PMKSA flush scenarios.

- Fix wrong AID assigned to station when multiple stations try to connect
  simultaneously with mixed order of auth-request and assoc-request frames.
2023-10-20 19:44:11 +05:30
Jiang Jiang Jian
b7b0a6f094 Merge branch 'bugfix/wps_wpa3_passphrase_v4.3' into 'release/v4.3'
fix(wifi): Get passphrase in WPS if AP support SAE

See merge request espressif/esp-idf!26560
2023-10-20 19:46:53 +08:00
Jiang Jiang Jian
f4864a2a19 Merge branch 'bugfix/fix_no_mac_retention_at_wifi_start_v4.3' into 'release/v4.3'
fix(pm): wifi no mac retention at wifi start

See merge request espressif/esp-idf!25580
2023-10-19 10:34:33 +08:00
Jiang Jiang Jian
3a0399935e Merge branch 'feat/imporve_iperf_performance_v4.3' into 'release/v4.3'
feat(wifi): optimize iperf performance (Backport V4.3)

See merge request espressif/esp-idf!26398
2023-10-18 20:40:35 +08:00
Kapil Gupta
ad90f00afa fix(wifi): Get passphrase in WPS if AP support SAE
Also add changes to send NACK if WPS message received twice.
2023-10-18 17:58:43 +05:30
Mahavir Jain
193b8f8389 Merge branch 'feature/update_mbedtls_v2.28.5_idf_v4.3' into 'release/v4.3'
feat(mbedtls): update to release v2.28.5

See merge request espressif/esp-idf!26483
2023-10-18 19:37:50 +08:00
xuxiao
59cb30e837 feat(wifi): optimize iperf performance (Backport V4.3) 2023-10-17 19:13:29 +08:00
liuning
ae74ecea25 fix(pm): wifi no mac retention at wifi start 2023-10-17 09:44:27 +08:00
zhanghaipeng
6b3548f718 fix(bt/bluedroid): Fix hid example stack overflow bugs when using esp32s3 2023-10-16 19:35:47 +08:00
zhanghaipeng
20eacf3652 fix(bt/bluedroid): Fix remove resolving list error for esp32 2023-10-16 19:35:37 +08:00
zhanghaipeng
e306873664 fix(bt/bluedroid): Fix bugs in ble service change characteristic 2023-10-16 19:35:24 +08:00
zhanghaipeng
7a3304fc21 feat(bt/bluedroid): Support scan response data length zero in BLE 2023-10-16 19:35:10 +08:00
zhanghaipeng
ac87d24969 fix(bt/bluedroid): Optimize the description of Scan Duplicate in BLE 2023-10-16 19:35:00 +08:00
Harshit Malpani
132d490614 feat(mbedtls): Update to release v2.28.5 2023-10-16 11:20:33 +05:30
gongyantao
c7bde045e2 fix(bt/bluedroid): ble fails to load bonded device info after reboot
1: add a quantity check in bt when writing paired device info into nvs.
2: delete the exceeded device info from NVS when get bonded list during
bluedroid initialization.
3: unify the process of bt and ble to load bonded list during bluedroid
initialization.
2023-10-16 11:11:48 +08:00
Wang Meng Yang
947085b7c4 Merge branch 'bugfix/config_tpoll_fail_v4.3' into 'release/v4.3'
Bugfix/config tpoll fail v4.3

See merge request espressif/esp-idf!26454
2023-10-16 10:59:55 +08:00
baohongde
54ab0d3f71 feat(bt/hci): Added Vendor-Specific HCI command to disable DM1 for ACL-U 2023-10-13 14:24:46 +08:00
baohongde
97c1e30e39 fix(bt/bluedroid): Triggering disconnect event of GAP correctly 2023-10-13 14:24:46 +08:00
baohongde
5a17b753f1 fix(bt/bluedroid): Fix issue of QoS configuration failure when t_poll is greater than 40 2023-10-13 14:24:46 +08:00
Jiang Jiang Jian
3b34ed72dd Merge branch 'bugfix/place_esp_timer_in_internal_memory_v4.3' into 'release/v4.3'
ci: Fix for `ETSTimers arm & disarm run from IRAM` UT

See merge request espressif/esp-idf!25423
2023-10-12 18:39:17 +08:00
Laukik Hase
e06f2df346 ci: Fix for ETSTimers arm & disarm run from IRAM UT
- For ESP32 | SPIRAM_MALLOC_ALWAYSINTERNAL=0
- Forced `esp_timer_create` to allocate resource from the internal memory
- WiFi/BT coexistence will sometimes arm/disarm timers from an ISR
  where flash may be disabled. This can lead to a cache-based
  exception as the timer instance will be located in the PSRAM.
2023-10-12 02:13:48 +00:00
Jiang Jiang Jian
784a688aa9 Merge branch 'fix/spi_polling_api_buslock_logic_v4.3' into 'release/v4.3'
fix(spi_master): polling_transmit forgot release bus lock when alloc DMA buffer failed (v4.3)

See merge request espressif/esp-idf!26135
2023-10-12 10:13:08 +08:00
Island
320f0a4117 Merge branch 'bugfix/deepfree_v43' into 'release/v4.3'
fix(ble_mesh): fix compilation failure on using scene model.(v4.3)

See merge request espressif/esp-idf!26374
2023-10-11 19:28:25 +08:00
Wu Meng Shi
5484506582 fix(ble_mesh): fix compilation failure on using scene model.(v4.3) 2023-10-11 19:28:24 +08:00
Island
ac0138f251 Merge branch 'bugfix/BLEQABR23-414_v43' into 'release/v4.3'
fix(ble_mesh): Fix PB-GATT adv being reported to the app layer too frequently (v4.3)

See merge request espressif/esp-idf!26347
2023-10-10 16:10:24 +08:00
Wu Meng Shi
db6f38f68d fix(ble_mesh): Fix PB-GATT adv being reported to the app layer too frequently (v4.3) 2023-10-10 16:10:23 +08:00
Roland Dobai
53172cf552 Merge branch 'autocomplete_fix_4.3' into 'release/v4.3'
Fix autocomplete test [4.3]

See merge request espressif/esp-idf!26237
2023-10-10 01:22:12 +08:00
Jiang Jiang Jian
de21e45b72 Merge branch 'bugfix/neighbour_report_crash_v43' into 'release/v4.3'
Fix crash in RRM neighbour report requests.(v4.3)

See merge request espressif/esp-idf!25411
2023-10-08 19:09:21 +08:00
Jiang Jiang Jian
623c826a93 Merge branch 'bugfix/BLEQABR23-632v43' into 'release/v4.3'
fix(ble_mesh): avoid executing bt_mesh_host_init() more than once when using nimble (v4.3)

See merge request espressif/esp-idf!26244
2023-10-08 18:03:22 +08:00
Wu Meng Shi
96379a4626 fix(ble_mesh): avoid executing bt_mesh_host_init() more than once when using nimble (v4.3) 2023-10-08 18:03:21 +08:00
Jiang Jiang Jian
1b904fa547 Merge branch 'bugfix/hfp_api_pkt_stat_nums_v4.3' into 'release/v4.3'
fix(bt/bluedroid): Fix the judgment condition for packet transmission status statistics (backport v4.3)

See merge request espressif/esp-idf!26172
2023-10-08 13:43:25 +08:00
Jiang Jiang Jian
207d846419 Merge branch 'bugfix/wps_disable_disconnect_v4.3' into 'release/v4.3'
fix(wpa_supplicant): Fix WPS connection issue after WPS done (Backport v4.3)

See merge request espressif/esp-idf!25249
2023-10-07 16:41:51 +08:00
Jiang Jiang Jian
09e397bac8 Merge branch 'bugfix/skip_using_cache_in_wrong_passwd_cfg' into 'release/v4.3'
Skip using PMK cache in WPA3 connection incase configured password is incorrect (Backport v4.3)

See merge request espressif/esp-idf!25511
2023-10-07 15:17:20 +08:00
Jiang Jiang Jian
871182ef2b Merge branch 'bugfix/suppress_compiler_warning_silent_reboot_is_enabled_v4.3' into 'release/v4.3'
fix(esp_system): suppress compiler warning if ESP_SYSTEM_PANIC_SILENT_REBOOT is enabled (backport v4.3)

See merge request espressif/esp-idf!26039
2023-10-07 14:01:43 +08:00
Jiang Jiang Jian
5cd95b218e Merge branch 'bugfix/fix_hid_congestion_v4.3' into 'release/v4.3'
Fix(bt/bluedroid): Fix the issue for HID congestion checking[backport 4.3]

See merge request espressif/esp-idf!26234
2023-10-07 14:01:11 +08:00
Peter Dragun
bd3bec2ac3 fix: make sure requirements are installed before running autocomplete test
This reverts commit 4aa921a836.
2023-10-06 16:37:10 +02:00
wuzhenghui
744fc417a7 fix(esp_system): suppress compiler warning if ESP_SYSTEM_PANIC_SILENT_REBOOT is enabled 2023-09-28 02:53:51 +00:00
Wang Meng Yang
dc9092709a Merge branch 'bugfix/add_params_check_for_hci_v4.3' into 'release/v4.3'
Fixed some HCI commands parameter (backport v4.3)

See merge request espressif/esp-idf!26151
2023-09-27 16:25:36 +08:00
liqigan
4752dac185 fix(bt/bluedroid): Fix the issue for HID congestion checking 2023-09-26 16:03:28 +08:00
Rahul Tank
9f3840da59 Merge branch 'bugfix/post_reattempt_cnt_event_v4.3' into 'release/v4.3'
fix(nimble): Add event for reattempt connection count information(v4.3)

See merge request espressif/esp-idf!26116
2023-09-26 14:44:54 +08:00
Wang Meng Yang
435561c9b9 Merge branch 'change/optimize_sniff_request_v4.3' into 'release/v4.3'
Change(bt/bluedroid): Limit sniff request when pending mode change event[backport 4.3]

See merge request espressif/esp-idf!26056
2023-09-25 17:53:36 +08:00
shangke
4c4da5a35f fix(bt/controller): Fixed some HCI commands parameter
1: add param check for HCI_Recevie_Synchronization_Train.
2: add param check for HCI_Set_Connectionless_Peripheral_Broadcast.
3: fix slave cannot take a secure authentication.
2023-09-25 11:50:18 +08:00
chenqingqing
666e9e6555 fix(bt/bluedroid): Fix the judgment condition for packet transmission status statistics 2023-09-25 11:01:06 +08:00
zhanghaipeng
2d8207523a fix(bt/bluedroid): Fix set periodic advertising data error 2023-09-23 20:17:48 +08:00
wanlei
73bbc3c620 fix(spi_master): polling_transmit forgot release bus lock when alloc DMA buffer failed
Close https://github.com/espressif/esp-idf/issues/11845
2023-09-22 10:32:52 +08:00
Rahul Tank
44fdf6be2d fix(nimble): Add event for reattempt connection count information 2023-09-21 15:55:08 +05:30
Shyamal Khachane
1e2e809e23 fix(esp_wifi): Skip PMK cache usage if configured password is incorrect 2023-09-21 11:12:31 +05:30
Jiang Jiang Jian
6da3a3746a Merge branch 'bugfix/fix_espnow_send_error_when_sta_connected_v4.3' into 'release/v4.3'
fix(Wi-Fi/Vendor): fix ESPNOW send error when station connected to AP and modem sleep is enabled (v4.3)

See merge request espressif/esp-idf!25816
2023-09-21 12:32:49 +08:00
Kapil Gupta
8ea8e21803 fix(wpa_supplicant): Fix WPS connection issue after WPS done
esp_wifi_disconnect is needed to clear the wifi state and enable
station to connect to new SSID. Add changes to call it after
WPS is done.
2023-09-21 03:06:26 +00:00
Kapil Gupta
14096ea4bb fix(wpa_supplicant): Do not disconnect in WPS disable incase WPS is done/scanning 2023-09-21 03:06:26 +00:00
jgujarathi
a2f24aabe9 fix(rrm) : Fix crash in RRM neighbour report requests.
Fix crash in sending new RRM neighbour report requests by removing
the call to neighbour report request timeout callback in case of
already ongoing neighbour report request timer.
2023-09-21 03:05:53 +00:00
liqigan
3b04c1dc36 change(bt/bluedroid): Limit sniff request when pending mode change event 2023-09-19 20:13:02 +08:00
Marius Vikhammer
f21cbb625f Merge branch 'bugfix/pthread_cond_var_link_hook_v4.3' into 'release/v4.3'
bugfix(pthread): fixed pthread_condvar linker hook (v4.3)

See merge request espressif/esp-idf!26007
2023-09-19 15:46:16 +08:00
Wang Meng Yang
08991d3258 Merge branch 'bugfix/error_param_in_BTA_AG_WBS_EVT_v4.3' into 'release/v4.3'
Bugfix/error param in bta ag wbs evt (v4.3)

See merge request espressif/esp-idf!26003
2023-09-19 12:00:58 +08:00
Rahul Tank
5936402ff5 Merge branch 'bugfix/memmory_cleanup_optimizatoin_v4.3' into 'release/v4.3'
fix(nimble): Fix for memory leak/optimization(v4.3)

See merge request espressif/esp-idf!25983
2023-09-18 18:50:31 +08:00
Jakob Hasse
01ac40fd19 fix(pthread): fixed pthread_condvar linker hook 2023-09-18 12:31:52 +08:00
Jiang Jiang Jian
e9371ded86 Merge branch 'bugfix/fix_station_example_authmode_threshold_issue' into 'release/v4.3'
fix(wifi): fix station example authmode threshold issue

See merge request espressif/esp-idf!25985
2023-09-18 10:30:11 +08:00
muhaidong
f54957ce09 fix(wifi): fix station example authmode threshold issue 2023-09-15 16:34:29 +08:00
Rahul Tank
610472ac58 fix(nimble): Fix for memory leak/optimization 2023-09-15 13:18:33 +05:30
Mahavir Jain
a1aa516d25 Merge branch 'feature/freertos_add_sbom_file_v4.3' into 'release/v4.3'
feat(freertos): Added SBOM manifest file for SPDX file generation (v4.3)

See merge request espressif/esp-idf!25894
2023-09-14 23:53:25 +08:00
Island
fbd905aa52 Merge branch 'bugfix/fix_some_ble_bug_v4.3' into 'release/v4.3'
Fixed some BLE bugs (backport v4.3)

See merge request espressif/esp-idf!25916
2023-09-14 14:10:41 +08:00
Sudeep Mohanty
61b94e3758 feat(freertos): Added SBOM manifest file for SPDX file generation
This commit adds the SBOM manifest file for the FreeRTOS-Kernel to aid
SPDX file generation.
2023-09-12 15:28:05 +02:00
Rahul Tank
a4ac8a0adb Merge branch 'bugfix/add_nimble_50_feature_support_flag_v4.3' into 'release/v4.3'
fix(nimble): add flag to indicate 5.0 feature support(v4.3)

See merge request espressif/esp-idf!25766
2023-09-12 19:22:28 +08:00
Rahul Tank
83778ad67a Merge branch 'feat/add_high_duty_adv_interval_v4.3' into 'release/v4.3'
feat(nimble): Added support for high duty adv interval (v4.3)

See merge request espressif/esp-idf!25556
2023-09-11 22:14:38 +08:00
Jin Cheng
b519e684bd fix(bt/bluedroid): Fixed incorrect arrangement in type esp_hf_dial_type_t 2023-09-11 19:53:03 +08:00
Jin Cheng
64f72c1e6a change(bt/bluedroid): Added line information printing when error occurs CHECK_HF_IDX 2023-09-11 19:53:03 +08:00
Jin Cheng
7fce991d70 fix(bt/bluedroid): Fixed the issue of uninitialized parameters in event BTA_AG_WBS_EVT 2023-09-11 19:53:03 +08:00
chenjianhua
0d9bcc15b5 Update bt lib for ESP32-C3 and ESP32-S3(59725b5)
- Support BLE RX error packet count record
- Fixed adv random delay when adv interval is less than 20ms
- Fixed adv random address setting when owner address type is public
2023-09-11 19:21:22 +08:00
chenjianhua
592caca809 Update bt lib for ESP32-C3 and ESP32-S3(ff6efe7)
- fix(bt/controller): Fixed PHY enable and disable
- feat(bt/controller): Support DAA and LBT mode for BLE CCA
2023-09-11 19:10:36 +08:00
chenjianhua
e787278638 update esp32 bt-lib (7b24543)
- Support BLE RX error packet count record
- Fixed instant setting for LLC procedures with instants
- Fixed adv random delay when adv interval is less than 20ms
2023-09-11 17:16:01 +08:00
zhanghaipeng
fcafafb92a fix(bt): Fix bugs about updating connect param 2023-09-11 17:15:03 +08:00
zhanghaipeng
04d6936ce1 fix(bt): Fix bug while calculating block cipher using aes-128 2023-09-11 17:14:57 +08:00
zhanghaipeng
0b2fc6b34f docs(bt): Update comment in ble 2023-09-11 17:14:46 +08:00
zhanghaipeng
9c7626fab0 feat(bt/bluedroid): Support periodic adv adi feature 2023-09-11 17:13:44 +08:00
chenjianhua
997c2fd59c fix(bt/bluedroid): Fixed BLE disconnect event report when disconnecting 2023-09-11 16:47:29 +08:00
chenjianhua
afbc101fbf fix(bt/bluedroid): Fixed GATTC cache address save when list is full 2023-09-11 16:47:22 +08:00
chenjianhua
9438aa85e1 feat(bt/bluedroid): Support high duty adv interval setting 2023-09-11 16:47:11 +08:00
chenjianhua
a4df2b6305 fix(bt/bluedroid): Fix address check when using NRPA as random device address 2023-09-11 16:47:00 +08:00
Rahul Tank
c8def29e41 fix(nimble): add flag to indicate 5.0 feature support 2023-09-11 09:47:59 +05:30
Jiang Jiang Jian
8560017efd Merge branch 'feature/support_ble_53_host_feat_v4.3' into 'release/v4.3'
Support BLE host feature for PTS (backport v4.3)

See merge request espressif/esp-idf!25649
2023-09-11 12:00:05 +08:00
Rahul Tank
2accf6cf6e feat(nimble): Added support for high duty adv interval 2023-09-11 09:29:35 +05:30
Jiang Jiang Jian
d832144fb7 Merge branch 'bugfix/hf_ag_report_event_with_null_bdaddr_v4.3' into 'release/v4.3'
Bugfix/fixed bugs of HFP in BlueDroid (v4.3)

See merge request espressif/esp-idf!25830
2023-09-11 10:15:09 +08:00
Wang Meng Yang
82f1755b54 Merge branch 'test/bqb_test_bt_classic_a2dp_v4.3' into 'release/v4.3'
fix(bt/bluedroid): Reject SET CONFIGURATION command with error code INVALID_CODEC_TYPE(backport v4.3)

See merge request espressif/esp-idf!25686
2023-09-11 07:36:40 +08:00
Roland Dobai
bfcba10ef2 Merge branch 'fix/click-port-compl_v4.3' into 'release/v4.3'
fix(tools): fix autocomplete for --port option (v4.3)

See merge request espressif/esp-idf!25877
2023-09-09 09:09:12 +08:00
Island
6cc40d5622 Merge branch 'backport_v4.3' into 'release/v4.3'
fix(bt/bluedroid): Fix memory no free issue when disconneting for mesh(backport v4.3)

See merge request espressif/esp-idf!25862
2023-09-08 21:41:22 +08:00
Peter Dragun
649abd203e fix(tools): fix autocomplete for --port option
Closes https://github.com/espressif/esp-idf/issues/7970
2023-09-08 09:31:08 +02:00
Rahul Tank
d6d55aaf98 Merge branch 'bugfix/remove_global_min_max_def_v4.3' into 'release/v4.3'
fix(nimble): Removed global min/max definition causing problems with other libraries(v4.3)

See merge request espressif/esp-idf!25587
2023-09-08 14:39:33 +08:00
Wang Mengyang
1d70553ee6 ci(bt/bluedroid): Add CI build test for HFP examples with voice over HCI enabled 2023-09-08 11:52:26 +08:00
chenqingqing
79493578f2 feat(bt/api): Add new apis for hfp to get the numbers of packet status received and sent 2023-09-08 11:52:13 +08:00
zhanghaipeng
3acf19d9f9 fix(bt/bluedroid): Fix memory no free issue when disconneting for mesh 2023-09-08 10:36:03 +08:00
Rahul Tank
1d62bea80a fix(nimble): Removed global min/max definition causing problems with other libraries 2023-09-07 19:16:29 +05:30
Jin Cheng
670e8f9049 fix(bt/bluedroid): Deleted the redundant 'memset' in btc_hf_cb_handler 2023-09-07 11:31:22 +08:00
Jin Cheng
812f919706 docs(bt/bluedroid): Changed the description of esp_hf_client_reject_call 2023-09-07 11:31:22 +08:00
Jin Cheng
e4f65d9629 fix(bt/bluedroid): Fixed invalid access to freed semaphore 2023-09-07 11:31:22 +08:00
Jin Cheng
a0c505d128 fix(bt/bluedroid): Fixed wrong indexes of HF-AG indicators 2023-09-07 11:31:22 +08:00
Jin Cheng
820e3263fb fix(bt/bluedroid): Added peer Bluetooth device address into HF callback parameters 2023-09-07 11:31:22 +08:00
Jin Cheng
6ae76b7b69 fix(bt/bluedroid): Changed log level from WARNING to DEBUG in bta_ag_sco_read_cback 2023-09-07 11:31:22 +08:00
Jin Cheng
37b8bc13d5 fix(bt/bluedroid): Fixed wrong code logic in 'AT+CIND?' of HFP 2023-09-07 11:31:22 +08:00
Jin Cheng
dec7165a8f fix(bt/bluedroid): Fixed errors in parsing ATD command in HFP AG 2023-09-07 11:31:22 +08:00
Jin Cheng
0d75f97bf2 fix(bt/bluedroid): Fixed NULL Bluetooth device address in HF-AG events was reported to application layer 2023-09-07 11:31:22 +08:00
zhangyanjiao
48f25e4243 fix(Wi-Fi/Vendor): fix ESPNOW send error when station connected to AP and modem sleep is enabled 2023-09-07 10:03:35 +08:00
Anton Maklakov
7bc232a647 Merge branch 'docs/update_api-guides/jtag-debugging/esp32c3' into 'release/v4.3'
docs: synchronize CN version with EN version of api-guides/jtag-debugging/esp32c3.inc

See merge request espressif/esp-idf!25412
2023-09-07 09:25:07 +08:00
Wang Meng Yang
5ecd048c76 Merge branch 'bugfix/fix_some_hci_cmd_param_check_v4.3' into 'release/v4.3'
fix(bt/controller): Fixed some HCI commands parameter check (Backport v4.3)

See merge request espressif/esp-idf!25716
2023-09-07 07:41:18 +08:00
chenjianhua
786a4ce286 bluedroid: add GATT read multi variable API and evt 2023-09-06 21:02:21 +08:00
chenjianhua
281af95160 bluedroid: add periodic adv sync transfer API and EVT 2023-09-06 21:02:21 +08:00
chenjianhua
5714b64bc3 bluedroid: support gatts show local database 2023-09-06 21:02:21 +08:00
chenjianhua
91e6ab313d bluedroid: fixed GATT multi notify and robust caching 2023-09-06 21:02:21 +08:00
chenjianhua
14c2f27f3e bluedroid: add config for GAP service and periodic adv sync transfer 2023-09-06 21:02:21 +08:00
chenjianhua
c479918f2b bluedroid: add internal GATT API for PTS 2023-09-06 21:02:21 +08:00
chenjianhua
019e1aef99 bluedroid: add config for robust caching and RPA timeout 2023-09-06 21:02:21 +08:00
chenjianhua
9dd01968c9 bluedroid: support GATT robust caching feature 2023-09-06 21:02:21 +08:00
chenjianhua
40080c6957 bluedroid: support GATT services database hash calculate 2023-09-06 21:02:21 +08:00
chenjianhua
50496e15fc bluedroid: support periodic advertising sync transfer cmd 2023-09-06 21:02:21 +08:00
chenjianhua
0f46fad2c7 bluedroid: support LE L2CAP credit based connection 2023-09-06 21:02:21 +08:00
chenjianhua
ec5a7d1e74 bluedroid: support oob pairing for smp secure connection 2023-09-06 21:02:21 +08:00
satish.solanke
7393a3ed78 Support of Micro defination in header file 2023-09-06 21:02:21 +08:00
linruihao
c6d7c1687f fix(bt/controller): Fixed some HCI commands parameter check
Fixed HCI_Change_Connection_Packet_Type Command parameter check
Fixed HCI_Accpet_Synchronous_Connection_Request Command parameter check
Fixed HCI_Set_Connectionless_Peripheral_Broadcast_Data Command parameter check
2023-09-06 06:23:17 +00:00
gongyantao
83462ce916 fix(bt/bluedroid): Reject SET CONFIGURATION command with error code INVALID_CODEC_TYPE
1: reset p_scb->avdt_handle in cleanup function.
2: cancel comparing p_scb->codec_type and p_scb->seps[xx].codec_type to
send the error INVALID_CODEC_TYPE.
2023-09-06 03:07:26 +00:00
Jiang Jiang Jian
813a9bf38f Merge branch 'bugfix/fix_espnow_set_lr_rate_fail_v4.3' into 'release/v4.3'
fix(wifi/vendor): fix some bugs in LR and ESP-NOW (backport v4.3)

See merge request espressif/esp-idf!25413
2023-09-05 21:00:18 +08:00
Linda
c8be48f633 docs: synchronize CN version with EN version of api-guides/jtag-debugging/esp32c3.inc 2023-09-05 10:17:23 +00:00
Roland Dobai
d7a2c25acc Merge branch 'version_check_fix_dev_4.3' into 'release/v4.3'
fix(tools): check_python_version accept dev releases as requirement (v4.3)

See merge request espressif/esp-idf!25190
2023-09-05 16:27:27 +08:00
Roland Dobai
6f147b97d4 Merge branch 'component_manager_bump4.3' into 'release/v4.3'
tools(component-manager): bump version to avoid failures in dependency_check script (v4.3)

See merge request espressif/esp-idf!25069
2023-09-05 16:27:09 +08:00
Roland Dobai
d18aac6941 Merge branch 'bugfix/sbom_hash_check_v4.3' into 'release/v4.3'
fix(test_submodules.py): don't rely on submodule init (v4.3)

See merge request espressif/esp-idf!25063
2023-09-05 16:26:47 +08:00
Jiang Jiang Jian
92c75659a1 Merge branch 'bugfix/fix_cache_data_mem_corrupt_after_sleep_v4.3' into 'release/v4.3'
fix(lightsleep): Suspend cache before goto sleep to avoid cache load wrong data (backport v4.3)

See merge request espressif/esp-idf!25106
2023-09-04 14:26:06 +08:00
Jiang Jiang Jian
d06b5a1cde Merge branch 'bugfix/role_switch_enc_mode_lmp_timeout_v4.3' into 'release/v4.3'
fix(bt/controller): Fix disconnection due to lmp messages not being processed by both sides(v4.3)

See merge request espressif/esp-idf!25206
2023-09-04 14:25:40 +08:00
Jiang Jiang Jian
1915151d66 Merge branch 'bugfix/remove_deprecated_err_code_v4.3' into 'release/v4.3'
fix(bt): Removed an incorrectly defined HCI error code (4.3)

See merge request espressif/esp-idf!25291
2023-09-04 14:25:24 +08:00
Jiang Jiang Jian
f96b93cac1 Merge branch 'bugfix/clear_values_in_str_resetfn' into 'release/v4.3'
Clear values in string reset function

See merge request espressif/esp-idf!25322
2023-09-04 14:25:05 +08:00
Jiang Jiang Jian
ff16d2dc1c Merge branch 'bugfix/incr_sdp_max_conns_v4.3' into 'release/v4.3'
fix(bt): Increased SDP maximum connections to avoid connection exhausted (v4.3)

See merge request espressif/esp-idf!25432
2023-09-04 14:24:43 +08:00
Zim Kalinowski
d2b8914193 Merge branch 'update/version_4_3_6' into 'release/v4.3'
Update version to 4.3.6

See merge request espressif/esp-idf!25521
2023-09-03 10:13:46 +08:00
Zim Kalinowski
5dc5a442a2 versions: Update version to 4.3.6 2023-08-30 09:32:53 +08:00
Zim Kalinowski
0585cf0d96 fix(ci): pin component manager version to older one to fix build 2023-08-30 09:32:52 +08:00
Jiang Jiang Jian
9301c32873 Merge branch 'bugfix/ignore_eapol_nonkey_v4.3' into 'release/v4.3'
Ignore EAPOL non-key frames in EAPOL txdone callback (Backport v4.3)

See merge request espressif/esp-idf!25448
2023-08-23 16:37:26 +08:00
Nachiket Kukade
ecf6c02b02 fix(supplicant): Ignore EAPOL non-key frames in EAPOL txdone callback 2023-08-21 18:03:16 +05:30
Jin Cheng
240272ed88 fix(bt): Increased SDP maximum connections to avoid connection exhausted 2023-08-21 11:24:09 +08:00
zhangyanjiao
6c19019aad fix(wifi/vendor): fix some bugs in LR and ESP-NOW
1. Fix the LR rate set fail for espnow and 80211 tx
2. Fixed the RX error when softAP/station and ESP-NOW both encrypted,
   and the ESP-NOW peer address is equal to the connection peer address
2023-08-18 16:24:22 +08:00
Jiang Jiang Jian
70f8666b48 Merge branch 'bugfix/eapol_txdone_cb_issue_v4.3' into 'release/v4.3'
Fix EAPOL Key TxDone callback implementation (Backport v4.3)

See merge request espressif/esp-idf!25384
2023-08-18 14:41:11 +08:00
Nachiket Kukade
7ec1705c0f fix(wifi): Fix EAPOL Key TxDone callback implementation
Fix issues arising due to not distinguishing between M2 and M4
TxDone during 4-way handshake. Also fix EAPOL frame rate to lowest
possible rate.
2023-08-18 11:02:05 +08:00
Jiang Jiang Jian
f47d7d9d59 Merge branch 'bugfix/update_esp32_phy_v4.3' into 'release/v4.3'
fix(phy): update esp32 phy v4771(v4.3)

See merge request espressif/esp-idf!25369
2023-08-18 11:01:37 +08:00
Jiang Jiang Jian
061caf9569 Merge branch 'bugfix/fix_esp32s2_sleep_related_issue_backport_missing' into 'release/v4.3'
fix: fix esp32s2 abnormal light sleep current

See merge request espressif/esp-idf!25336
2023-08-17 11:54:05 +08:00
Jiang Jiang Jian
90c589dfab Merge branch 'bugfix/fix_idrom_bus_mapping_overlap_issue_v4.3' into 'release/v4.3'
fix(esptool): fix potential text/rodata overlap mapping issue on I/DBUS shares mmu entry chips  (backport v4.3)

See merge request espressif/esp-idf!25194
2023-08-16 20:52:43 +08:00
alanmaxwell
721f22a547 fix(phy): update esp32 phy v4771
1. optimize ht40 tx side band issue
2. revert 4770 one minor fix may cause unknown issue
2023-08-16 12:06:07 +08:00
Li Shuai
1ba2ac83e6 fix rtc register read error and add workaround for rtc bus isolate issue 2023-08-11 19:46:06 +08:00
wuzhenghui
64f8e61b17 fix(esp_system): fix cannot pd cpu and rc fast at the same time during light sleep 2023-08-11 19:46:02 +08:00
Shyamal Khachane
d04b9923ee fix(console): Clear values in string reset function 2023-08-11 11:07:04 +05:30
morris
d31e0fb105 Merge branch 'bugfix/wakeup_io_hold_unhold_in_sleep_v4.3' into 'release/v4.3'
gpio: Fix deep sleep wakeup IOs unable to unhold after wakeup (v4.3)

See merge request espressif/esp-idf!22671
2023-08-11 11:08:08 +08:00
Jiang Jiang Jian
b1bdbd1040 Merge branch 'bugfix/fix_phy_rx_issue_v4.3' into 'release/v4.3'
fix(phy): Fix 11b/g rx issue for ESP32(v4.3)

See merge request espressif/esp-idf!25222
2023-08-11 10:18:43 +08:00
alanmaxwell
8e32500e9d fix(phy): Fix 11b/g rx issue for ESP32 2023-08-10 14:11:26 +08:00
Jiang Jiang Jian
3a58f456f9 Merge branch 'bugfix/fix_ftm_error_propagation_v4.3' into 'release/v4.3'
Fix error propagation while initiating FTM (Backport v4.3)

See merge request espressif/esp-idf!25214
2023-08-10 10:38:57 +08:00
Jin Cheng
aeb8c91580 fix(bt): Removed an incorrectly defined HCI error code 2023-08-09 17:40:04 +08:00
Michael (XIAO Xufeng)
056459a629 Merge branch 'bugfix/temperature_get_value_negative_v4.3' into 'release/v4.3'
bugfix(temperature_sensor): Fix issue that get the value is negative (backport v4.3)

See merge request espressif/esp-idf!25250
2023-08-09 16:47:30 +08:00
Song Ruo Jing
8cb8c640f4 gpio: Fix IO hold function related problems
1. Fix deep sleep wakeup IOs can not be unhold issue
2. Correct hold related APIs' description
3. Fix gpio_force_hold_all API

docs: Add GPIO wakeup source to sleep_modes doc for ESP32C3
2023-08-08 02:40:46 +00:00
Song Ruo Jing
0b9e4ff912 examples: system/deep_sleep
1. Fix EXT0 wakeup pin error on ESP32: GPIO3 is not a RTC IO, change to use GPIO25.
2. Add ESP_ERROR_CHECK to explicitly show the runtime error
3. Improve example README
2023-08-08 02:40:46 +00:00
Song Ruo Jing
c3be230487 rtcio: Add a test case to test RTCIO's hold ability after deep sleep wakeup 2023-08-08 02:40:46 +00:00
Cao Sen Miao
0c584425e9 bugfix(temperature_sensor): Fix issue that get the value is negative 2023-08-07 18:48:54 +08:00
Peter Dragun
f1101a7bd4 fix(tools): check_python_version accept dev releases as requirement 2023-08-04 14:22:06 +02:00
Nachiket Kukade
67e287a02d fix(wifi): Fix error propagation while initiating FTM 2023-08-04 12:19:31 +05:30
Jiang Jiang Jian
166c5a7d58 Merge branch 'bugfix/action_tx_sleep_fix_v43' into 'release/v4.3'
Fix collection of issues in offchanel action frame tx and scanning.(v4.3)

See merge request espressif/esp-idf!25155
2023-08-04 13:38:48 +08:00
xiongweichao
5ccda5f84b fix(bt/controller): Fix disconnection due to lmp messages not being processed by both sides
The master sent lmp_enc_mode_req, and the slave sent lmp_switch_req.
However, both sides failed to handle the LMP message, resulting in LMP timeout.
2023-08-04 11:21:49 +08:00
wuzhenghui
064f71dfa2 fix(esptool): fix potential text/rodata mapping overlap issue on I/DBUS shares mmu entry chips 2023-08-03 22:17:30 +08:00
jgujarathi
9121fff643 fix(esp_wifi) : Fix issues with action_frame tx and scan
1. Moves the location of null data frame TX to before channel switch during
   offchannel action frame TX req.
2. Reverts Send wake up and sleep null between scanning.
2023-08-02 18:24:55 +05:30
wuzhenghui
bc13d808e3 fix(lightsleep): fix access pu_cfg after sleep wake wakeup which is linked to flash 2023-08-01 16:39:37 +08:00
wuzhenghui
46dd957c11 fix(lightsleep): suspend cache before goto sleep to avoid cache load wrong data after spi io isolation 2023-08-01 10:39:49 +08:00
Frantisek Hrbata
d1c1ebc196 fix(test_submodules.py): don't rely on submodule init
Current version of the test is using "git-submodule foreach", which
requires submodules to be initialized. Non-initialized submodules are
ignored. Our CI is not performing submodule initialization, but instead
it only downloads the submodule content in tools/ci/ci_fetch_submodule.py
from cache and copies it into the submodule path.

Since we already know the submodule path from .gitconfig, we can use it
as argument to git-ls-tree and avoid calling git-submodule at all. This
allows to perform the test even if the submodules are not initialization
and also it makes the code simpler.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-07-29 10:37:08 +02:00
Peter Dragun
f168e78b12 tools(component-manager): bump version to avoid failures in dependency_check script 2023-07-28 15:15:56 +02:00
Jiang Jiang Jian
a1e7766940 Merge branch 'bugfix/backport_phy_lib_v4.3' into 'release/v4.3'
esp_wifi: update phy lib for esp32c3 and esp32s2(v4.3)

See merge request espressif/esp-idf!24929
2023-07-28 02:48:09 +08:00
alanmaxwell
bb95e4cad3 esp_wifi: update phy lib
1. Fix WiFi not working with Tsens on ESP32S2.
2. WiFi RX multimpath optimization.
3. BLE TX sideband optimization for C3.
4. Fix WiFi and BLE calibration conflict issue.
2023-07-28 01:37:26 +08:00
Jiang Jiang Jian
51fa6add03 Merge branch 'change/rewrite_all_low_to_any_low_when_not_esp32_4.3' into 'release/v4.3'
Change: rewrite EXT1 triggle mode all_low to any_low when not esp32(backport v4.3)

See merge request espressif/esp-idf!24990
2023-07-27 23:05:48 +08:00
Jiang Jiang Jian
f57d0fcc5e Merge branch 'bugfix/tempsensor_wifi_conflict_v4.3' into 'release/v4.3'
temperature_sensor: Fix issue that have conflict with phy / Fix phy pwdet and tsens power cannot be set twice issue (backport v4.3)

See merge request espressif/esp-idf!24968
2023-07-27 23:05:17 +08:00
Jiang Jiang Jian
03d75dbddb Merge branch 'bugfix/test_idf_tools_timeout_v4.3' into 'release/v4.3'
tools: bugfix build_docker timeout

See merge request espressif/esp-idf!24605
2023-07-27 23:04:50 +08:00
alanmaxwell
a405774eff fix(bt/ble): delete rom funcs for backport missing. 2023-07-27 23:03:39 +08:00
Marek Fiala
459e17c413 tools: bugfix build_docker timeout
- Modify Dockerfile to install tools fixed versions to pyenv
- pip was unable to resolve the dependencies
2023-07-27 09:52:26 +02:00
Jiang Jiang Jian
65a1cce3fa Merge branch 'bugfix/fix_wifi_espnow_coexist_API_doc_v4.3' into 'release/v4.3'
fix(esp_wifi): fix ret when setting channel at wifi not started

See merge request espressif/esp-idf!25011
2023-07-27 13:34:54 +08:00
Jiang Jiang Jian
08c212e30c Merge branch 'backport_v4.3' into 'release/v4.3'
fix(bt): Fix ble periodic advertising data length 0 error(backport v4.3)

See merge request espressif/esp-idf!25009
2023-07-27 13:26:36 +08:00
Fu Hanxi
e481a4affa tools: fix requirements.txt for python 3.4
old pip version solver doesn't handle the `requires_python` metadata
field. Doing this for the solver.
2023-07-26 17:06:30 +02:00
liuning
77223bfa9f fix(esp_wifi): fix ret when setting channel at wifi not started 2023-07-26 19:42:11 +08:00
zhanghaipeng
f28b457554 fix(bt): Fix bug with address resolution enabling during non-connected activities 2023-07-26 17:20:15 +08:00
zhanghaipeng
a949b43e53 docs(bt): Organize header files for esp32c3 and esp32s3 2023-07-26 17:19:54 +08:00
zhanghaipeng
48701401fe fix(bt): Fix ble periodic advertising data length 0 error
- Fixed issues about data length 0 when set ext adv data,ext scan rsp data and periodic adv data
2023-07-26 16:48:51 +08:00
Lou Tianhao
cd8946d42d docs(pm/sleep): rewrite_all_low_to_any_low_when_not_esp32 2023-07-26 11:54:53 +08:00
Jiang Jiang Jian
b0bdc8c8a0 Merge branch 'bugfix/fix_dhcp_server_address_pool_issue_for_4.3' into 'release/v4.3'
fix(dhcp server): Fix dhcp server address pool issue for 4.3

See merge request espressif/esp-idf!24992
2023-07-26 10:16:25 +08:00
Cao Sen Miao
60f8d164fa temperature_sensor: Apply new-shared interface in temperature sensor driver 2023-07-26 10:11:07 +08:00
xueyunfei
f70de1aeec fix(dhcp server): Fix dhcp server address pool issue 2023-07-25 20:31:04 +08:00
Jiang Jiang Jian
eaf90a425f Merge branch 'bugfix/fix_sta_receive_other_ap_csa_issue_v4.3' into 'release/v4.3'
fix(wifi): fix sta receive other ap csa issue(Backport v4.3)

See merge request espressif/esp-idf!24981
2023-07-25 20:29:04 +08:00
Lou Tianhao
b0d46efc66 Change: rewrite EXT1 triggle mode all_low to any_low when not esp32 2023-07-25 17:50:32 +08:00
muhaidong
8f6ab93cf4 fix(wifi): fix sta receive other ap csa issue 2023-07-25 11:22:11 +08:00
Jiang Jiang Jian
c6a75ac0cd Merge branch 'bugfix/fix_uart_tx_done_hardware_concurrency_v4.3' into 'release/v4.3'
uart: Fix TX side concurrency issues (v4.3)

See merge request espressif/esp-idf!22597
2023-07-25 10:43:44 +08:00
Jiang Jiang Jian
adc016c8e6 Merge branch 'bugfix/fix_gpio_driver_calloc_v4.3' into 'release/v4.3'
fix(gpio): fix potential crash when processing gpio isr (v4.3)

See merge request espressif/esp-idf!24904
2023-07-24 20:06:13 +08:00
Aditya Patwardhan
f0b5277a2c Merge branch 'ci/fix_failures_in_esp_http_client_example_v4.3' into 'release/v4.3'
CI: fix esp_http_client example failures in CI. Timeout was observed in the... (v4.3)

See merge request espressif/esp-idf!24967
2023-07-24 19:20:19 +08:00
Song Ruo Jing
6a80e30839 uart: Fix two TX concurrency issues
1. Concurrency might cause ESP_ERR_TIMEOUT when calling uart_wait_tx_done
2. Concurrency might cause RTS line being de-assreted during tx transmission for rs485 mode
2023-07-24 11:18:38 +00:00
Cao Sen Miao
35e88d5f8f temperature_sensor: Add new interface and reference counts so that phy and driver can use together 2023-07-24 16:55:05 +08:00
Jiang Jiang Jian
637f491ebd Merge branch 'bugfix/sae_and_nvs_fixes_v4.3' into 'release/v4.3'
Fix SAE and SAE related NVS issues (Backport v4.3)

See merge request espressif/esp-idf!24925
2023-07-24 16:02:30 +08:00
Harshit Malpani
bb9d410578 fix(ci): update HTTP client example tests runner assignment
HTTP client example tests now connect with locally hosted httpbin service
for more stable results across multiple runs
2023-07-24 11:47:42 +05:30
Harshit Malpani
b04cca4933 CI: fix esp_http_client example failures in CI. Timeout was observed in the logs while performing HTTP requests. Changing the endpoint when testing in CI 2023-07-24 11:41:19 +05:30
Jiang Jiang Jian
3ebd574487 Merge branch 'test/rtc_8m_d256_v4.3' into 'release/v4.3'
rtc: fixed multiple RTC issues (dangerous power parameters in sleep modes, support S2/C3 different sleep mode) (v4.3)

See merge request espressif/esp-idf!24910
2023-07-24 10:14:27 +08:00
Shyamal Khachane
113a2ceaf7 fix(wifi): Fix SAE and SAE related NVS issues
1. Discard commit frame received at confirmed state in SAE STA
2. Add nvs values for new config params
3. Bugfix NVS get values for sae pwe
4. Bugfix memory leak caused by assoc retry timer and assoc IE
2023-07-22 20:42:45 +05:30
Jiang Jiang Jian
f93805ab5e Merge branch 'bugfix/fix_ftm_dist_est_v4.3' into 'release/v4.3'
FTM calibration update and improvements in FTM (Backport v4.3)

See merge request espressif/esp-idf!24928
2023-07-21 19:21:42 +08:00
Michael (XIAO Xufeng)
e1647e5b02 Merge branch 'bugfix/fix_spi_flash_api_concurrency_issue_v4.3' into 'release/v4.3'
spi_flash: fix concurrency issue when concurrently calling esp_flash apis (v4.3)

See merge request espressif/esp-idf!24516
2023-07-21 16:53:33 +08:00
Aditya Patwardhan
470fbc347f Merge branch 'fix/esp_aes_return_values_v4.3' into 'release/v4.3'
fix(mbedtls): fix return values of esp-aes APIs (v4.3)

See merge request espressif/esp-idf!24808
2023-07-21 16:00:52 +08:00
morris
08aab06556 Merge branch 'bugfix/bod_glitch_reset_c6_v4.3' into 'release/v4.3'
bootloader: fix BOD and glitch reset on C6 and H2 (v4.3)

See merge request espressif/esp-idf!24937
2023-07-21 15:18:29 +08:00
Nachiket Kukade
afca18bbf0 fix(esp_wifi): Update FTM calibration and fix other FTM issues
Update wifi libs with below fixes -

1. Bugfixes in Initiator and Responder mode
2. Fix wrong RTT value in first FTM procedure without connection
3. Update FTM calibration values for ESP32S2, S3 and C3
4. Update distance estimation logic
5. Add some useful command parameters in FTM example
6. Fix bug when number of FTM measurement frames received is more
   than (number_of_brusts * FTMs per brust).

Co-authored-by: Sarvesh Bodakhe <sarvesh.bodakhe@espressif.com>
2023-07-21 10:34:19 +05:30
Ivan Grokhotkov
e6901634f8 examples: wifi/ftm: make global variables static
Prevents conflict between g_ftm_report_num_entries defined in the
example and in the Wi-Fi library.
2023-07-21 10:17:33 +05:30
Jiang Jiang Jian
f846908135 Merge branch 'bugfix/split_scan_tx_v43' into 'release/v4.3'
Fix collection of issues in sta roam and scan.(v4.3)

See merge request espressif/esp-idf!24885
2023-07-21 11:25:31 +08:00
Xiao Xufeng
a42e6db2fa bootloader: cleanup ana reset config code 2023-07-21 03:28:40 +08:00
Xiao Xufeng
3778687975 bootloader: fixed super watchdog not enabled issue on C3 2023-07-21 03:28:26 +08:00
Xiao Xufeng
77e0c5b553 bootloader: removed unavailable rtc features 2023-07-21 03:28:22 +08:00
Xiao Xufeng
9c75a0fff7 sleep_modes: rename rtc_sleep_enable_adc_tesn_monitor
Partially pick e8b5096f52
2023-07-21 02:50:06 +08:00
harshal.patil
a7f4bb8503 fix(mbedtls): Fixed the transmission of return values of the esp-aes APIs
- Earlier, some intermediate return values were not stored and returned,
thus incorrect return values used to get transmitted to the upper layer of APIs.

- Also, zeroised the output buffer in case of error condition.
2023-07-20 18:56:22 +05:30
Jiang Jiang Jian
7b9ab494e4 Merge branch 'bufix/Backport_some_lwip_bugs_for_4.3_0719' into 'release/v4.3'
lw-ip:backport some lwip bugs for 4.3

See merge request espressif/esp-idf!24909
2023-07-20 13:38:04 +08:00
jgujarathi
984aa78261 fix(esp_wifi) : Fix collection of issues in sta roam and scan.
1) Fix issue during split scan to allow for data tx.
2) Fix issue when parsing wpa_ie to set correct authmode when AP
supports both WPA_EAP and WPA_EAP_SHA256 authmode.
Closes https://github.com/espressif/esp-idf/issues/11202
3) Fix an occasional crash during sta roam.
4) Add home_channel_dwell_time to wifi_scan_config_t. This allows
configuration of the time spent between scanning consecutive
channels for tx.
5) Adds a obss scan timer disarm when a sta disconnects from an AP
2023-07-20 10:09:14 +05:30
hongshuqing
8e911f67b8 fix chip broken bug in monitor mode c3 s2 to v4.4 2023-07-20 03:11:18 +08:00
Xiao Xufeng
f326b7e7a6 ci: Remove fast template build for S3 2023-07-20 03:07:51 +08:00
Michael (XIAO Xufeng)
0fda49b059 test_rtc: add test_app to test power consumption 2023-07-20 03:07:51 +08:00
Michael (XIAO Xufeng)
2e31c8ed52 soc_caps: add SOC_PM_SUPPORT_RTC_PERIPH_PD
Partially pick 6336f8191e
2023-07-20 03:07:51 +08:00
Michael (XIAO Xufeng)
d00d96ae98 pm: putting dbias and pd_cur code into same function 2023-07-20 03:07:51 +08:00
xueyunfei
bb70fa6450 Backport some lwip bugs for 4.3
* Update submodule: git log --oneline 8290c3b8f2adaf82aa45ec992b87f16205f2689b..4f24c9baf9101634b7c690802f424b197b3bb685

Detailed description of the changes:
- lower the dhcp discover and request retry backoff time (esp-lwip@4f24c9ba)
- netdb:fixed bug for getaddrinfo returns null when IPV4 mapped address (esp-lwip@a4d70c7e)
2023-07-19 21:06:58 +08:00
xueyunfei
aa24bfc1df esp_phy:update comments in esp_phy_init.h 2023-07-19 20:31:06 +08:00
Song Ruo Jing
9e7882ba6d fix(gpio): fix potential crash when processing gpio isr
If CONFIG_SPIRAM_USE_MALLOC is enabled, and cache is disabled when GPIO ISR is triggered,
it would lead to Guru Meditation Error due to "Cache disabled but cached memory region accessed".

Closes https://github.com/espressif/esp-idf/issues/11876
2023-07-19 20:04:14 +08:00
Jiang Jiang Jian
258623acf4 Merge branch 'bugfix/fix_some_wifi_bugs_230719_v4.3' into 'release/v4.3'
fix(wifi): fix some wifi bugs 230719 (backport v4.3)

See merge request espressif/esp-idf!24882
2023-07-19 16:36:52 +08:00
zhangyanjiao
2ab431b060 fix(wifi): Add bugfixes and improvements
1. Update wifi security mode
2. Add check for memory allocation in tx buffers
3. Fix association refused temporarily comeback time set to zero issue
4. Vnd ie callback can be set to null
5. Check the second channel info when bandwidth is ht40
6. Fix softap qos null issue
7. Fix the mac bug that hardware parse beacon of ie length equal to zero
8. Remove waiting RX/TXING during hw mac deinit
2023-07-19 12:47:57 +08:00
Rotzbua
7358881dd4 doc: remove WEP as security mode
Signed-off-by: zhangyanjiao <zhangyanjiao@espressif.com>

Closes https://github.com/espressif/esp-idf/pull/10015
2023-07-19 11:34:31 +08:00
david zuhn
5bce0abff8 spelling correction in documentation
Signed-off-by: zhangyanjiao <zhangyanjiao@espressif.com>

Closes https://github.com/espressif/esp-idf/pull/9721
2023-07-19 11:34:08 +08:00
zhangyanjiao
05695f7cba feat(wifi): Add API to get RSSI info after station connects to AP
- Add esp_wifi_sta_get_rssi() function to retrieve RSSI info after station connects to AP
2023-07-19 11:32:33 +08:00
Jiang Jiang Jian
a29d767e4e Merge branch 'lwip/dhcp_fine_tmr_bug_fix_backport' into 'release/v4.3'
lwip/dhcp: Fixed ondemand fine timers leakage bug (v4.3)

See merge request espressif/esp-idf!24299
2023-07-19 10:03:12 +08:00
Jiang Jiang Jian
a93ccc188e Merge branch 'bugfix/fix_some_wifi_bugs_230717_v4.3' into 'release/v4.3'
fix(wifi): fix some wifi bugs 230717 (Backport v4.3)

See merge request espressif/esp-idf!24860
2023-07-18 21:15:40 +08:00
Abhik Roy
84d93a31dd lwip/dhcp: Fixed ondemand fine timers leakage bug.
Fixed ondemand fine timers bug, that allowed only one dhcp client to run at a time without issue.
2023-07-18 04:02:22 +00:00
muhaidong
82a3693a4e fix(wifi): missed annotate ld function from txop fix 2023-07-18 11:04:48 +08:00
Jiang Jiang Jian
e8f2f5eceb Merge branch 'bugfix/multiple_btm_rrm_task_v43' into 'release/v4.3'
Fix race conditions in btm task deletion(v4.3)

See merge request espressif/esp-idf!24832
2023-07-18 10:49:43 +08:00
Jiang Jiang Jian
e45f7900a0 Merge branch 'bugfix/fix_some_bluedroid_bugs_v4.3' into 'release/v4.3'
Fixed some bluedroid bugs( backport v4.3)

See merge request espressif/esp-idf!24842
2023-07-18 10:49:26 +08:00
Roland Dobai
b3a98e2971 Merge branch 'pkg_resources_deprecation-v4.3' into 'release/v4.3'
fix(tools/python_dep_check): replace deprecated pkg_resources with importlib (backport v4.3)

See merge request espressif/esp-idf!24821
2023-07-17 22:56:05 +08:00
muhaidong
b2aa2eb384 esp_wifi: fix some txop issues 2023-07-17 20:24:28 +08:00
muhaidong
e9d414dea7 esp_supplicant: When the softAP authentication mode is set to WPA2_PSK, WPA2_WPA3_PSK, or WPA3_PSK, the pairwise cipher will be overwritten with WIFI_CIPHER_TYPE_CCMP 2023-07-17 20:19:25 +08:00
muhaidong
520e67b5bb 1. fix set inactive time crash issue 2023-07-17 20:11:50 +08:00
chenjianhua
2d1e936062 fix(bt/bluedroid): Fix memory leak of gattc cache upon disconnection 2023-07-17 16:36:45 +08:00
chenjianhua
a88e680fc8 bluedroid: fixed gatt tcb free when disconnecting 2023-07-17 16:36:45 +08:00
chenjianhua
2a9ded6195 bluedroid: fixed compile warning when optimize for performance 2023-07-17 16:36:45 +08:00
Peter Dragun
bbdaa0b3e1 fix(tools/python_dep_check): replace deprecated pkg_resources with importlib 2023-07-17 10:18:28 +02:00
Jiang Jiang Jian
b4494e6a11 Merge branch 'bugfix/sae_crypto_optimization_esp32_v4.3' into 'release/v4.3'
esp_wifi: Optimize sae crypto operations for esp32 (v4.3)

See merge request espressif/esp-idf!24763
2023-07-17 14:58:49 +08:00
Jiang Jiang Jian
7839ba508a Merge branch 'bugfix/btm_scan_done_crash_v43' into 'release/v4.3'
fix(wpa_supplicant) : Fix occasional crash during btm roam.

See merge request espressif/esp-idf!24734
2023-07-17 14:40:29 +08:00
jgujarathi
8fa90c2234 fix(esp_wifi): Fix race conditions in btm task deletion.
Fix possible cases of multiple btm_rrm_t tasks due to possible race
condition during btm task deletion.
2023-07-17 10:27:04 +05:30
Jiang Jiang Jian
328e1519cb Merge branch 'backport_v4.3' into 'release/v4.3'
fix(bt): Fix the issue of not printing the Bluetooth MAC address for ESP32(backport v4.3)

See merge request espressif/esp-idf!24777
2023-07-17 10:34:44 +08:00
zhanghaipeng
a2c9469e6c fix(bt): Fix the issue of not printing the Bluetooth MAC address for ESP32
- Add a log statement to print the Bluetooth MAC address
2023-07-13 16:20:51 +08:00
zhanghaipeng
ad3414cbd6 fix(bt): Fix ble advertising data length 0 error
- Fixed an issue where the BLE advertisement length of 0 was causing an error
2023-07-13 16:20:50 +08:00
Kapil Gupta
b0e4888063 esp_wifi: Optimize sae crypto operations for esp32 2023-07-13 09:47:44 +05:30
Jiang Jiang Jian
73c4120d42 Merge branch 'bugfix/nvs_softap_pmk_v4.3' into 'release/v4.3'
esp_wifi: fix softap nvs <ssid,password,pmk> not matching issue(v4.3)

See merge request espressif/esp-idf!23819
2023-07-13 10:42:09 +08:00
chenjianxing
331a93608d esp_wifi: fix softap nvs <ssid,password,pmk> not matching issue 2023-07-12 20:23:02 +08:00
jgujarathi
9451630000 fix(wpa_supplicant) : Fix occasional crash during btm roam.
Fix crash due to premature deallocation of neighbour report elements
by scan_done. Post event to btm_rrm_t task to handle scan_done serially
rather than when btm_rrm_t task is processing btm request rx frame.
2023-07-12 11:02:20 +05:30
Jiang Jiang Jian
33d18182b7 Merge branch 'bugfix/increase_pm_dump_time_field_length_v4.3' into 'release/v4.3'
Power Management: increase pm_dump time field width (backport v4.3)

See merge request espressif/esp-idf!24447
2023-07-11 01:50:47 +08:00
wuzhenghui
f33fbdcd2d bugfix: increase pm_dump time field width
Closes https://github.com/espressif/esp-idf/issues/11704
2023-07-10 06:40:37 +00:00
Sachin Parekh
f8ae448767 esp_pm: Label each column of lock dump 2023-07-10 06:40:37 +00:00
Jiang Jiang Jian
9195898b15 Merge branch 'mesh/bugfix_fix_layer2_node_scan_issue_when_fixed_root_v4.3' into 'release/v4.3'
fix(wifi_mesh): layer2 node will scan all channels when fixed root leave (backport v4.3)

See merge request espressif/esp-idf!24633
2023-07-10 12:29:15 +08:00
Jiang Jiang Jian
7c0156359e Merge branch 'bugfix/update_esp_rom_layout_v4.3' into 'release/v4.3'
esp_rom: fix rom layout issues (backport v4.3)

See merge request espressif/esp-idf!24642
2023-07-08 14:55:08 +08:00
Jiang Guang Ming
be2aa49519 esp_rom: fix rom layout issues 2023-07-07 01:38:45 -07:00
Armando
fb231a26d9 spi_flash: rename spi_flash_os_func_app: spi_start, spi_end
spi_start -> s_acquire_spi_bus_lock
spi_end -> s_release_spi_bus_lock
2023-07-07 11:10:27 +08:00
Armando
0fe635f111 spi_flash: fix concurrency issue when calling esp_flash apis under xip_psram or auto_suspen 2023-07-07 11:10:27 +08:00
zhangyanjiao
3e36f7c5d5 fix(wifi_mesh): layer2 node will scan all channels when fixed root leave 2023-07-07 10:04:08 +08:00
Jiang Jiang Jian
af6498f582 Merge branch 'bugfix/fix_some_bt_controller_bug_v4.3' into 'release/v4.3'
component_bt:Fixed some bluetooth bugs(v4.3)

See merge request espressif/esp-idf!24581
2023-07-05 19:51:27 +08:00
xiongweichao
4630164d81 bt: Fixed some bluetooth bugs
1. Fixed LC_AFH_UPDATE_IND  has not benn processed causing memory exhaustion
2. Fixed no free elt in prog push
3. Fixed disconnect due to sniff with error Dsniff
4. Fixed the problem that the host continued to send ACL data to the controller after disconnection, which caused the connection to fail again
2023-07-04 15:39:42 +08:00
chenjianhua
f92bfe15f2 Update bt-lib for esp32
- Fixed memory leak when setting adv data
2023-07-04 15:39:35 +08:00
xiongweichao
0292dc50cf components/bt: Fix crash due to NULL point 2023-07-04 15:39:30 +08:00
Armando
63e24a9ff9 spiflash: fix not calling on_spi_acquired when CONFIG_SPI_FLASH_SHARE_SPI1_BUS issue 2023-06-30 15:58:09 +08:00
Mahavir Jain
97653257fd Merge branch 'protobuf-c/update_submodule_to_v4.3' into 'release/v4.3'
protobuf-c: Update submodule to v1.4.1 (v4.3)

See merge request espressif/esp-idf!24423
2023-06-29 16:18:05 +08:00
Jiang Jiang Jian
0814f6565a Merge branch 'bugfix/resume_ext_scan_pti_in_time_v4.3' into 'release/v4.3'
bt: fix the issue that BLE scan uses high priority incorrectly and causes Wi-Fi unable to work normally on ESP32-C3 and ESP32-S3(backport v4.3)

See merge request espressif/esp-idf!24407
2023-06-28 14:29:35 +08:00
harshal.patil
9733dced38 protobuf-c: Update submodule to v1.4.1 2023-06-27 12:04:56 +05:30
wangmengyang
5ebe45433f bt-coexist: fix the issue for BLE scan in using whitelist that scan PTI keeps high and not resumes after reception of ADV_EXT_IND but no AUX_ADV_IND followed on ESP32-C3 and ESP32-S3, which causes Wi-Fi unable to work normally 2023-06-26 15:35:24 +08:00
Jiang Jiang Jian
4c0206c156 Merge branch 'bugfix/hfp_packet_type_err_v4.3' into 'release/v4.3'
Revised (e)SCO configuration parameter sets (v4.3)

See merge request espressif/esp-idf!24355
2023-06-26 10:22:36 +08:00
Jiang Jiang Jian
3fddf4a761 Merge branch 'bugfix/alarm_not_free_when_a2dp_deinit_v4.3' into 'release/v4.3'
bugfix/Fixed the issue of alarm leak (v4.3)

See merge request espressif/esp-idf!24354
2023-06-26 10:21:57 +08:00
Krzysztof Budzynski
01447b3cbe Merge branch 'docs/fix_error_in_esp32-s2-devkitc-1_pin_layout_diagram_v4.3' into 'release/v4.3'
Docs/Fix error in esp32-s2-devkitc-1 pin layout diagram (v4.3)

See merge request espressif/esp-idf!24119
2023-06-25 19:42:53 +08:00
Aditya Patwardhan
bcec78f672 Merge branch 'contrib/github_pr_11402_v4.3' into 'release/v4.3'
esp_ds: ignore releasing mutex if not called from same task (GitHub PR) (v4.3)

See merge request espressif/esp-idf!24315
2023-06-23 14:18:02 +08:00
Island
d6615a631e Merge branch 'feature/expose_addr_resolv_out_stack_v4.3' into 'release/v4.3'
Nimble:Added change to expose addr resolution API outside stack(v4.3)

See merge request espressif/esp-idf!23903
2023-06-21 19:38:31 +08:00
Wang Ning
3f6156657b fix_error_in_esp32-s2-devkitc-1_pin_layout_diagram 2023-06-21 08:12:08 +00:00
Jin Cheng
988892e0d6 Fixed the issue of alarm leak in hf-ag 2023-06-21 15:36:09 +08:00
Jin Cheng
d817d66d5f Fixed the issue of alarm leak in A2DP 2023-06-21 15:35:59 +08:00
Jin Cheng
3a91557f4e Revised (e)SCO configuration parameter sets 2023-06-21 14:50:20 +08:00
Rahul Tank
c429ef9a97 Nimble:Added change to expose addr resolution API outside stack 2023-06-20 20:00:47 +05:30
Jiang Jiang Jian
9812efb236 Merge branch 'bugfix/fix_some_ble_bugs_v4.3' into 'release/v4.3'
Fixed some BLE bugs (backport v4.3)

See merge request espressif/esp-idf!24286
2023-06-20 19:24:07 +08:00
Jiang Jiang Jian
0619320ee6 Merge branch 'bugfix/install_keys_after_successful_4_of_4_tx_v4.3' into 'release/v4.3'
esp_wifi: Install keys after successful transmission of EAPOL 4/4 Message(backport v4.3)

See merge request espressif/esp-idf!23624
2023-06-20 16:43:27 +08:00
Christoph Baechler
0002b59fc6 esp_ds: ignore releasing mutex if not called from same task 2023-06-20 09:02:48 +05:30
Roland Dobai
9dfc9b6244 Merge branch 'feature/submodules_sbom_v4.3' into 'release/v4.3'
tools: add sbom information for submodules (v4.3)

See merge request espressif/esp-idf!24246
2023-06-19 21:51:46 +08:00
Shreyas Sheth
5e60fb4fd4 esp_wifi: Install keys after eapol and NVS store security values
1. Bugfix store authmode security in NVS
2. Install keys after successful transmission of EAPOL 4/4 Message
2023-06-18 01:25:58 +05:30
Jiang Jiang Jian
dae9bac87f Merge branch 'bugfix/fix_wps_with_sae_enabled_ap_v4.3' into 'release/v4.3'
esp_wifi: Fix WPS issue for WPA3+WPA2 mode(v4.3)

See merge request espressif/esp-idf!24157
2023-06-16 18:44:26 +08:00
chenjianhua
7c916516a8 Update bt-lib for esp32
1 Fixed disconnection delay on peripheral when slave latency is not zero
2 Fixed LLCP info init for central and peripheral
3 Fixed sent cmd status evt twice when process disconnect cmd
2023-06-16 18:03:12 +08:00
chenjianhua
ea39667b84 Fixed crash when controller initialization fails due to insufficient memory 2023-06-16 18:02:30 +08:00
chenjianhua
bff2748b35 Revert "bluedroid: report disconnect event after BLE link closed"
This reverts commit a7c1fd9f60.
2023-06-16 17:55:44 +08:00
chenjianhua
8aad580431 bluedroid: fixed default extended connection params 2023-06-16 17:55:21 +08:00
chenjianhua
304deb005d esp_hid: fixed ble hid battery level setting 2023-06-16 17:55:11 +08:00
Frantisek Hrbata
d4ab79259a tools: add sbom information for submodules
Conflicts:
- spiffs submodules version and hash changed to 0.2-221-gf5e26c4e9331
- protobuf-c submodule version and hash changed to v1.3.0
- ci files moved from tools/ci/config/ into .gitlab/ci/ in v4.4, so
  host-test.yml and rules.yml were changed accordingly in tools/ci/config/.
- added patterns-submodule to rules.yml, because they were also added in
  v4.4
- removed pytest dependency

This adds SBOM information for submodules, which are not managed
by Espressif. Meaning there is no fork for them in the espressif
namespace. Other submodules should add sbom.yml manifest file to
the root of their git repository.

The SBOM information for submodules is stored in the .gitmodules file.
Each SBOM related variable has the "sbom-" prefix and the following
variables may be used:

sbom-version:
   submodule version

sbom-cpe:
   CPE record if available in NVD. This will be used by the SBOM
   tool to check for possible submodule vulnerabilities. The
   version in the CPE can be replaced with the "{}" placeholder,
   which will be replaced by the "sbom-version" value from above.

sbom-supplier:
   Person or organization who is providing the submodule.
   It has to start with "Person:" or "Organization:" prefix
   as required by the SPDX-2.2 standard.

sbom-url:
   URL to the project if exists, e.g. github.

sbom-description:
   Project description.

sbom-hash:
   Submodule SHA as recorded in the git-tree. This field is used by
   CI to check that the submodule checkout hash and info in .gitmodules
   are in sync. IOW if submodule is updated and it has SBOM info in
   .gitmodules, the .gitmodules has to be updated too. The test is
   part of this commit. The checkout has of the submodule can be found
   by using "git submodule status".

Example for micro-ecc submodule
---8<---
[submodule "components/bootloader/subproject/components/micro-ecc/micro-ecc"]
	path = components/bootloader/subproject/components/micro-ecc/micro-ecc
	url = ../../kmackay/micro-ecc.git
	sbom-version = 1.0
	sbom-cpe = cpe:2.3:a:micro-ecc_project:micro-ecc:{}:*:*:*:*:*:*:*
	sbom-supplier = Person: Ken MacKay
	sbom-url = https://github.com/kmackay/micro-ecc
	sbom-description = A small and fast ECDH and ECDSA implementation for 8-bit, 32-bit, and 64-bit processors
	sbom-hash = d037ec89546fad14b5c4d5456c2e23a71e554966
---8<---

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-06-16 07:34:49 +02:00
Aditya Patwardhan
3897faa9c8 Merge branch 'bugfix/aes_dma_align_issue_v4.3' into 'release/v4.3'
aes: fix DMA descriptor calculation for the alignment case (v4.3)

See merge request espressif/esp-idf!24096
2023-06-14 16:57:18 +08:00
Kapil Gupta
04e21b1af4 esp_wifi: Fix WPS issue for WPA3+WPA2 mode 2023-06-09 18:13:01 +05:30
Roland Dobai
2c3cba7e9f Merge branch 'feature/extend_proj_desc_json_v4.3' into 'release/v4.3'
extend information in project_description.json (v4.3)

See merge request espressif/esp-idf!24130
2023-06-09 02:10:56 +08:00
Frantisek Hrbata
f1eef50947 tools: extend information in project_description.json
This extends information provided in the project_description.json file.
Newly added information can be used in the SBOM generating tool and
also to improve hints regarding the the component dependency issues.

Added fields

version:
   This adds versioning to the project_description.json file,
   so it's easy to identify if it contains the required information.

project_version:
   Can be used as a version for the resulting binary e.g. `hello_world.bin`.

idf_path:
   This one is probably not necessary, but it allows tools to run even without
   esp-idf environment exported(e.g. export.sh).

c_compiler:
   The `CMAKE_C_COMPILER` value with full path to the compiler binary. This can
   be used to get information about toolchain, which was used to build the project.

common_component_reqs:
   List of common components as presented in cmake's __COMPONENT_REQUIRES_COMMON
   and set in tools/cmake/build.cmake:__build_init().

build_component_info:
   Detailed information about components used during build. It's a
   dictionary with the component name as a key and each component has
   a dictionary with detailed information. Following is an example for
   the efuse component.

   "efuse": {
       "alias": "idf::efuse",
       "target": "___idf_efuse",
       "prefix": "idf",
       "dir": "/home/fhrbata/work/esp-idf/components/efuse",
       "type": "LIBRARY",
       "lib": "__idf_efuse",
       "reqs": [],
       "priv_reqs": [ "bootloader_support", "soc", "spi_flash" ],
       "managed_reqs": [],
       "managed_priv_reqs": [],
       "file": "/home/fhrbata/work/blink/build/esp-idf/efuse/libefuse.a",
       "sources": [ "/home/fhrbata/work/esp-idf/components/efuse/esp32s3/esp_efuse_table.c", ... ],
       "include_dirs": [ "include", "esp32s3/include" ]
   }

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-06-08 18:42:06 +02:00
Frantisek Hrbata
befb32b45b tools: fix make_json_list to return empty json list for empty cmake list
Currently make_json_list() returns '[ "" ]' for empty cmake list. Fix this
so empty json list is returned instead.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-06-08 18:42:06 +02:00
Mahavir Jain
18dbdbb643 aes: fix DMA descriptor calculation for the alignment case
The number of the DMA descriptors allocated for certain length (e.g.,
8176) were not sufficient (off by 1 error). This used to result in the
dynamic memory corruption as the region was modified beyond the
allocated range.

This change fixes the DMA descriptor calculation part and allocates
sufficient DMA descriptors based on the data length alignment considerations.

Test has also been added to cover the specific scenario in the CI.

Closes https://github.com/espressif/esp-idf/issues/11310
2023-06-07 09:22:10 +05:30
Jiang Jiang Jian
b13ddef25c Merge branch 'bugfix/close_phy_tsens_before_sleep_v4.3' into 'release/v4.3'
sleep: fix deepsleep current leakage caused by phy_tsens (backport v4.3)

See merge request espressif/esp-idf!23907
2023-06-06 11:52:12 +08:00
Jiang Jiang Jian
756fa45a06 Merge branch 'bugfix/fix_wakeup_failed_if_powerdown_flash_in_lightsleep_v4.3' into 'release/v4.3'
Power Management: fixed flash funcs called in sleep wakeup process (backport v4.3)

See merge request espressif/esp-idf!24006
2023-06-06 11:50:59 +08:00
Jiang Jiang Jian
8c01b63cbd Merge branch 'bugfix/dpp_retry_start_listening_issue_v4.3' into 'release/v4.3'
esp_dpp: Fix retry with esp_supp_dpp_start_listen after failure (v4.3)

See merge request espressif/esp-idf!23597
2023-06-02 09:56:59 +08:00
Jiang Jiang Jian
cac7fb93e4 Merge branch 'bugfix/hf_cind_ind_index_v4.3' into 'release/v4.3'
bt: Fixed the inconsistency between the indicator event received by the HF application layer and the actually received indicator(v4.3)

See merge request espressif/esp-idf!23563
2023-06-01 19:44:38 +08:00
Jiang Jiang Jian
eb56474d53 Merge branch 'bugfix/hfp_ag_idx_invalid_v4.3' into 'release/v4.3'
bt: Fixed out of bounds access due to variable length array(v4.3)

See merge request espressif/esp-idf!23668
2023-06-01 19:43:39 +08:00
Jiang Jiang Jian
fabd11b320 Merge branch 'bugfix/s3_compile_error' into 'release/v4.3'
bt: Fixed compilation errors for ESP32S3(v4.3)

See merge request espressif/esp-idf!23957
2023-06-01 19:42:30 +08:00
Jiang Jiang Jian
65c877a63e Merge branch 'contrib/github_pr_11215_v4.3' into 'release/v4.3'
improve thread safety in esp_timer (GitHub PR) (v4.3)

See merge request espressif/esp-idf!23542
2023-06-01 19:41:42 +08:00
Jiang Jiang Jian
08c7c13260 Merge branch 'bugfix/fix_blufi_compilation_issue_v4.3' into 'release/v4.3'
Blufi: Fix compilation issue for blufi over NimBLE(v4.3)

See merge request espressif/esp-idf!24022
2023-06-01 19:38:19 +08:00
Rahul Tank
6445a2cc54 Blufi: Fix compilation issue for blufi over NimBLE 2023-06-01 12:56:31 +05:30
wuzhenghui
327352cf53 bugfix: fix wakeup failed if powerdown flash in lightsleep 2023-05-31 19:11:23 +08:00
xiongweichao
674593177c bt: Fixed compilation errors for ESP32S3 2023-05-30 06:14:02 +00:00
Jens Gutermuth
af3486ecf9 improve thread safety in esp_timer
Inadequate locking in the esp_timer component allowed corruption
of the s_timers linked list:

1. timer_armed(timer) returns false
2. another task arms the timer and adds it to s_timers
3. the list is locked
4. the timer is inserted into s_timers again

The last step results in a loop in the s_timers list, which causes
an infinite loop when iterated. This change always locks the
list before checking if the timer is already armed avoiding
the data race.
2023-05-29 14:27:49 +08:00
wuzhenghui
2f74124170 bugfix: close phy_tsens before deepsleep 2023-05-25 11:53:32 +08:00
Jiang Jiang Jian
3a10cc9e4a Merge branch 'bugfix/fix_iphone_disconnects_immediately_after_connecting_when_BLE_wifi_coexist_v4.3' into 'release/v4.3'
Fix iPhone disconnects immediately after connecting when ble wifi coexist(backport v4.3)

See merge request espressif/esp-idf!23814
2023-05-23 18:34:44 +08:00
zhiweijian
9e2e3f8d19 Update libphy for ble 1M/2M switch and ble track on ESP32-C3 2023-05-23 11:10:34 +08:00
Jiang Jiang Jian
119c4c4b18 Merge branch 'bugfix/fix_some_ble_bug_v4.3' into 'release/v4.3'
Fixed some BLE bugs (backport v4.3)

See merge request espressif/esp-idf!23700
2023-05-22 11:56:54 +08:00
Zim Kalinowski
ceddc4ff04 Merge branch 'bugfix/sync-contribution-guide_v4.3' into 'release/v4.3'
docs: updated contribution agreement (v4.3)

See merge request espressif/esp-idf!23836
2023-05-20 04:48:36 +08:00
chenjianhua
87aaf07b0f Update bt lib for ESP32-C3 and ESP32-S3
- Fixed remote mic error during encryption procedure
- Fixed ble hopping selection for connection when disabled 5.0 feature
2023-05-19 15:58:42 +08:00
chenjianhua
bb1b696e69 bluedroid: fix ble ext adv rand addr setting for NRPA 2023-05-19 15:57:45 +08:00
chenjianhua
7893c5f479 bluedroid: fix ble adv data construct for device name 2023-05-19 15:57:38 +08:00
chenjianhua
e3594aca70 bluedroid: fix ble smp key distribution setting 2023-05-19 15:57:32 +08:00
chenjianhua
a7c1fd9f60 bluedroid: report disconnect event after BLE link closed 2023-05-19 15:57:25 +08:00
Zim Kalinowski
40d52d7978 docs: updated contribution agreement 2023-05-18 16:48:29 +02:00
Wang Meng Yang
471332039e Merge branch 'bugfix/fix_esp32_bugs_230511_v4.3' into 'release/v4.3'
Fixed some esp32 bugs(backport v4.3)

See merge request espressif/esp-idf!23705
2023-05-18 15:04:37 +08:00
Mahavir Jain
d532e2307e Merge branch 'bugfix/update_test_dl_esp_cert_v4.3' into 'release/v4.3'
tests: update Root certificate for the test endpoints (v4.3)

See merge request espressif/esp-idf!23800
2023-05-18 12:16:29 +08:00
Mahavir Jain
e0bea82931 tests: update Root certificate for the test endpoints
Use Root certificate (`DigiCert Global Root G2`) for the
`dl.espressif.com` and `espressif.com` test endpoints.

This fixes the test failure introduced due to renewal of
the intermediate certificate.
2023-05-17 15:29:06 +05:30
Zim Kalinowski
bf2e588972 Merge branch 'bugfix/i2c_timing_wrong_v4.3' into 'release/v4.3'
i2c: fix a bug in sda sample timing (backport v4.3)

See merge request espressif/esp-idf!23232
2023-05-17 14:49:04 +08:00
Marius Vikhammer
85c0fe4a7d Merge branch 'bugfix/psram_newlib_time_rom_v4.3' into 'release/v4.3'
rom: fix newlib time ROM functions being regardless of CONFIG_SPIRAM_CACHE_WORKAROUND (v4.3)

See merge request espressif/esp-idf!23388
2023-05-17 09:24:27 +08:00
zhiweijian
4853b91b18 Fixed blufi doc error 2023-05-11 20:21:21 +08:00
zhiweijian
0f0ea746a9 Fixed BLE disconnection failure on ESP32 2023-05-11 20:18:40 +08:00
zwj
cd4a4a6bb5 Fixed disconnection due to consecutive CRC errors in first 6 intervals 2023-05-11 20:18:31 +08:00
zwj
2098472085 Fixed no error report when own address type is rpa_random and no random address setting 2023-05-11 20:18:21 +08:00
zhiweijian
60c5d952db Fixed battery profile wrong condition 2023-05-11 20:18:12 +08:00
Marius Vikhammer
e3d109dd1d rom: fix newlib time ROM functions being regardless of CONFIG_SPIRAM_CACHE_WORKAROUND
On ESP32 ROM functions are not compatible with CONFIG_SPIRAM_CACHE_WORKAROUND.
This were handled correctly in cmake, but not in make.
2023-05-11 07:22:17 +00:00
xiongweichao
08e3ff3f77 bt: Deleted some redundant variables in HFP_AG 2023-05-10 10:28:38 +08:00
xiongweichao
a21f801eba bt: Fixed the problem of out-of-bounds access caused by the variable-length array introduced in 3268075231
Closes https://github.com/espressif/esp-idf/issues/11264
2023-05-10 10:28:34 +08:00
xiongweichao
979d63de4d bt: Fixed codec mode error in ESP_HF_WBS_RESPONSE_EVT 2023-05-10 10:28:29 +08:00
jasta
cf14eb4a17 esp_dpp: Fix retry with esp_supp_dpp_start_listen after failure
This fixes a subtle bug in which ESP_ERR_DPP_TX_FAILURE errors would
call esp_supp_dpp_stop_listen which sets the s_dpp_stop_listening flag
to true.  Subsequent attempts to restart listening with
esp_supp_dpp_start_listen then only attempt to listen once more for
500ms before reading the s_dpp_stop_listening flag again and giving up.

This contributes greatly to #10615, but the fix here is still largely
a work-around as it sometimes requires manually retrying a couple times
before it works.  Without this fix, any number of retries by
deinit/init again will seemingly not work as the retries for currently
unknown reasons.

Signed-off-by: Shreyas Sheth <shreyas.sheth@espressif.com>

Closes https://github.com/espressif/esp-idf/pull/10865
2023-05-05 14:21:32 +05:30
xiongweichao
d2ce8548cd bt: Fixed the inconsistency between the indicator event received by the HF application layer and the actually received indicator.
Closes https://github.com/espressif/esp-idf/issues/6486
2023-05-04 14:20:08 +08:00
Omar Chebib
b2c50986ee i2c: fix a bug in sda sample timing
* Closes https://github.com/espressif/esp-idf/issues/9777

This bug prevented SCL line to work properly after a NACK was received in master mode.
2023-05-04 04:16:12 +00:00
Zim Kalinowski
33b3db35d7 Merge branch 'doc/fix_pthread_create_example' into 'release/v4.3'
doc: fixed pthread_create call in example

See merge request espressif/esp-idf!23355
2023-04-24 14:54:30 +08:00
Jiang Jiang Jian
551de84c52 Merge branch 'bugfix/improve_scan_performance_when_scan_and_sync_coexist_v4.3' into 'release/v4.3'
Fixed some ESP32C3/S3 BLE bugs 23-04-22(backport v4.3)

See merge request espressif/esp-idf!23368
2023-04-24 11:09:39 +08:00
Jiang Jiang Jian
f3c5763f0e Merge branch 'bugfix/fix_some_ble_bug_v4.3' into 'release/v4.3'
Fixed some BLE bugs (backport v4.3)

See merge request espressif/esp-idf!23302
2023-04-24 10:46:48 +08:00
Jiang Jiang Jian
a42d0ef64f Merge branch 'bugfix/fix_duplicate_scan_cycle_refresh_not_accurate_v4.3' into 'release/v4.3'
Fixed duplicate scan refresh cycle is not accurate after restarting scan on ESP32 (backport v4.3)

See merge request espressif/esp-idf!23366
2023-04-24 10:35:12 +08:00
zhiweijian
0ca4644ad1 - improve scan performance when scan and sync coexist on ESP32-C3 and ESP32-S3
- Fixed non-connectable and non-scannable directed adv can't be scanned on ESP32-C3 and ESP32-S3
2023-04-23 22:00:14 +08:00
zhiweijian
96f9fac9c1 Disable controller 5.0 feature bits if host 5.0 feature is not enabled 2023-04-23 21:47:09 +08:00
zwj
f24ca9fdaf Fixed duplicate scan refresh cycle is not accurate after restarting scan on ESP32 2023-04-23 21:13:25 +08:00
Jakob Hasse
30f065a97b doc: fixed pthread_create call in example 2023-04-23 10:39:21 +08:00
Jiang Jiang Jian
a9586adb0b Merge branch 'bugfix/softap_beacon_process_v4.3' into 'release/v4.3'
esp_wifi: validate softAP interface when sending beacon and add sta_connected callback (Backport v4.3)

See merge request espressif/esp-idf!23264
2023-04-23 10:31:05 +08:00
Mahavir Jain
7b9accc482 Merge branch 'bugfix/block9_can_not_be_used_for_fe_v4.3' into 'release/v4.3'
efuse: Prevent burning XTS_AES and ECDSA keys into BLOCK9 (BLOCK_KEY5) (v4.3)

See merge request espressif/esp-idf!23293
2023-04-21 15:26:21 +08:00
chenjianhua
7c133db8b3 bluedroid: report status after clearing the BLE white list 2023-04-21 14:37:32 +08:00
chenjianhua
c186943097 bluedroid: fix GATTC cache address save 2023-04-21 14:37:31 +08:00
chenjianhua
8dbe4fec0d bluedroid: fix adv and scan state conflict 2023-04-21 14:37:31 +08:00
chenjianhua
31f6dab386 bluedroid: support get bluetooth device name 2023-04-21 14:37:31 +08:00
Zim Kalinowski
4571dd1d2f Merge branch 'contrib/github_pr_7754_v4.3' into 'release/v4.3'
Fix infinite recursion in FLAG_ATTR operator (GitHub PR) (backport v4.3)

See merge request espressif/esp-idf!23236
2023-04-20 19:34:38 +08:00
jgujarathi
f87afae48d wpa_supplicant : Prevent h2e config overwrite
Current esp_wifi_get_config doesn't return correct value of h2e config which will cause h2e config to be overwritten in Station connected handler.

Add one preventative condition to take care of this.
2023-04-20 15:29:19 +05:30
Sarvesh Bodakhe
37a2cce163 esp_wifi: fix some wifi bugs
1. Move wpa_supplicant WIFI_EVENT_STA_CONNECTED and WIFI_EVENT_STA_DISCONNECTED event handlers into callbacks
2. Validate softAP interface when sending beacon frame
2023-04-20 15:29:11 +05:30
KonstantinKondrashov
e920827199 esptool: Update esptool
Prevent burning XTS_AES and ECDSA keys into BLOCK9 (BLOCK_KEY5)
2023-04-20 14:16:21 +08:00
Mahavir Jain
719eb6375e docs: add a note regarding EFuse Block9 key purpose quirk for some chips 2023-04-20 14:16:21 +08:00
KonstantinKondrashov
e21b0cb6ed 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-20 14:16:21 +08:00
Jiang Jiang Jian
87234fdafc Merge branch 'feature/add_menuconfig_of_calibration_mode_v4.3' into 'release/v4.3'
esp_phy: add menuconfig of phy calibration mode and disable reduce PHY TX power when brownout reset(Backport v4.3)

See merge request espressif/esp-idf!23260
2023-04-19 15:26:37 +08:00
muhaidong
1c78db33ad esp_phy: add menuconfig of phy calibration mode and disable reduce PHY TX power when brownout reset 2023-04-18 20:06:01 +08:00
Jiang Jiang Jian
3ac5fbcf8b Merge branch 'bugfix/fix_systimer_stall_issue_in_lightsleep_v4.3' into 'release/v4.3'
esp_wifi: allow connectionless ps with mesh, fix failed to sleep after scan;...

See merge request espressif/esp-idf!23205
2023-04-17 19:41:06 +08:00
Otto Winter
381ac08f12 bugfix (esp_common): remove infinite recursion in FLAG_ATTR operator
Closes https://github.com/espressif/esp-idf/pull/7754

Signed-off-by: Jakob Hasse <jakob.hasse@espressif.com>
2023-04-17 18:37:15 +08:00
liuning
72253506e9 esp_wifi: allow connectionless ps with mesh, fix failed to sleep after scan; coex: fix esp32 wifi interrupted by ble act 2023-04-14 14:22:54 +08:00
Jiang Jiang Jian
650e722807 Merge branch 'bugfix/espnow_config_channel_v4.3' into 'release/v4.3'
esp_wifi: fix espnow example add peer fail when config channel(v4.3)

See merge request espressif/esp-idf!23180
2023-04-13 18:07:41 +08:00
chenjianxing
e490e9062c esp_wifi: fix espnow example add peer fail when config channel
Closes https://github.com/espressif/esp-idf/issues/9592
2023-04-13 10:54:28 +08:00
Jiang Jiang Jian
b8a3642270 Merge branch 'bugfix/add_get_coex_version_v4.3' into 'release/v4.3'
bt: added coex adapter operation to get version of coexist module to ESP32 Bluetooth Controller(v4.3)

See merge request espressif/esp-idf!23168
2023-04-13 10:09:11 +08:00
wangmengyang
8f0766c56e bt: added coex adapter operation to get version of coexist module to ESP32 Bluetooth Controller 2023-04-12 18:02:54 +08:00
Jiang Jiang Jian
0972f2cf58 Merge branch 'bugfix/bt_diable_enbale_crash_v4.3' into 'release/v4.3'
bt:Fixed esp32 controller bug (v4.3)

See merge request espressif/esp-idf!23152
2023-04-12 16:44:52 +08:00
Mahavir Jain
3591268d96 Merge branch 'feature/update_mbedtls_v2.28.3_v4.3' into 'release/v4.3'
mbedtls: Update to release v2.28.3 (v4.3)

See merge request espressif/esp-idf!23114
2023-04-12 16:30:36 +08:00
xiongweichao
665ae6a80d bt:Fixed esp32 controller bug
1. Fixed crash after controller disable and re-enable
2. Fixed the crash caused by processing the HCI_Read_Remote_Extented_Features command in the non-connected state
3. Fixed disconnection due to not handling lmp_unsniff_req in LC_WAIT_SNIFF_SUB_RSP state
4. Fixed crash caused by supervision timeout greater than sniff interval

Closes https://github.com/espressif/esp-idf/issues/11164
Closes https://github.com/espressif/esp-idf/issues/10835
2023-04-12 09:48:30 +08:00
harshal.patil
9e4055ef44 mbedtls: Update to release v2.28.3
- Release Notes: https://github.com/Mbed-TLS/mbedtls/releases/tag/v2.28.3
2023-04-11 09:26:32 +00:00
Jiang Jiang Jian
c65c587b1f Merge branch 'mesh/bugfix_fix_heap_corrupt_issue_v4.3' into 'release/v4.3'
esp_wifi: fix bugs in LR and mesh (backport v4.3)

See merge request espressif/esp-idf!23129
2023-04-11 12:02:11 +08:00
Jiang Jiang Jian
6a7c5598e0 Merge branch 'bugfix/delete_node_during_list_traverse_4.3' into 'release/v4.3'
bugfix: Fixed the crash of LoadProhibited caused by invalid operation on list node in handling hci_hardware_error event (v4.3)

See merge request espressif/esp-idf!23119
2023-04-11 11:37:20 +08:00
zhangyanjiao
d8bbf4347a Update the ESP-NOW frame length in docs 2023-04-10 16:51:34 +08:00
zhangyanjiao
179b316de8 wifi_mesh: update mesh doc 2023-04-10 16:50:54 +08:00
zhangyanjiao
996cdca72f esp_wifi:
1. wifi_mesh: fix the heap corrupt issue in MTXON task
2. Update tx rate when phymode change from LR to 11N
3. wifi_mesh: Fix several bugs on mesh network
2023-04-10 16:48:49 +08:00
Michael (XIAO Xufeng)
1b31873389 Merge branch 'bugfix/himem_map_range_block_v4.3' into 'release/v4.3'
himem: fixed incorrect out_ptr when range_offset is given non-zero. (v4.3)

See merge request espressif/esp-idf!23083
2023-04-10 10:35:09 +08:00
Jin Cheng
df161ee5fb fixed the crash of LoadProhibited caused by taht
the nodes are deleted during the traversal of the linked list
2023-04-08 11:31:06 +08:00
Xiao Xufeng
32c558cf17 himem: Fixed incorrect out_ptr when calling esp_himem_map range_offset non-zero
Closes: https://github.com/espressif/esp-idf/issues/5639
2023-04-06 02:05:09 +08:00
Jiang Jiang Jian
0369fe88c3 Merge branch 'bugfix/sta_sa_query_process_v4.3' into 'release/v4.3'
esp_wifi: Improve station SA query procedure handling and other bugfixes (Backport v4.3)

See merge request espressif/esp-idf!22905
2023-04-03 17:37:33 +08:00
Jiang Jiang Jian
4675e38ce2 Merge branch 'bugfix/fix_sc_send_failure_and_exit_issue_v4.3' into 'release/v4.3'
smartconfig: fix the issue of sending failure and exit(Backport v4.3)

See merge request espressif/esp-idf!23024
2023-04-01 12:17:52 +08:00
Sarvesh Bodakhe
2cf98db9a8 esp_wifi: Improve station SA query procedure handling and other bugfixes
1. Disable SA query timers when station disconnect and other SA query related improvements
2. Send appropriate reason code in 4 way handshake failure
3. Send deauth while going from assoc state to init, if reason is assoc timeout
2023-03-31 17:46:03 +05:30
Jiang Jiang Jian
4ef3907183 Merge branch 'feature/gatt_server_improvements_v4.3' into 'release/v4.3'
NimBLE: Added custom GATT Server functionality and encryption (v4.3)

See merge request espressif/esp-idf!22742
2023-03-31 18:07:07 +08:00
Jiang Jiang Jian
dd8f93ee95 Merge branch 'doc/update_doc_of_esp_bt_gap_set_cod_v4.3' into 'release/v4.3'
bt: Optimized the document for GAP API: esp_bt_gap_set_cod (v4.3)

See merge request espressif/esp-idf!22996
2023-03-31 18:06:05 +08:00
Jiang Jiang Jian
54bce0c948 Merge branch 'bugfix/fix_chm_of_ext_adv_params_v43' into 'release/v4.3'
Bluedroid: fix channel map of ext adv params check (backport v4.3)

See merge request espressif/esp-idf!22690
2023-03-31 18:05:57 +08:00
muhaidong
00d569a1b2 smartconfig: fix the issue of sending failure and exit 2023-03-31 17:28:08 +08:00
Jiang Jiang Jian
40ed293404 Merge branch 'bugfix/tx_desc_fragment_v4.3' into 'release/v4.3'
esp_wifi: fix potential issue when tx fragment pkt(v4.3)

See merge request espressif/esp-idf!22962
2023-03-31 14:11:07 +08:00
Jiang Jiang Jian
b1ececef12 Merge branch 'bugfix/fix_hw_ralunderrun_assert_v4.3' into 'release/v4.3'
Fixed BLE HW RAL_UNDERRUN asser and backport some bug fix 23-03-30 (back port v4.3)

See merge request espressif/esp-idf!23011
2023-03-31 14:03:11 +08:00
Sumeet Singh
5042e38c42 NimBLE: Added custom GATT Server functionality and encryption (v4.3) 2023-03-31 05:55:58 +00:00
chenjianhua
e82ebbe772 Bluedroid: fix channel map of ext adv params check 2023-03-31 05:55:24 +00:00
Jiang Jiang Jian
9502bccfc4 Merge branch 'bugfix/improve_tx_robust_v4.3' into 'release/v4.3'
esp_wifi: fix c3 rate control issue to improve tx robust(v4.3)

See merge request espressif/esp-idf!23010
2023-03-31 13:52:29 +08:00
Jiang Jiang Jian
5a160d20b5 Merge branch 'bugfix/add_unregister_wpa3_cb_v4.3' into 'release/v4.3'
wpa_supplicant : Fix issues encountered in WFA testing (v4.3)

See merge request espressif/esp-idf!22893
2023-03-31 12:27:48 +08:00
zwj
e1a1e70720 - Support ESP32C3 and ESP32S3 new BLE lib
- Disable controller 5.0 feature bits if host 5.0 feature is not enabled
- Fixed extend ADV parameters check for ADV_DIRECT_HI
- Fixed HW RAL_UNDERRUN assert
2023-03-30 22:00:02 +08:00
chenjianxing
54b61a77a2 esp_wifi: fix c3 rate control issue to improve tx robust 2023-03-30 21:52:06 +08:00
jgujarathi
cf3cf0470a wpa_supplicant : Add deinitialization of Enterprise config_methods.
Add deinitialization of config_methods as it prevents correct reinitialization
of sta in eap_peer_config_init() during reassoc.
2023-03-30 13:35:36 +00:00
jgujarathi
a09946e3c3 wpa_supplicant : Add support for unregistering wifi wpa3 callbacks.
Unregister wifi callbacks allows for disabling support for wpa3 functions when not required.
2023-03-30 13:35:36 +00:00
Jiang Jiang Jian
3ce1d93958 Merge branch 'test/add_spi_slave_freq_test_v4.3' into 'release/v4.3'
spi_slave: fix io re-config issue (v4.3)

See merge request espressif/esp-idf!22594
2023-03-30 21:34:25 +08:00
Jiang Jiang Jian
49e55d0962 Merge branch 'bufix/Backport_some_lwip_bugs_for_4.3_0330' into 'release/v4.3'
bugfix/Backport_some_lwip_bugs_for_4.3_0330

See merge request espressif/esp-idf!22997
2023-03-30 21:33:59 +08:00
Jiang Jiang Jian
f01a1f5b6b Merge branch 'bugfix/hfp_ag_cannot_init_conn_v4.3' into 'release/v4.3'
bt: Fixed the index out of bounds of hfp_ag BTC control block (v4.3)

See merge request espressif/esp-idf!22874
2023-03-30 21:33:33 +08:00
zwj
3ef7e529b4 If it is not esp32 chips, hide the configuration item: BT_BLE_RPA_SUPPORTED 2023-03-30 19:28:38 +08:00
zwj
5e39c2316d remove SOC_BLE_UPDATE_OWN_RPA 2023-03-30 19:07:15 +08:00
zhiweijian
fbdbb5af62 set BT_CTRL_BLE_MAX_ACT default value to 6 2023-03-30 19:00:41 +08:00
zhiweijian
449efd1871 Fixed ATT Ignore wrong response error 2023-03-30 19:00:19 +08:00
zhiweijian
29ddc66cc0 Fixed vulnerability attacks that could cause heap overflow in fragmented Blufi packet processing 2023-03-30 18:43:01 +08:00
Jiang Jiang Jian
e7f3498419 Merge branch 'bugfix/close_rf_in_deep_sleep_backport_v4.3' into 'release/v4.3'
deep sleep: further optimize sleep current if RF is enabled (backport v4.3)

See merge request espressif/esp-idf!22736
2023-03-30 17:36:59 +08:00
Jiang Jiang Jian
3d25318fb0 Merge branch 'bugfix/wifi_enterprise_example_typo_v4.3' into 'release/v4.3'
esp_wifi: fix typo in wifi_enterprise example README (Backport v4.3)

See merge request espressif/esp-idf!22652
2023-03-30 17:36:42 +08:00
Jin Cheng
879038d09f Fixed the index out of bounds of hfp_ag BTC control block 2023-03-30 07:42:45 +00:00
xueyunfei
558b2b7151 lwip: solve some routers do not forward multicast packet issue 2023-03-30 14:42:05 +08:00
xueyunfei
c4ea0feab8 tcp_in/ooseq: Fix incorrect segment trim when FIN moved
* Update submodule: git log --oneline a7abf28e02282b32479f4bbaf2d90f09d2a60f4c..6bb132e3797d5449a923804c75c57d458920f8ac

Detailed description of the changes:
  - tcp_in/ooseq: Fix incorrect segment trim when FIN moved (esp-lwip@6bb132e3)
  - api_msg: fix tcp_abort thread safety (esp-lwip@53a6e019)
2023-03-30 14:42:05 +08:00
xueyunfei
22bf59fd48 Fixed bug for dhcp server support CIDR
Closes https://github.com/espressif/esp-idf/issues/10024

Closes https://github.com/espressif/esp-idf/issues/10559
2023-03-30 14:41:55 +08:00
Jin Cheng
9c26fc689d Optimized the document for GAP API:
`esp_bt_gap_set_cod`
2023-03-30 14:21:28 +08:00
Sarvesh Bodakhe
5770c19f8e esp_wifi: fix typo in wifi_enterprise example README
Closes https://github.com/espressif/esp-idf/issues/10042
2023-03-30 04:00:07 +00:00
wuzhenghui
ad27bd8aa0 deep sleep: close rf to optimize sleep current 2023-03-30 03:15:45 +00:00
wuzhenghui
65cc93d7d0 Revert "deep sleep: optimize sleep current in wifi softap mode"
This reverts commit f684bd10f5.
2023-03-30 03:15:45 +00:00
Wang Meng Yang
46e07795af Merge branch 'bugfix/avrcp_psth_cmd_rsp_v4.3' into 'release/v4.3'
bt:Added a parameter to tell the user the result of the pass through command implementation(v4.3)

See merge request espressif/esp-idf!22930
2023-03-30 10:37:31 +08:00
xiongweichao
b201f9dac6 bt:Added a parameter to tell the user the result of the pass through command implementation 2023-03-29 10:57:59 +00:00
chenjianxing
a24ae24347 esp_wifi: fix potential issue when tx fragment pkt. 2023-03-29 11:03:34 +08:00
Ivan Grokhotkov
3ab1ccc304 Merge branch 'fix/tmp_disable_test_autocomplete_v4.3' into 'release/v4.3'
CI: Temporarily allow failures for test_autocomplete

See merge request espressif/esp-idf!22928
2023-03-27 16:57:45 +08:00
Ivan Grokhotkov
62e9500573 Merge branch 'update/version_4_3_5' into release/v4.3
Update version to 4.3.5

See merge request !22876
2023-03-27 10:55:46 +02:00
Roland Dobai
4aa921a836 CI: Temporarily allow failures for test_autocomplete 2023-03-24 15:24:31 +01:00
Ivan Grokhotkov
6d04316cbe versions: Update version to 4.3.5 2023-03-22 09:49:23 +01:00
Zim Kalinowski
9760e25325 Merge branch 'bugfix/spram_and_virt_efuse_can_work_v4.3' into 'release/v4.3'
esp_psram: Use efuse_ll instead of efuse API (v4.3)

See merge request espressif/esp-idf!22643
2023-03-10 14:51:57 +08:00
KonstantinKondrashov
ff0a0951ef esp_psram: Use efuse_ll instead of efuse API
When the virt efuse mode is on and psram is on as well
then efuse buffer is not filled by efuses (it is filled by 0).
So the psram init func gets wrong pkg_ver = 0.

Closes https://github.com/espressif/esp-idf/issues/10925
Close IDFGH-9576
2023-03-08 01:47:46 +08:00
Zim Kalinowski
3cfdcdbdf9 Merge branch 'refactor/nvs_allocatable_objects_v4.3' into 'release/v4.3'
refactor(nvs): custom allocator for all objects allocated in NVS (v4.3)

See merge request espressif/esp-idf!21794
2023-03-07 19:19:09 +08:00
Michael (XIAO Xufeng)
6b323359ce Merge branch 'feature/apply_new_version_logic_v4.3' into 'release/v4.3'
all: Apply new version logic (major * 100 + minor) (v4.3)

See merge request espressif/esp-idf!22482
2023-03-07 11:25:42 +08:00
KonstantinKondrashov
05b8d8d698 bootloader: Do not check the max_chip_rev_full 2023-03-06 22:28:00 +08:00
Marius Vikhammer
05be2de500 Merge branch 'bugfix/fix-invalid-task-exit-critical_v4.3' into 'release/v4.3'
fixed invalid taskEXIT_CRITICAL

See merge request espressif/esp-idf!22614
2023-03-06 19:55:37 +08:00
morris
418d47a09b Merge branch 'bugfix/adc2_legacy_oneshot_clk_gating_issue_v4.3' into 'release/v4.3'
adc: fix legacy oneshot driver clock gating issue on c3 (v4.3)

See merge request espressif/esp-idf!22610
2023-03-06 18:37:18 +08:00
Jakob Hasse
1a3c6f0f19 refactor(nvs): custom allocator for all objects allocated in NVS 2023-03-06 18:26:18 +08:00
Marius Vikhammer
4cba3b68e8 Merge branch 'refactor/move_rom_test_to_fpga_only_v4.3' into 'release/v4.3'
esp_rom: miniz test only on FPGA  (backport 4.3)

See merge request espressif/esp-idf!22603
2023-03-06 14:18:44 +08:00
Zim Kalinowski
0a7159afad fixed invalid taskEXIT_CRITICAL 2023-03-06 05:00:30 +00:00
Armando
868c68bf89 adc: fix legacy oneshot driver clock gating issue on c3 2023-03-06 10:50:36 +08:00
KonstantinKondrashov
ab87a1012f version: Fix missed version checks 2023-03-04 04:48:24 +08:00
Xiao Xufeng
f368737a26 test: fixed test_build_system test failure due to Kconfig change 2023-03-04 04:48:24 +08:00
KonstantinKondrashov
017aa5acd6 kconfigs: Fix config issues raised by gen_kconfig_doc.py 2023-03-03 21:34:10 +08:00
Jakob Hasse
ffee70c883 refactor(esp_rom): miniz test only on FPGA now 2023-03-03 18:23:27 +08:00
wanlei
271c383210 spi_slave: fix io re-config issue 2023-03-03 17:36:04 +08:00
Jiang Jiang Jian
d8a21db37a Merge branch 'bugfix/twai_listen_only_errata_v4.3' into 'release/v4.3'
twai: Add errata workaround for listen only mode (v4.3)

See merge request espressif/esp-idf!22516
2023-03-03 14:03:26 +08:00
Jiang Jiang Jian
8c01e56ced Merge branch 'bugfix/optimize_protocol_socket_cases_4.3' into 'release/v4.3'
Bugfix: optimize protocol socket cases 4.3

See merge request espressif/esp-idf!22529
2023-03-03 14:02:51 +08:00
KonstantinKondrashov
57bd6979a4 esptool: Adds support major&minor chip versions + min&max chip revision options 2023-03-02 19:52:17 +08:00
KonstantinKondrashov
8095ee4dd2 app: Updates the chip version format (vX.Y) 2023-03-02 19:52:17 +08:00
KonstantinKondrashov
63a755e8b2 bootloader_support: Fix iram_loader_seg overflow for ESP32-S2 when -O0 2023-03-02 19:52:17 +08:00
KonstantinKondrashov
79659a0410 chip_version: Updates for Make build system 2023-03-02 19:52:17 +08:00
Chen Yudong
dee43d284e example: fix got ip error in protocol tests 2023-03-02 11:33:07 +00:00
Chen Yudong
db940f30bc CI: optimize example protocol test cases 2023-03-02 11:33:07 +00:00
KonstantinKondrashov
e88f235326 all: Apply new version logic (major * 100 + minor) 2023-03-02 03:21:34 +00:00
Jiang Jiang Jian
2b04fa8059 Merge branch 'bugfix/fix_sta_auth_fail_but_softap_shows_it_connected_issue_v4.3' into 'release/v4.3'
esp_wifi: fix sta auth failed but softap shows it connected issue(Backport v4.3)

See merge request espressif/esp-idf!22512
2023-03-01 15:45:41 +08:00
Jiang Jiang Jian
2e1c1a3292 Merge branch 'fix/gdbgui_v4.3' into 'release/v4.3'
Tools: gdbgui is not supported on Python 3.11 (v4.3)

See merge request espressif/esp-idf!22548
2023-03-01 10:47:47 +08:00
Jiang Jiang Jian
dfc8c67ec0 Merge branch 'bugfix/fix_some_ble_bug_v4.3' into 'release/v4.3'
Fixed some BLE bugs (backport v4.3)

See merge request espressif/esp-idf!22365
2023-03-01 10:46:00 +08:00
Roland Dobai
f9e5272727 Tools: gdbgui is not supported on Python 3.11
Closes https://github.com/espressif/esp-idf/issues/10116
2023-02-28 16:04:16 +01:00
muhaidong
f28a7853d3 esp_wifi: fix sta failed but softap shows it connected issue 2023-02-28 09:12:02 +00:00
chenjianhua
1e126817e6 examples: fix ble address type of adv and scan params 2023-02-28 09:11:40 +00:00
chenjianhua
156f40c976 bluedroid: support ble privacy by controller 2023-02-28 09:11:40 +00:00
chenjianhua
8790931bab bluedroid: add params in GATT connect event 2023-02-28 09:11:40 +00:00
chenjianhua
25394b6ac4 update bt-lib for ESP32
fix ble disconnect due to channel map update instant passed
2023-02-28 09:11:40 +00:00
Jiang Jiang Jian
d4253e703f Merge branch 'fix/heap-iram-to-flash-call' into 'release/v4.3'
heap: Fix call to substract_poison_overhead() in IRAM function

See merge request espressif/esp-idf!22525
2023-02-28 17:10:57 +08:00
Guillaume Souchere
7e6f20218b heap: Fix call to substract_poison_overhead() in IRAM function
When release sdkconfig is set, substract_poison_overhead() is not inlined
and called from IRAM in multi_heap_get_allocated_size(). By wlways inlining
substract_poison_overhead(), we assure that this problem will not happen.
2023-02-27 06:57:36 +01:00
Jiang Jiang Jian
e214989c58 Merge branch 'docs/fix_errors_in_esp32-c3-devkitm-1_pin_list_v4.3' into 'release/v4.3'
Docs/Fix Errors in ESP32-C3-DevKitM-1 Pin List (v4.3)

See merge request espressif/esp-idf!22496
2023-02-26 15:53:02 +08:00
Jiang Jiang Jian
ba4b47d24e Merge branch 'bugfix/secure_boot_v2_part_size_check_make_build' into 'release/v4.3'
partition_table: update make build for new "--secure [v1/v2]" argument

See merge request espressif/esp-idf!22437
2023-02-26 15:52:11 +08:00
Jiang Jiang Jian
1f739d7185 Merge branch 'bugfix/blufi_notify_v4.3' into 'release/v4.3'
BluFi : Fixed hdr getting free twice (v4.3)

See merge request espressif/esp-idf!22450
2023-02-26 15:51:54 +08:00
Jiang Jiang Jian
690b971f99 Merge branch 'feature/tlsf-dynamic-control-size_v4.3' into 'release/v4.3'
heap: Update tlsf to use dynamic metadata size and lower RAM usage of heap component (backport v4.3)

See merge request espressif/esp-idf!21783
2023-02-26 15:51:45 +08:00
Jiang Jiang Jian
043958e39f Merge branch 'bugfix/fix_gpio_wakeup_related_issues_in_ssc_sleep_test_backport_v4.3' into 'release/v4.3'
sleep: fix gpio wakeup related issues(backport v4.3)

See merge request espressif/esp-idf!22334
2023-02-26 15:51:29 +08:00
Jiang Jiang Jian
6f5e6b3841 Merge branch 'feature/add_bootloader_sector_pad_option_v4.3' into 'release/v4.3'
esptool_py: Added a --pad-to-size flag to align the bootloader image (v4.3)

See merge request espressif/esp-idf!22328
2023-02-26 15:51:09 +08:00
Jiang Jiang Jian
24aa00d99d Merge branch 'fix/heap-get-allocated-size_v4.3' into 'release/v4.3'
heap: Fix erroneous value returned by heap_caps_get_allocated_size() when poisoning is enabled (backport v4.3)

See merge request espressif/esp-idf!22190
2023-02-26 15:50:54 +08:00
Jiang Jiang Jian
3a4755e547 Merge branch 'bugfix/build_err_with_ssr_enabled_v4.3' into 'release/v4.3'
bt: Fixed build errors when sniff subrating is enabled (v4.3)

See merge request espressif/esp-idf!22352
2023-02-26 15:50:11 +08:00
Jiang Jiang Jian
fcf33944cd Merge branch 'bugfix/clear_pmk_cache_for_missing_reason_codes_v4.3' into 'release/v4.3'
Fix missing disconnected callback (Backport v4.3)

See merge request espressif/esp-idf!22518
2023-02-26 15:49:59 +08:00
Shyamal Khachane
179fc63526 esp_wifi: Fix missing disconnected callback 2023-02-24 18:44:28 +05:30
Darian Leung
1f6d7fa334 twai: Add errata workaround for listen only mode
This commit adds a workaround for the TWAI listen only mode errata which is
present on the ESP32, ESP32-S2, ESP32-S3, and ESP32-C3. twai_get_status_info()
has also been updated to account for the fact that TEC/REC are frozen in
listen only mode.

Errata Description:

When the TWAI controller is put into listen only mode, it should not influence
the TWAI bus in any way (i.e., should never send a dominant bit). However,
on the targets listed above, the TWAI controller will send dominant bits in an
error frame (i.e., active error frame), even if the controller is set to listen
only mode.

Workaround:

We can force the TWAI controller into the error passive state on startup (by
setting the REC to >= 128). Since the TEC/REC are frozen in listen only mode,
the TWAI controller will remain error passive and only send recessive bits
(i.e., passive error frames), thus will not influence the TWAI bus.

Closes https://github.com/espressif/esp-idf/issues/9157
2023-02-24 20:40:33 +08:00
Wang Ning
470b7e0ad0 docs/fix_errors_in_esp32-c3-devkitm-1_pin_list 2023-02-23 15:19:27 +08:00
Guillaume Souchere
a82cf0b00c heap: Fix erroneous value returned by heap_caps_get_allocated_size() when poisoning is enabled
When light (or comprehensive) poisoning is enabled, the size requested by the user for allocation
is extended by a few bytes to store the canary header and footer. heap_caps_get_allocated_size() should
return the original size asked by the user (without the additional canary bytes).

test_malloc.c extended with a new test assuring that  heap_caps_get_allocated_size() returns the proper size
regardless of the degree of poisoning.
2023-02-22 10:45:00 +00:00
isha.pardikar@espressif.com
9c0ad412ed BluFi : Fixed hdr getting free twice
Closes IDFGH-9378
2023-02-21 11:47:39 +05:30
Mahavir Jain
62e58ba624 partition_table: fix make build for new "--secure [v1/v2]" argument 2023-02-20 17:05:35 +05:30
Guillaume Souchere
73fca2c851 esp_system: fix placement of __stack_chk_fail from flash to RAM
When stack check is enabled, certain functions (sometimes placed in RAM)
are being decorated with stack guards and a call to __stask_chk_fail() in
case ofr stack corruption. For this reason, __stack_chk_fail() must be
placed in RAM too.

Add stack check config in heap tests on all targets to find eventual flash to RAM
calls due to stack checks when running callgraph_check.py
2023-02-16 08:48:00 +00:00
Guillaume Souchere
dbc4572814 heap: fix linker issues and remove spi flash dependencies 2023-02-16 08:48:00 +00:00
Guillaume Souchere
9b51759e8f feat: remove tlsf_fls and tlsf_ffs from linker as they are inlined. 2023-02-16 08:48:00 +00:00
Guillaume Souchere
f5e3585a9c tools: update list of references to not include symbold used by __assert_func calls
On xtensa architecture, the call to __assert_func uses a reference to __func__ that can
sometimes be placed in flash. Since the __asert_func can be called from functions in IRAM
the check_callgraph script can report an error when checking for invalid calls from IRAM
to flash sections. However, the __asert_func prevents this scenario at runtime so the
check_callgraph script reports a 'flas positive' situation. For this reasson, all references
to __func__$x found prior to a call to __assert_func are droped in the parsing of the rtl files.
2023-02-16 08:48:00 +00:00
Guillaume Souchere
598e77e287 heap: add check for usage of flash content from iram
this commits:
- adds build-time test to check that no call to flash regions are done from IRAM functions

- resolves problems related to IRAM function using content in flash memory

- update heap_caps_alloc_failed to use a default function name in DRAM
  when necessary instead of creating a function name variable in DRAM for
  each call of heap_caps_alloc_failed. This allows to save some extra bytes
  in RAM.
2023-02-16 08:48:00 +00:00
Guillaume Souchere
5f735a22ec heap: add documentation about the function placement in IRAM and its usage in ISR
This commits adds a internal.md file in the heap directory to clarify the idea behind
which functions is placed in IRAM or in flash.

A section in mem_alloc.rst documentation is added to specify which functions from the
heap component API can be used in interrupt handlers.
2023-02-16 08:48:00 +00:00
Guillaume Souchere
8700bdc156 heap: add selective placement of function in IRAM
This commit aims to place in the IRAM section only the functions that
are relevent for performance instead of placing the entire content of
multi_heap.c, mullti_heap_poisoning.c and tlsf.c in the IRAM.
2023-02-16 08:48:00 +00:00
Guillaume Souchere
7ce0620d32 heap: Update host tests after incorporation of the new TLSF implementation 2023-02-16 08:48:00 +00:00
Guillaume Souchere
48b0000e22 heap: update the calculation of fl index max and use bitfield in control_t
The calculation of fl index max is changed to always be the smallest
number that includes the size of the registered memory.

The control_construct() function now checks for minimum size as the control structure
parameters are calculated.

There is no longer a minimum configuration for fl index max so the tlsf_config
enum is striped down to remove unecessary compile time values.

the tlsf_size() function will fail if no tlsf pointer is passed as parameter since there
is no way to calculate a default tlsf size anymore.

bitfields are now used in control_t when possible which reduces the size of the structure
from 56 bytes to 36 bytes.
2023-02-16 08:48:00 +00:00
Guillaume Souchere
9f6b549dea Revert "tlsf control's structure should remain opaque"
This reverts commit 7010314c4a.
2023-02-16 08:48:00 +00:00
Philippe
6a3f3e9421 add host test with multiple heap size 2023-02-16 08:48:00 +00:00
Philippe
30bd908f97 clarify parameter usage in tslf_create 2023-02-16 08:48:00 +00:00
Philippe
a7b9e7a8bd tlsf control's structure should remain opaque 2023-02-16 08:48:00 +00:00
Philippe
e45d350b97 dynamic control block per heap 2023-02-16 08:48:00 +00:00
harshal.patil
4e77c32afc esptool_py: Added a sector-pad option for bootloader image
When SECURE BOOT V2 is enabled and CONFIG_SECURE_BOOT_SIGNED_BINARIES
is not set, sector-pad the bootloader image, which is required for an
external PKCS#11 interface to generate a signature.

esptool_py: Update submodule to release/v3 (4bc311767b7c6df41def6f95a50f87b1c9406cbd)
2023-02-15 16:10:31 +05:30
jingli
805db259b7 sleep: fix gpio wakeup not working properly in some cases
Before this fix, when we call esp_pm_configure after gpio_wakeup_enable,
the configuration of GPIO in sleep state in gpio_wakeup_enable will be
overwritten by esp_pm_configure.
2023-02-13 19:54:17 +08:00
jingli
f556ac1b92 soc_caps: remove SOC_GPIO_SUPPORT_SLP_SWITCH
all esp chips support this feature
2023-02-13 19:54:11 +08:00
Jin Cheng
7fc5d19730 Fixed build errors when sniff subrating is enabled. 2023-02-13 17:28:15 +08:00
Jiang Jiang Jian
ea8de4ddca Merge branch 'feature/efuse_rev_major_minor_v4.3' into 'release/v4.3'
efuse: Adds major and minor versions (v4.3)

See merge request espressif/esp-idf!19544
2023-02-11 20:01:59 +08:00
Michael (XIAO Xufeng)
3e269ffc0d esp32s3: fixed bug chip v0.0 detected as vX.Y
A typical value is 2.8.

Previous commit 32ef2b321a doesn't fix the issue cleanly. The MSB of wafer_minor also has this problem.
2023-02-11 08:06:49 +00:00
Michael (XIAO Xufeng)
611339564d esp32s3: fixed bug chip v0.0 detected as vX.0
A typical value is 2.0.
2023-02-11 08:06:49 +00:00
KonstantinKondrashov
3dcdcc08eb efuse: Adds major and minor versions and others 2023-02-11 08:06:49 +00:00
Jiang Jiang Jian
ab6735155a Merge branch 'bugfix/newlib_tz_env_mutex_v4.3' into 'release/v4.3'
newlib: Use correct recursive mutex for env and regular mutex for tz (v4.3)

See merge request espressif/esp-idf!22295
2023-02-11 12:32:55 +08:00
Jiang Jiang Jian
9ee1cda5e3 Merge branch 'bugfix/fatfs_mtime_dst_v4.3' into 'release/v4.3'
fatfs: fix incorrect mtime returned for files created during DST (v4.3)

See merge request espressif/esp-idf!18459
2023-02-11 09:01:31 +08:00
Jiang Jiang Jian
97454c017f Merge branch 'bugfix/fix_some_wifi_bugs_230209_v4.3' into 'release/v4.3'
esp_wifi: fix some wifi bugs(Backport v4.3)

See merge request espressif/esp-idf!22290
2023-02-11 03:10:08 +08:00
Jiang Jiang Jian
3250b88828 Merge branch 'optimization/lwip_dhcp_coarse_timer_4.3' into 'release/v4.3'
lwip:optimization dhcp coarse timer for 4.3

See merge request espressif/esp-idf!22287
2023-02-11 02:31:30 +08:00
Jiang Jiang Jian
3dc1ab532e Merge branch 'bugfix/secure_boot_v2_part_size_check_v4.3' into 'release/v4.3'
gen_esp32part: allow secure boot v2 based app partition size 4K aligned (v4.3)

See merge request espressif/esp-idf!22288
2023-02-10 19:24:46 +08:00
Jiang Jiang Jian
3d366e1959 Merge branch 'bugfix/rtc_8md256_deepsleep_time_esp32_v4.3' into 'release/v4.3'
pm: Fixed sleep time inaccurate bug when select 8MD256 as rtc slow clock on ESP32 (v4.3)

See merge request espressif/esp-idf!21823
2023-02-10 19:12:25 +08:00
morris
00746db03c Merge branch 'bugfix/no_more_public_adc2_dma_on_c3_s3_v4.3' into 'release/v4.3'
adc: no longer support adc2 continuous mode on esp32c3 (v4.3)

See merge request espressif/esp-idf!21650
2023-02-10 03:55:58 +08:00
cje
d8fc054115 sleep: fix sleep time inaccurate bug when select 8MD256 as rtc slow clock on ESP32
Related to: https://github.com/espressif/esp-idf/issues/6687
2023-02-10 01:36:40 +08:00
Ivan Grokhotkov
d7db6c3148 fatfs: fix incorrect mtime returned for files created during DST
mktime function uses tm_isdst member as an indicator whether the time
stamp is expected to be in daylight saving time (1) or not (0).
FAT filesystem uses local time as mtime, so no information about DST
is available from the filesystem.

According to mktime documentation, tm_isdst can be set to -1, in which
case the C library will try to determine if DST was or wasn't in
effect at that time, and will set UTC time accordingly.

Note that the conversion from UTC to local time and then back to UTC
(time_t -> localtime_r -> FAT timestamp -> mktime -> time_t) does not
always recover the same UTC time. In particular, the local time in the
hour before DST comes into effect can be interpreted as "before DST"
or "after DST", which would correspond to different UTC values. In
this case which option the C library chooses is undefined.

Closes https://github.com/espressif/esp-idf/issues/9039
Originally reported in https://github.com/espressif/arduino-esp32/issues/6786
2023-02-09 11:28:29 +00:00
xueyunfei
b5e8c68b59 lwip:optimization dhcp coarse timer 2023-02-09 19:28:28 +08:00
Steve Jothen
98c2470040 Use correct recursive mutex for env and regular mutex for tz 2023-02-09 16:04:47 +08:00
muhaidong
997af8de8a docs: update ftm docs 2023-02-09 15:07:37 +08:00
muhaidong
6c4ac9ab9e docs: add some details for wifi scan description 2023-02-09 15:05:27 +08:00
muhaidong
36caf700c7 esp_wifi: fix some wifi bugs
1. fix ftm timer macro issue
2. send null data when state change from association to run
3. bugfix for optimize abnormal beacon log
4. bugfix RSNXE related changes
5. send ftm frames immediately
6. fix ftm procedure with peer failed status 4 issue
2023-02-09 15:01:49 +08:00
Mahavir Jain
726c7cd45c partition_table: add tests for checking secure boot part size 2023-02-09 12:11:47 +05:30
Mahavir Jain
08ce6b92aa gen_esp32part: allow secure boot v2 based app partition size 4K aligned
For Secure Boot v2 case, unsigned image is first padded to next 64K
aligned boundary and then a signature block of 4K gets appended. Thus
an app partition whose size is 4K aligned should be allowed here.

For Secure Boot v1 case, app partition size must be 64K aligned as the
signature block lies at the very end of 64K boundary.

Relevant:
57b601ab7f
2023-02-09 12:08:59 +05:30
Armando
984ee9dd38 adc: no longer support adc2 oneshot mode on esp32c3
Due to HW limitation, we don't support this anymore. On c3, ADC2 under oneshot mode is not stable.

However, you can enable CONFIG_ADC_ONESHOT_FORCE_USE_ADC2_ON_C3 to force use
ADC2.

Refer to errata to know more details:
https://www.espressif.com/sites/default/files/documentation/esp32-c3_errata_en.pdf
2023-02-08 09:04:28 +00:00
Armando
9b4986dd2c adc: no longer support adc2 continuous mode on esp32c3
Due to HW limitation, we don't support this anymore. On c3, ADC2 under continuous  mode is not stable.

However, you can enable CONFIG_ADC_CONTINUOUS_FORCE_USE_ADC2_ON_C3_S3 to force use
ADC2.

Refer to errata to know more details:
https://www.espressif.com/sites/default/files/documentation/esp32-c3_errata_en.pdf
2023-02-08 09:04:28 +00:00
Fu Hanxi
dc4c9c087f Merge branch 'ci/fix/isort_incompatible_with_py37_v4.3' into 'release/v4.3'
ci: fix isort py37 incompatible issue (v4.3)

See merge request espressif/esp-idf!22227
2023-02-07 09:12:03 +08:00
Jiang Jiang Jian
30ee33c62e Merge branch 'bugfix/wps_start_state_issue_v4.3' into 'release/v4.3'
esp_wifi: Add check for wps start state (v4.3)

See merge request espressif/esp-idf!22029
2023-02-06 17:22:09 +08:00
Fu Hanxi
0181762519 ci: fix isort py37 incompatible issue 2023-02-06 10:34:45 +08:00
Jiang Jiang Jian
419d6209a8 Merge branch 'bugfix/coex_enable_disable_not_in_pairs_v4.3' into 'release/v4.3'
bluetooth: fix that functions "coex_enable" and "coex_disable" are not used in pairs(backport v4.3)

See merge request espressif/esp-idf!22096
2023-02-04 01:53:35 +08:00
Jiang Jiang Jian
c9068dc1ae Merge branch 'bugfix/peer_dev_rec_add_and_clear_issue_v4.3' into 'release/v4.3'
NimBLE: Fix incomplete clearing of peer_dev_rec (v4.3)

See merge request espressif/esp-idf!22013
2023-02-03 22:17:14 +08:00
Sumeet Singh
feb32ec9f4 NimBLE: Fix incomplete clearing of peer_dev_rec 2023-02-03 03:09:24 +00:00
wangmengyang
35ba1547e5 bluetooth: fix that functions "coex_enable" and "coex_disable" are not used in pairs on ESP32-C3 2023-02-03 03:08:42 +00:00
Shreyas Sheth
2cc790a69b esp_wifi: Add check for wps start state 2023-02-03 03:08:17 +00:00
Jiang Jiang Jian
b24204c587 Merge branch 'bugfix/precommit_isort_deprecation_v4.3' into 'release/v4.3'
ci: Fix pre-commit hook per isort deps deprecation (v4.3)

See merge request espressif/esp-idf!22208
2023-02-03 00:08:06 +08:00
David Cermak
2ed027a633 ci: Fix pre-commit hook per isort deps deprecation
isorts dependecy became deprecated. Fixed to use 5.12.0 version of isort pre-commit
2023-02-02 10:10:05 +01:00
Mahavir Jain
86686d164a Merge branch 'fix/mbedtls_port_sanity_checks_and_return_values_v4.3' into 'release/v4.3'
mbedtls/port: refactor sanity checks and their return values (v4.3)

See merge request espressif/esp-idf!22129
2023-01-27 16:15:08 +08:00
harshal.patil
f138411fd7 mbedtls/port: added stream_block parameter sanity check 2023-01-25 15:40:45 +05:30
harshal.patil
119ac05b5e mbedtls: fix esp_aes_crypt_ctr writing to null stream block 2023-01-25 15:40:45 +05:30
harshal.patil
342671a943 mbedtls: added SOC_AES_SUPPORT_AES_192 check in esp_aes_gcm_setkey() 2023-01-25 15:40:45 +05:30
David Čermák
db60b5b628 Merge branch 'bugfix/fix_mdns_example_v4.3' into 'release/v4.3'
mDNS: Fix example test in CI  (v4.3)

See merge request espressif/esp-idf!21853
2023-01-23 18:37:09 +08:00
Jiang Jiang Jian
56ee43ec5e Merge branch 'bugfix/sta_add_config_for_wpa3_transition_disable_v4.3' into 'release/v4.3'
esp_wifi:Add wifi station config for enabling transition_disbale feature

See merge request espressif/esp-idf!21332
2023-01-17 19:56:03 +08:00
Shreyas Sheth
b44da528db esp_wifi:Add wifi station config for enabling transition_disbale feature 2023-01-16 00:59:04 +05:30
Jiang Jiang Jian
0d48889e81 Merge branch 'feature/seperate_ble_wifi_test_environment_v4.3' into 'release/v4.3'
seperate ble wifi environment backport for v4.3

See merge request espressif/esp-idf!21973
2023-01-12 17:42:12 +08:00
Chen Sheng
734b00a585 seperate ble wifi environment backport for v4.3 2023-01-12 17:42:12 +08:00
Jiang Jiang Jian
4f2e9c001b Merge branch 'example/opt_a2dp_gatts_coex_example_v4.3' into 'release/v4.3'
rebase a2dp_gatts_coex to latest a2dp_sink (v4.3)

See merge request espressif/esp-idf!22005
2023-01-12 10:53:55 +08:00
Jiang Jiang Jian
7d5a228f15 Merge branch 'Bugfix/softap_excedes_the_range_of_subnet_4.3' into 'release/v4.3'
dhcp server:bugfix softap excedes the range of subnet

See merge request espressif/esp-idf!21995
2023-01-12 10:53:38 +08:00
Jiang Jiang Jian
1fb3e3e409 Merge branch 'bugfix/fix_multicast_issue_v4.3' into 'release/v4.3'
esp_wifi: fix multicast pkts drop issue for some AP when DTIM period > 1(v4.3)

See merge request espressif/esp-idf!21998
2023-01-12 10:52:51 +08:00
Jin Cheng
528e7ba3ab rebase a2dp_gatts_coex to latest a2dp_sink 2023-01-11 14:55:35 +08:00
chenjianxing
b9f31eaa66 esp_wifi: fix multicast pkts drop issue for some AP when DTIM period > 1 2023-01-11 11:04:18 +08:00
xueyunfei
cab17c713d dhcp server:bugfix softap excedes the range of subnet 2023-01-11 09:53:48 +08:00
Jiang Jiang Jian
28f66e58ee Merge branch 'bugfix/remove_sha384_hash_for_bigger_certs_v4.3' into 'release/v4.3'
esp_wifi: remove sha384 hash for cert size > 2k (v4.3)

See merge request espressif/esp-idf!21965
2023-01-10 22:42:21 +08:00
Jiang Jiang Jian
80dd246b14 Merge branch 'bugfix/sae_auth_and_pmk_issues_v4.3' into 'release/v4.3'
Fix SAE open auth and PMK issues (Backport v4.3)

See merge request espressif/esp-idf!21920
2023-01-10 19:03:10 +08:00
Jiang Jiang Jian
fdecbe6c65 Merge branch 'bugfix/set_cipher_key_len' into 'release/v4.3'
wpa_supplicant: set cipher key_len for AES 128 CMAC

See merge request espressif/esp-idf!21945
2023-01-10 12:02:23 +08:00
Kapil Gupta
21310654c7 Removed sha384 hash for certs > 2k 2023-01-09 15:58:23 +05:30
Shyamal Khachane
18052cc0fc wpa_supplicant: Set PMK from PMKSA incase of caching 2023-01-09 09:58:54 +05:30
Shyamal Khachane
ce6bcb3868 esp_wifi: Fix open auth issue after commit message exchange 2023-01-09 09:58:54 +05:30
Shreyas Sheth
c78324e407 wpa_supplicant: set cipher key_len for AES 128 CMAC 2023-01-06 14:59:03 +05:30
Jiang Jiang Jian
aa8a00c4f0 Merge branch 'fix/long_assoc_comeback_time_v4.3' into 'release/v4.3'
esp_wifi: reject AP when assoc comeback time given is greater than 5 seconds (Backport v4.3)

See merge request espressif/esp-idf!21837
2023-01-06 12:01:51 +08:00
Jiang Jiang Jian
25a74f85f3 Merge branch 'doc/update_wifi_amsdu_docs_v4.3' into 'release/v4.3'
doc: update wifi amsdu docs(Backport v4.3)

See merge request espressif/esp-idf!21402
2023-01-06 10:59:51 +08:00
Wang Meng Yang
74821cd26d Merge branch 'bugfix/access_nullptr_when_ble_disconn_v4.3' into 'release/v4.3'
Bugfix/Fixed crash caused by accessing nullptr in `btm_acl_disconnected` (v4.3)

See merge request espressif/esp-idf!21880
2023-01-04 20:49:51 +08:00
Jin Cheng
9e501aad7f Fixed crash caused by accessing nullptr in btm_acl_disconnected 2023-01-04 11:44:50 +08:00
Suren Gabrielyan
bcfd9818f2 mDNS: Fix example test in CI using multiple retries 2023-01-01 11:58:12 +04:00
Sarvesh Bodakhe
b85e0c0daa esp_wifi: Update wifi libs
Update wifi libs with below changes -
1. reject AP when assoc comeback time given is greater than 5 seconds
2022-12-29 15:39:49 +05:30
Island
389a848a6a Merge branch 'bugfix/change_position_of_vendor_model_and_gen_onoff_model_callback_forv4.3' into 'release/v4.3'
ble_mesh:example:change position of vendor model and generic onoff model callback(v4.3)

See merge request espressif/esp-idf!21800
2022-12-29 16:42:18 +08:00
Yuan Hong Hui
d8eeb67dfd ble_mesh:example:change position of vendor model and generic onoff model callback(v4.3) 2022-12-29 16:42:18 +08:00
Jiang Jiang Jian
c3d47417fe Merge branch 'bugfix/fix_c3_ble_temperature_performance_v4.3' into 'release/v4.3'
Fixed bluetooth disconnection caused by HW temperature rise or fall on ESP32C3(backport v4.3)

See merge request espressif/esp-idf!21746
2022-12-29 00:38:14 +08:00
muhaidong
be340a7bf9 doc: update wifi amsdu docs 2022-12-28 17:51:40 +08:00
Aditya Patwardhan
58111664f8 Merge branch 'bugfix/esp_tls_timeout_v4.3' into 'release/v4.3'
esp_tls: Fix issue when timeout is not explicitly given in esp_tls_cfg_t (v4.3)

See merge request espressif/esp-idf!21745
2022-12-28 15:05:13 +08:00
zwj
1f05925676 update phy and bb lib for temperature performance 2022-12-27 20:57:04 +08:00
Jiang Jiang Jian
81fb7b03ed Merge branch 'fix/clear_cur_pmksa_v4.3' into 'release/v4.3'
Clear current pmksa before generating RSN IE (Backport v4.3)

See merge request espressif/esp-idf!21683
2022-12-27 15:44:43 +08:00
Shyamal Khachane
aa78c85a05 wpa_supplicant: Clear current pmksa before generating RSN IE
Also update wifi libs with below changes -
  - Fix reason codes for Invalid PMKID
  - Fix handling of Assoc Resp status codes for Station
2022-12-23 16:56:20 +05:30
Jiang Jiang Jian
72a643e7e1 Merge branch 'bugfix/avoid_ftm_initiator_mode_on_softap_v4.3' into 'release/v4.3'
Avoid ftm initiator mode on softap (Backport v4.3)

See merge request espressif/esp-idf!21768
2022-12-23 11:55:46 +08:00
gauri patankar
c1075e32e0 esp_wifi:Update wifi libs
1. Avoid ftm initiator mode on softap
2. Fix home channel issue in ftm for apsta mode
3. Fix int overflow for T1-T4 counter variable
2022-12-22 15:52:47 +05:30
Laukik Hase
dbedcc264d esp_tls: Fix issue when timeout is not explicitly given in esp_tls_cfg_t
- If internet connectivity weakened or disappeared suddenly while we were
  in the TLS handshake stage, the app got stuck at that point indefinitely.
- This was because when timeout was not explicitly specified in esp_tls_cfg_t,
  the default timeout was set at the wrong place. This causes the sockets to be
  setup with zero timeout, hence the indefinite wait.
2022-12-21 14:59:58 +05:30
Jiang Jiang Jian
8cd8ec019c Merge branch 'bugfix/fix_ble_some_bugs_20221219_v4.3' into 'release/v4.3'
backport some BLE bugs 20221219 (backport v4.3)

See merge request espressif/esp-idf!21716
2022-12-21 15:02:35 +08:00
Jiang Jiang Jian
0cf1971b3b Merge branch 'bugfix/fix_some_ble_bugs_by_cjh_v4.3' into 'release/v4.3'
Fixed some BLE bugs (backport v4.3)

See merge request espressif/esp-idf!21692
2022-12-21 11:27:50 +08:00
Jiang Jiang Jian
0528ace322 Merge branch 'bugfix/flush_pmksa_entry_after_disconnect_v4.3' into 'release/v4.3'
Fix PMK caching related regression (Backport v4.3)

See merge request espressif/esp-idf!21694
2022-12-20 16:28:31 +08:00
zwj
5c4a30d08b Update bt lib for ESP32
- Add config to set duplicate scan list refresh period
- overwrite the oldest device infor if the list is full
- Fixed duplicate scan period is not accurate
2022-12-20 15:58:37 +08:00
zhiweijian
3467e9db8b bluedroid host supports the maximum number of connections to 9 2022-12-20 15:03:30 +08:00
zwj
ad0f1bb807 Update bt lib for ESP32-C3 and ESP32-S3
- Add config to set duplicate scan list refresh period
- overwrite the oldest device infor if the list is full
- Fixed duplicate scan period is not accurate
- Fixed some memory was not released after bluetooth controller initialization failed
- Fixed privacy errorr for directed advertising
- Fixed multiple periodic advertising sync failed in air
- Fixed lld_con.c line 3048 assert
- Fixed crash sometimes when connected as a slave by the 8th device
2022-12-20 15:02:22 +08:00
Jiang Jiang Jian
7d61396a35 Merge branch 'bugfix/spp_vfs_memory_leak_v4.3' into 'release/v4.3'
Component_bt/fix esp_spp_vfs_register memory leak(v4.3)

See merge request espressif/esp-idf!21508
2022-12-20 13:53:08 +08:00
chenjianhua
df29143371 update bt-lib for ESP32
1 change default TX power to 9 dBm
2 fixed disconnect reason 0x1f (unspecified error)
3 fixed connection timeout due to terminate ind has not been acknowledged
2022-12-20 12:08:06 +08:00
zwj
3425d4df52 Fixed some memory was not released after bluetooth controller initialization failed on ESP32 2022-12-20 12:06:54 +08:00
Shyamal Khachane
37ce55cd3f wpa_supplicant: Fix PMK caching related regression
Fixed regression caused by commit c171f0f3
2022-12-19 19:11:37 +05:30
chenjianhua
8e4701275c bluedroid: fix ble connection update with same params 2022-12-19 19:32:41 +08:00
chenjianhua
2ff4ab0bd9 examples: fix ble hid led output report 2022-12-19 19:32:23 +08:00
chenjianhua
65b3d93f79 bluedroid: fix encrypt keysize of GATT characteristic permission 2022-12-19 19:32:00 +08:00
chenjianhua
262387025b bluedroid: correct the length of att read by type pdu 2022-12-19 19:31:49 +08:00
xiongweichao
f05fcfc752 bt: Fixed repeated register of vfs_id causing memory leaks 2022-12-19 12:17:14 +08:00
xiongweichao
110bdea520 Assert when malloc user_data fail 2022-12-19 12:17:14 +08:00
xiongweichao
efaa43d01b Fixed memory leak when SPP initialization failed 2022-12-19 12:17:14 +08:00
Jiang Jiang Jian
76eb67253d Merge branch 'bugfix/bdsa_security_issues_v4.3' into 'release/v4.3'
wpa_supplicant:BDSA related patch updates v4.3

See merge request espressif/esp-idf!21561
2022-12-17 18:03:21 +08:00
Shreyas Sheth
c171f0f39b wpa_supplicant:BDSA related patch updates 2022-12-16 16:14:06 +05:30
Jiang Jiang Jian
ec25f91a9d Merge branch 'feature/backport_blufi_coexist_phy_init_flag_v4.3' into 'release/v4.3'
esp_wifi: backport coexist fix, connectionless ps fix, blufi feature

See merge request espressif/esp-idf!21609
2022-12-16 17:57:49 +08:00
liuning
a02a385ee2 esp_wifi: update lib 2022-12-16 14:20:17 +08:00
liuning
ce2deab1a4 phy: only set phy_init_flag at power domain off, when all modems deinit 2022-12-16 14:20:17 +08:00
liuning
312da39eb9 esp_wifi: fix some connectionless related issue 2022-12-16 14:20:17 +08:00
liuning
dcdae20972 docs: update BluFi documentation 2022-12-16 14:20:12 +08:00
Island
607b7a9fd1 Merge branch 'bugfix/change_the_level_of_nimble_log_forv4.3' into 'release/v4.3'
ble_mesh:example:change the level of nimble host log(v4.3)

See merge request espressif/esp-idf!21630
2022-12-16 14:13:00 +08:00
Jiang Jiang Jian
3bb9fb3488 Merge branch 'bugfix/backport_wifi_fixes_v4.3' into 'release/v4.3'
backported some wifi fixes (backport v4.3)

See merge request espressif/esp-idf!21636
2022-12-16 11:13:30 +08:00
Kapil Gupta
6678e3fb8b esp_wifi: Add changes to skip SAE handshake during WPS connection 2022-12-15 12:35:26 +00:00
Kapil Gupta
9dfaf20508 esp_wifi: Flush PMK caching if bss akm has changed 2022-12-15 12:35:26 +00:00
Kapil Gupta
7c5b13f611 Correct SSID copy length during WPS scan 2022-12-15 12:35:26 +00:00
Yuan Hong Hui
4a5459f012 ble_mesh:example:change the level of nimble host log 2022-12-15 18:05:24 +08:00
Jiang Jiang Jian
6439222c31 Merge branch 'Bufix/backport_some_lwip_bugs_for_4.3_1214' into 'release/v4.3'
Lwip:Backport some lwip bugs to 4.3

See merge request espressif/esp-idf!21594
2022-12-15 13:55:20 +08:00
liuning
626b87871d blufi: update version to 1.3
record connecting status, got ip status, maximum retry, connection end info (reason code, rssi) and provide greater information to phone
2022-12-14 19:23:08 +08:00
zhangyanjiao
ca17dc4f2d esp_wifi: report rssi info in wifi event 2022-12-14 19:21:13 +08:00
morris
0319c702cf Merge branch 'feature/_spi_slave_reset_trans_queue_api_v4.3' into 'release/v4.3'
spi: limit esp32 dma workaround only on esp32(v4.3)

See merge request espressif/esp-idf!21384
2022-12-14 17:43:27 +08:00
xueyunfei
6abb3eb0b4 Lwip:Backport some lwip bugs to 4.3
* Update submodule: git log --oneline 76303df2386902e0d7873be4217f1d9d1b50f982..6fa02bd30daa656f896c7a36248253fb3b97660d

Detailed description of the changes:
  - dhcp: reduce the DHCP Request timeout(esp-lwip@6fa02bd3)
  - dhcp: optimization fine timer when dhcp start(esp-lwip@79182163)
  - ip6 timer: optimization lwip ip6 reassembly timer (esp-lwip@c943fc5a)
  - ip4 timer: optimization lwip ip4 reassembly timer (esp-lwip@17f41c9f)
  - dns timer: optimization lwip dns timer (esp-lwip@7f5ab42c)
  - napt: Fix clean compilation  (espressif/esp-lwip@6132c975)
  - Lwip:add TCP Fin2 timeout configuration (espressif/esp-lwip@15b4400e)
  - napt: Fix IP forwarding when forward netif enable NAPT (espressif/esp-lwip@c950063f)
  - napt/stats: Move some napt counters to stats module (espressif/esp-lwip@475d658a)
  - ip_napt_maint: Fix timestamp overflow handling (espressif/esp-lwip@2e904508)
  - napt: Fixes and improvements (espressif/esp-lwip@fb1f3552)
2022-12-14 14:56:06 +08:00
Jiang Jiang Jian
ca6553ad9b Merge branch 'bugfix/multiple_wifi_fixes_v4.3' into 'release/v4.3'
esp_wifi: backport some wifi bug fixes to v4.3

See merge request espressif/esp-idf!21467
2022-12-14 13:55:08 +08:00
Jiang Jiang Jian
0ee643387b Merge branch 'feature/nimble_support_ble_max_conn_num_v4.3' into 'release/v4.3'
Nimble:  Support maximum number of connections to 9 on ESP32-C3 and ESP32-S3 (v4.3)

See merge request espressif/esp-idf!21552
2022-12-14 10:43:24 +08:00
Jiang Jiang Jian
9248dcfc17 Merge branch 'doc/update_nimble_mesh_example_information_v4.3' into 'release/v4.3'
Nimble: Update Mesh example documentation (v4.3)

See merge request espressif/esp-idf!21580
2022-12-14 10:42:46 +08:00
jack
fc1e91f53c esp_wifi: update wifi lib
1.wifi: fixed sniffer mode can not capture control packet when station is enabled
2.Fixed WAPI issue on GTK compability and reference to broadcast arp pkts.
3.Fixed TX fragment issue that PN code is less than MSDU after PN code add two for TX fragment.
4.Added station connect retry count to make it easier to connect to the except AP
5.Fixed some issues on Soft-AP power save.
6.Fixed SoftAP memory leak after wifi init and deinit
7.Fixed sta get ap info does not return connected ssid issue.
8.Fixed SoftAP disconnection happened even when receive PS-Poll.
2022-12-13 16:19:41 +05:30
Rahul Tank
4e366665ae Nimble: Update documentation to include distinction between upstream
mesh example and ESP-BLE-MESH
2022-12-13 12:56:29 +05:30
morris
81ee095b16 Merge branch 'bugfix/fix_slave_gpio_cs_mixed_with_iomux_bus_v4.3' into 'release/v4.3'
spi_slave: fix slave can't use iomux bus mixed with gpio cs_pin (v4.3)

See merge request espressif/esp-idf!21376
2022-12-12 15:49:09 +08:00
Jiang Jiang Jian
19310eea60 Merge branch 'bugfix/correct_the_default_SR_mode_v4.3' into 'release/v4.3'
bugfix/correct the SR_mode selection when konw nothing about Peripheral's SR_mode (v4.3)

See merge request espressif/esp-idf!21521
2022-12-12 14:57:27 +08:00
Wang Meng Yang
4268238733 Merge branch 'feature/report_acl_conn_cmp_stat_to_app_v4.3' into 'release/v4.3'
feature/report ACL link related events to application (v4.3)

See merge request espressif/esp-idf!21526
2022-12-12 10:51:55 +08:00
Rahul Tank
b07ca316d0 Nimble: Support maximum number of connections to 9 on ESP32-C3 and ESP32-S3 2022-12-09 19:13:56 +05:30
jincheng
629d445374 Added ACL link related events handler in A2DP sink GAP callback 2022-12-09 11:16:08 +08:00
jincheng
31b6acc88a Added reporting for ACL link related events to application 2022-12-09 11:15:56 +08:00
Jin Cheng
bfe007388f correct the SR_mode selection when konw nothing about Peripheral 2022-12-09 10:37:42 +08:00
Jiang Jiang Jian
df901e0fe8 Merge branch 'contrib/github_pr_9529_v4.3' into 'release/v4.3'
component_bt: Fixed memory leak due to not freeing memory if posting a message to a thread fails(v4.3)

See merge request espressif/esp-idf!21473
2022-12-08 11:44:55 +08:00
Wang Meng Yang
05c497e9c2 Merge branch 'bugfix/reduce_BTU_TASK_stack_consumption_v4.3' into 'release/v4.3'
Reduce the stack consumption of BTU_TASK (backport v4.3)

See merge request espressif/esp-idf!21436
2022-12-07 11:29:56 +08:00
morris
8b7ae11828 Merge branch 'bugfix/i2c_func_iram_v4.3' into 'release/v4.3'
I2C: put some interrupt used functions into IRAM(backport v4.3)

See merge request espressif/esp-idf!21422
2022-12-07 10:51:39 +08:00
xiongweichao
84e400cd8c bt: Fixed incorrect parameters in switching to BTC context 2022-12-07 10:22:41 +08:00
xiongweichao
dad8773c07 bt:Modify the member variable *arg in struct btc_msg to arg[0] 2022-12-07 10:22:36 +08:00
xiongweichao
433767f97a bt: Fixed memory leak due to not freeing memory if posting a message to a thread fails 2022-12-07 10:22:29 +08:00
alex.li
e7a2559640 esp_wifi: fix wapi gtk id compability issue and adapt tx frag pn sequently. 2022-12-06 17:28:09 +08:00
Kapil Gupta
10b0b768b7 esp_wifi: Add config option for AP retry count
Provide a config option for station to retry with the AP
if connection fails first time.
2022-12-06 17:28:09 +08:00
Jiang Jiang Jian
35f9b6ad58 Merge branch 'bugfix/Fix_exceptional_list_params_check_v4.3' into 'release/v4.3'
ble_mesh: stack: Fix exceptional list parameters check issue(v4.3)

See merge request espressif/esp-idf!21443
2022-12-06 14:44:25 +08:00
Wang Meng Yang
722291e404 Merge branch 'bugfix/reattempt_crash_v4.3' into 'release/v4.3'
NimBLE: Fixed going for reattempt connection code (v4.3)

See merge request espressif/esp-idf!21177
2022-12-06 14:02:23 +08:00
wangjialiang
0f95a31589 ble_mesh: stack: Fix exceptional list parameters check issue 2022-12-05 20:26:11 +08:00
Cao Sen Miao
aac5297f8a I2C: put some interrupt used functions into IRAM 2022-12-05 18:05:28 +08:00
zwj
8ce5d113ca Reduce the stack consumption of BTU_TASK 2022-12-05 17:29:40 +08:00
isha.pardikar@espressif.com
7b51ebe7a8 NimBLE: Fixed going for reattempt connection code 2022-12-05 14:33:40 +05:30
Wang Meng Yang
310571138e Merge branch 'bugfix/fix_bt_sleep_hangs_when_enable_light_sleep_backport_v4.3' into 'release/v4.3'
bt: fix bt sleep flow hangs in btdm_sleep_clock_sync(backport v4.3)

See merge request espressif/esp-idf!21385
2022-12-02 11:28:08 +08:00
Armando
9061efd3d1 spi: limit esp32 dma workaround only on esp32 2022-12-01 21:00:35 +08:00
jingli
f2e92f564e bt: fix bt sleep flow hangs in btdm_sleep_clock_sync
Bluetooth low power related logic and regs have separate power domain from MAC and BB,
and do not power down during light sleep. If reset when power up MAC and BB in sleep
flow, it may destroy the state of bt low power part.
2022-12-01 20:54:45 +08:00
wanlei
a6ea6716ce spi_slave: fix slave can't use iomux bus mixed with gpio cs_pin 2022-12-01 20:21:11 +08:00
Jiang Jiang Jian
c0ba33a99d Merge branch 'bugfix/check_ies_in_match_security_v4.3' into 'release/v4.3'
Adding check for ies in match security (Backport v4.3)

See merge request espressif/esp-idf!21312
2022-12-01 10:46:57 +08:00
Jiang Jiang Jian
6298b8c8ff Merge branch 'bufix/a2dp_fail_connect_again_after_disconnect_v4.3' into 'release/v4.3'
component_bt: Fixed a2dp failing to connect again after disconnect(v4.3)

See merge request espressif/esp-idf!21344
2022-12-01 10:33:07 +08:00
xiongweichao
9b2b5d1651 Fixed a2dp failing to connect again after disconnect 2022-11-30 19:15:36 +08:00
Jiang Jiang Jian
6b48dd30e6 Merge branch 'bugfix/esp_periph_uart_clk_gate_issue_v4.3' into 'release/v4.3'
esp_system: use ESP_CONSOLE_UART_NUM instead of CONSOLE_UART_NUM (backport to v4.3)

See merge request espressif/esp-idf!21284
2022-11-30 17:30:42 +08:00
Jiang Jiang Jian
1d000363c6 Merge branch 'bugfix/disable_prov_encryption_v4.3' into 'release/v4.3'
Wifi Prov: Disabled the default support for BLE Encrpytion on characteristics read /write (v4.3)

See merge request espressif/esp-idf!21265
2022-11-30 15:59:06 +08:00
gauri patankar
66a8eb9ff9 Adding check for ies in match security 2022-11-30 11:57:26 +05:30
Aditya Patwardhan
ee7953dc2a Merge branch 'feature/update_expat_2_5_0_v4.3' into 'release/v4.3'
expat: Upgrade expat to release v2.5.0

See merge request espressif/esp-idf!21295
2022-11-30 14:03:18 +08:00
Jiang Jiang Jian
114ce9b7fd Merge branch 'bugfix/security_params_overwrite_v4.3' into 'release/v4.3'
Add changes to prevent security params overwritten in full scan (backport v4.3)

See merge request espressif/esp-idf!21293
2022-11-30 12:01:13 +08:00
Harshit Malpani
6ff2df0046 expat: Upgrade expat to release v2.5.0 2022-11-28 13:57:22 +05:30
gauri patankar
4f8a869392 Add changes to prevent security params overwritten in full scan (backport v4.3) 2022-11-28 12:50:54 +05:30
jiangguangming
5888f9201f esp_system: use ESP_CONSOLE_UART_NUM instead of CONSOLE_UART_NUM 2022-11-28 10:37:39 +08:00
Jiang Jiang Jian
3685ed2829 Merge branch 'bugfix/fix_connect_and_mesh_issues_v4.3' into 'release/v4.3'
esp_wifi: fix connect issue and mesh issue (backport v4.3)

See merge request espressif/esp-idf!21204
2022-11-28 10:19:51 +08:00
Rahul Tank
6040bba236 Wifi Prov: Disabled the default support for BLE Encrpytion on characteristics read /write
By default, disabled the BLE Encrpyption requirement for provisioning characteristic.
With this flag enabled, when remote attempts to read and if the ACL link is not encrypted,
ESP device will return Insufficient Authentication. It is remote device responsibility to go
for link encryption which may result in pairing.

Some devices do not proceed for any pairing and just show failure pop-up. Also, user needs
to remove bonding on remote phone manually and then try again. This is causing bad user experience.

End user can enable it as per their use case.
2022-11-25 14:21:13 +05:30
Jiang Jiang Jian
a0967db9d8 Merge branch 'bt/opt_audio_datapath_v4.3' into 'release/v4.3'
bt/optimized a2dp_sink audio datapath (v4.3)

See merge request espressif/esp-idf!21224
2022-11-25 10:29:25 +08:00
Jin Cheng
bda3683c85 Increase BtI2STask stack depth to avoid stack overflow 2022-11-24 13:13:43 +08:00
Jin Cheng
79b4d8fe4f optimized a2dp_sink audio datapath
1. removed audio cache in BTC layer of Bluedroid
2. added flow control for audio data in application layer

Closes https://github.com/espressif/esp-idf/issues/9622
2022-11-24 13:13:40 +08:00
Jiang Jiang Jian
81d598b46f Merge branch 'bugfix/fix_hfp_clcc_parser_bug_4.3' into 'release/v4.3'
Bugfix/Fix HFP client parse CLCC command response bug[backport 4.3]

See merge request espressif/esp-idf!21158
2022-11-24 11:12:15 +08:00
Jiang Jiang Jian
08ee8d7137 Merge branch 'bugfix/fixed_HIDH_connection_failure_v4.3' into 'release/v4.3'
bugfix/fixed connection failure and build errors of HID host (v4.3)

See merge request espressif/esp-idf!21209
2022-11-24 11:05:55 +08:00
Jiang Jiang Jian
a74a732c10 Merge branch 'bugfix/fixing_memory_leak_wps_scan' into 'release/v4.3'
Fixed a memory leak issue created when parsing scan results

See merge request espressif/esp-idf!20740
2022-11-24 10:39:10 +08:00
Jin Cheng
898324dc21 1. changed pin_type of Legacy Paring from FIXED to VARIABLE to avoid authentication failure
2. provide compatibilities with devices that do not support Secure Simple Paring

Closes https://github.com/espressif/esp-idf/issues/10069
Closes https://github.com/espressif/esp-idf/issues/10005
2022-11-23 21:00:02 +08:00
Jin Cheng
d533bc1cdd fixed build errors with Secure Simple Paring disabled 2022-11-23 20:58:52 +08:00
Marius Vikhammer
ff5c7d349f Apply suggestions to 2 files 2022-11-23 19:10:35 +08:00
muhaidong
0ed631f47a esp_wifi: Modify wifi scan return value.
1. Modify wifi scan return value same to docs.
2. Change some logs' log level wo avoid misunderstanding.
3. Fix connect fail return wrong error code issue
2022-11-23 19:10:13 +08:00
zhangyanjiao
7cf171cb1f update doc for set channel 2022-11-23 19:09:49 +08:00
zhangyanjiao
92eb91f985 update wifi reason code 2022-11-23 19:09:03 +08:00
Jiang Jiang Jian
2e0da2773b Merge branch 'bugfix/change_default_tx_power_on_c3_v4.3' into 'release/v4.3'
Change BLE default TX power on ESP32C3(backport v4.3)

See merge request espressif/esp-idf!21169
2022-11-23 14:28:30 +08:00
jgujarathi
d5b9fbac44 (wpa_supplicant) : Fixed a memory leak issue created when parsing scan results. 2022-11-23 10:07:01 +05:30
Jiang Jiang Jian
d732a84bfd Merge branch 'bugfix/wpa_enterprise_reauth_v4.3' into 'release/v4.3'
esp_wifi: Fix WiFi Enterprise Reauthentication issue (v4.3)

See merge request espressif/esp-idf!21073
2022-11-23 10:42:55 +08:00
Wang Meng Yang
92a3ba8325 Merge branch 'bugfix/a2dp_source_memory_access_out_of_bounds_v4.3' into 'release/v4.3'
Fixed the issue memory access out of bounds in a2dp_source example (v4.3)

See merge request espressif/esp-idf!21146
2022-11-23 10:32:01 +08:00
Island
cb79ad78d1 Merge branch 'bugfix/change_log_print_forv4.3' into 'release/v4.3'
ble_mesh:example:Add command to test the function of duplicate exceptional list(v4.3)

See merge request espressif/esp-idf!21122
2022-11-23 10:25:33 +08:00
Yuan Hong Hui
35d63c893c ble_mesh:example:Add command to test the function of duplicate exceptional list(v4.3) 2022-11-23 10:25:33 +08:00
Roland Dobai
784019ee2f Merge branch 'fix/bitstring_4_v4.3' into 'release/v4.3'
Tools: Use bitstring package compatible with supported Python versions (v4.3)

See merge request espressif/esp-idf!21180
2022-11-22 03:48:40 +08:00
Roland Dobai
b456d19ace Tools: Use bitstring package compatible with supported Python versions
Bitstring>=4 supports Python 3.7+ only. See:
https://github.com/scott-griffiths/bitstring/releases/tag/bitstring-4.0.1
2022-11-21 15:15:04 +01:00
zhiweijian
92c8189388 support BLE memory release on ESP32C3 and ESP32S3 2022-11-21 12:21:47 +08:00
zhiweijian
30f2cc87ce Update bt lib for ESP32C3
- Added config to disable scan backoff
- Fixed llm_scan.c assert at line 1485 during controller deinit if duplicate scan is not stopped
- Call pll track in controller task
2022-11-21 12:04:35 +08:00
zhiweijian
bba1cd5afa Fixed ble_compatibility_test example NVS init error 2022-11-21 11:12:08 +08:00
zwj
098465ff74 Fixed errors reported by CI clang_tidy_check 2022-11-21 11:11:52 +08:00
zwj
da42e4a234 Fixed sometimes BTU task overflow when doing read and write performance test 2022-11-21 11:11:40 +08:00
zhiweijian
14f396c367 change default tx power from 3dBm to 9dBm 2022-11-21 11:11:17 +08:00
morris
c283d9f1a3 Merge branch 'bugfix/fix_iram_end_redefined_backportv4.3' into 'release/v4.3'
bugfix: fix redefined _iram_end (backport v4.3)

See merge request espressif/esp-idf!21154
2022-11-20 18:30:46 +08:00
wuzhenghui
378fa313ec bugfix: fix redefined _iram_end 2022-11-18 19:50:23 +08:00
liqigan
60875836bd fix HFP client parse CLCC command response bug 2022-11-18 19:44:17 +08:00
Jin Cheng
32ac92adf8 Fixed the issue memory access out of bounds in a2dp_source example 2022-11-18 16:40:46 +08:00
Jiang Jiang Jian
ea57dd4363 Merge branch 'bugfix/fix_current_leakage_when_hold_digital_io_during_deep_sleep_backport_v4.3' into 'release/v4.3'
esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep(backport v4.3)

See merge request espressif/esp-idf!20946
2022-11-18 16:37:28 +08:00
jingli
b6896055a2 hal/gpio_ll: fix digital gpio can not enable hold during deep sleep when force_unhold set(32/s2/s3) 2022-11-18 03:00:01 +00:00
jingli
58e9ce6fe3 hal/gpio_ll: fix digital gpio can not disable hold during deep sleep 2022-11-18 03:00:01 +00:00
jingli
24eea75f9c esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep 2022-11-18 03:00:01 +00:00
Mahavir Jain
9d3d773228 Merge branch 'bugfix/flake8_precommit_v4.3' into 'release/v4.3'
precommit: update flake8 repo url to use github (v4.3)

See merge request espressif/esp-idf!21097
2022-11-17 12:11:41 +08:00
Marius Vikhammer
11c0850159 precommit: update flake8 repo url to use github
Gitlab mirror repo has been deprecated.
2022-11-15 16:26:42 +08:00
morris
3bbb109eb2 Merge branch 'feature/remove_psram_cs_clk_pin_settings_config_s2_s3_v4.3' into 'release/v4.3'
psram: remove CS/CLK pin settings in kconfig on ESP32S2 (v4.3)

See merge request espressif/esp-idf!21048
2022-11-14 17:17:13 +08:00
Jiang Jiang Jian
289a3311de Merge branch 'bugfix/a2dp_can_not_connect_after_ble_connected_v4.3' into 'release/v4.3'
fixed the issue iOS devices cannot initiate connection (v4.3)

See merge request espressif/esp-idf!21061
2022-11-14 15:28:40 +08:00
Shreyas Sheth
7e8cca6c2f esp_wifi: Bugfix WPA Enterprise Reauthentication issue 2022-11-14 11:12:58 +05:30
Jin Cheng
60e281805c fixed the issue iOS devices cannot initiate connection
to ESP32 while there is a BLE connection to this ESP32

Closes https://github.com/espressif/esp-idf/issues/6557
2022-11-14 09:50:22 +08:00
Michael (XIAO Xufeng)
af61c51385 Merge branch 'test/rtc_8m_d256_v4.3' into 'release/v4.3'
rtc: fixed 8MD256 can't be used as RTC slow src on ESP32 (v4.3)

See merge request espressif/esp-idf!18106
2022-11-12 00:45:11 +08:00
Armando
522cf49d33 psram: remove CS/CLK pin settings in kconfig on ESP32S2 2022-11-11 18:15:54 +08:00
morris
bfbf1139ae Merge branch 'bugfix/fix_modbus_rs485_rts_en_fail_v43' into 'release/v4.3'
Bugfix/fix modbus rs485 rts en fail (backport v4.3)

See merge request espressif/esp-idf!16257
2022-11-09 15:46:51 +08:00
Jiang Jiang Jian
0dbc3400a3 Merge branch 'bugfix/add_protection_for_mac_rst_v4.3' into 'release/v4.3'
esp_wifi: add protection for mac reset (backport 4.3)

See merge request espressif/esp-idf!20971
2022-11-09 13:58:05 +08:00
Song Ruo Jing
b8e62ce4b2 uart: Fix unwanted processing of TX_DONE interrupt immediately after calling uart_wait_tx_done()
In previous transmission(s), the TX_DONE interrupt raw bit may be raised, but never been cleared.
TX_DONE interrrupt status bit should be cleared before enabling it to check the new transmission.
2022-11-09 02:31:15 +00:00
aleks
a6e524418d freemodbus: fix uart_wait_tx_done() reenable tx_done interrupt 2022-11-09 02:31:15 +00:00
aleks
bc1f50dc0f freemodbus: fix rts enable fail when transmit frame 2022-11-09 02:31:15 +00:00
aleks
baa0aad20e freemodbus: fix modbus rs485 rts enable fail v42 2022-11-09 02:31:15 +00:00
liuning
dbe59eff86 esp_wifi: add protection for mac reset (backport 4.3) 2022-11-08 14:04:52 +08:00
Jiang Jiang Jian
635a9c5efb Merge branch 'bugfix/mqtt_enqueue4_3' into 'release/v4.3'
[mqtt] Fix esp_mqtt_client_enqueue for len=0 (v4.3)

See merge request espressif/esp-idf!20303
2022-11-08 11:08:00 +08:00
Jiang Jiang Jian
ffe6f240cf Merge branch 'bugfix/time_jump_after_reboot_v4.3' into 'release/v4.3'
esp_hw_support: Fix time jump after reboot (v4.3)

See merge request espressif/esp-idf!20909
2022-11-08 11:07:51 +08:00
Jiang Jiang Jian
714cf794f2 Merge branch 'bugfix/keep_rtc8m_in_lightsleep_v4.3' into 'release/v4.3'
pm: fixed RTC8M domain power down issue when used as RTC source (v4.3)

See merge request espressif/esp-idf!18080
2022-11-08 11:04:50 +08:00
Jiang Jiang Jian
b08d2c8693 Merge branch 'bugfix/fix_trans_optional_info_using_group_addr_v4.3' into 'release/v4.3'
ble_mesh: stack: Fix can't trans optional info to group address(v4.3)

See merge request espressif/esp-idf!20960
2022-11-08 11:04:16 +08:00
wangjialiang
215e1262ba ble_mesh: stack: Fix can't trans optional info to group address 2022-11-07 15:48:56 +08:00
jingli
81b98881ac esp_hw_support/sleep: fix cannot pd cpu and rc fast at the same time during light sleep
Since cpu retention dma use rc fast as clk source, so rc_fast_digi
will be enabled when we config to pd cpu. And cpu retention does not
need rc fast keep on during light sleep. So, if we use rc_fast_digi
to determine whether rc fast can be powered down, then cpu and and
rc fast cannot pd at the same time.
2022-11-06 01:34:18 +08:00
Michael (XIAO Xufeng)
7931c033ed pm: fixed RTC8M domain power issues
introduced in e44ead5356

1. The int8M power domain config by default is PD. While LEDC is using
RTC8M as clock source, this power domain will be kept on.

But when 8MD256 is used as RTC clock source, the power domain should
also be kept on.

On ESP32, there was protection for it, but broken by commit
e44ead5356. Currently the power domain
will be forced on when LEDC is using RTC8M as clock source &&
!int8m_pd_en (user enable ESP_PDP_DOMAIN_RTC8M in lightsleep). Otherwise
the power domain will be powered off, regardless of RTC clock source.

In other words, int8M domain will be forced off (even when 8MD256
used as RTC clock source) if LEDC not using RTC8M as clock source, user
doesn't enable ESP_PDP_DOMAIN_RTC8M, or in deep sleep.

On later chips, there's no such protection, so 8MD256 could't be used as
RTC clock source in sleep modes.

This commit adds protection of 8MD256 clock to other chips. Fixes the
incorrect protection logic overriding on ESP32. Now the power domain
will be determiend by the logic below (order by priority):

    1. When RTC clock source uses 8MD256, power up
    2. When LEDC uses RTC8M clock source, power up
    3. In deepsleep, power down
    4. Otherwise determined by user config of ESP_PDP_DOMAIN_RTC8M,
       power down by default. (This is preferred to have highest
       priority, but it's kept as is because of current code structure.)

2. Before, after the macro `RTC_SLEEP_CONFIG_DEFAULT` decides dbias, the
protection above may force the int8m PU. This may cause the inconsistent
of dbias and the int8m PU status.

This commit lifts the logic of pd int8m/xtal fpu logic to upper layer
(sleep_modes.c).

Related: https://github.com/espressif/esp-idf/issues/8007, https://github.com/espressif/esp-idf/pull/8089

temp
2022-11-05 20:02:53 +08:00
Jiang Jiang Jian
abb7962161 Merge branch 'bugfix/set_ap_rsnxe_while_connect_v4.3' into 'release/v4.3'
esp_wifi:Set AP rsnxe while connecting to a AP

See merge request espressif/esp-idf!20482
2022-11-04 16:38:16 +08:00
Michael (XIAO Xufeng)
ba76597923 ci: add s2, s3, c3 component ut jobs 2022-11-04 12:37:45 +08:00
Michael (XIAO Xufeng)
696de2e7ac pm: add test for RTC using 8MD256 as clock source 2022-11-04 12:37:45 +08:00
Michael (XIAO Xufeng)
b56b459960 rtc: fixed 8MD256 can't be used as RTC slow src on ESP32
Sync configuration from other chips

Closes: https://github.com/espressif/esp-idf/issues/8007, https://github.com/espressif/esp-idf/pull/8089
2022-11-04 12:37:45 +08:00
morris
2788e7e131 Merge branch 'test/stop_s3_test_v4.3' into 'release/v4.3'
ci: stop building & testing s3 apps

See merge request espressif/esp-idf!20924
2022-11-04 10:06:14 +08:00
Michael (XIAO Xufeng)
30c1b3d00f ci: stop building & testing s3 apps 2022-11-03 17:22:03 +08:00
morris
164d9bb782 Merge branch 'bugfix/calib_i2c_clk_v4.3' into 'release/v4.3'
I2C: Make I2C clock frequency accurate(backport v4.3)

See merge request espressif/esp-idf!19070
2022-11-03 10:04:31 +08:00
KonstantinKondrashov
2c3f30378f esp_hw_support: Fix time jump after reboot
Closes https://github.com/espressif/esp-idf/issues/9448
2022-11-02 19:38:26 +08:00
Shreyas Sheth
dc23667db8 esp_wifi:Set AP rsnxe while connecting to a AP 2022-11-02 15:25:31 +05:30
Jiang Jiang Jian
91c60b9cbd Merge branch 'bugfix/fast_scan_profile_issue_v4.3' into 'release/v4.3'
Fix repeated scans causing bss overwrite in connect process (Backport v4.3)

See merge request espressif/esp-idf!19860
2022-11-01 20:32:53 +08:00
Cao Sen Miao
32dca66fb6 I2C: Make I2C clock frequency accurate 2022-11-01 15:48:26 +08:00
Nachiket Kukade
aabfb142bc esp_wifi: Update wifi libs
Fix scan causing bss overwrite in connect process
2022-11-01 09:43:43 +05:30
Jiang Jiang Jian
1d5efaddac Merge branch 'bugfix/fix_sta_scan_when_already_connected_v4.3' into 'release/v4.3'
esp-wifi: Restores station status to connected when no other AP is found for roam

See merge request espressif/esp-idf!20343
2022-11-01 11:03:01 +08:00
Jiang Jiang Jian
9e6d5dce34 Merge branch 'bugfix/use_nonblocking_coex_callback_v4.3' into 'release/v4.3'
bluetooth: use non-blocking coexistence callback functions so that Wi-Fi task is not blocked by Bluetooth(backport v4.3)

See merge request espressif/esp-idf!20780
2022-11-01 10:48:38 +08:00
morris
9a9f503c73 Merge branch 'bugfix/spi2_add_device_cs_more_than_3_v4.3' into 'release/v4.3'
spi_master:fix error when use `spi_bus_add_device` more than 3 device(v4.3)

See merge request espressif/esp-idf!20127
2022-11-01 10:18:24 +08:00
Jiang Jiang Jian
6225c718c3 Merge branch 'bugfix/fix_xtal_related_rtc_params_for_esp32_backport_v4.3' into 'release/v4.3'
esp32/rtc: fix xtal unstable in some cases when sleep(backport v4.3)

See merge request espressif/esp-idf!20804
2022-10-31 19:52:04 +08:00
Jiang Jiang Jian
167a9896a2 Merge branch 'bugfix/fix_part_of_modem_not_reset_when_power_on_backport_v4.3' into 'release/v4.3'
Coexistence: fix part of modem module not reset when power up(backport v4.3)

See merge request espressif/esp-idf!20813
2022-10-31 19:51:50 +08:00
Island
c10ce8f92b Merge branch 'bugfix/ble_mesh_console_memory_leak_test_forv4.3' into 'release/v4.3'
ble_mesh:example:fix memory leak(v4.3)

See merge request espressif/esp-idf!20039
2022-10-28 16:12:36 +08:00
Wang Meng Yang
4fecbc30fa Merge branch 'bugfix/spp_vfs_mode_send_data_fail_v4.3' into 'release/v4.3'
bt: Fixed SPP VFS mode not being able to send data(v4.3)

See merge request espressif/esp-idf!20802
2022-10-27 10:50:11 +08:00
jgujarathi
c7edfd4ef0 esp-wifi: Restores station status to connected when no other AP is found for roam 2022-10-26 19:03:27 +05:30
jingli
91b147c9da wifi/bt: fix part of modem module not reset when power up 2022-10-26 20:47:10 +08:00
wangmengyang
de2e183c9a bt: use non-blocking coexistence callback functions so that Wi-Fi task is not blocked by Bluetooth for ESP32 2022-10-26 19:13:16 +08:00
Wang Meng Yang
067d5fb28d Merge branch 'bugfix/handle_issue_of_malloc_fail_v4.3' into 'release/v4.3'
bugfix/avoid unexpected free when malloc failed (v4.3)

See merge request espressif/esp-idf!20726
2022-10-26 18:57:28 +08:00
jingli
d8141bdf51 esp_hw_support/sleep: fix light sleep wakeup flag
light sleep wakeup flag is true to indicate the most recent successful wakeup from light sleep,
which means the most recent light sleep occurred successfully and then wakes up by wakeup source
2022-10-26 17:07:07 +08:00
jingli
b6491464e1 esp32/rtc: fix xtal unstable in some cases when sleep
1. add xtal buf wait to fix high temperature restart issue
2. add min sleep value to fix xtal stop due to too short sleep time issue
2022-10-26 17:05:07 +08:00
xiongweichao
45d4780760 bt: Fixed SPP VFS mode not being able to send data 2022-10-26 16:27:49 +08:00
Jiang Jiang Jian
a2086ca355 Merge branch 'bugfix/fix_esp32_esp32c3_some_bugs_v4.3' into 'release/v4.3'
Fixed BLE lld_per_adv.c line 401 assert on ESP32C3 (backport v4.3)

See merge request espressif/esp-idf!20759
2022-10-26 11:07:37 +08:00
Jiang Jiang Jian
69ae164794 Merge branch 'bugfix/update_ctrl_init_config_macro_v4.3' into 'release/v4.3'
Bugfix/update ctrl init config macro (v4.3)

See merge request espressif/esp-idf!20713
2022-10-25 17:41:53 +08:00
Jiang Jiang Jian
031d4c904c Merge branch 'bugfix/crash_in_i2s_when_reconnect_to_a2dp_v4.3' into 'release/v4.3'
fixed crash in I2S when reconnect to a2dp sink (v4.3)

See merge request espressif/esp-idf!20720
2022-10-25 17:40:41 +08:00
zhiweijian
2dfdea8b50 update ble tx power level mapping 2022-10-24 20:10:48 +08:00
zhiweijian
8005e6f0d5 Fixed BLE lld_per_adv.c line 401 assert on esp32c3 2022-10-24 19:51:34 +08:00
Island
18efe0ec9b Merge branch 'bugfix/remove_get_modle_and_get_comp_api_forv4.3' into 'release/v4.3'
ble_mesh:example:change the method of get model(for v4.3)

See merge request espressif/esp-idf!20394
2022-10-24 19:42:41 +08:00
zwj
858b869bb6 Fixed ESP32 BLE assert(32 0) 2022-10-24 19:36:58 +08:00
zwj
38945f54e1 allow bluedroid host to report adv_ind separately 2022-10-24 19:36:47 +08:00
Jiang Jiang Jian
d96bb082ba Merge branch 'bugfix/esp_spp_write_len_0_v4.3' into 'release/v4.3'
bt: Fixed esp_spp_write() crash when len is 0 (v4.3)

See merge request espressif/esp-idf!20707
2022-10-24 12:31:37 +08:00
Jiang Jiang Jian
1adb0b6b94 Merge branch 'bugfix/fix_some_wifi_bugs_1019_v4.3' into 'release/v4.3'
esp_wifi: fix deinit return wrong value(Backport v4.3)

See merge request espressif/esp-idf!20733
2022-10-24 11:21:39 +08:00
Fu Hanxi
a03444ebdd Merge branch 'ci/force_based_on_commit_v4.3' into 'release/v4.3'
ci: support one pipeline must based on commmits (v4.3)

See merge request espressif/esp-idf!17923
2022-10-24 08:57:42 +08:00
Li Shuai
54d59fae28 sleep: beacon loss and noise check timer optimize for wifi power save
esp_phy: optimize phy calibration for C3
2022-10-21 21:43:24 +08:00
tgotic
416f9b0cea [bt] fix if allocation fails
If osi_malloc fails for work_queues or osi_work_queue_create fails, osi_work_queue_delete in _err may release unallocated memory.
2022-10-21 14:46:12 +08:00
Jiang Jiang Jian
dd62e3bb9b Merge branch 'bugfix/close_stack_callback_during_ble_stop_v4.3' into 'release/v4.3'
Nimble: Added check to deregister stack callback with controller during stack deinit(v4.3)

See merge request espressif/esp-idf!20605
2022-10-21 14:21:41 +08:00
Jin Cheng
c8db15a4cd fixed crash in I2S when reconnect to a2dp sink 2022-10-21 14:11:56 +08:00
Evan Neidler
850efb4bbe Update #define BT_CONTROLLER_INIT_CONFIG_DEFAULT().
Corrects header names in string from "bt.h" to "esp_bt.h".
2022-10-21 12:03:39 +08:00
xiongweichao
58a7082114 bt: Fixed esp_spp_write() crash when len is 0
Closes https://github.com/espressif/esp-idf/issues/9977
2022-10-21 11:21:51 +08:00
Fu Hanxi
eab8c067bd ci: support one pipeline must based on commmits 2022-10-20 12:41:30 +00:00
Jiang Jiang Jian
844624ead2 Merge branch 'bugfix/revert_commit_da44fc9c_v4.3' into 'release/v4.3'
Revert "fixed the issue iOS devices cannot initiate connection" (v4.3)

See merge request espressif/esp-idf!20667
2022-10-20 19:18:28 +08:00
Jiang Jiang Jian
d2cc0f9f77 Merge branch 'bugfix/add_security_patches_v4.3' into 'release/v4.3'
Adding security patch for SAE side channel attacks (Backport v4.3)

See merge request espressif/esp-idf!20650
2022-10-20 19:17:36 +08:00
muhaidong
bfdccbd7cb esp_wifi: fix deinit return wrong value
1. Deinit does not return ESP_ERR_WIFI_NOT_INIT if the wifi driver is no longer initialized.
2. Fix get wrong channel value use esp_wifi_get_config.
3. Fix bug of missing unlock when wifi stop.
4. Fix annotation error of api esp_wifi_connect.
2022-10-20 11:41:07 +08:00
Michael (XIAO Xufeng)
19ebbf6f14 Merge branch 'feat/esp32s3_support_gpio_deepsleep_wakeup_v4.3' into 'release/v4.3'
example/deep_sleep: add example of EXT0 and using internal pullups (v4.3)

See merge request espressif/esp-idf!18120
2022-10-20 01:32:23 +08:00
Zim Kalinowski
96ef8f42be Merge branch 'bugfix/clobbering_freertos_base_priority_v4.3' into 'release/v4.3'
spi_flash: fix issue linked with raising of task priority while priority is already raised (v4.3)

See merge request espressif/esp-idf!20546
2022-10-19 18:02:30 +08:00
Jiang Jiang Jian
9040964321 Merge branch 'bugfix/fix_esp_hid_auth_fail_crash_v4.3' into 'release/v4.3'
Fix esp hid crash when auth failed (backport v4.3)

See merge request espressif/esp-idf!20613
2022-10-19 11:13:00 +08:00
Jiang Jiang Jian
1ec7a0cbf8 Merge branch 'feature/Add_IVI_recovery_option_v4.3' into 'release/v4.3'
ble_mesh: stack: Add IV index recovery option when device missed the whole IV update(v4.3)

See merge request espressif/esp-idf!20643
2022-10-19 11:12:11 +08:00
Jiang Jiang Jian
f1beed4911 Merge branch 'bugfix/fix_fast_interval_prov_adv_v4.3' into 'release/v4.3'
ble_mesh: stack: Fix send fast interval prov_adv failed(v4.3)

See merge request espressif/esp-idf!20639
2022-10-19 11:11:45 +08:00
Michael (XIAO Xufeng)
14222bc998 example/deep_sleep: add example of EXT0 and using internal pullups 2022-10-19 02:36:14 +08:00
morris
9966753e46 Merge branch 'bugfix/2nd_bootloader_uart1_baudrate_issues_v4.3' into 'release/v4.3'
esp_rom: fix 2nd bootloader custom uart1 baudrate issue (backport to v4.3)

See merge request espressif/esp-idf!20655
2022-10-19 02:09:51 +08:00
Jin Cheng
b5996dd051 Revert "fixed the issue iOS devices cannot initiate connection"
This reverts commit da44fc9cbe.
2022-10-18 19:45:00 +08:00
morris
83dc965b2f Merge branch 'bugfix/fix_rtc8m_calibration_fail_after_cpu_core_reset_v4.3' into 'release/v4.3'
rtc_clk: Fix rtc8m calibration failure after cpu/core reset (backport v4.3)

See merge request espressif/esp-idf!20554
2022-10-18 18:22:01 +08:00
Rahul Tank
7d3207f70b Nimble: Added check to deregister stack callback with controller during stack deinit(v4.3) 2022-10-18 12:19:20 +05:30
jiangguangming
45e6ae724d esp_rom: fix 2nd bootloader custom uart1 baudrate issue 2022-10-18 13:51:20 +08:00
Jiang Jiang Jian
ed9fb4db6f Merge branch 'bugfix/fix_c3_dig_dibas_limit_bug_to_v4.3' into 'release/v4.3'
C3:  Fix system not stable bug when dbias storing in efuse is bigger than 27 (v4.3)

See merge request espressif/esp-idf!20497
2022-10-18 12:38:37 +08:00
Jiang Jiang Jian
8b8b69a4c3 Merge branch 'bugfix/fix_ignore_rx_sub_ampdu_int_issue_v4.3' into 'release/v4.3'
esp_wifi: fix ignore rx sub ampdu interrupt issue(Backport v4.3)

See merge request espressif/esp-idf!20614
2022-10-17 22:09:12 +08:00
gauri patankar
929a1f8549 wpa_supplicant: Update security patches from upstream
1. Adding security patch for SAE side channel attacks
2. Adding confirm message validation in error cases
3. Adding y coordinate for PWE in SAE
2022-10-17 18:03:33 +05:30
gauri patankar
a01a64f02c wpa_supplicant: Move SAE modules into dragonfly files 2022-10-17 18:01:24 +05:30
Jiang Jiang Jian
ed6f966009 Merge branch 'contrib/github_pr_9529_mr_v4.3' into 'release/v4.3'
bt:No need to use local copy of btc_msg_t in btc_transfer_context, create it on heap and pass to osi_thread_post()(v4.3)

See merge request espressif/esp-idf!19693
2022-10-17 18:04:57 +08:00
Jiang Jiang Jian
c482cf16d4 Merge branch 'backport/cjh_v4.3' into 'release/v4.3'
Fixed some BLE bugs on bluedroid (backport v4.3)

See merge request espressif/esp-idf!20507
2022-10-17 17:05:00 +08:00
wangjialiang
b8e9a77463 ble_mesh: stack: Add IV index recovery option when device missed the whole IV update 2022-10-17 16:54:16 +08:00
wangjialiang
cac449f57a ble_mesh: stack: Fix send fast interval prov_adv failed when PB-ADV and PB-GATT enable simultaneously 2022-10-17 16:39:59 +08:00
Jiang Jiang Jian
bf00ddb62c Merge branch 'bugfix/fix_esprv_intc_int_set_type_err_parameter_backportv4.3' into 'release/v4.3'
bugfix: esprv_intc_int_set_type should not use bitmap parameter(backport v4.3)

See merge request espressif/esp-idf!20608
2022-10-17 14:39:31 +08:00
Mahavir Jain
d4789383a4 Merge branch 'bugfix/fix_mbedlts_ds_memory_leak_v4.3' into 'release/v4.3'
esp-tls: Fix memory leak in mbedtls ds peripheral when MBEDTLS_THREADING_C enabled (backport v4.3)

See merge request espressif/esp-idf!20595
2022-10-17 12:41:03 +08:00
Roland Dobai
feeca500de Merge branch 'fix/virtualenv_dir_v4.3' into 'release/v4.3'
Tools: Keep making virtual environments with python in the bin directory (v4.3)

See merge request espressif/esp-idf!20620
2022-10-17 01:04:34 +08:00
Roland Dobai
71598bf4f9 Tools: Keep making virtual environments with python in the bin directory
On Ubuntu 22.04 virtualenv with the latest setuptools produces
environments with Python in "local/bin" instead of "bin" (see
https://github.com/pypa/virtualenv/issues/2350).

Closes https://github.com/espressif/esp-idf/issues/9931
2022-10-14 15:35:17 +02:00
KonstantinKondrashov
e8bf8ce14d freertos: Adds new APIs to set/get and restore base priority
Closes https://github.com/espressif/esp-idf/issues/7580
2022-10-14 19:04:44 +08:00
muhaidong
56933d09ea esp_wifi: fix ignore rx sub ampdu interrupt issue 2022-10-14 16:08:24 +08:00
chenjianhua
b3bd5cbf77 fix esp hid crash when auth failed 2022-10-14 16:02:58 +08:00
Jiang Jiang Jian
bc4de7dc29 Merge branch 'bugfix/fix_connect_fail_when_enable_SPIRAM_v4.3' into 'release/v4.3'
esp_wifi: fix connect fail when enable SPIRAM and ESPNOW send (backport v4.3)

See merge request espressif/esp-idf!20586
2022-10-14 15:49:13 +08:00
wuzhenghui
4934d700c9 bugfix: esprv_intc_int_set_type should not use bitmap parameter 2022-10-14 15:27:19 +08:00
yuanjianmin
4848e11ac6 esp-tls: Fix memory leak in mbedtls ds peripheral when MBEDTLS_THREADING_C enabled 2022-10-13 19:41:19 +08:00
zhangyanjiao
14ce174215 esp_wifi: fix connect fail when enable SPIRAM and ESPNOW send 2022-10-13 17:05:17 +08:00
Song Ruo Jing
c0be4cb2ba rtc_clk: Fix rtc8m calibration failure after cpu/core reset
Explicitly guarantee 8md256 clk is enabled before calibration
2022-10-12 12:41:50 +08:00
xiongweichao
9f5ff9fddf Fixed deadlock due to wrong parameter when calling btc_transfer_context() after calling esp_bluedroid_disable()
Closes https://github.com/espressif/esp-idf/issues/9672
2022-10-10 09:31:47 +00:00
tgotic
5d3af603a6 update code to use osi_free() 2022-10-10 09:31:47 +00:00
tgotic
01ac97732d local copy of btc_msg_t
No need to use local copy of btc_msg_t in btc_transfer_context, create it on heap and pass to osi_thread_post().
2022-10-10 09:31:47 +00:00
chenjianhua
ed24da98eb bluedroid: configurable max gattc cache characteristic count 2022-10-09 15:31:11 +08:00
chenjianhua
b904278330 fix ble adv tx power map 2022-10-09 15:28:39 +08:00
chenjianhua
7a324e2984 bluedroid: fix ble rpa generate and update by host 2022-10-09 15:28:39 +08:00
chenjianhua
0446de4429 Revert "component/bt: add local irk to controller"
This reverts commit 032f6d34d1.
2022-10-09 15:28:39 +08:00
chenjianhua
fb20a1be8e Revert "Fixed ESP32 BLE can't resolve the peer address when enable white list"
This reverts commit 192aa18c31.
2022-10-09 15:28:39 +08:00
chenjianhua
e5a195fc2c Bluedroid: Configurable option to modify max gatt service attributes count 2022-10-09 15:28:39 +08:00
cje
5e5b8c16cb fix C3 system not stable bug when dbias storing in efuse is bigger than 27 2022-10-08 11:48:47 +08:00
Euripedes Rocha
ec3381f043 [mqtt] Fix esp_mqtt_client_enqueue for len=0
27eb4726067465c5c67d4ecdca5ddccd26f02580..60983d1dd54196b1e3f399c6f928d77256ec742a

Detailed description of the changes:
* [Backport] mqtt_client: fix esp_mqtt_client_enqueue for len=0
  - See merge request espressif/esp-mqtt!144
  - mqtt_client: fix esp_mqtt_client_enqueue for len=0
    (espressif/esp-mqtt@e918742)
2022-10-04 05:14:13 +00:00
Jiang Jiang Jian
9e863ecdb8 Merge branch 'bugfix/fix_some_ble_bugs_on_esp32c3_v4.3' into 'release/v4.3'
Fixed some BLE controller bugs on ESP32-C3 (backport v4.3)

See merge request espressif/esp-idf!19990
2022-09-29 13:59:20 +08:00
Jiang Jiang Jian
07bffab8d4 Merge branch 'feature/sink_support_mono_v4.3' into 'release/v4.3'
bt: Fixed sink not being able to output mono audio because it can only decode dual channel audio data(v4.3)

See merge request espressif/esp-idf!20079
2022-09-29 11:40:01 +08:00
Jiang Jiang Jian
a5e5ab7b1b Merge branch 'bugfix/acl_buf_ocf_and_conn_fail_v4.3' into 'release/v4.3'
bugfix/fixed the exhaustion of ACL buffer and duplicated connection requests (v4.3)

See merge request espressif/esp-idf!20385
2022-09-29 11:37:57 +08:00
Jiang Jiang Jian
b52b357b94 Merge branch 'bugfix/a2dp_can_not_connect_after_ble_connected_v4.3' into 'release/v4.3'
fixed the issue iOS devices cannot initiate connection (v4.3)

See merge request espressif/esp-idf!20405
2022-09-29 11:37:13 +08:00
Roland Dobai
4c601e1d47 Merge branch 'bugfix/missing_idfSelectedId_v4.3' into 'release/v4.3'
Tools: bugfix wrong format of idf-env.json, KeyError: 'idfSelectedId' (v4.3)

See merge request espressif/esp-idf!20381
2022-09-29 01:30:28 +08:00
Jin Cheng
f2000d8925 fixed the issue iOS devices cannot initiate connection
to ESP32 while there is a BLE connection to this ESP32

Closes https://github.com/espressif/esp-idf/issues/6557
2022-09-28 16:12:11 +08:00
Yuan Hong Hui
eba6275572 ble_mesh:example:change the method of get model 2022-09-28 15:29:03 +08:00
Island
89ecfa9470 Merge branch 'bugfix/ble_mesh_console_support_nimble_host_for_v4.3' into 'release/v4.3'
ble_mesh:ble mesh console support nimble(v4.3)

See merge request espressif/esp-idf!19605
2022-09-28 12:32:21 +08:00
morris
c930046693 Merge branch 'doc/usj_sw_reset_alive_bbpll_doc_v4.3' into 'release/v4.3'
usb_serial_jtag: fixed the docs that we can use usj in sleep modes (v4.3)

See merge request espressif/esp-idf!20294
2022-09-28 11:50:08 +08:00
Jin Cheng
9a953f7740 fixed the exhaustion of ACL buffer
fixed the duplication of connection request from the same device
2022-09-28 10:16:24 +08:00
Marek Fiala
37f193c46c Tools: bugfix wrong format of idf-env.json, KeyError: 'idfSelectedId'
Closes https://github.com/espressif/esp-idf/issues/9837
2022-09-27 22:39:07 +02:00
zwj
f635a2f2a1 fix calling esp_ble_get_cur_sendable_packets_num() sometimes crashes when bluetooth is disconnecting 2022-09-27 21:38:11 +08:00
zwj
157acb3086 Fixed extend adv tx power range error 2022-09-27 21:37:04 +08:00
cjin
ebb23ff4fe fix err using rpa for confirmation calculation 2022-09-27 21:35:49 +08:00
cjin
78a08e9ca7 fix on data len change cmd malfunction 2022-09-27 21:35:33 +08:00
zwj
d826f8ae34 Update ESP32-C3 BLE lib
- Fixed the usage of PLL track related baseband IRQs
- Fixed connect failed due to error sync found signal
- Fixed BLE disconnect failed due to terminate_ind have sent but no ACK is received
- Added ADV mode error check in ADV rx isr handler function
- Fixed BLE RAL_UNDERRUN and TX_CRYPT_ERR assert
- Disable scan continue
- Fixed scan forever if scan continue is disable
- Fixed BLE disconnection issue when channel map update failed due to bad channels
2022-09-27 20:55:19 +08:00
zwj
05c8753eaa Fixed extend adv set remove failed 2022-09-27 20:55:19 +08:00
morris
853ce78b19 Merge branch 'feat/essl_extra_component_v4.3' into 'release/v4.3'
sdio/example: fixed the essl return value issue (v4.3)

See merge request espressif/esp-idf!20346
2022-09-27 18:33:22 +08:00
Mahavir Jain
07251a99f1 Merge branch 'bugfix/fix_socket_leak_v4.3' into 'release/v4.3'
esp-tls: socket will be set to -1 and will not be closed (backport v4.3)

See merge request espressif/esp-idf!20350
2022-09-27 18:18:07 +08:00
Michael (XIAO Xufeng)
78aca699b9 sdio/example: fixed the essl return type issue 2022-09-26 19:41:30 +08:00
Yuan Jian Min
3a92e82e97 esp-tls: socket will be set to -1 and will not be closed 2022-09-26 19:25:27 +08:00
Roland Dobai
e40b55e854 Merge branch 'fix/ci_macos_idf_env_json' into 'release/v4.3'
CI: Clean-up idf-env.json which might not be compatible with newer versions

See merge request espressif/esp-idf!20316
2022-09-23 21:47:00 +08:00
Roland Dobai
a9501e16c7 CI: Clean-up idf-env.json which might not compatible with newer versions 2022-09-23 12:24:37 +02:00
Jiang Jiang Jian
aefd3db87d Merge branch 'bugfix/fix_set_country_code_before_wifi_start_issue_v4.3' into 'release/v4.3'
Bugfix/fix set country code before wifi start issue v4.3(Backport v4.3)

See merge request espressif/esp-idf!20106
2022-09-23 17:56:12 +08:00
Mahavir Jain
8034c03106 Merge branch 'update_expat_R_2_4_8_v4.3' into 'release/v4.3'
expat: Update expat library to R_2_4_8 release (v4.3)

See merge request espressif/esp-idf!20284
2022-09-22 21:25:47 +08:00
Michael (XIAO Xufeng)
e28bb4b9c4 usb_serial_jtag: fixed the docs that we can use usj in sleep modes
Related to: https://github.com/espressif/esp-idf/issues/8507, https://github.com/espressif/esp-idf/issues/8884
2022-09-22 17:39:15 +08:00
Island
eb922b57a3 Merge branch 'bugfix/relay_friend_cred_message_v4.3' into 'release/v4.3'
ble_mesh: stack: Fix friend relay lpn message when relay disable(v4.3)

See merge request espressif/esp-idf!20205
2022-09-22 14:17:40 +08:00
Jiang Jiang Jian
4fc2ff34b5 Merge branch 'ci/optimize_ats_ci_flow_v4.3' into 'release/v4.3'
CI: optimize ATS ci flow (v4.3)

See merge request espressif/esp-idf!20177
2022-09-22 14:12:06 +08:00
Jiang Jiang Jian
8ed3ec79cf Merge branch 'bugfix/fix_xtal32k_error_detect_backport_v4.3' into 'release/v4.3'
esp_hw_support/clk_cali: fix xtal32k error detect(backport v4.3)

See merge request espressif/esp-idf!20277
2022-09-22 14:04:44 +08:00
morris
1ecf62bf14 Merge branch 'bugfix/fix_spi_bus_lock_concurrency_issue_v4.3' into 'release/v4.3'
spi_bus_lock: fix a concurrency issue (v4.3)

See merge request espressif/esp-idf!20139
2022-09-22 13:34:00 +08:00
Harshit Malpani
f310113c91 expat: Update expat library to R_2_4_8 release
Detailed changelog: https://github.com/libexpat/libexpat/blob/R_2_4_8/expat/Changes
2022-09-22 10:04:59 +05:30
jingli
b85e5627d3 esp_hw_support/clk_cali: remove redundant check for cali value 2022-09-21 16:30:17 +08:00
jingli
07d69b7cae esp_hw_support/clk_cali: fix xtal32k error detect 2022-09-21 16:29:36 +08:00
morris
179d12db47 Merge branch 'bugfix/fix_ledc_timer_update_usage_v4.3' into 'release/v4.3'
ledc: Fix the usage of ledc_ls_timer_update and ledc_timer_rst (backport v4.3)

See merge request espressif/esp-idf!20243
2022-09-21 15:00:37 +08:00
Michael (XIAO Xufeng)
02c45b6e52 Merge branch 'bugfix/spi_hd_quad_issue_4.3' into 'release/v4.3'
SPI : fix wrong dummy cycle on quad mode and put get-command function in spi_ll.h(backport v4.3)

See merge request espressif/esp-idf!19836
2022-09-21 12:10:23 +08:00
wangjialiang
e54506ceaa ble_mesh: stack: Fix friend relay lpn message when relay disable. 2022-09-21 03:36:36 +00:00
Island
894b1ad79d Merge branch 'bugfix/lpn_not_recv_message_to_all_node_4.3' into 'release/v4.3'
ble_mesh: stack: Add option for lpn auto sub all-nodes(v4.3)

See merge request espressif/esp-idf!20263
2022-09-21 11:31:39 +08:00
wangjialiang
7e2ebcde7a ble_mesh: stack: Add option for lpn auto sub all-nodes. 2022-09-20 20:31:37 +08:00
Song Ruo Jing
4cd54d6e32 ledc: Fix the usage of ledc_ls_timer_update and ledc_timer_rst
ledc_ls_timer_update is required only when CLK_DIV and DUTY_RES bits are changed.
Calling ledc_timer_rst while re-configure PWM frequency through ledc_set_freq can cause glitch in the signal
2022-09-20 12:04:13 +08:00
Michael (XIAO Xufeng)
5666813ce0 Merge branch 'bugfix/driver_rs485_fix_test_sync_issues_v43' into 'release/v4.3'
driver: uart rs485 fix test sync issues and fail threshold (backport v4.3)

See merge request espressif/esp-idf!19611
2022-09-19 16:16:01 +08:00
Alex Lisitsyn
ec7bab9b19 driver: uart rs485 fix test sync issues and fail threshold (backport v4.3) 2022-09-19 16:16:00 +08:00
xueyunfei
f1b8861f2b esp_wifi:add clear ap list interface 2022-09-19 15:52:06 +08:00
muhaidong
1773cdb3ac docs: update wifi country code docs. 2022-09-19 15:51:52 +08:00
muhaidong
e8abfaa20e esp_wifi: add small UT for country code. 2022-09-19 15:51:39 +08:00
muhaidong
5a6cbcd29b esp_wifi: fix country policy issue. 2022-09-19 15:51:19 +08:00
Jiang Jiang Jian
5c3e729198 Merge branch 'bugfix/fix_send_eapol_key_request_frame_when_wpa_group_handshake_issue_v4.3' into 'release/v4.3'
wpa_supplicant: try install gtk before send group key handshake message 2(Backport v4.3)

See merge request espressif/esp-idf!20200
2022-09-19 10:58:19 +08:00
Island
26369071d4 Merge branch 'bugfix/adapt_new_btc_v4.3' into 'release/v4.3'
ble_mesh: stack: Corrected parameter size when the btc_transfer_context is used (v4.3)

See merge request espressif/esp-idf!20167
2022-09-18 14:35:32 +08:00
muhaidong
6cf2fc39ce wpa_supplicant: try install gtk before send group key handshake message 2 2022-09-17 18:29:20 +08:00
Chen Yudong
977d1a4b95 CI: optimize ATS ci flow 2022-09-16 13:50:34 +08:00
wangjialiang
eb4ec4beda ble_mesh: stack: added the judgment that the parameter is NULL but the parameter len is not zero to avoid btc_transfer_context failed 2022-09-15 09:17:08 +00:00
morris
2ee1a33ed4 Merge branch 'bugfix/twai_isr_iram_v4.3' into 'release/v4.3'
hal: fix CONFIG_TWAI_ISR_IN_IRAM for C3, hide TWAI menu for C2 (v4.3)

See merge request espressif/esp-idf!20093
2022-09-15 17:04:18 +08:00
gaoxu
8095142796 SPI: change the different soc's spi defintion location and fix the bug that wrong dummy cycle under quad spi mode 2022-09-15 16:03:54 +08:00
morris
4b6a6a2684 Merge branch 'bugfix/fix_spi_slave_example_sender_ccount_issue_v4.3' into 'release/v4.3'
spi: fix spi slave example sender ccount issue (v4.3)

See merge request espressif/esp-idf!18875
2022-09-15 15:34:02 +08:00
morris
f425cd9d15 Merge branch 'bugfix/fix_esp32_psram_cs_hold_time_issue_when_under_80m_v4.3' into 'release/v4.3'
esp_psram: fix esp32 psram cs hold time issue when under 40m (v4.3)

See merge request espressif/esp-idf!19649
2022-09-15 15:30:30 +08:00
Jiang Jiang Jian
08726a8495 Merge branch 'bugfix/remove_bt_dft_init_semicolon_v4.3' into 'release/v4.3'
bt: Remove trailing semicolon from bt dft initializer(v4.3)

See merge request espressif/esp-idf!19916
2022-09-14 17:01:08 +08:00
Jiang Jiang Jian
f1bd2be298 Merge branch 'bugfix/fix_memory_corruption_in_recon_code_v4.3' into 'release/v4.3'
Nimble: Fixed memory corruption introduced in reconnection attempt code (v4.3)

See merge request espressif/esp-idf!19746
2022-09-14 16:59:38 +08:00
wanlei
8290d450f3 spi_master:fix error when use spi_bus_add_device more than 3 device
update gpio_sig at `spics_out` array in each spi_periph.c of chips later than s2
then `spi_bus_add_device` can correctly distribute gpio_signals for cs_signal

Closes https://github.com/espressif/esp-idf/issues/8876
2022-09-14 12:40:29 +08:00
Armando
6a1bfa29b0 SPI_BUS_LOCK: fix a concurrency issue
define: lock_bits = (lock->status & LOCK_MASK) >> LOCK_SHIFT;  This `lock_bits` is the Bit 29-20 of the lock->status

1. spi_hdl_1:
   acquire_end_core():
   uint32_t status = lock_status_clear(lock, dev_handle->mask & LOCK_MASK);
   Becuase this is the first `spi_hdl_1`, so after this , lock_bits == 0`b0. status == 0

2. spi_hdl_2:
   acquire_core:
   uint32_t status = lock_status_fetch_set(lock, dev_handle->mask & LOCK_MASK);
   Then here status is 0`b0, but lock_bits == 0`b10. Because this is the `spi_hdl_2`

3. spi_hdl_2:
   `acquire_core` return true, because status == 0. `spi_bus_lock_acquire_start(spi_hdl_2)` then won't block.

4. spi_hdl_2:
   spi_device_polling_end(spi_hdl_2).

5. spi_hdl_1:
   acquire_end_core:
   status is 0, so it cleas the lock->acquiring_dev

6. spi_hdl_2:
   spi_device_polling_end:
   assert(handle == get_acquiring_dev(host)); Fail

Closes https://github.com/espressif/esp-idf/issues/8179
2022-09-14 12:13:24 +08:00
Zim Kalinowski
73509d93a5 Merge branch 'bugfix/spiram_abort_allocation_failure_v4.3' into 'release/v4.3'
SPIRAM: 'Abort on allocation failure' should not trigger when there is available SPI ram (backport v4.3)

See merge request espressif/esp-idf!19550
2022-09-13 16:28:43 +08:00
Zim Kalinowski
867c622136 Merge branch 'bugfix/fix_disassembler_interpreting_padding_v4.3' into 'release/v4.3'
(Xtensa) Build: add .xt.prop and .xt.lit to the compiled ELF file (backport v4.3)

See merge request espressif/esp-idf!19612
2022-09-13 16:28:26 +08:00
Ivan Grokhotkov
5b2bfa0574 Merge branch 'bugfix/ci_check_executable_windows_v4.3' into 'release/v4.3'
ci: fix check_executables issue on Windows (v4.3)

See merge request espressif/esp-idf!20094
2022-09-13 14:57:03 +08:00
morris
7d2e9c45e2 Merge branch 'ci/ignore_adc_dma_single_read_test_v4.3' into 'release/v4.3'
adc: ignore ADC DMA single read test on esp32s2 (v4.3)

See merge request espressif/esp-idf!19726
2022-09-13 14:34:49 +08:00
Ivan Grokhotkov
ff98b2cf80 Merge branch 'update/version_4_3_4' into 'release/v4.3'
Update version to 4.3.4

See merge request espressif/esp-idf!20103
2022-09-12 22:37:17 +08:00
Ivan Grokhotkov
63091bdf8d versions: Update version to 4.3.4 2022-09-12 10:59:15 +02:00
Michael (XIAO Xufeng)
4919358d6b ci: put file sorter to the end of the pre-commit checking
So that the sorter will be done at the end of the checking flow, we don't need to run pre-commit hooks again if another hook also take effect.
2022-09-11 02:55:56 +08:00
Michael (XIAO Xufeng)
7ff41e406b ci: fix check_executables issue on Windows 2022-09-11 02:54:57 +08:00
Ivan Grokhotkov
c38eeeeda1 hal: fix CONFIG_TWAI_ISR_IN_IRAM not taking effect for C3/H2 2022-09-11 01:17:20 +08:00
xiongweichao
59ea02cb4c bt:Fixed sink not being able to output mono audio because it can only decode dual channel audio data 2022-09-09 17:42:30 +08:00
Armando
e1a5315ff7 adc: ignore ADC DMA single read test on esp32s2
This test is only on esp32s2, and using verification adc APIs.
This commit keeps the code, but don't check it on ci
2022-09-09 16:03:10 +08:00
Yuan Hong Hui
372f637f25 ble_mesh:example:fix memory leak 2022-09-08 16:24:18 +08:00
Mahavir Jain
ad857b5f2b Merge branch 'fix/fix_esp_rsa_sign_alt_modifying_input_params_v4.3' into 'release/v4.3'
esp_rsa_sign_alt: Fix esp_init_ds_data_ctx API to not modify user defined data... (v4.3)

See merge request espressif/esp-idf!19715
2022-09-08 13:56:58 +08:00
Mahavir Jain
b4d7495e0d Merge branch 'fix/esp_https_client_compile_warning_v4.3' into 'release/v4.3'
esp_https_ota: Fix build warning when CONFIG_OTA_ALLOW_HTTP is set (v4.3)

See merge request espressif/esp-idf!19981
2022-09-08 13:56:36 +08:00
Anton Maklakov
1dbab6dfc4 Merge branch 'ci/fix_nightly_run_build_jobs_v4.3' into 'release/v4.3'
ci: build all when has env var NIGHTLY_RUN (v4.3)

See merge request espressif/esp-idf!19702
2022-09-08 11:47:18 +08:00
Jiang Jiang Jian
90ef6426a8 Merge branch 'bugfix/ble_disconnect_enable_light_sleep_and_bb_pd_v4.3' into 'release/v4.3'
bt: Fixed bluetooth disconnection issue when light sleep and baseband power down are enabled (v4.3)

See merge request espressif/esp-idf!19804
2022-09-08 10:55:37 +08:00
Jiang Jiang Jian
cfdc0b9fce Merge branch 'bugfix/fix_rtc_clock_freq_value_macro_v4.3' into 'release/v4.3'
rtc_clk: Fix wrong RC_SLOW clock frequency value on ESP32C3 (backport v4.3)

See merge request espressif/esp-idf!19934
2022-09-08 10:41:05 +08:00
Aditya Patwardhan
ead1587caf esp_https_ota: Warn users when CONFIG_OTA_ALLOW_HTTP is set 2022-09-06 13:54:22 +05:30
Axel Lin
460df92e85 esp_https_ota: Fix build warning when CONFIG_OTA_ALLOW_HTTP is set
Fix below build warning when CONFIG_OTA_ALLOW_HTTP is set:
esp_https_ota.c:165:13: warning: 'is_server_verification_enabled' defined but not used [-Wunused-function]

While at it, also simplify the is_server_verification_enabled logic.

Fixes: 48987ad9df ("esp_https_ota: Enable option of using global_ca_store and x509_crt_bundle")
Signed-off-by: Axel Lin <axel.lin@gmail.com>

Closes https://github.com/espressif/esp-idf/pull/6882

Signed-off-by: Aditya Patwardhan <aditya.patwardhan@espressif.com>
2022-09-06 13:54:22 +05:30
Song Ruo Jing
3ce98867a0 rtc_clk: Fix wrong RC_SLOW clock frequency value on ESP32C3 2022-09-02 21:06:24 +08:00
Pedro
86182baaaf Remove trailing semicolon from bt dft initializer
Similar to espressif#6554
2022-09-02 11:10:41 +08:00
Ivan Grokhotkov
5b81524e63 Merge branch 'bugfix/temp_fix_esp_event_test' into 'release/v4.3'
esp_event: lowered performance threshold temporarily for esp_event test

See merge request espressif/esp-idf!19672
2022-08-31 16:42:37 +08:00
xiongweichao
395f0eb5c1 Fix bluetooth disconnection issue when light sleep and baseband power down are enabled 2022-08-26 16:17:14 +08:00
Rahul Tank
1f695251a1 Nimble: Fixed memory corruption introduced in reconnection attempt code 2022-08-24 13:44:29 +05:30
Aditya Patwardhan
861c3f5025 esp_rsa_sign_alt: Fix esp_init_ds_data_ctx API to not modify user defined data when it is given directory from flash 2022-08-23 13:32:12 +05:30
Fu Hanxi
d7eb0d9d71 ci: build all when has env var NIGHTLY_RUN 2022-08-22 18:53:27 +08:00
Chip Weinberger
8792b1de1e SPIRAM: 'Abort on allocation failure' should not trigger when there is available SPI ram
(cherry picked from commit 8dcdb2f363fd3fa00bd77e4bd75e7c73d6c7d0fb)
2022-08-22 02:45:10 +00:00
Omar Chebib
f5ad8ac423 (Xtensa) Build: add .xt.prop and .xt.lit to the compiled ELF file
Adding prop and lit sections to the ELF will let the debugger and the disassembler
have more info about data bytes present in the middle of the Xtensa
instructions, usually used for padding.
2022-08-22 02:43:50 +00:00
Jiang Jiang Jian
6075806400 Merge branch 'bugfix/fix_country_policy_issue_v4.3' into 'release/v4.3'
esp_wifi: fix not update phy according to country code.

See merge request espressif/esp-idf!19655
2022-08-21 19:41:07 +08:00
muhaidong
189bdb2bf8 esp_wifi: fix not update phy according to country code.
1. Fixed not update phy according to country code.
2. Fixed crashed when esp_wifi_set_ant_gpio() called
3. Fixed a bug when ftm used with ps enabled
4. Fixed a potential issue to allocate PSRAM to wifi stack where internal RAM is required
5. Fixed potential fail to scan AP after receiving disassoc/deauth from AP on esp32s2
y
2022-08-21 16:01:34 +08:00
Jiang Jiang Jian
36decb6662 Merge branch 'feature/sae_sta_h2e_v4.3' into 'release/v4.3'
esp_wifi: WPA3 SAE H2E support for station (backport v4.3)

See merge request espressif/esp-idf!18661
2022-08-20 23:46:41 +08:00
Zim Kalinowski
662b6c9ad3 Merge branch 'bugfix/i2c_incorrect_speed_v4.3' into 'release/v4.3'
I2C: Fix SCL period timings on ESP targets (backport v4.3)

See merge request espressif/esp-idf!18272
2022-08-20 03:51:44 +08:00
Jakob Hasse
937633ad79 fix (esp_event): lowered performance threshold for esp_event test
The test in question is "performance test - no dedicated task".
Its performance dropped significantly during a WiFi library commit,
although there is no obvious reason. This needs to be investigated
and until then, we temporarily lower the performance threshold to
let the test pass.
2022-08-19 12:02:42 +02:00
Gauri Patankar
e055f5ced7 esp_wifi: WPA3 SAE H2E support for station
Mandate sta threshold wpa3 for ssid after receiving transition disable bit from AP
2022-08-19 15:09:14 +05:30
Jiang Jiang Jian
c2735be0c8 Merge branch 'bugfix/fix_i2c_issues_v4.3' into 'release/v4.3'
I2C: Fix task wait too long on an event & timeout WDT triggered (backport v4.3)

See merge request espressif/esp-idf!18770
2022-08-19 14:01:14 +08:00
Jiang Jiang Jian
d4d70c3fcd Merge branch 'bugfix/nvs_part_ptr_wrong_init_4.3' into 'release/v4.3'
bugfix (nvs_flash): Fix nvs_flash_init_partition_ptr (backport v4.3)

See merge request espressif/esp-idf!18674
2022-08-19 13:59:12 +08:00
Jiang Jiang Jian
4ed1729262 Merge branch 'refactor/flash_qio_overidable_v4.3' into 'release/v4.3'
spi_flash: refact that flash qio can be overidable(backport v4.3)

See merge request espressif/esp-idf!18037
2022-08-19 13:58:26 +08:00
Jiang Jiang Jian
29978c0f17 Merge branch 'bugfix/hfp_examples_not_work_with_default_sdkconfig_v4.3' into 'release/v4.3'
bugfix/set default number of sco connection to 1 (v4.3)

See merge request espressif/esp-idf!19590
2022-08-18 21:40:35 +08:00
Armando
19951bce8c esp_psram: fixed 40mhz cs signal glitch issue 2022-08-18 20:37:46 +08:00
Jiang Jiang Jian
c207d09250 Merge branch 'bugfix/combined_softap_pmf_fixes_v4.3' into 'release/v4.3'
Combined bugfixes for SoftAP and PMF (Backport v4.3)

See merge request espressif/esp-idf!19118
2022-08-18 17:54:13 +08:00
Omar Chebib
9faeca3d1c I2C: Fix SCL period timings on ESP targets
The output frequency is now more accurate as the SCL period timings have been fixed.
This fix applies for ESP32, ESP32S3, ESP32C3 and ESP32H2
2022-08-18 02:45:36 +00:00
Omar Chebib
4d7f007645 I2C: Fix a bug making the I2C task wait too long on an event
The I2C ISR will now notify the task waiting on an event. Thus, the task can stop waiting on the event queue as soon as possible.
2022-08-18 02:37:43 +00:00
Chen Yi Qun
b6bbb5e0a2 I2C: add conf_update for esp32c3 i2c 2022-08-18 02:37:43 +00:00
Cao Sen Miao
19205b0696 I2C: Fix i2c write fake timeout and WDT triggered 2022-08-18 02:37:43 +00:00
Nachiket Kukade
5e3ade893a esp_wifi: Update wifi libs
Update wifi libs with below fixes -
1. Improved error handling in SoftAP Rx path, fixed LoRa IE length
2. Handle low memory scenario, re-enabling PMF Capable flag in STA PMF
3. Release wifi lock in offchannel operation
2022-08-17 15:41:13 +05:30
Yuan Hong Hui
33ea98ffc7 ble_mesh:ble mesh console support nimble 2022-08-17 14:36:26 +08:00
Anton Maklakov
843b870b20 Merge branch 'ci/support_nightly_build_keyword_in_ttfw_v4.3' into 'release/v4.3'
ci: support keyword `nightly_run` in ttfw_idf decorator (v4.3)

See merge request espressif/esp-idf!19133
2022-08-17 12:50:30 +08:00
jincheng
49fba45156 Fixed the failure of 'connect audio' operation in HFP examples with default SDK configuration
Due to the lack of synchronized connections, the hf_client can not create audio_connection to
hf_ag. Set default number of synchronized connection to 1.

Closes https://github.com/espressif/esp-idf/issues/9537
2022-08-17 10:15:11 +08:00
Roland Dobai
d96dde38f9 Merge branch 'feature/oocd_ver_upgrade_v4.3' into 'release/v4.3'
tools: Updates OpenOCD version to 'v0.11.0-esp32-20220706' (v4.3)

See merge request espressif/esp-idf!19491
2022-08-16 23:20:12 +08:00
Roland Dobai
b3bdd6afc3 Merge branch 'fix/install.ps1.v4.4_v4.3' into 'release/v4.3'
Tools: Remove undefined variable from install.ps1 (v4.3)

See merge request espressif/esp-idf!19584
2022-08-16 22:19:54 +08:00
Alexey Gerenkov
def78db543 tools: Updates OpenOCD version to 'v0.11.0-esp32-20220706' 2022-08-16 11:07:06 +00:00
Roland Dobai
5d1a51db65 Tools: Remove undefined variable from install.ps1
Closes https://github.com/espressif/esp-idf/issues/9556
2022-08-16 12:20:11 +02:00
Jiang Jiang Jian
2828e8fe2f Merge branch 'bugfix/wifi_bt_mac_bb_pd_light_sleep_v4.3' into 'release/v4.3'
backport v4.3: deep sleep does not need cpu and wifi/bt mac retention

See merge request espressif/esp-idf!19511
2022-08-16 17:09:25 +08:00
Aleksei Apaseev
dbd6519948 ci: allow scheduled pipelines 2022-08-15 10:43:11 +00:00
Fu Hanxi
d94dbdd1be ci: support keyword nightly_run in ttfw_idf decorator 2022-08-15 10:43:11 +00:00
Jiang Jiang Jian
19de572d45 Merge branch 'bugfix/bt_invalid_workqueue_num_v4.3' into 'release/v4.3'
Bluetooth: fixed the invalid workqueue number for BTU thread in Bluedroid(backport v4.3)

See merge request espressif/esp-idf!19509
2022-08-12 19:50:07 +08:00
Jiang Jiang Jian
f128f4f83e Merge branch 'bugfix/vendor_model_send_message_no_memory_forv4.3' into 'release/v4.3'
ble_mesh:example: free the memory of malloc (v4.3)

See merge request espressif/esp-idf!19186
2022-08-12 19:49:25 +08:00
Yuan Hong Hui
190cd2f8cd ble_mesh:the memory requested by malloc has not benn released 2022-08-12 06:03:58 +00:00
Jiang Jiang Jian
c6f5e4f505 Merge branch 'bugfix/memory_region_define_rtc_fast_v4.3' into 'release/v4.3'
backport v4.3: substract rtc_iram_seg memory region size from ESP_BOOTLOADER_RESERVE_RTC

See merge request espressif/esp-idf!19424
2022-08-12 14:00:51 +08:00
Jiang Jiang Jian
a456819d78 Merge branch 'bugfix/fix_bt_sphinx_warnings_4.3' into 'release/v4.3'
components_bt: fix unstandard typedefs [backport v4.3]

See merge request espressif/esp-idf!19339
2022-08-12 14:00:35 +08:00
Jiang Jiang Jian
9a09a64e36 Merge branch 'bugfix/wifi_bt_use_same_clock_source_v4.3' into 'release/v4.3'
Fix Wi-Fi does not know that Bluetooth has modified the lpclk source (v4.3)

See merge request espressif/esp-idf!15733
2022-08-12 12:52:18 +08:00
weitianhua
d264f30e76 component_bt: Fix build doc errors of bt
1. bluedroid: use standard function pointer define.
   2. blufi: Change ESP_BD_ADDR_LEN into ESP_BLUFI_BD_ADDR_LEN
   3. doc/sphinx_known_warnings: Remove fixed parts.
2022-08-12 12:11:54 +08:00
xiongweichao
460cfbd583 1. Wi-Fi: update tsf tick interval when lpclk is modified
2. Move register_lpclk_callback to coexistence
2022-08-11 20:21:59 +08:00
xiongweichao
cfc5576b0d Power Management: fix the issue of sleeping time error beacause external 32kHz xtal does not exist 2022-08-11 20:17:39 +08:00
xiongweichao
23e8e497da make bluetooth and wifi use the same low power clock 2022-08-11 20:17:39 +08:00
xiongweichao
12ca203856 ESP32C3:bluetooth support use main XTAL in light sleep mode 2022-08-11 20:17:39 +08:00
Jiang Jiang Jian
a0a0b2b4f7 Merge branch 'bugfix/fix_some_wifi_bugs_0805_v4.3' into 'release/v4.3'
fix some wifi bugs 0805 (backport v4.3)

See merge request espressif/esp-idf!19412
2022-08-11 20:07:31 +08:00
Jiang Jiang Jian
26707c3f3b Merge branch 'bugfix/mesh_bqb_test_issues_v4.3' into 'release/v4.3'
ble_mesh: stack: Fix mesh v1.0 BQB test issues(v4.3)

See merge request espressif/esp-idf!19503
2022-08-11 20:07:10 +08:00
Li Shuai
0d7b72e057 sleep: deep sleep does not need cpu and wifi/bt mac retention 2022-08-11 16:36:57 +08:00
wangmengyang
73cc09b118 components/bt: fixed the invalid workqueue number for BTU thread in Bluedroid
There should be only one workqueue for BTU task. The queue length for the second workqueue of BTU can be uninitialized and caused memory overflow and corruption.

Closes https://github.com/espressif/esp-idf/issues/9507
2022-08-11 16:18:12 +08:00
Jiang Jiang Jian
8ba4dd328a Merge branch 'bugfix/docs_update_deep_sleep_note_v4.3' into 'release/v4.3'
backport v4.3: add a note for deep sleep crc check

See merge request espressif/esp-idf!19422
2022-08-11 15:45:39 +08:00
wangjialiang
041784e653 ble_mesh: stack: Fix kr from non-primary subnet shouldn't ignore
For case MESH/NODE/KR/BV-02-C
2022-08-11 14:15:56 +08:00
wangjialiang
bfb5e06df4 ble_mesh: stack: Add a check if the appkey is bound to the model.
For case MESH/NODE/CFG/MP/BI-03-C
2022-08-11 14:15:51 +08:00
wangjialiang
2490d28cc6 ble_mesh: stack: the count_log field should be set to 0 when HBS is sent.
For MESH/NODE/CFG/HBS/BV-02-C
2022-08-11 14:15:46 +08:00
wangjialiang
17372e5b3d ble_mesh: stack: The Heartbeat Publication Period Log value can set to 0x11, range: [0, 0x11] 2022-08-11 14:15:40 +08:00
wangjialiang
7ce06c8c3b ble_mesh: stack: The value of expect_ack_for will be rewrited after send_pub_key().
For case MESH/PVNR/PROV/BV-04-C
2022-08-11 14:15:33 +08:00
wangjialiang
ff8588ec46 ble_mesh: stack: Fix ignore connectable PB-ADV PDU containing a Link Open message.
For case MESH/NODE/PBADV/BI-04-C
2022-08-11 14:15:18 +08:00
wangjialiang
a6e921684c ble_mesh: stack: Fix PB-GATT not check invalid link flag
For case MESH/NODE/PROV/BI-03-C
2022-08-11 14:15:12 +08:00
wangjialiang
529f49db5b ble_mesh: stack: Fix invalid provisioning pdu type check
For case MESH/NODE/PROV/BI-15-C
2022-08-11 14:15:06 +08:00
Jiang Jiang Jian
a253cf8118 Merge branch 'opt/bluedroid_adv_report_datapath_v4.3' into 'release/v4.3'
Bluetooth/Bluedroid: optimize BLE adv report datapath and adv report flow control mechanism(backport v4.3)

See merge request espressif/esp-idf!19383
2022-08-11 10:57:03 +08:00
Jiang Jiang Jian
7c64c12b74 Merge branch 'contrib/github_pr_9498_backport4_3' into 'release/v4.3'
Bluetooth/Bluedroid: fix member typo(backport v4.3)

See merge request espressif/esp-idf!19459
2022-08-11 10:53:34 +08:00
Island
ee973b0a2a Merge branch 'bugfix/friend_and_lpn_issues_v4.3' into 'release/v4.3'
ble_mesh: stack: Fix friend and lpn issues(v4.3)

See merge request espressif/esp-idf!19476
2022-08-10 13:50:44 +08:00
wangjialiang
41b4ead681 ble_mesh: stack: Fix add continuously secure update into friend queue.
For MESH/NODE/FRND/FN/BV-20-C
2022-08-09 21:49:36 +08:00
wangjialiang
71fc7b73f6 ble_mesh: stack: Fix friend relay lpn message when relay feature is disable
For MESH/NODE/FRND/FN/BV-23-C
2022-08-09 21:49:24 +08:00
linruihao
6ad7114a45 Fixed union member access typo
Closes https://github.com/espressif/esp-idf/pull/9498
2022-08-09 13:23:18 +08:00
tgotic
763f9c91a4 bt member typo
Terminate sec_event.cfm_req.bd_name string, not sec_event.pin_req.bd_name
2022-08-09 13:23:05 +08:00
Island
77adeb15c6 Merge branch 'bugfix/restore_missing_ble_mesh_videos_v4.3' into 'release/v4.3'
ble_mesh: doc: Restore missing ble mesh videos(v4.3)

See merge request espressif/esp-idf!19404
2022-08-08 17:12:07 +08:00
Li Shuai
2bf40e52c9 substract rtc_iram_seg memory region size from ESP_BOOTLOADER_RESERVE_RTC 2022-08-08 11:32:46 +08:00
Li Shuai
d0f8a7c2bf docs: add a note for deep sleep crc check 2022-08-08 11:17:56 +08:00
zhangyanjiao
3c59955135 update wifi lib:
1. Clear old keys before going for new connection
2. Fix deep sleep can't reconnect to ap when pmf enable
3. Fix some ap will ignore auth when rx deauth for some time
4. Support force ht40 for espnow & 80211_tx
5. WAPI: Key mgmt type compability issue
6. Update wifi header file
7. Fix espnow recv unencrypted packets issue
2022-08-05 16:20:48 +08:00
Kapil Gupta
487ef592a2 esp_wifi: Clear old keys before going for new connection 2022-08-05 15:35:44 +08:00
ChenJianxing
c8814343dc esp_wifi: add ht40 support for 80211_tx & espnow 2022-08-05 15:35:39 +08:00
zhangyanjiao
6648e0e541 modify API-reference using Sphinx directives 2022-08-05 15:16:27 +08:00
zhangyanjiao
13da594657 update wifi api docs 2022-08-05 15:13:36 +08:00
Jiang Jiang Jian
158d69cb51 Merge branch 'bugfix/default_ssid_not_set_v4.3' into 'release/v4.3'
esp_wifi: Fix for default ssid not set.(4.3)

See merge request espressif/esp-idf!18247
2022-08-05 12:10:48 +08:00
wangjialiang
bcf14175c4 ble_mesh: doc: Restore missing ble mesh videos 2022-08-05 11:55:22 +08:00
aditi_lonkar
9027fef06f esp_wifi: Fix for default ssid not set. 2022-08-04 16:27:55 +05:30
Karl Wang
7b3d4d5074 component/bt: use OSI utility "osi_event" for HCI downstream data processing 2022-08-04 14:27:34 +08:00
wangmengyang
6ffe0a5262 component/bt: consider to handle HCI LE Direct Advertising Report 2022-08-04 14:27:33 +08:00
Karl Wang
ca945e8211 component/bt: allocate and use one static buffer for HCI adv flow control command 2022-08-04 14:27:33 +08:00
wangmengyang
20705588b2 component/bt: use fixed_pkt_queue instead of fixed_queue for hci commands
some fixes after modifications:
  1. removed the use of waiting_command_t
  2. fix assert for HCI write_eir command
  3. fixed the crash upon handling command status event when trying to free to the HCI command buffer
  4. fixed the issue in transmitting HCI vendor specific commands
  5. fixed the lost command complete callbacks for HCI commands LE_RAND and LE_ENCRYPT
2022-08-04 14:27:32 +08:00
wangmengyang
dd02446224 component/bt: add a timer to monitor the adv flow control credits downwards procedure 2022-08-04 14:27:32 +08:00
wangmengyang
2da8b2c78b component/bt: fix adv report flow control logic, give ADV report credits every 10 packets 2022-08-04 14:27:32 +08:00
wangmengyang
64572b7ff2 component/bt: add simple ADV flow control mechanism -- drop the packets when the adv report queues are considered full 2022-08-04 14:27:31 +08:00
wangmengyang
e406be3cf4 component/bt: use the OSI utility "osi_event" to handle adv report in btc_layer 2022-08-04 14:27:31 +08:00
wangmengyang
f16e5df27f component/bt: use the OSI utility "pkt_queue" to store ADV report packet in btu layer
# Conflicts:
#	components/bt/host/bluedroid/hci/hci_hal_h4.c
2022-08-04 14:27:30 +08:00
wangmengyang
09a79cf90a component/bt: use the OSI utility "osi_event" for hci_hal_h4 upstream data packets handling 2022-08-04 14:27:30 +08:00
wangmengyang
622148d491 component/bt: use the OSI utility "osi_event" to handle A2DP source data Tx processing 2022-08-04 14:27:29 +08:00
wangmengyang
ed509a8d52 component/bt: use the OSI utility "osi_event" to handle A2DP sink data Rx processing 2022-08-04 14:27:26 +08:00
wangmengyang
fb01677372 component/bt: add new OSI utility "fixed_pkt_queue", which has same functionality with "fixed_queue" 2022-08-04 14:25:03 +08:00
Karl Wang
3c14e739f0 component/bt: add new OSI utility "pkt_queue" which acts as a mutex-protected linked list, to be used as data queue between tasks 2022-08-04 14:25:03 +08:00
wangmengyang
0f4c9a47f1 component/bt: add new OSI utility "osi_event" to support the scenario that event need only to be handle once. 2022-08-04 14:25:02 +08:00
wangmengyang
26d2011442 component/bt: make OSI thread workqueue length configurable through API
reduce the length of workqueue1 for BTC and HCI task

# Conflicts:
#	components/bt/common/osi/thread.c
2022-08-04 14:25:02 +08:00
wangmengyang
b1cded8e48 component/bt: modify the implementation of osi_thread using freeRTOS queue 2022-08-04 14:25:01 +08:00
Jiang Jiang Jian
bfb2fee42a Merge branch 'bugfix/wlan_fixes_backports_v4.3' into 'release/v4.3'
esp_wifi: Fix some wlan issues(backport v4.3)

See merge request espressif/esp-idf!19359
2022-08-03 21:16:39 +08:00
Kapil Gupta
dc386c71b1 wpa_supplicant: Unicast key renew in TKIP mic failure
Currently we always request group key renew for during
TKIP mic failure. Add support for unicast/multicast
key renew as per packet.
2022-08-03 14:55:56 +05:30
Kapil Gupta
77661ba436 esp_wifi: Add APIs to check BTM and RRM support of connected AP 2022-08-03 11:35:44 +05:30
Kapil Gupta
3e789d4ed4 esp_wifi: Changes to not use pmkid caching when SSID is changed 2022-08-03 11:26:40 +05:30
Kapil Gupta
eb448172e9 wpa_supplicant: Fix issues reported by coverity 2022-08-03 11:26:31 +05:30
Jiang Jiang Jian
7b10f3264a Merge branch 'bugfix/fix_esptouch_v2_found_none_issue_v4.3' into 'release/v4.3'
esp_wifi: fix the bug that check whether bssid is zero mac(Backport v4.3)

See merge request espressif/esp-idf!19281
2022-08-03 13:17:00 +08:00
Jiang Jiang Jian
5b2444695c Merge branch 'bugfix/corrected_typo_in_example_peripherals_usb_v4.3' into 'release/v4.3'
example: peripherals/usb: fix typo naming of local variables (backport v4.3)

See merge request espressif/esp-idf!19101
2022-08-03 11:33:38 +08:00
Jiang Jiang Jian
d8a6f77da8 Merge branch 'bugfix/fix_write_to_null_pointer_if_malloc_failed_issue_v4.3' into 'release/v4.3'
Bugfix/fix write to null pointer if malloc failed issue(Backport v4.3)

See merge request espressif/esp-idf!19351
2022-08-03 10:59:36 +08:00
Oleg Savchenko
829a81b37f fix possible memory leak if report level not set 2022-08-02 20:39:01 +08:00
Oleg Savchenko
d2397d42ca fix write to null pointer if malloc failed 2022-08-02 20:38:51 +08:00
Ivan Grokhotkov
7d383bb5fb Merge branch 'bugfix/systimer_counter_value_bit_field_v4.3' into 'release/v4.3'
HAL: Fix systimer counter value bit field (v4.3)

See merge request espressif/esp-idf!18253
2022-08-02 16:48:29 +08:00
Jiang Jiang Jian
5eb176082d Merge branch 'bugfix/memory_debug_not_work_v4.3' into 'release/v4.3'
bugfix/fix the dependency error of macro for memory debug (v4.3)

See merge request espressif/esp-idf!19236
2022-08-02 15:50:06 +08:00
Jiang Jiang Jian
658b4026c9 Merge branch 'bugfix/fix_legacy_pair_not_send_link_key_host_v4.3' into 'release/v4.3'
component_bt: fix legacy pair controller does not send the link key to the host (v4.3)

See merge request espressif/esp-idf!19321
2022-08-02 14:41:24 +08:00
Jiang Jiang Jian
3f88df5046 Merge branch 'bugfix/put_sempher_and_queue_used_in_isr_into_DRAM_v4.3' into 'release/v4.3'
Make sure semphr/queue used in interrupt is in DRAM

See merge request espressif/esp-idf!18989
2022-08-02 11:32:05 +08:00
Jiang Jiang Jian
588e9801a3 Merge branch 'bugfix/fix_ble_ke_mem_c_assert_on_c3_s3_v4.3' into 'release/v4.3'
Fixed BLE ke_mem.c assert on ESP32C3 for v4.3

See merge request espressif/esp-idf!18900
2022-08-01 21:10:59 +08:00
xiongweichao
c6671788d2 fix legacy pair controller does not send the link key to the host
Closes https://github.com/espressif/esp-idf/issues/5850
2022-08-01 20:31:26 +08:00
Jiang Jiang Jian
69cc5c677d Merge branch 'fix/set_idf_component_manager_default_to_zero' into 'release/v4.3'
fix: set IDF_COMPONENT_MANAGER property to 0 as default

See merge request espressif/esp-idf!19309
2022-08-01 19:56:07 +08:00
Jiang Jiang Jian
896090ce12 Merge branch 'bugfix/fix_bluedroid_host_memory_overflow_v4.3' into 'release/v4.3'
Fixed bluedroid host memory overflow for v4.3

See merge request espressif/esp-idf!18904
2022-08-01 19:41:29 +08:00
Jiang Jiang Jian
69ac4dd716 Merge branch 'bugfix/qatest_spp_crash_v4.3' into 'release/v4.3'
bugfix/qatest spp crash (v4.3)

See merge request espressif/esp-idf!19239
2022-08-01 19:41:09 +08:00
Michael (XIAO Xufeng)
3a88cf8b49 Merge branch 'bugfix/reserve_dma_ram_in_segments_v4.3' into 'release/v4.3'
psram: reserve dma pool in the step of heap max block (v4.3)

See merge request espressif/esp-idf!18859
2022-08-01 17:14:39 +08:00
Fu Hanxi
da2e62270b fix: set IDF_COMPONENT_MANAGER property to 0 as default 2022-08-01 11:10:32 +08:00
David Čermák
224730ec25 Merge branch 'examples/tls_removed_deprecated_version' into 'release/v4.3'
test_apps: Removed verification of TLS v1.1 (v4.3)

See merge request espressif/esp-idf!19180
2022-07-29 13:46:50 +08:00
Jiang Jiang Jian
6c38c6b176 Merge branch 'bugfix/add_multiple_scan_mode_v4.3' into 'release/v4.3'
Bugfix: Connect example to add scan mode config

See merge request espressif/esp-idf!19124
2022-07-29 10:58:32 +08:00
muhaidong
eed82f378e esp_wifi: fix the bug that check whether bssid is zero mac 2022-07-28 21:53:30 +08:00
Jiang Jiang Jian
11508b6fbe Merge branch 'bufix/Backport_some_wifi_lwip_bugs_for_4.3_0719' into 'release/v4.3'
Backport some wifi&lwip bugs for 4.3 0719

See merge request espressif/esp-idf!19110
2022-07-28 16:03:49 +08:00
wanlei
846b51fe15 param: fixed heap pool reservation for DMA/internal usage fail issue
As heap block may be allocated into multiple non-continuous chunks, to
reserve enough memory for dma/internal usage, we do the malloc in the
step of max available block.
2022-07-28 10:15:53 +08:00
jincheng
af5b3e600e 1. add protect for bt_util_buf_env buffers when multi-access
2. ignore assert_err in em_bt_clkoff1_setf
2022-07-27 18:02:54 +08:00
gabsuren
7fd218dfa1 test_apps: tls removed version 1_1 2022-07-27 12:42:02 +04:00
Mahavir Jain
949a6a8d3f Merge branch 'bugfix/freertos_event_group_unblock_race_condition_v4.3' into 'release/v4.3'
FreeRTOS: Fix event group task list race condition (v4.3)

See merge request espressif/esp-idf!19104
2022-07-27 12:25:39 +08:00
xueyunfei
e7e962b8d0 lwip:add function for deinit lwip timers 2022-07-26 09:55:39 +00:00
xueyunfei
bc61578d68 esp_wifi: backport some wifi fix
1 Bugfix for wrong config of static txbuf

     2 fix bug that qos data will update BA SSN

     3 reset beacon timeout timer

     4 Bugfix for close sniffer mode when wifi stop

     5 update wifi header files
2022-07-26 09:55:39 +00:00
xueyunfei
61b1b2ac12 Icmp: get tos parameter in icmp reply
bugfix for add ttl for ping socket
2022-07-26 09:55:39 +00:00
Jeff H
55e69bf9cb add option to route LWIP logs through ESP_LOG interface
Signed-off-by: xueyunfei <xueyunfei@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/8785
Closes https://github.com/espressif/esp-idf/issues/8361
2022-07-26 09:55:39 +00:00
xueyunfei
563639ba01 udp example:Optimization udp example with recv_msg 2022-07-26 09:55:39 +00:00
xueyunfei
18ee6fdbd4 wifi example:optimization example of wifi station 2022-07-26 09:55:39 +00:00
Jessy Chen
63cb1da0b6 esp_wifi: update esp_wifi_internal_set_fix_rate usage 2022-07-26 09:55:39 +00:00
Jessy Chen
6e84f737a9 esp_wifi: update noise floor unit 2022-07-26 09:55:39 +00:00
Jack Farley
aa13b48819 DOC:Correct IP_EVENT_STA_LOST_IP name
Fix the name of the IP_EVENT_STA_LOST_IP event (was IP_STA_LOST_IP)

Signed-off-by: xueyunfei <xueyunfei@espressif.com>

Closes https://github.com/espressif/esp-idf/pull/8347
2022-07-26 09:55:39 +00:00
xueyunfei
5b614cd3e4 Doc:update wifi api docs
* Add documents related to espnow config rate

* Optimization set dns server api description
2022-07-26 09:55:39 +00:00
daiziyan
767088d877 docs: fix the format for DPP 2022-07-26 09:55:39 +00:00
David Čermák
96bd791c74 Merge branch 'bugfix/set_ipv6_dns_error_v4.3' into 'release/v4.3'
lw ip: Fixed that ipv6 dns cannot work (v4.3)

See merge request espressif/esp-idf!19063
2022-07-25 22:44:38 +08:00
baohongde
8ac667b763 components/coex: Make sure sempher and queue used in isr is in DRAM
Closes https://github.com/espressif/esp-idf/issues/9032
Closes https://github.com/espressif/esp-idf/issues/8928
Closes https://github.com/espressif/esp-idf/issues/9129
2022-07-25 11:37:06 +08:00
baohongde
f85c30a73c components/bt: Make sure sempher and queue used in isr is in DRAM 2022-07-25 11:35:44 +08:00
Darian Leung
bfb4a0c9df freertos: Fix flakey event group unit test
The "FreeRTOS Event Groups" main task will only wait a single tick for the created
tasks to set their response bits. This short delay may not be sufficent if the tick
frequency is high.

This commit updates the test so that

- the main task waits indefinitely for all the response bits to be set.
- created tasks are cleaned up by the main task
2022-07-25 03:01:16 +00:00
Darian Leung
ad39eaaeb0 freertos: Fix event group task list race condition
FreeRTOS synchronization primitives (e.g., queues, eventgroups) use various event lists (i.e., task lists) to track what
tasks are blocked on a current primitive. Usually these event lists are accessed via one of the event lists functions
(such as vTask[PlaceOn|RemoveFrom]UnorderedEventList()), which in turn ensure that the global task list spinlock
(xTaskQueueMutex) is taken when accessing these lists.

However, some functions in event_groups.c manually traverse their event lists. Thus if a tick interrupt occurs on
another core during traversal and that tick interrupt unblocks a task on the event list being traversed, the event list
will be corrupted.

This commit modifies the following event_groups.c functions so that they take the global task list lock before
traversing their event list.

- xEventGroupSetBits()
- vEventGroupDelete()
2022-07-25 03:01:16 +00:00
Darian Leung
22d052fe7a hal: Fix systimer counter value bit field
This commit fixes the systimer_counter_value_t by adding a resreved field so that the
type fills 64-bits.

Without the reserved field, when compiling with -O0 optimization, the unoccupied high
bits would not be initalized by the compiler, leading to systimer_hal_get_counter_value()
returning a garbage value.
2022-07-24 16:34:24 +08:00
Mahavir Jain
cd9541fdb4 Merge branch 'bugfix/fix_esp32_ci_v4.3' into 'release/v4.3'
unit_test: power on wifi or bt domain before phy enable(v4.3)

See merge request espressif/esp-idf!19176
2022-07-23 03:13:40 +08:00
Jiang Jiang Jian
561218ab8a Merge branch 'bugfix/schm_process_in_active_crash_v4.3' into 'release/v4.3'
Coex: fixed crash when calculating end transfer time(v4.3)

See merge request espressif/esp-idf!19190
2022-07-22 21:24:24 +08:00
jincheng
e20fd0b4f1 fix the dependency error of macro for memory debug 2022-07-22 16:17:53 +08:00
xiongweichao
178e97b152 coex: fixed crash when calculating end transfer time 2022-07-22 16:11:27 +08:00
zwj
0a2d924a19 Update ble lib:
Fixed BLE ke_mem.c assert
Fixed adv report duplicate check
2022-07-22 07:44:46 +00:00
Jiang Jiang Jian
cbeb9ae14b Merge branch 'bugfix/phy_init_failed_when_wifi_deinit_4.3' into 'release/v4.3'
esp_wifi:bugfix for phy init failed when wifi deinit(4.3)

See merge request espressif/esp-idf!19138
2022-07-22 12:01:06 +08:00
Jiang Jiang Jian
182af34da8 Merge branch 'bugfix/uart_isr_followup_v4.3' into 'release/v4.3'
UART: Fix custom ISR registration function (backport v4.3)

See merge request espressif/esp-idf!19053
2022-07-22 11:58:05 +08:00
Jiang Jiang Jian
f412bb1701 Merge branch 'bugfix/wifi_condition_linker_mapping_v4.3' into 'release/v4.3'
esp_wifi: Fix linking of WiFi functions dependent on PM_ENABLE (v4.3)

See merge request espressif/esp-idf!18799
2022-07-22 11:57:42 +08:00
Jiang Jiang Jian
c4aa7e2ebf Merge branch 'feat/make_property_idf_component_manager_root_level' into 'release/v4.3'
Feat/make property idf component manager root level

See merge request espressif/esp-idf!18707
2022-07-22 11:57:20 +08:00
chenjianxing
927b402153 unit_test: power on wifi or bt domain before phy enable 2022-07-22 10:28:32 +08:00
zhiweijian@espressif.com
197371d085 Fixed bluedroid host memory overflow 2022-07-20 09:12:46 +00:00
xueyunfei
78ba8d406d bugfix for phy init failed when wifi deinit 2022-07-20 15:17:26 +08:00
c846ed9a58 Init phy data to default if invalid in flash partition to avoid bootloops
Signed-off-by: ronghulin <ronghulin@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/6610
2022-07-19 18:49:29 +08:00
ronghulin
a70b8e0fb8 Bugfix: Connect example to add scan mode config
Closes https://github.com/espressif/esp-idf/issues/6595
2022-07-19 15:43:35 +08:00
Darian Leung
823e1da543 wifi: Fix linking of WiFi functions dependent on PM_ENABLE
The following functions are only defined when CONFIG_PM_ENABLE is defined:

- wifi_apb80m_request()
- wifi_apb80m_release()

This commit makes their linker script mapping statements also dependent on CONFIG_PM_ENABLE
thus fixing some linker errors when CONFIG_PM_ENABLE is disabled.
2022-07-19 12:41:58 +08:00
jiangguangming
a7ce9ba63c example: peripherals/usb: fix typo naming of local variables 2022-07-19 11:05:40 +08:00
Mahavir Jain
af928313ab Merge branch 'update_v4.3/mbedtls_v2.28.1' into 'release/v4.3'
mbedtls: Update to release v2.28.1 (v4.3)

See merge request espressif/esp-idf!19042
2022-07-18 18:49:01 +08:00
Fu Hanxi
19ad4a8d51 ci: pip install idf-component-manager inside CI 2022-07-18 13:21:55 +08:00
Sergei Silnov
aa2300c002 docs: Add IDF_COMPONENT_MANAGER build property 2022-07-18 13:21:41 +08:00
Sergei Silnov
38aecb227e docs: Enable the component manager by default in CMake 2022-07-18 13:21:41 +08:00
Fu Hanxi
12180aabfa build&config: lift property IDF_COMPONENT_MANAGER to root level 2022-07-18 13:21:41 +08:00
Anton Maklakov
4f9f78da71 Merge branch 'bugfix/mqtt_read_neg_and_ping_v4.3' into 'release/v4.3'
mqtt: Fix incorrect reads on error (v4.3)

See merge request espressif/esp-idf!18178
2022-07-16 04:43:48 +08:00
Chen Wu
ffc7057ae4 lwip: Fixed that ipv6 dns cannot work 2022-07-15 16:18:15 +08:00
David Cermak
0ab0ca5410 mqtt: Fix incorrect reads on error (idf_v4.x)
* Update submodule: git log --oneline 985078affa8a2d2b56b87c8e6455252850f895c6..27eb4726067465c5c67d4ecdca5ddccd26f02580

Detailed description of the changes:
* MQTT: Fix signature matching for integer values (Backport to idf_v4.x)
  - See merge request espressif/esp-mqtt!133
  - Closes https://github.com/espressif/esp-idf/issues/8482
  - MQTT: Fix signature matching for integer values (espressif/esp-mqtt@f162002)
* ci: Deploy idf_v4.x branch to GitHub (espressif/esp-mqtt@ee5ecad)
2022-07-15 06:16:40 +00:00
Jiang Jiang Jian
2c8420bbd5 Merge branch 'docs/update_wifi_multiple_antennas_doc_v4.3' into 'release/v4.3'
docs: update wifi multiple antennas docs (v4.3)

See merge request espressif/esp-idf!19047
2022-07-15 10:48:20 +08:00
Jiang Jiang Jian
99bfa32eb9 Merge branch 'bugfix/fix_blufi_example_softap_current_connection_equal_zero_issue_v4.3' into 'release/v4.3'
bluetooth: fix two blufi example bugs(Backport v4.3)

See merge request espressif/esp-idf!18771
2022-07-14 20:19:20 +08:00
Jiang Jiang Jian
432e6af7f6 Merge branch 'bugfix/reset_ble_hw_on_inititalization_v4.3' into 'release/v4.3'
[Bluetooth] reset Bluetooth hardware during controller inititalization on ESP32-C3(backport release/v4.3)

See merge request espressif/esp-idf!18965
2022-07-14 20:18:46 +08:00
Jiang Jiang Jian
60f585e4c6 Merge branch 'docs/update_wifi_beacon_timeout_doc_v4.3' into 'release/v4.3'
docs: update wifi beacon timeout docs (v4.3)

See merge request espressif/esp-idf!19045
2022-07-14 20:18:30 +08:00
Omar Chebib
9fa0c131a4 UART: Fix custom ISR registration function
* Closes https://github.com/espressif/esp-idf/issues/8491
2022-07-14 17:49:52 +08:00
Island
c21962ea45 Merge branch 'bugfix/print_ready_after_init_transaction_forv4.3' into 'release/v4.3'
ble_mesh:change the location of print ready(v4.3)

See merge request espressif/esp-idf!19029
2022-07-14 17:28:11 +08:00
Dai Zi Yan
18b41408fe Apply 1 suggestion(s) to 1 file(s) 2022-07-14 16:48:59 +08:00
Krzysztof Budzynski
153271c3f1 Apply 1 suggestion(s) to 1 file(s) 2022-07-14 16:48:59 +08:00
Marius Vikhammer
a7177bc695 Apply 2 suggestions by Marius Vikhammer 2022-07-14 16:48:44 +08:00
muhaidong
f5bf1b502e docs: update wifi multiple antennas docs 2022-07-14 16:48:29 +08:00
muhaidong
0ec51f96d6 docs: add WIFI_EVENT_STA_BEACON_TIMEOUT event docs. 2022-07-14 15:43:15 +08:00
muhaidong
9ab491d055 docs: update wifi beacon timeout docs 2022-07-14 15:43:15 +08:00
Laukik Hase
7008e36ccb mbedtls: Update to release v2.28.1
- Changelog: https://github.com/Mbed-TLS/mbedtls/releases/tag/v2.28.1
2022-07-14 10:08:45 +05:30
Yuan Hong Hui
ff77e2fa69 ble_mesh:change the location of print ready 2022-07-13 18:08:47 +08:00
muhaidong
1fce807796 bluetooth: fix two blufi example bugs
1. Softap mode do not assign ip issue
2. Softap current connection always show 0
2022-07-13 17:48:03 +08:00
wangmengyang
a471f1e18e fix licence copyright for header file syscon_reg.h on ESP32C3 and ESP32S3
# Conflicts:
#	components/soc/esp32s3/include/soc/syscon_reg.h
2022-07-13 17:35:27 +08:00
wangmengyang
580b57c8b1 component/bt: reset Bluetooth hardware during controller inititalization on ESP32-C3
1. Rename MACROs SYSTEM_WIFI_RST_EN register bit fields to be more recognizable
2. reset Bluetooth baseband and MAC bits to fix the issue of task watchdog triggered during controller initialization due to invalid hardware state
2022-07-13 17:35:22 +08:00
Jiang Jiang Jian
0dd9e338de Merge branch 'bugfix/fix_esp32_ke_mem_c_assert_v4.3' into 'release/v4.3'
fix esp32 BLE ke_mem.c assert for v4.3

See merge request espressif/esp-idf!19002
2022-07-13 15:40:34 +08:00
zwj
8769f62c3b fix esp32 BLE ke_mem.c assert 2022-07-13 03:08:36 +00:00
Jiang Jiang Jian
0326e5874f Merge branch 'bugfix/esp32s2_startup_garbled_output_v4.3' into 'release/v4.3'
esp_system: fix garbled UART output on startup on esp32s2 (v4.3)

See merge request espressif/esp-idf!18751
2022-07-13 11:01:33 +08:00
Jiang Jiang Jian
0df62cf49a Merge branch 'bugfix/ble_50_sync_periodic_adv_lost_data_v4.3' into 'release/v4.3'
components/bt: Fix ble sync periodic adv report will lost data(backport  release/v4.3)

See merge request espressif/esp-idf!18959
2022-07-13 11:01:05 +08:00
Jiang Jiang Jian
47c20c4294 Merge branch 'bugfix/wifi_sta_and_ble_disconnect_BCI-303_v4.3' into 'release/v4.3'
component_bt: Fix wifi is initialized before bluetooth initialization, bluetooth can't stay connected(v4.3)

See merge request espressif/esp-idf!19001
2022-07-13 11:00:23 +08:00
Ivan Grokhotkov
971e3b139b Merge branch 'bugfix/fix_docker_image_build_v4.3' into 'release/v4.3'
ci: Don't build docker image for linux-arm64

See merge request espressif/esp-idf!19013
2022-07-12 22:20:06 +08:00
Jiang Jiang Jian
d6a422b0a6 Merge branch 'bugfix/correct_blecmd_for_rf_path_v4.3' into 'release/v4.3'
Bluedroid: Fixed compilation error due to incorrect macro name (v4.3)

See merge request espressif/esp-idf!18995
2022-07-12 20:37:05 +08:00
Krzysztof Budzynski
923ab8aa06 Merge branch 'docs/404_tips_backport_v4.3' into 'release/v4.3'
docs: update 404.rst (backport v4.3)

See merge request espressif/esp-idf!18974
2022-07-12 19:53:07 +08:00
Sergei Silnov
9600ba2e7e tools: Don't build docker image for linux-arm64 2022-07-12 13:16:29 +02:00
Jiang Jiang Jian
79765d12df Merge branch 'bugfix/wifi_bt_power_domain_leakage_current_v4.3' into 'release/v4.3'
Bugfix/wifi bt power domain leakage current v4.3

See merge request espressif/esp-idf!18901
2022-07-12 15:45:07 +08:00
xiongweichao
5cf696a714 Fix wifi is initialized before bluetooth initialization, bluetooth can't stay connected 2022-07-12 14:44:46 +08:00
Jiang Jiang Jian
b6af8e08e8 Merge branch 'bugfix/s3_wakeup_light_sleep_rtc_wdt_timeout_v4.3' into 'release/v4.3'
component_bt: Fixed rtc watchdog timeout when waking up light sleep due to some functions not in IRAM(v4.3)

See merge request espressif/esp-idf!18873
2022-07-12 12:18:34 +08:00
Rahul Tank
e28ec880a3 Bluedroid: Fixed compilation error due to incorrect macro name 2022-07-12 09:44:23 +05:30
Jiang Jiang Jian
4e5162dd5c Merge branch 'bugfix/update_gpio_intr_enable_note_v4.3' into 'release/v4.3'
Update the note of the gpio_intr_enable function(v4.3)

See merge request espressif/esp-idf!18543
2022-07-12 12:00:09 +08:00
Jiang Jiang Jian
890e29fcac Merge branch 'bugfix/no_proxy_beacon_send_after_deinit_v4.3' into 'release/v4.3'
ble_mesh: stack: Bugfix for proxy beacon send after reinit mesh(v4.3)

See merge request espressif/esp-idf!18792
2022-07-12 10:42:22 +08:00
Jiang Jiang Jian
8d9b493120 Merge branch 'bugfix/enterprise_certs_ca_expired_v4.3' into 'release/v4.3'
esp_wifi: Fix issue of ca certificate expired.

See merge request espressif/esp-idf!18521
2022-07-12 10:37:57 +08:00
Jiang Jiang Jian
e66df0492e Merge branch 'bugfix/fix_ble_ext_adv_parameter_detection_v4.3' into 'release/v4.3'
component/bt: check the ble ext adv parameters (backport release/v4.3)

See merge request espressif/esp-idf!18490
2022-07-12 10:35:09 +08:00
Jiang Jiang Jian
fc14448654 Merge branch 'doc/ble_deinit_v4.3' into 'release/v4.3'
doc(bt): Add description for de-initialize bt controller(backport release/v4.3)

See merge request espressif/esp-idf!18929
2022-07-12 10:34:53 +08:00
baohongde
7580de6be1 components/bt: Fix the issue caused by the power off the bt power domain 2022-07-11 21:16:42 +08:00
Li Shuai
3cfda14ed4 fix the wifi scan fail issue caused by the power off the wifi power domain 2022-07-11 21:16:42 +08:00
Li Shuai
94d1a1847e ci: replace old header with new SPDX header style 2022-07-11 21:15:16 +08:00
Li Shuai
30b32fa45e esp_hw_support: force power down wifi and bt power domain when rtc module init 2022-07-11 21:15:16 +08:00
baohongde
7f543bb3b4 Power Management: Initialize backup memory for MAC and Baseband power up/down 2022-07-11 21:15:16 +08:00
baohongde
1e7bc626ee Power Management: power up/down BT power domain when BT init/deinit 2022-07-11 21:15:16 +08:00
Li Shuai
a66b5bbda2 Power Management: power up or down wifi power domain when wifi init or deinit 2022-07-11 21:15:16 +08:00
Anton Maklakov
e9514be5f8 Merge branch 'fix/tls-size-esp32c2_esp32c3_esp32h2_v4.3' into 'release/v4.3'
esp_system: Fix esp32c2/esp32c3/esp32h2 TLS size (v4.3)

See merge request espressif/esp-idf!18828
2022-07-11 18:44:45 +08:00
xiewenxiang
730094a3ef components/bt: Fix ble sync periodic adv report lost data issue 2022-07-11 16:49:26 +08:00
Jiang Jiang Jian
1970d887a3 Merge branch 'bugfix/do_not_allow_unauthenticated_encrypted_key_data_release_v4.3' into 'release/v4.3'
esp_wifi: Ignore unauthenticated encrypted EAPOL-Key data and fix

See merge request espressif/esp-idf!18315
2022-07-11 16:33:30 +08:00
wangziyan
ec9e44610e docs: update 404.rst 2022-07-11 15:56:08 +08:00
Wang Meng Yang
500df7bc1f Merge branch 'bugfix/fix_osi_men_dbg_xxx_not_defined_when_enable_mem_dbg_v4.3' into 'release/v4.3'
bugfix/fix the issue of functions not defined when enable memory debug (v4.3)

See merge request espressif/esp-idf!18816
2022-07-11 15:37:43 +08:00
Jiang Jiang Jian
8225ffcda3 Merge branch 'bugfix/install_key_refactor_v4.3' into 'release/v4.3'
esp_wifi: Refactor key install code(v4.3)

See merge request espressif/esp-idf!18599
2022-07-11 11:28:28 +08:00
xiongweichao
5cc8262a09 Update the note of the gpio_intr_enable function 2022-07-11 02:45:01 +00:00
xiewenxiang
98245dabe0 component/bt: check the ble ext adv parameters 2022-07-11 02:44:30 +00:00
aditi_lonkar
f2e96e85ff esp_wifi: Fix issue of ca certificate expired. 2022-07-11 02:42:38 +00:00
Ivan Grokhotkov
95dbc746ed esp_system: fix garbled UART output on startup on esp32s2
Closes https://github.com/espressif/esp-idf/issues/9168
2022-07-11 02:41:46 +00:00
Hrudaynath Dhabe
7af06705d3 esp_wifi: Ignore unauthenticated encrypted EAPOL-Key data and fix handling of key RSC.
Closes https://github.com/espressif/esp-idf/issues/8401
2022-07-10 08:00:24 +00:00
Jiang Jiang Jian
a015532f66 Merge branch 'bugfix/mbedtls_free_keypair_v4.3' into 'release/v4.3'
Nimble: Fixed memory leak while generating keypair using embedtls v4.3

See merge request espressif/esp-idf!18719
2022-07-10 15:51:44 +08:00
Jiang Jiang Jian
5fe6852ed9 Merge branch 'bugfix/restore_edr_en_and_protect_for_vhci_env_v4.3' into 'release/v4.3'
bugfix/restore edr_en and add protect for vhci_env (v4.3)

See merge request espressif/esp-idf!18812
2022-07-10 15:49:48 +08:00
Jiang Jiang Jian
36875e1b78 Merge branch 'bugfix/lower_a2dp_appT_prio_v4.3' into 'release/v4.3'
bugfix/lower the priority of application task of a2dp demo (v4.3)

See merge request espressif/esp-idf!18820
2022-07-10 15:48:15 +08:00
Jiang Jiang Jian
aa81cebd82 Merge branch 'bugfix/resolve_redefinition_in_spp_and_hid_v4.3' into 'release/v4.3'
bugfix/resolve redefinition in btc_spp.h and btc_hd.h/btc_hh.h (v4.3)

See merge request espressif/esp-idf!18825
2022-07-10 15:47:16 +08:00
Jiang Jiang Jian
802c93b5f1 Merge branch 'bugfix/xtensa_sol_frame_saves_extra_registers_v4.3' into 'release/v4.3'
freertos: Xtensa solicited stack frame should save threadptr register (v4.3)

See merge request espressif/esp-idf!18854
2022-07-10 15:45:16 +08:00
Jiang Jiang Jian
09b05350b3 Merge branch 'bugfix/main_task_on_cpu1_startup_failure_v4.3' into 'release/v4.3'
freertos: Fix issue with bootup failure in ESP_MAIN_TASK_AFFINITY_CPU1 config (v4.3)

See merge request espressif/esp-idf!18936
2022-07-10 15:41:46 +08:00
Jiang Jiang Jian
0c6e436e15 Merge branch 'docs/update_wifi_csi_sub_carrier_index_doc_v4.3' into 'release/v4.3'
docs:update wifi sci subcarrier index docs (v4.3)

See merge request espressif/esp-idf!18942
2022-07-10 15:39:57 +08:00
Jiang Jiang Jian
d5728c4583 Merge branch 'bugfix/not_use_malloc_in_bluedroid_v4.3' into 'release/v4.3'
component/bt: use osi_malloc instead of malloc in bluedroid

See merge request espressif/esp-idf!18844
2022-07-08 16:48:30 +08:00
Jiang Jiang Jian
e268aec85c Merge branch 'bugfix/fix_some_memory_leak_in_phy_v4.3' into 'release/v4.3'
fix the bug that some memory leaked in phy after wifi/ble deinit

See merge request espressif/esp-idf!18550
2022-07-08 16:46:16 +08:00
muhaidong
44ef1f070e docs: modify some Chinese expressions related to CSI 2022-07-08 15:01:48 +08:00
muhaidong
b142e78363 docs:update wifi sci subcarrier index docs 2022-07-08 14:44:33 +08:00
jincheng
4e7b2fedcd resolve redefinition in btc_spp.h and btc_hd.h/btc_hh.h
Closes https://github.com/espressif/esp-idf/issues/9199
2022-07-08 14:25:55 +08:00
jincheng
21888edbf3 restore edr_en which wrongly cleared by rsw
add critical protection for vhci_env_p->vhci_intr_st
ignore max_page when handle remote features
2022-07-08 14:11:46 +08:00
jincheng
dca3686f0a lower the priority of application task of a2dp demo 2022-07-08 13:08:23 +08:00
Mahavir Jain
35f8df3995 freertos: Fix issue with bootup failure in ESP_MAIN_TASK_AFFINITY_CPU1 config
Idle tick hook that indicates completion of scheduler init must be launched
on other core than the one where main task runs. Earlier it was assumed that
main task shall always run on PRO cpu but that behavior can be changed with
ESP_MAIN_TASK_AFFINITY_CPU1 and hence this fix.

Closes https://github.com/espressif/esp-idf/issues/9247
Closes IDFGH-7705
2022-07-08 08:37:28 +05:30
xiewenxiang
ac3fbccbe1 doc(bt): Add description for de-initialize bt controller 2022-07-08 11:03:16 +08:00
jincheng
5050625f9e fix the issue of functions not defined when enable memory debug 2022-07-08 11:02:04 +08:00
Mahavir Jain
9bbe2fc041 Merge branch 'bugfix/efuse_esp_efuse_utility_burn_efuses' into 'release/v4.3'
efuse: Fix burn operation when data was written directly to regs

See merge request espressif/esp-idf!18886
2022-07-07 21:12:24 +08:00
Jack
937069dc6c esp_wifi: clear phy calibrated flag when phy pd memory deinit 2022-07-06 04:36:12 +00:00
Jack
9b0b046382 fix the bug that some memory leaked in phy after wifi/ble deinit 2022-07-06 04:36:12 +00:00
KonstantinKondrashov
7841054063 efuse: Fix burn operation when data was written directly to regs
Closes https://github.com/espressif/esp-idf/issues/9290
2022-07-05 17:37:48 +08:00
Rahul Tank
aedf00cd78 Nimble: Added check to free keypair if already allocated to avoid memory leak.
Added an API that allows to free keypair
2022-07-05 10:53:21 +05:30
gaoxu
7a2bad690b SPI:fix spi slave example sender ccount issue
On riscv core, core cycle counter counts the clock cycles only when core is active (not sleeping).
In spi_slave/sender example, it uses ccount (core cycle counter) to do a simple debounce.
Therefore, when using spi_slave/sender and spi_slave/receiver, program will be stuck.
This commit fix this issue by using esp_timer


(cherry picked from commit afe3bfe19f)
2022-07-05 11:45:47 +08:00
xiongweichao
24e47c1def Fix rtc watchdog timeout when waking up light sleep because some functions are not in IRAM 2022-07-05 11:16:19 +08:00
Darian Leung
5f50e835e6 freertos: Xtensa FreeRTOS saves threadptr in solicited stack frame
The Xtensa FreeRTOS port does not save the threadptr register when
doing a voluntary yield. This can result in a crash when multiple
tasks used the threadptr register and call "taskYIELD()".

This commit adds the threadptr register to the solicited stack frame.
2022-07-04 18:27:26 +08:00
baohongde
565142e60c component/bt: use osi_malloc instead of malloc in bluedroid 2022-07-04 16:17:51 +08:00
Alexey Lapshin
0f98788d59 esp_system: Fix esp32c2/esp32c3/esp32h2 TLS size
The change fixes thread-local-storage size by removing .srodata section
from it. It initially was included in TLS section by mistake.
The issue was found when stack size increased after building applications
with GCC-11.1 compiler. Stack size became bigger because some new data
appeared in .srodata. See more details here:
adce62f53d
2022-07-01 16:08:04 +04:00
wangjialiang
5747b35308 ble_mesh: stack: Bugfix for proxy beacon send after reinit mesh 2022-07-01 11:43:48 +08:00
Jiang Jiang Jian
228cbc4dae Merge branch 'bugfix/sync_host_nocp_cmd_v4.3' into 'release/v4.3'
Nimble: Add support for sync for Host NOCP command .

See merge request espressif/esp-idf!18609
2022-06-30 15:55:08 +08:00
Jiang Jiang Jian
e313ab14ec Merge branch 'bugfix/a_small_fix_for_multi_heap_backport_v4.3' into 'release/v4.3'
Heap: fix param passed to assert_valid_block, should be block not ptr(backport v4.3)

See merge request espressif/esp-idf!18675
2022-06-29 14:06:36 +08:00
Jiang Jiang Jian
473f637ca2 Merge branch 'bugfix/a2dp_source_not_stop_discovery_correctly_v4.3' into 'release/v4.3'
bugfix/avoid wrongly restart discovery in a2dp_source (v4.3)

See merge request espressif/esp-idf!18711
2022-06-29 13:52:05 +08:00
Jiang Jiang Jian
e448ba32d6 Merge branch 'bugfix/app_trace_iram_v4.3' into 'release/v4.3'
apptrace: move all apptrace related functions to IRAM (v4.3)

See merge request espressif/esp-idf!18729
2022-06-29 13:50:21 +08:00
Marius Vikhammer
85511fcafb apptrace: move all apptrace related functions to IRAM
Closes: https://github.com/espressif/esp-idf/issues/9131
2022-06-29 10:21:32 +08:00
Roland Dobai
5f93e3c702 Merge branch 'tools/csv_handling_overhaul_v4.3' into 'release/v4.3'
tools: Overhaul csv handling for mfg_gen and nvs_partition_gen (v4.3)

See merge request espressif/esp-idf!18568
2022-06-28 23:30:22 +08:00
jincheng
464673fb10 avoid wrongly restart discovery 2022-06-28 13:05:13 +08:00
Djordje Nedic
dd10afb18d tools: overhaul csv handling for mfg_gen and nvs_partition_gen
This fixes the issue where multiline strings and strings with delimiters inside the nvs input csv file were incorrectly parsed, and adds back the ability to add comment lines anywhere in the CSV file.

The issue stems from the move away from the python built in csv module to manual parsing, which was made after moving away from using the csv module to parse mfg data.

This reverts back to using the csv module for parsing and writing csv data in both mfg_gen and nvs_partition_gen, fixes the original issue in mfg_gen and improves code quality which makes the code more readable and maintainable.

Closes https://github.com/espressif/esp-idf/issues/7175
2022-06-24 22:18:00 +02:00
Island
7988aec391 Merge branch 'feature/add_filter_seq_auth_config_v4.3' into 'release/v4.3'
ble_mesh: stack: Add filter old seq_auth packet menuconfig(v4.3)

See merge request espressif/esp-idf!18650
2022-06-24 11:15:45 +08:00
ioio
d762f2bd3f bugfix (nvs_flash): Fix nvs_flash_init_partition_ptr
Added unit test case.

Closes https://github.com/espressif/esp-idf/pull/8755

Signed-off-by: Jakob Hasse <jakob.hasse@espressif.com>
2022-06-24 10:46:27 +08:00
jingli
b01797b87d fix param passed to assert_valid_block, should be block not ptr 2022-06-23 21:45:26 +08:00
Jiang Jiang Jian
b3f523b64b Merge branch 'feature/efuse_rst_is_treated_as_poweron_rst_v4.3' into 'release/v4.3'
reset_reasons: EFUSE_RST is treated as POWERON_RST + checks errors of eFuse BLOCK0 (v4.3)

See merge request espressif/esp-idf!14806
2022-06-23 17:06:27 +08:00
wangjialiang
dd72d309b6 ble_mesh: stack: Add filter old seq_auth packet menuconfig 2022-06-23 16:19:15 +08:00
David Čermák
c8882c2ba5 Merge branch 'bugfix/vfs_sock_select_race_v4.3' into 'release/v4.3'
vfs: Fix potential select() race if both sock and other-fd trigger (v4.3)

See merge request espressif/esp-idf!18176
2022-06-22 22:56:39 +08:00
KonstantinKondrashov
714bc66e0e efuse: Checks errors of 4x coding scheme for BLOCK0 if so then abort 2022-06-22 18:04:11 +08:00
KonstantinKondrashov
0a71dce1ef 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-22 17:56:32 +08:00
Mahavir Jain
0fc7bd6a37 Merge branch 'ci/fix_protobuf_error' into 'release/v4.3'
[ci] Fix protobuf-related error in assign_test stage

See merge request espressif/esp-idf!18570
2022-06-22 13:44:26 +08:00
morris
a1c4397ce2 Merge branch 'bugfix/cpu_cycle_count_not_iram_v4.3' into 'release/v4.3'
HAL: place cpu_ll_get_cycle_count in IRAM (v4.3)

See merge request espressif/esp-idf!18294
2022-06-22 11:42:27 +08:00
David Cermak
b972b442e0 vfs: Fix potential select() race if both sock and other-fd trigger
This fixes a potential race condition in select() if both a socket-fd
and non-socket fd trigger simultaneously to unblock this select.
In case of both fds, we use lwip's local thread semaphore, so we only
have to try return it (if it was taken/triggered more than once) when
we exit select().

Closes https://github.com/espressif/esp-idf/issues/8896
2022-06-21 16:39:58 +00:00
Jiang Jiang Jian
578146ad5d Merge branch 'bugfix/avdtp_genreal_reject_format_error_v4.3' into 'release/v4.3'
component_bt: Fix AVDTP general reject format error(v4.3)

See merge request espressif/esp-idf!18557
2022-06-21 20:54:45 +08:00
Jiang Jiang Jian
7855067dc3 Merge branch 'feature/update_hfp_ag_version_v4.3' into 'release/v4.3'
component_bt: update hfp_ag version to 1.7.2(v4.3)

See merge request espressif/esp-idf!18604
2022-06-21 19:41:11 +08:00
Rahul Tank
57fd6c0e69 Nimble: Add support for sync for Host NOCP command . 2022-06-21 16:41:52 +05:30
morris
b0b895cf00 Merge branch 'bugfix/rmt_register_file_v4.3' into 'release/v4.3'
rmt: fix error in rmt register file (v4.3)

See merge request espressif/esp-idf!18512
2022-06-21 17:45:50 +08:00
xiongweichao
e1120e2554 update hfp_ag version to 1.7.2 2022-06-21 14:46:49 +08:00
chenjianxing
b4d3ed9f10 esp_wifi: Refactor key install code 2022-06-21 11:23:46 +08:00
Jiang Jiang Jian
142d7d2bb2 Merge branch 'bugfix/adds_iram_attr_for_efuse_apis_v4.3' into 'release/v4.3'
bootloader_efuse: Adds IRAM_ATTR for efuse API (v4.3)

See merge request espressif/esp-idf!18562
2022-06-20 19:57:03 +08:00
Jiang Jiang Jian
fdc1aa147e Merge branch 'bugfix/light_sleep_when_rtc_is_used_for_gettimeofday_v4.3' into 'release/v4.3'
esp_hw_support: Fix time spent in light sleep when RTC is used for gettimeofday (v4.3)

See merge request espressif/esp-idf!18414
2022-06-19 23:17:43 +08:00
Jiang Jiang Jian
2e7cc4679d Merge branch 'feature/adds_check_32k_xtal_stopped_v4.3' into 'release/v4.3'
esp_hw_support: Adds a msg when 32k xtal was stopped (v4.3)

See merge request espressif/esp-idf!18412
2022-06-19 23:17:29 +08:00
Jiang Jiang Jian
79ae12203e Merge branch 'bugfix/ipc_blocking_v4.3' into 'release/v4.3'
esp_ipc: Fix a case when ipc_task() can wake up blocking task early (v4.3)

See merge request espressif/esp-idf!18416
2022-06-19 23:16:28 +08:00
morris
7c9e19b9bb rmt: fix error in rmt register file
Closes https://github.com/espressif/esp-idf/issues/9100
2022-06-18 13:51:53 +00:00
Laukik Hase
75073353ed ci: Fix protobuf-related error in assign_test stage 2022-06-17 15:37:49 +05:30
Mahavir Jain
d9610cfa0b Merge branch 'bugfix/esp_crt_bundle_build_issue_v4.3' into 'release/v4.3'
esp_crt_bundle: Fix build problems if MBEDTLS_CERTIFICATE_BUNDLE is disabled (v4.3)

See merge request espressif/esp-idf!18476
2022-06-17 14:15:44 +08:00
KonstantinKondrashov
a4a7f1d8b7 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-17 13:53:35 +08:00
xiongweichao
21fbc7355a Fix AVDTP general reject format error. 2022-06-17 10:21:10 +08:00
Jiang Jiang Jian
e2ebb90df3 Merge branch 'bugfix/eap_method_selection_release_v4.3' into 'release/v4.3'
esp_wifi: Fix the negotiation of method with eap server.

See merge request espressif/esp-idf!18508
2022-06-15 11:25:45 +08:00
Jiang Jiang Jian
a9432cd781 Merge branch 'bugfix/psram_startup_crash_v4.3' into 'release/v4.3'
psram: Fix startup crash when `CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0` (v4.3)

See merge request espressif/esp-idf!18501
2022-06-15 11:10:32 +08:00
Jiang Jiang Jian
319ba4419d Merge branch 'bugfix/uninitialized-element_v4.3' into 'release/v4.3'
component_bt:initialize all elements of esp_bt_controller_config_t(v4.3)

See merge request espressif/esp-idf!18405
2022-06-15 11:06:56 +08:00
Hrudaynath Dhabe
7ccd26eeaf esp_wifi: Fix the negotiation of method with eap server. 2022-06-14 12:34:18 +00:00
Laukik Hase
7c85d2c498 freertos: Indicate completed initialization for APP CPU with idle task hook
Co-authored-by: Mahavir Jain <mahavir@espressif.com>
2022-06-14 14:25:59 +05:30
Jiang Jiang Jian
2a4321223f Merge branch 'feature/add_esp32c3_hci_uart_example_v4.3' into 'release/v4.3'
Bluetooth: add hci uart example to ESP32-C3

See merge request espressif/esp-idf!18481
2022-06-14 16:24:38 +08:00
xiongweichao
3a2f98613d modified README.md 2022-06-13 16:10:40 +08:00
xiongweichao
3b3f9c1f49 add nvs initialize 2022-06-13 15:56:44 +08:00
wangmengyang
1257bd453e example/controller_hci_uart_esp32c3: fixed the GPIO pin mask for input PINs of UART1 2022-06-13 15:56:44 +08:00
wangmengyang
9e96538a86 Added example(ESP32-C3), to use Bluetooth Controller through HCI UART transport 2022-06-13 15:56:44 +08:00
Mahavir Jain
9b593dcb67 test_apps: add build only test for !MBEDTLS_CERTIFICATE_BUNDLE 2022-06-13 11:49:04 +05:30
Mahavir Jain
2cfae63c2b examples: add dependency on cert bundle configuration
Refactor examples to build with MBEDTLS_CERTIFICATE_BUNDLE disabled. Only examples
that can work with certificate bundle disabled have been modified here.
2022-06-13 11:49:00 +05:30
Mahavir Jain
d8ffa6df04 esp_crt_bundle: Fix build problems if MBEDTLS_CERTIFICATE_BUNDLE is disabled
Exclude source and include file from build list if certificate bundle feature
is disabled.

Closes https://github.com/espressif/esp-idf/issues/8714
Closes IDFGH-7106
2022-06-13 11:24:00 +05:30
Mahavir Jain
4a85b2256c Merge branch 'bugfix/esp_http_client_test_v4.3' into 'release/v4.3'
esp_http_client example: Fix CI failures (v4.3)

See merge request espressif/esp-idf!18465
2022-06-12 12:11:38 +08:00
Shubham Kulkarni
fda52d581b esp_http_client example: Fix CI failures 2022-06-10 16:59:29 +05:30
morris
c40400af8b Merge branch 'bugfix/c3_efuse_fail_bits_v4.3' into 'release/v4.3'
soc: Fix efuse fail bits (v4.3)

See merge request espressif/esp-idf!18418
2022-06-10 17:06:50 +08:00
Jiang Jiang Jian
c501448c13 Merge branch 'bugfix/fixed-unsatisfiable-condition_v4.3' into 'release/v4.3'
Fixed comparison with ESP_MONITOR_DECODE (v4.3)

See merge request espressif/esp-idf!18335
2022-06-10 10:47:26 +08:00
KonstantinKondrashov
50606887b2 esp_hw_support: Fix time spent in light sleep when RTC is used for gettimeofday
The esp_timer was not advanced correctly.
2022-06-09 14:51:44 +00:00
KonstantinKondrashov
8d022df00c esp_hw_support: Adds a msg when 32k xtal was stopped 2022-06-09 22:48:53 +08:00
KonstantinKondrashov
ff4b6949cf esp_ipc: Fix a case when ipc_task() can wake up blocking task early
Closes https://github.com/espressif/esp-idf/issues/8559
2022-06-09 10:59:30 +00:00
KonstantinKondrashov
4e0e261f4e soc: Fix description of efuse fail bits 2022-06-09 10:35:25 +00:00
Jiang Jiang Jian
c65f973e64 Merge branch 'bugfix/mbedtls_dynamic_buffer_crash_on_ssl_server_v4.3' into 'release/v4.3'
fix(mbedtls): fix ssl server memory leak when enable mbedtls dynamic buffer (backport v4.3)

See merge request espressif/esp-idf!17876
2022-06-09 17:26:16 +08:00
Jiang Jiang Jian
5494b483af Merge branch 'bugfix/pm_enabled_bt_build_fail_v4.3' into 'release/v4.3'
Bluetooth build fail when power management is enabled(v4.3)

See merge request espressif/esp-idf!18382
2022-06-09 17:25:51 +08:00
Mahavir Jain
6524f136b9 Merge branch 'bugfix/mbedtls_dynamic_memory_crash_on_rsa_ciphers_v4.3' into 'release/v4.3'
mbedtls: fix ssl server crash when enable mbedtls dynamic buffer(backport v4.3)

See merge request espressif/esp-idf!18428
2022-06-09 16:25:58 +08:00
Mahavir Jain
562e94be9e Merge branch 'fix/menuconfig_option_esp_cryptoauthlib_v4.3' into 'release/v4.3'
esp_tls_mbedtls.c: Fix esp-idf integration of esp-cryptoauthlib (v4.3)

See merge request espressif/esp-idf!18401
2022-06-09 16:08:14 +08:00
Li Jingyi
24feccbd80 mbedtls: fix ssl server crash when enable mbedtls dynamic buffer
Not free keycert until MBEDTLS_SSL_CLIENT_KEY_EXCHANGE for rsa key exchange methods, because keycert will be used to parse client key exchange.
2022-06-09 04:37:35 +00:00
Mahavir Jain
49bfb8491f Merge branch 'bugfix/esp_http_client_example_v4.3' into 'release/v4.3'
esp_http_client example: Add cert for redirect to HTTPS example (v4.3)

See merge request espressif/esp-idf!18403
2022-06-09 12:35:48 +08:00
Jiang Jiang Jian
5be64c3111 Merge branch 'bugfix/backport_certificate_bundle_fixes_v4.3' into 'release/v4.3'
Certificate bundle fixes (v4.3)

See merge request espressif/esp-idf!18353
2022-06-09 11:13:41 +08:00
Jiang Jiang Jian
e04eaca191 Merge branch 'bugfix/enable_crt_bundle_v4.3' into 'release/v4.3'
esp_https_ota: Enable option of using global_ca_store and x509_crt_bundle

See merge request espressif/esp-idf!18344
2022-06-09 11:12:54 +08:00
Jiang Jiang Jian
64636e002c Merge branch 'bugfix/mkdfu_flash_parameters_v4.3' into 'release/v4.3'
mkdfu.py: Support setting flash parameters (backport v4.3)

See merge request espressif/esp-idf!18292
2022-06-09 11:12:28 +08:00
Jiang Jiang Jian
ae47e3f172 Merge branch 'bugfix/add_bda_to_read_rmt_name_param_v4.3' into 'release/v4.3'
Bugfix/add bda to read rmt name param v4.3

See merge request espressif/esp-idf!18281
2022-06-09 11:12:17 +08:00
Jiang Jiang Jian
b08c5b746d Merge branch 'bugfix/disable_extensions_idfpy_tests_v4.3' into 'release/v4.3'
Tools: Make idf.py tests independent on extra extensions (v4.3)

See merge request espressif/esp-idf!18278
2022-06-09 11:11:59 +08:00
Jiang Jiang Jian
947601a567 Merge branch 'fix/coap_client_example_v4.3' into 'release/v4.3'
Update the coap client example URL and README (v4.3)

See merge request espressif/esp-idf!18226
2022-06-09 11:11:26 +08:00
Jiang Jiang Jian
b1eb8ebe79 Merge branch 'bugfix/fix_cannot_lslp_again_after_ulp_wakeup_backport_v4.3' into 'release/v4.3'
sleep: ‎fix cannot lightsleep again after a wakeup from ULP(backport v4.3)

See merge request espressif/esp-idf!18217
2022-06-09 11:11:08 +08:00
Jiang Jiang Jian
1b40e6173e Merge branch 'bugfix/i2c_timeout_issue_v4.3' into 'release/v4.3'
I2C: patch for solving watchdog timeout issue(backport v4.3)

See merge request espressif/esp-idf!18132
2022-06-09 11:10:57 +08:00
Jiang Jiang Jian
fab70ef326 Merge branch 'bugfix/Fix_ios_ble_adv_rsp_v4.3' into 'release/v4.3'
Fix iOS advertisement response and simplify (v4.3)

See merge request espressif/esp-idf!18039
2022-06-09 11:10:12 +08:00
Jiang Jiang Jian
8a788526af Merge branch 'docs/update_cn_trans_partition-tables_4.3' into 'release/v4.3'
docs: Update cn trans for partition-tables.rst (v4.3)

See merge request espressif/esp-idf!18031
2022-06-09 11:09:51 +08:00
Jiang Jiang Jian
6bd2776a86 Merge branch 'feature/adds_efuses_to_table_v4.3' into 'release/v4.3'
efuse: Adds ERR_RST_ENABLE efuse for C3 (v4.3)

See merge request espressif/esp-idf!18420
2022-06-09 11:08:21 +08:00
KonstantinKondrashov
4a203de329 efuse: Adds ERR_RST_ENABLE efuse for C3 and S3
Closes https://github.com/espressif/esp-idf/issues/8357
2022-06-07 22:12:20 +08:00
xiongweichao
16e6f85ab6 initialize all elements of esp_bt_controller_config_t
Closes https://github.com/espressif/esp-idf/pull/9073
2022-06-07 17:38:51 +08:00
Shubham Kulkarni
e4aa50aa87 esp_http_client example: Add cert for redirect to HTTPS example
esp_http_client_test.py: Add checks for missing example logs
2022-06-07 14:54:25 +05:30
Aditya Patwardhan
3831ad2d47 esp_tls_mbedtls.c: Fix esp-idf integration of esp-cryptoauthlib
menuconfig option
2022-06-07 14:46:35 +05:30
Jiang Jiang Jian
b436ca17b7 Merge branch 'update/version_4_3_3' into 'release/v4.3'
Update version to 4.3.3

See merge request espressif/esp-idf!18368
2022-06-07 11:08:34 +08:00
xiongweichao
222a3da891 Bluetooth build fail when power management is enabled
Closes https://github.com/espressif/esp-idf/issues/9081
2022-06-06 20:16:53 +08:00
Espressif BOT
d2c1c97755 Update esp_crt_bundle certificates 2022-06-06 11:22:07 +05:30
Aditya Patwardhan
ac05c493b9 esp_crt_bundle: Add bounds checking for the "esp_crt_bundle_set" API.
Closes https://github.com/espressif/esp-idf/issues/8397
2022-06-06 11:22:02 +05:30
Martin Gaňo
1735ebb320 Fixed comparsion of integer and string that evaluated always to False
Closes https://github.com/espressif/esp-idf/issues/9052
Closes IDFGH-7482
2022-06-03 21:19:15 +02:00
Ivan Grokhotkov
16d9971302 versions: Update version to 4.3.3 2022-06-02 23:41:07 +02:00
Ivan Grokhotkov
2e73c5ddec Merge branch 'feature/docker_build_gh_actions_v4.3' into 'release/v4.3'
ci: move Docker image builds to Github, plus other improvements (v4.3)

See merge request espressif/esp-idf!18288
2022-06-03 04:05:00 +08:00
Sergei Silnov
5e32ecccba Tools: Make idf.py tests independent on extra extensions 2022-06-02 14:43:40 +02:00
Mahavir Jain
a6fd8b0972 mbedtls: move locally managed root certificates to separate file
Purpose:
This will allow for easily automating periodic updates to
"cacrt_all.pem" file.

Note:
For now newly created "cacrt_local.pem" contains single "DST Root CA X3"
which we are keeping to manage compatibility with endpoints like
"howsmyssl.com". Please note this Root CA is expired and is not part of
Mozilla’s NSS root certificate store.
2022-06-02 11:07:37 +05:30
Laukik Hase
bc7cb7c947 esp_crt_bundle: Fix build error
- When `esp_crt_bundle.h` is included before any config,
  a build error (`esp_err_t` not defined) is observed

Closes https://github.com/espressif/esp-idf/issues/8606
2022-06-02 11:06:55 +05:30
Ivan Grokhotkov
d3f0969e4f ci: build and push Docker images in Github actions, add arm64 platform
Replaces the previously used Docker Hub autobuild infrastructure.
This allows for more flexible configuration of the build process,
at the expense of some extra maintenance of CI workflow files
required.
2022-06-01 16:22:15 +02:00
Ivan Grokhotkov
e52ef6c326 docs: document build arguments of the Docker image 2022-06-01 16:22:14 +02:00
Ivan Grokhotkov
b56a7524e3 tools/docker: add IDF_CLONE_SHALLOW and IDF_INSTALL_TARGETS arguments
These two arguments can be used to reduce the size of the Docker
image:

- Setting IDF_CLONE_SHALLOW enables shallow cloning.
- Setting IDF_INSTALL_TARGETS to the comma separated list of targets
  results in toolchains being installed only for these targets.
2022-06-01 16:22:14 +02:00
Aditya Patwardhan
be783ae29b tcp_transport: Add option to enable crt_bundle for SSL connection 2022-06-01 14:39:01 +05:30
Aditya Patwardhan
85ee22932a esp_http_client: Enable support of crt_bundle in esp_http_client 2022-06-01 14:38:51 +05:30
Aditya Patwardhan
f496742ec8 esp_https_ota: Enable option of using global_ca_store and x509_crt_bundle
Closes https://github.com/espressif/esp-idf/issues/5504
2022-06-01 14:01:19 +05:30
Jiang Jiang Jian
0e3ec4fb99 Merge branch 'bugfix/update_efuse_name_v4.3' into 'release/v4.3'
efuse: update efuse name (backport v4.3)

See merge request espressif/esp-idf!18196
2022-05-31 14:42:05 +08:00
Wu Zheng Hui
a0b1d016e4 efuse: update efuse name (backport v4.3) 2022-05-31 14:42:05 +08:00
keymoon
8aa0f77863 assign value to uninitialized bt_addr field 2022-05-29 18:06:45 -07:00
keymoon
71791a4706 add address field to read_rmt_name_param 2022-05-29 18:06:35 -07:00
Jiang Jiang Jian
ee3c14519b Merge branch 'bugfix/remove_gc_for_pmf' into 'release/v4.3'
esp_wifi: Remove group cipher check for PMF connection

See merge request espressif/esp-idf!18274
2022-05-29 00:19:26 +08:00
Marius Vikhammer
537f802260 HAL: place cpu_ll_get_cycle_count in IRAM
Closes https://github.com/espressif/esp-idf/issues/9008
2022-05-28 14:31:33 +08:00
radim.karnis
d0e38f5a9f mkdfu.py: Support setting flash parameters 2022-05-27 16:34:42 +02:00
Kapil Gupta
cba053da3d esp_wifi: Remove group cipher check for PMF connection 2022-05-27 14:01:28 +05:30
Aditya Patwardhan
b806d19535 Update the coap client example URL and README
Closes https://github.com/espressif/esp-idf/issues/7219
2022-05-24 12:32:37 +05:30
jingli
da08dab9e5 remove wrong function rtc_cntl_ll_ulp_wakeup_enable for esp32s2 and esp32s3 2022-05-19 23:58:29 +08:00
jingli
8309e3e5ce esp_hw_‎support/sleep: ‎fix cannot lightsleep again after a wakeup from ULP
Since ulp wakeup signal are connected to ulp int raw(except esp32), we
need to clear ulp int raw before sleep when ulp wakeup enabled. Otherwise,
if the ulp int raw is already set, chip will not sleep properly.

Closes https://github.com/espressif/esp-idf/issues/6229
2022-05-19 23:54:29 +08:00
Li Jingyi
ffef57c580 fix(mbedtls): fix ssl server memory leak when enable mbedtls dynamic buffer function 2022-05-19 16:28:53 +08:00
Jiang Jiang Jian
b137ae4259 Merge branch 'bugfix/fix_wifi_pm_state_v4.3' into 'release/v4.3'
esp_wifi: fix no null data after WiFi waking up. (backport v4.3)

See merge request espressif/esp-idf!18144
2022-05-18 17:42:55 +08:00
Jiang Jiang Jian
2a83da379f Merge branch 'bugfix/disable_bt_pll_track_v4.3' into 'release/v4.3'
Bluetooth: disable PLL track function for ESP32-C3/ESP32-S3 as it introduced coexistence issues(bacport v4.3)

See merge request espressif/esp-idf!18140
2022-05-18 17:24:55 +08:00
Michael (XIAO Xufeng)
61e1b81752 Merge branch 'bugfix/fix_memory_miss_bug_v4.3' into 'release/v4.3'
esp32c3: Fix cpu crash bug when wakeup from lightsleep for memory data miss (backport v4.3)

See merge request espressif/esp-idf!17825
2022-05-18 12:08:56 +08:00
Jiang Jiang Jian
a8489a7796 Merge branch 'docs/remove_bt_doc_fillers_v4.3' into 'release/v4.3'
docs: remove filler template content from BT docs (v4.3)

See merge request espressif/esp-idf!17948
2022-05-18 02:22:35 +08:00
Jiang Jiang Jian
34c9af3e2d Merge branch 'bugfix/driver_uart_fix_tx_bytes_rts_assert_failure_v43' into 'release/v4.3'
driver: fixes context switch while sending cause rts reset before send (backport v4.3)

See merge request espressif/esp-idf!17935
2022-05-18 02:22:17 +08:00
Alex Lisitsyn
94c4c3186d driver: fixes context switch while sending cause rts reset before send (backport v4.3) 2022-05-18 02:22:17 +08:00
Jiang Jiang Jian
35ddb13090 Merge branch 'feature/check_block_after_burn_v4.3' into 'release/v4.3'
efuse: Validates data after burning and re-burnes it if necessary (v4.3)

See merge request espressif/esp-idf!17703
2022-05-18 02:21:20 +08:00
Jiang Jiang Jian
fd551af189 Merge branch 'feature/modbus_master_fix_check_uart_set_pin_v43' into 'release/v4.3'
example/modbus_master: fix the assert for uart_set_pin (backport v4.3)

See merge request espressif/esp-idf!17625
2022-05-18 02:20:39 +08:00
Jiang Jiang Jian
f60bbf5172 Merge branch 'feature/esp32c3_apptrace_v4.3' into 'release/v4.3'
apptrace: refactoring & esp32c3 support (v4.3)

See merge request espressif/esp-idf!17878
2022-05-18 02:09:44 +08:00
Jiang Jiang Jian
30013ca66f Merge branch 'bugfix/idle_task_skipped_light_sleep_backport_v4.3' into 'release/v4.3'
pm_impl: fix neither enter light sleep nor enter waiti state in idle task(backport v4.3)

See merge request espressif/esp-idf!17848
2022-05-18 02:08:29 +08:00
liuning
692265302e esp_wifi: fix no null data after WiFi waking up. (backport v4.3) 2022-05-17 23:32:33 +08:00
Karl Wang
cd43531831 components/bt: disable Bluetooth PLL track function for ESP32-C3/ESP32-S3 as it introduced coexistence issuescomponents/bt: disable Bluetooth PLL track function for ESP32-C3 as it introduced coexistence issues 2022-05-17 20:58:31 +08:00
Cao Sen Miao
75f6279c22 I2C: patch for solving watchdog timeout issue 2022-05-17 16:56:58 +08:00
Mahavir Jain
6042412a35 Merge branch 'feature/optimize_wifi_provisioning_memory_v4.3' into 'release/v4.3'
feat(wifi_provisioning): Optimize memory for wifi scan ap number (backport v4.3)

See merge request espressif/esp-idf!18114
2022-05-17 14:13:23 +08:00
mofeifei
e69bae62b2 docs:update cn trans for partition-tables.rst 2022-05-17 02:25:53 +00:00
chaijie
908192f504 solve memory error bug when in lightsleep mode 2022-05-16 19:42:56 +08:00
Jiang Jiang Jian
5fe7d538a5 Merge branch 'bugfix/fix_esp32c3_brownout_bug_after_deepsleep_v4.3' into 'release/v4.3'
rtc: fix c3 brownout bug after deepsleep (backport v4.3)

See merge request espressif/esp-idf!17959
2022-05-16 16:10:52 +08:00
Jiang Jiang Jian
3fa2d25983 Merge branch 'bugfix/fix_websocket_server_v4.3' into 'release/v4.3'
fix(server): Fix websocket server not support handle multiple connections when client send CLOSE frame (backport v4.3)

See merge request espressif/esp-idf!18019
2022-05-16 16:10:32 +08:00
yuanjm
3a532ecb5c feat(wifi_provisioning): Optimize memory for wifi scan ap number 2022-05-16 14:14:23 +08:00
lorenzo.consolaro
721a59dd31 Fix iOS advertisement response and simplify 2022-05-16 04:08:12 +00:00
Alexey Gerenkov
d06fac5c8b apptrace: Adds ESP32-C3 support 2022-05-13 16:23:46 +03:00
Michael (XIAO Xufeng)
58f378602f Merge branch 'feature/usb_serial_default_option_v4.3' into 'release/v4.3'
vfs_usb_serial: set secondary selection for making usb port can output under default menu (backport v4.3)

See merge request espressif/esp-idf!18062
2022-05-13 17:24:33 +08:00
Alexey Gerenkov
fa6655cbcf apptrace: Refactors apptrace for better support various tracing HW 2022-05-13 08:45:31 +00:00
Alexey Gerenkov
440c4a28d7 hal/esp32c3: Avoid entering WFI mode under debugger 2022-05-13 08:45:31 +00:00
Jiang Jiang Jian
91f679bdb3 Merge branch 'bugfix/fix_disable_bt_log_ci_fail_v4.3' into 'release/v4.3'
component_bt: Fix CI failure when disable bluetooth debug log(v4.3)

See merge request espressif/esp-idf!17906
2022-05-13 15:22:16 +08:00
Jiang Jiang Jian
181b75e152 Merge branch 'bugfix/fix_phy_tx_power_limit_v4.3' into 'release/v4.3'
esp_wifi: fix phy limit tx power for s2/c3

See merge request espressif/esp-idf!17907
2022-05-13 15:21:50 +08:00
Jiang Jiang Jian
c9ff4822c5 Merge branch 'bugfix/spp_crash_after_call_spp_deinit_v4.3' into 'release/v4.3'
Component_bt/Fix spp crash after call esp_spp_deinit(v4.3)

See merge request espressif/esp-idf!17931
2022-05-13 15:21:07 +08:00
Jiang Jiang Jian
7df94ffb2e Merge branch 'contrib/github_pr_8779_v4.3' into 'release/v4.3'
esp_wifi: fix clearing default wifi netif procedure(v4.3)

See merge request espressif/esp-idf!17939
2022-05-13 15:20:12 +08:00
Jiang Jiang Jian
3207993eb7 Merge branch 'bugfix/_rtc_slow_length_incorrectly_optimized_backport_v4.3' into 'release/v4.3'
sleep_power_domain: fix _rtc_slow_length being incorrectly optimized by compiler(backport v4.3)

See merge request espressif/esp-idf!17975
2022-05-13 15:19:50 +08:00
Jiang Jiang Jian
71fdd0e146 Merge branch 'bufix/esp32c3_s3_build_err_v4.3' into 'release/v4.3'
component_bt: Fix ESP32C3 build error after enable light sleep(v4.3)

See merge request espressif/esp-idf!17996
2022-05-13 15:19:38 +08:00
Cao Sen Miao
0f2aa2eae4 vfs_usb_serial: set secondary selection for making usb port can output under default menu 2022-05-12 12:23:35 +08:00
Cao Sen Miao
4db597a728 spi_flash: refact that flash qio can be overidable 2022-05-09 11:27:19 +08:00
yuanjm
15090af9d1 fix(server): Fix websocket server not support handle multiple connections when client send CLOSE frame 2022-05-06 17:58:52 +08:00
xiongweichao
d6f857a2f0 Fix ESP32C3 build error after enable light sleep 2022-05-05 10:50:33 +08:00
jingli
92ccc5fa95 fix _rtc_slow_length being incorrectly optimized by compiler 2022-05-01 23:22:05 +08:00
chaijie
0d5f7b5521 fix c3 brownout bug after deepsleep 2022-04-28 18:20:25 +08:00
KonstantinKondrashov
28e50c1180 efuse: fix 2022-04-28 09:29:10 +00:00
KonstantinKondrashov
4be976e40d efuse: Fix 3/4 coding scheme UTs 2022-04-28 09:29:10 +00:00
KonstantinKondrashov
adc9261443 efuse: Improve messages during burn operation 2022-04-28 09:29:10 +00:00
KonstantinKondrashov
2e9e5d6e7c efuse: Burn func can return an error
esp_efuse_utility_burn_chip()
2022-04-28 09:29:10 +00:00
KonstantinKondrashov
2ba9cd6c54 efuse: Validates data after burning and re-burnes it if necessary
It checks the content of the written data and encoding errors.
2022-04-28 09:29:10 +00:00
Marius Vikhammer
656ea5c664 docs: remove filler template content from BT docs 2022-04-27 17:54:13 +08:00
xiongweichao
e0cf810bab Fix spp initialization failure without free mutex 2022-04-27 14:25:45 +08:00
xiongweichao
a9b515d0d1 Fix spp crash after calling esp_spp_deinit 2022-04-27 14:25:38 +08:00
Krzysztof Lewandowski
068221cb33 esp_wifi: fix clearing default wifi netif procedure
Prior to this change "esp_wifi_clear_default_wifi_driver_and_handlers"
will not remove netif pointer from table when both AP and STA interfaces were
created and destroying default wifi interfaces is done in unfortunate
order. As a result there is dangling pointer left and it may cause crash in
later code (i.e. when esp_wifi_stop() is called).
2022-04-26 22:51:28 -04:00
Island
b4ef1b80a2 Merge branch 'bugfix/oversized_SegN_as_valid_v4.3' into 'release/v4.3'
ble_mesh: stack: Bugfix for oversized SegN as valid(v4.3)

See merge request espressif/esp-idf!17775
2022-04-26 20:14:19 +08:00
Jessy Chen
94bac458bf esp_wifi: fix phy limit tx power for s2/c3 2022-04-26 03:26:10 -04:00
xiongweichao
30b2cad3b7 Fix CI failure when disable bluetooth debug log 2022-04-26 15:14:26 +08:00
wangjialiang
c4f39a5d91 ble_mesh: stack: Bugfix for oversized SegN as valid 2022-04-25 11:52:30 +08:00
Jiang Jiang Jian
588436db47 Merge branch 'feature/touch_sense_test_case_v4.3' into 'release/v4.3'
touch_element: add unit test for Touch Element lib (backport v4.3)

See merge request espressif/esp-idf!15084
2022-04-23 15:22:27 +08:00
Jiang Jiang Jian
df8ebc9bba Merge branch 'bugfix/fix_build_warring_v4.3' into 'release/v4.3'
esp_wifi: fix build warning(v4.3)

See merge request espressif/esp-idf!17839
2022-04-23 15:21:56 +08:00
Jiang Jiang Jian
e48cf0c188 Merge branch 'bugfix/interrupted_thread_gdb_bt_v4.3' into 'release/v4.3'
riscv: Fixes GDB backtrace of interrupted threads (v4.3)

See merge request espressif/esp-idf!17722
2022-04-23 13:56:51 +08:00
Jiang Jiang Jian
3477c342e2 Merge branch 'bugfix/rrm_dpp_task_delete_v4.3' into 'release/v4.3'
wpa_supplicant: backport WLAN fixes (release v4.3)

See merge request espressif/esp-idf!17656
2022-04-23 13:50:57 +08:00
Jack
ffd68203f6 fix build error 2022-04-22 21:52:42 +08:00
Omar Chebib
e1d3993309 RISC-V: Fix vectors.S assembly file indentation and macro usage
The file is now more consistent as the macros have been fixed, more comments
have been added and the indentation is now using spaces only.
2022-04-22 13:17:59 +03:00
Alexey Gerenkov
dfd3a9c3bc riscv: Use semihosting to set breakpoint and watchpoint when running under debugger 2022-04-22 13:17:54 +03:00
Alexey Gerenkov
4edc903bb3 riscv: Adds support for returning from exception handler 2022-04-22 12:38:16 +03:00
Alexey Gerenkov
e688645ff9 riscv: Fixes GDB backtrace end function to point to prvTaskExitError 2022-04-22 12:38:16 +03:00
Alexey Gerenkov
f8a0279e5d riscv: Fixes GDB backtrace of interrupted threads
Save missed SP value on stack
2022-04-22 12:38:16 +03:00
Jack
81d1226f53 ESP_WIFI: Remove static analysis warnings 2022-04-22 17:17:48 +08:00
Jiang Jiang Jian
846cbf14dc Merge branch 'bugfix/spiffs_check_part_alignment_v4.3' into 'release/v4.3'
spiffs: add init checks for partition alignment and data types (v4.3)

See merge request espressif/esp-idf!17836
2022-04-22 13:07:03 +08:00
morris
a818e9ca91 Merge branch 'bugfix/fix_adc_digital_not_reset_issue_v4.3' into 'release/v4.3'
adc: fix adc digital not reset issue (v4.3)

See merge request espressif/esp-idf!17427
2022-04-22 12:43:44 +08:00
Kang Zuoling
a37e9318ef touch_element: add unit test for Touch Element lib 2022-04-22 03:13:25 +00:00
Jiang Jiang Jian
1ad55d707b Merge branch 'origin/bugfix/i2c_iram_placement_fix_v4.3' into 'release/v4.3'
i2c: Correct hal functions iram placement and remove IRAM_ATTR for i2c_hw_fsm_reset (backport v4.3)

See merge request espressif/esp-idf!17805
2022-04-22 11:08:17 +08:00
Jiang Jiang Jian
1d72f077c5 Merge branch 'bugfix/scan_mixed_keymgmt_issue_v4.3' into 'release/v4.3'
Combined fix for scan issue and PMF disable API  (Backport v4.3)

See merge request espressif/esp-idf!17749
2022-04-22 10:58:47 +08:00
Kapil Gupta
6d3dc2e616 wpa_supplicant: Remove scan done event in task 2022-04-22 02:40:15 +00:00
Kapil Gupta
8ef2842074 wpa_supplicant: static analysis fixes 2022-04-22 02:40:15 +00:00
Kapil Gupta
bf4f9b9e41 wpa_supplicant: Add BTM security checks 2022-04-22 02:40:15 +00:00
Kapil Gupta
b1f7ad6983 esp_example: Enable MbedTLS for DPP enrollee by default 2022-04-22 02:40:15 +00:00
Kapil Gupta
fdbb3da1b4 wpa_supplicant: Correct task deletion for RRM and DPP tasks
Closes https://github.com/espressif/esp-idf/issues/7409
2022-04-22 02:40:15 +00:00
Ivan Grokhotkov
9532e1ccc6 Merge branch 'bugfix/vfs_fat_(p)write_on_diskfull_v4.3' into 'release/v4.3'
vfs: bugfix vfs_fat_write/pwrite upon disk-full (v4.3)

See merge request espressif/esp-idf!17650
2022-04-21 23:12:44 +08:00
Armando
f8c098658c adc: fix adc digital not reset issue 2022-04-21 19:29:15 +08:00
Michael (XIAO Xufeng)
21daee7dce Merge branch 'bugfix/wrong_gpio_is_deep_sleep_wakeup_valid_gpio_v4.3' into 'release/v4.3'
gpio: fix wrong GPIO_IS_DEEP_SLEEP_WAKEUP_VALID_GPIO macro (backport v4.3)

See merge request espressif/esp-idf!17806
2022-04-21 18:17:20 +08:00
Nachiket Kukade
436be30045 esp_wifi: Update wifi lib
1. In scan, correctly identify AP's with mixed key mgmt
2. Add API to disable PMF configuration
2022-04-21 14:40:21 +05:30
Jiang Jiang Jian
4ef87d2505 Merge branch 'update/c3_s3_phy_lib_20220419_v4.3' into 'release/v4.3'
Update/c3 s3 phy lib aa05aec  (backport v4.3)

See merge request espressif/esp-idf!17816
2022-04-21 16:04:49 +08:00
morris
d04a94320a Merge branch 'bugfix/fix_adc_calibration_light_sleep_issue_v4.3' into 'release/v4.3'
adc: fix calibration error when waking up from light sleep (v4.3)

See merge request espressif/esp-idf!16929
2022-04-21 15:56:10 +08:00
Michael (XIAO Xufeng)
8b1826f86e Merge branch 'bugfix/spi_slave_intr_iram_v4.3' into 'release/v4.3'
driver: spi_slave: make sure CS helpers are in IRAM if the ISR is (v4.3)

See merge request espressif/esp-idf!17832
2022-04-21 15:50:03 +08:00
gaoxiaojie
b1b92d46e5 pm_impl: fix neither enter light sleep nor enter waiti state in idle task 2022-04-21 14:38:17 +08:00
Jiang Jiang Jian
20106fc141 Merge branch 'bugfix/fix_phy_i2c_crash_v4.3' into 'release/v4.3'
esp_phy: Add IRAM_ATTR for phy i2c spinlock (v4.3)

See merge request espressif/esp-idf!17843
2022-04-21 11:38:57 +08:00
xiewenxiang
9b0e8266c8 Update esp c3 phy lib (aa05aec) 2022-04-21 11:08:30 +08:00
xiewenxiang
f4e5ba7d9f esp_phy: Add IRAM_ATTR for phy i2c spinlock 2022-04-21 02:56:30 +08:00
Mahavir Jain
54d9f265dc Merge branch 'bugfix/linenoise_unint_buffer_and_color_v4.3' into 'release/v4.3'
console: linenoise: fix usage of an uninitialized buffer, fix no-color output (v4.3)

See merge request espressif/esp-idf!17830
2022-04-20 21:01:16 +08:00
Ivan Grokhotkov
51af60adf0 spiffs: add init checks for partition alignment and data types
Closes https://github.com/espressif/esp-idf/issues/8593
2022-04-20 12:53:57 +02:00
Ivan Grokhotkov
e0f7d6834d driver: spi_slave: make sure CS helpers are in IRAM if the ISR is
Closes https://github.com/espressif/esp-idf/issues/3870
2022-04-20 12:50:14 +02:00
Ivan Grokhotkov
5628f1f21d console: linenoise: fix usage of an uninitialized buffer
Reported in https://github.com/espressif/esp-idf/issues/6440

The issue could occur if esp_console_config_t::hint_color
was set to -1.
2022-04-20 16:03:23 +05:30
Ivan Grokhotkov
be564ffd28 console: disable colored hints if CONFIG_LOG_COLORS is not set 2022-04-20 16:03:22 +05:30
Jessy Chen
2d7ae879f1 esp_wifi: fix build warning 2022-04-20 05:25:29 -04:00
Michael (XIAO Xufeng)
1ffc02dfaf Merge branch 'feature/esp32c3_usbjtag_console_blocking_v4.3' into 'release/v4.3'
usb_serial_jtag: Add blocking driver to support vfs (backport v4.3).

See merge request espressif/esp-idf!17330
2022-04-20 16:30:12 +08:00
Ivan Grokhotkov
0c7d32bcdb Merge branch 'bugfix/fatfs_warning_fix_v4.3' into 'release/v4.3'
fatfs: Fix putc_bfd compilation warning (v4.3)

See merge request espressif/esp-idf!17523
2022-04-20 16:20:52 +08:00
Cao Sen Miao
671303bbd5 usb_serial_jtag: Add blocking driver to support vfs. 2022-04-19 16:21:20 +08:00
Wang Meng Yang
62cc246d5f Merge branch 'bugfix/fix_spp_initiator_connect_failed_v4.3' into 'release/v4.3'
Component_bt/Fix SPP initiator can not free resource when connection is failed[backport 4.3]

See merge request espressif/esp-idf!17745
2022-04-19 15:49:32 +08:00
songruo
d6c2bae1bc gpio: fix wrong GPIO_IS_DEEP_SLEEP_WAKEUP_VALID_GPIO macro
Closes https://github.com/espressif/esp-idf/issues/8733

(cherry picked from commit 0d52cb04dc)
2022-04-18 22:29:52 +08:00
Zim Kalinowski
37ec8e835b Merge branch 'bugfix/fix_heap_free_memory_v4.3' into 'release/v4.3'
Heap: fix free bytes calculation for TLSF heap (backport v4.3)

See merge request espressif/esp-idf!17689
2022-04-18 21:43:07 +08:00
songruojing
a7935539b5 i2c: Correct hal functions iram placement and remove IRAM_ATTR for i2c_hw_fsm_reset
Closes https://github.com/espressif/esp-idf/issues/8422
Closes https://github.com/espressif/esp-idf/issues/7249

(cherry picked from commit 1ceb7c8cd6)
2022-04-18 21:07:52 +08:00
Mahavir Jain
6c27359d13 Merge branch 'bugfix/smtp_client_v4.3' into 'release/v4.3'
smtp_client: Fix heap leakage (v4.3)

See merge request espressif/esp-idf!17795
2022-04-18 14:37:01 +08:00
Michael (XIAO Xufeng)
6217fb46db Merge branch 'bugfix/fix_variable_on_stack_bug_in_seg_slave_example_v4.3' into 'release/v4.3'
spi_slave_hd: fix stack variable bug in seg_slave example (v4.3)

See merge request espressif/esp-idf!16389
2022-04-18 13:10:34 +08:00
Michael (XIAO Xufeng)
99339caedc Merge branch 'bugfix/spi_master_clear_error_fifo_status_v4.3' into 'release/v4.3'
spi_master: clear error fifo status before transaction starts (v4.3)

See merge request espressif/esp-idf!16207
2022-04-18 13:10:14 +08:00
Laukik Hase
638a1b9bf3 smtp_client: Fixed garbage characters being printed
- The R/W buffers were not cleared before reading/writing
  anything new
2022-04-18 10:33:14 +05:30
Laukik Hase
df294b7b69 smtp_client: Fix heap leakage
- Freed all allocated resources by Mbed TLS at the end of routine
2022-04-18 10:33:14 +05:30
Michael (XIAO Xufeng)
6808bbc26c Merge branch 'feature/esp32c3_eco4_v4.3' into 'release/v4.3'
esp32c3: Adds ECO4 revision (v4.3)

See merge request espressif/esp-idf!17718
2022-04-18 13:00:14 +08:00
Ivan Grokhotkov
5025931e7c Merge branch 'bugfix/nvs_coverity_issues_4.3' into 'release/v4.3'
bugfix (nvs): Fixed issues found by Coverity (backport 4.3)

See merge request espressif/esp-idf!17763
2022-04-15 04:48:50 +08:00
Martin Vychodil
d1bb7cfb3f fatfs: Fix putc_bfd compilation warning
Fixed FatFs\ff.c: warning: argument of type "TCHAR **" is incompatible with parameter of type "const TCHAR **"

Closes https://github.com/espressif/esp-idf/issues/5870
2022-04-14 11:55:33 +02:00
Jakob Hasse
e414dce1ff bugfix (nvs): Fixed issues found by Coverity
*  Fixed potential memory leak
*  Fixed wrong strncpy usage
*  Fixed potential out of bounds access
2022-04-14 08:30:03 +00:00
Roland Dobai
9c35eeecbd Merge branch 'fix/revert_latest_git-v4.3' into 'release/v4.3'
Revert latest git (release v4.3)

See merge request espressif/esp-idf!17766
2022-04-14 00:19:39 +08:00
Tomas Sebestik
86ec13eb21 Revert latest git 2022-04-13 13:51:22 +02:00
Omar Chebib
2cc879120b Heap: fix typos in test and component 2022-04-13 14:23:51 +08:00
liqigan
2a712fccd4 add missing unlock in btc_spp_cb_handler of BTA_JV_RFCOMM_WRITE_EVT 2022-04-13 10:44:11 +08:00
liqigan
0269d062d0 fix SPP initiator can not free resource when connection is failed 2022-04-13 10:44:11 +08:00
Roland Dobai
9ab1c4c9e0 Merge branch 'bugfix/gdbgui_deps_4.4_v4.3' into 'release/v4.3'
Tools: Fix incompatible package dependencies of gdbgui (v4.3)

See merge request espressif/esp-idf!17750
2022-04-13 01:41:16 +08:00
Roland Dobai
351a209540 Merge branch 'bugfix/python_env_not_installed_by_install.ps1_v4.3' into 'release/v4.3'
tools: fix python-env install by install.ps1 (v4.3)

See merge request espressif/esp-idf!17752
2022-04-12 23:23:55 +08:00
simon.chupin
a7c99f4eae tools: fix python-env install by install.ps1
Closes https://github.com/espressif/esp-idf/issues/8647
2022-04-12 15:51:07 +02:00
Roland Dobai
2ddb34c3c0 Tools: Fix incompatible package dependencies of gdbgui
Closes https://github.com/espressif/esp-idf/issues/8760
2022-04-12 14:50:47 +02:00
Mahavir Jain
9cb98bf6da Merge branch 'bugfix/http_code_v4.3' into 'release/v4.3'
esp_http_client, esp_https_ota: Handle HTTP 303 status code (v4.3)

See merge request espressif/esp-idf!17733
2022-04-11 19:29:29 +08:00
Elbert van de Put
217d2d0775 example/modbus_master: fix the assert for uart_set_pin
Signed-off-by: aleks <aleks@espressif.com>

Closes https://github.com/espressif/esp-idf/pull/8607
2022-04-11 11:28:09 +00:00
Mahavir Jain
47424affaf Merge branch 'contrib/github_pr_8564_v4.3' into 'release/v4.3'
Fix nested redirect (GitHub PR) (v4.3)

See merge request espressif/esp-idf!17735
2022-04-11 18:33:47 +08:00
Shubham Kulkarni
3842d27be3 advanced_https_ota/example_test.py: Update redirect URL test to include two redirects 2022-04-11 09:48:31 +05:30
Shubham Kulkarni
68f206959b esp_http_client: Add comment for clearing location field in esp_http_client_prepare 2022-04-11 09:48:31 +05:30
Nicklas Frahm
3a69b1d94f esp_http_client: fix redirect by resetting location before parsing
Closes #8563.

Signed-off-by: Nicklas Frahm <nicklas.frahm@gmail.com>
2022-04-11 09:48:31 +05:30
Shubham Kulkarni
342f566002 esp_https_ota: Add check for 303 and 308 status code
Closes https://github.com/espressif/esp-idf/issues/8581
2022-04-11 09:44:14 +05:30
Shubham Kulkarni
983547290b esp_http_client: Add new status code 303 and 308 2022-04-11 09:44:14 +05:30
Wang Meng Yang
9bec068e52 Merge branch 'bugfix/bt_add_some_debug_log_v4.3' into 'release/v4.3'
component_bt: Add some bluetooth debug log(v4.3)

See merge request espressif/esp-idf!17615
2022-04-11 10:53:47 +08:00
KonstantinKondrashov
edde9c7892 esp32c3: Adds ECO4 revision 2022-04-08 18:25:16 +08:00
Michael (XIAO Xufeng)
912f2ea76c Merge branch 'bugfix/phy_regi2c_critical_section_v4.3' into 'release/v4.3'
esp_phy: use spinlock to avoid regi2c access conflicts (v4.3)

See merge request espressif/esp-idf!17692
2022-04-07 20:19:28 +08:00
Anton Maklakov
d9be879a76 Merge branch 'feature/add_component_manager_python_dependency_v4.3' into 'release/v4.3'
Build System: Add idf-component-manager python dependency (v4.3)

See merge request espressif/esp-idf!15663
2022-04-06 16:29:42 +08:00
Michael (XIAO Xufeng)
75c720bcd3 esp_phy: use spinlock to avoid regi2c access conflicts 2022-04-06 14:46:10 +08:00
Michael (XIAO Xufeng)
92d6c4a502 regi2c: use safe version of spinlock, instead of ISR ver 2022-04-06 12:19:51 +08:00
Omar Chebib
d7f614d58a Heap: fix free bytes calculation for TLSF heap
* Closes https://github.com/espressif/esp-idf/issues/8270
2022-04-06 10:23:11 +08:00
David Čermák
d75674579e Merge branch 'bugfix/websocket_example_echo_server_v4.3' into 'release/v4.3'
websocket: Updated Kconfig to use 'echo.websocket.events' echo server(v4.3)

See merge request espressif/esp-idf!17605
2022-04-04 18:59:38 +08:00
Roland Dobai
4efc516c1a Merge branch 'feature/docker_image_latest_git' into 'release/v4.3'
Install always latest version of git (release-v4.3)

See merge request espressif/esp-idf!17651
2022-03-31 22:14:24 +08:00
Tomas Sebestik
2ffd558153 Install always latest version of git
Closes https://github.com/espressif/esp-idf/issues/8673
2022-03-31 12:27:21 +02:00
Michael (XIAO Xufeng)
52de71c60e Merge branch 'Fix/update_reset_reason_v4.3' into 'release/v4.3'
update reset reason for c3/s3/h2 (v4.3)

See merge request espressif/esp-idf!17597
2022-03-30 17:54:22 +08:00
Vamshi Gajjela
39b6a3fcbf vfs: bugfix vfs_fat_write/pwrite upon disk-full
Closes https://github.com/espressif/esp-idf/issues/5027
2022-03-30 09:56:15 +02:00
Wang Meng Yang
f789336ab9 Merge branch 'bugfix/wifi_prov_mgr_conn_issue_v4.3' into 'release/v4.3'
Wifi_prov_mgr: Fix for device disconnection after pairing (v4.3)

See merge request espressif/esp-idf!17621
2022-03-29 17:30:12 +08:00
wuzhenghui
1ef989a1b5 update reset reason for c3/s3/h2 2022-03-29 10:03:27 +08:00
Michael (XIAO Xufeng)
06ce378142 Merge branch 'bugfix/spi_free_crash_uninitialized_v4.3' into 'release/v4.3'
spi: fixed crash when calling spi_bus_free when not initialized (v4.3)

See merge request espressif/esp-idf!17609
2022-03-28 18:22:51 +08:00
Isha Pardikar
6a92fb2d76 Merge branch 'bugfix/wifi_prov_mgr_conn_issue' into 'release/v4.3'
NimBLE: Fixed device disconnection issue of wifi prov mgr

Closes IDF-4655

See merge request espressif/esp-idf!17621
2022-03-28 12:51:36 +05:30
xiongweichao
b729bf804d Add some bluetooth debug log 2022-03-28 11:13:10 +08:00
Michael (XIAO Xufeng)
eca8b7ca41 spi: fixed crash when calling spi_bus_free when not initialized
introduced in 49a48644e4

Closes: https://github.com/espressif/esp-idf/issues/8642
2022-03-27 02:33:41 +08:00
Michael (XIAO Xufeng)
eeea576409 Merge branch 'bugfix/gpio_example_config_struct_zero_init_v4.3' into 'release/v4.3'
example: fixed the issue that config struct is not properly initialized (v4.3)

See merge request espressif/esp-idf!17588
2022-03-27 02:30:36 +08:00
dizcza
1457686a94 websocket: Updated Kconfig to use 'echo.websocket.events' echo server
Updated README to show how to run websocket echo server using Flask

Merges https://github.com/espressif/esp-idf/pull/8262
2022-03-25 16:28:29 +04:00
Michael (XIAO Xufeng)
0393a5647a example: fixed the issue that config struct is not properly initialized 2022-03-25 01:08:21 +08:00
morris
673d0371ba Merge branch 'bugfix/typo_in_i2c_macro_v4.3' into 'release/v4.3'
I2C: Fix typo in I2C_TIMING_VAL_ERR_STR macro name (backport v4.3)

See merge request espressif/esp-idf!17117
2022-03-24 11:17:46 +08:00
Michael (XIAO Xufeng)
361a604276 Merge branch 'bugfix/esp_flash_erase_0_v4.3' into 'release/v4.3'
esp_flash: fix esp_flash_erase_region over-erase with 0 length (Github PR) (v4.3)

See merge request espressif/esp-idf!16805
2022-03-22 12:01:40 +08:00
Ivan Grokhotkov
f4852bc055 rom, spi_flash: add a patch for esp_flash_erase_region for C3, S3
Submitted in https://github.com/espressif/esp-idf/pull/7314
Closes https://github.com/espressif/esp-idf/issues/7272
2022-03-16 11:52:14 +01:00
Ivan Grokhotkov
1d933ad02c spi_flash: add test case for esp_flash_erase_region with 0 size 2022-03-16 11:48:59 +01:00
negativekelvin
ab0eac5508 esp_flash_api fixes 2022-03-16 11:48:58 +01:00
Jiang Jiang Jian
8ffddf53bc Merge branch 'bugfix/btdm_link_error_of_kconfig_v4.3' into 'release/v4.3'
Bugfix/btdm link error of kconfig v4.3

See merge request espressif/esp-idf!15466
2022-03-16 16:25:15 +08:00
Marius Vikhammer
cd598bd7c0 Merge branch 'bugfix/inline_intrmask_from_isr_v4.3' into 'release/v4.3'
freertos: always inline xPortSetInterruptMaskFromISR and vPortClearInterruptMaskFromISR (v4.3)

See merge request espressif/esp-idf!17326
2022-03-16 13:45:32 +08:00
Jiang Jiang Jian
70c737af4d Merge branch 'bugfix/repeated_ftm_failures_issue_v4.3' into 'release/v4.3'
Combined bugfixes related to FTM and PMF (Backport v4.3)

See merge request espressif/esp-idf!16129
2022-03-16 11:00:24 +08:00
Jiang Jiang Jian
c6a96e9a57 Merge branch 'doc/update_document_of_demo_bt_discovery_v4.3' into 'release/v4.3'
Doc/update document of demo bt discovery v4.3

See merge request espressif/esp-idf!16576
2022-03-16 10:23:47 +08:00
Jiang Jiang Jian
0f1db7fd9c Merge branch 'update/mqtt_refs_v4.3' into 'release/v4.3'
mqtt: Fix sending log data; dup flag after queue (v4.3)

See merge request espressif/esp-idf!17404
2022-03-16 10:22:47 +08:00
Jiang Jiang Jian
300b881428 Merge branch 'bugfix/hfp_disc_audio_err_v4.3' into 'release/v4.3'
bugfix/fix_err_when_ag_disc_audio_v4.3

See merge request espressif/esp-idf!17474
2022-03-16 10:22:08 +08:00
Jiang Jiang Jian
b668c0cc4d Merge branch 'bugfix/crash_when_reconnect_to_sink_v4.3' into 'release/v4.3'
bugfix/fix the failure of reconnect to sink (v4.3)

See merge request espressif/esp-idf!17477
2022-03-16 10:21:37 +08:00
morris
cbca71a4e7 Merge branch 'bugfix/uart_custom_isr_broken_v4.3' into 'release/v4.3'
UART: fix a bug preventing the user from freeing a previously registered ISR

See merge request espressif/esp-idf!17217
2022-03-15 14:37:11 +08:00
Krzysztof Budzynski
7eaeaaa784 Merge branch 'docs/add_note_for_malloc_cap_dma_backport_v4.3' into 'release/v4.3'
docs: add note for MALLOC_CAP_DMA for ESP32-S2 according to customer feedback (backport v4.3)

See merge request espressif/esp-idf!17341
2022-03-14 18:24:03 +08:00
Roland Dobai
b752da1a01 Merge branch 'bugfix/idfpy_erase_otadata_v4.3' into 'release/v4.3'
tools: set baudrate and port with otatool. (v4.3)

See merge request espressif/esp-idf!17468
2022-03-14 17:37:54 +08:00
jincheng
2ef0e2d126 fix the failure of reconnect to sink 2022-03-14 11:33:38 +08:00
jincheng
1dca246310 correct the rate of data-producing
Closes https://github.com/espressif/esp-idf/issues/7911
2022-03-14 10:45:10 +08:00
Roland Dobai
79c9a043f2 Merge branch 'bugfix/flash_from_monitor_on_windows_v4.3' into 'release/v4.3'
Tools: IDF Monitor should flash with the unmodified port (v4.3)

See merge request espressif/esp-idf!17258
2022-03-12 23:18:41 +08:00
David Čermák
e583dd0cfa Merge branch 'bugfix/security_update_pppos_crash_v4.3' into 'release/v4.3'
lw-ip: Apply security fixes from upstream; Fix PPPoS and NAPT ip-forward (v4.3)

See merge request espressif/esp-idf!17421
2022-03-12 01:59:57 +08:00
Marek Fiala
330db29120 tools: set baudrate and port with otatool.
Bugfix: Allow setting options port -p and baudrate -b, with idf.py otatool commands.

Closes https://github.com/espressif/esp-idf/issues/8317
2022-03-11 15:47:42 +01:00
baohongde
053a59a0b1 components/bt: Fix build-doc error 2022-03-11 10:48:21 +00:00
baohongde
99adcfbda0 components/bt: move config BT_RESERVE_DRAM from bluedroid to ESP32 controller 2022-03-11 10:48:21 +00:00
baohongde
4b0c1d6f71 Fix bt init error with psram 2022-03-11 10:48:21 +00:00
baohongde
2f8b58d88f components/bt: Combine 3 Bluetooth controller menu 2022-03-11 10:48:21 +00:00
baohongde
6f86e1bb63 components/bt: Fix link error of Kconfig 2022-03-11 10:48:21 +00:00
Marius Vikhammer
491b95925e spi flash: fix cache accessed while disabled issues at -O0
mask_get_id and gpio_hal_iomux_func_sel were called while cache
is disabled, but were not inlined as expected at -0O.
Force these functions to always be inlined.
2022-03-11 09:39:50 +08:00
Wang Meng Yang
0997c6df99 Merge branch 'feature/update_hfp_hf_version_v4.3' into 'release/v4.3'
component_bt: Update HFP_HF version to 1.7.2(v4.3)

See merge request espressif/esp-idf!17392
2022-03-10 20:20:12 +08:00
Nachiket Kukade
6fd6a8b40b esp_wifi: Always connect Station in PMF mode if possible
While using esp_wifi_set_config, flag pmf_capable defaults to 0.
Users may not bother to enable it, which prevents connection to a
WPA3 AP. Or the AP may reset into WPA3 mode failing the re-connection.
To ensure better security, deprecate the pmf_capable flag and set it to
true internally.
2022-03-10 17:16:32 +05:30
Nachiket Kukade
47ccdef8c1 esp_wifi: Miscellaneous FTM bugfixes
1. Update wifi libs with bugfixes for corner cases
2. Avoid ASSERT for scan failure in FTM example
2022-03-10 17:15:04 +05:30
Nachiket Kukade
3d0076a31f esp_wifi: Update wifi lib
Update wifi lib with below fixes -
1. In FTM Responder, add session timer for cleanup, also remove
   unnecessary mutex locks
2. In FTM Responder, fix incorrect print in case of failure
   while setting up the SofTAP
2. In FTM Initiator, increase FTM Request response timeout to
   avoid failures in noisy environments
3. In FTM Initiator, abort for high start delta time, also fix
   timeout issue in ASAP mode
2022-03-10 17:13:41 +05:30
Christoph Rackwitz
6e13fc803a esp_wifi: Reset event bits in ftm example to avoid repeated failures 2022-03-10 16:51:02 +05:30
Jiang Jiang Jian
16c14a196b Merge branch 'bugfix/update_esp32_phy_max_tx_power_v4.3' into 'release/v4.3'
esp_phy: update esp32 phy max tx power(v4.3)

See merge request espressif/esp-idf!17413
2022-03-10 17:38:10 +08:00
Krzysztof Budzynski
004d8e9450 Merge branch 'docs/add_an_example_list_for_esp32-wrover-kit_v4.3' into 'release/v4.3'
docs: add an example list for esp-wrover-kit (v4.3)

See merge request espressif/esp-idf!16692
2022-03-09 19:09:01 +08:00
Jiang Jiang Jian
a20b6c4d95 Merge branch 'bugfix/fix_rx_fragment_error_issue_v4.3' into 'release/v4.3'
esp_wifi: fix fragment issue and PMF compatible for faulty APs(Backport v4.3)

See merge request espressif/esp-idf!16395
2022-03-09 18:45:42 +08:00
David Cermak
e00a689a77 lwip: Security fixes; PPPoS null-deref; NAPT ip-forward
* Cherry-pick important fixes to 2.1.2-esp
  - CVE-2020-22283: Attacker could craft a packet that would disclose 8 bytes of some heap memory:
    - icmp6: Don't copy too much data
    - icmp6: Fix copying of chained pbuf in reply
    - icmp6: keep to the RFC and send as much as possible with icmp6 error messages
  - CVE-2020-22284: ZEP - ZigBee Encapsulation Protocol/6LoWPAN is not supported in IDF,
    the netif module (zepif.c) is not included in the build, but users can still inject
    the file into compilation process, implement IO interface and use this.
    - zepif: Copy possibly chained output pbuf properly
    - Add #define for minimum IPv6 MTU length
    - pbuf: Add pbuf_copy_partial_pbuf library function
* PPPoS: Fix null-deref when processing double break packet
  - pppos: fix in_tail null (espressif/esp-lwip@537c69d5)
  - PPP: Add test exhibiting empty packet null-deref (espressif/esp-lwip@202a07da)
* NAPT: Fix PBUF_REF type to clone the pbuf before forwarding
  - IP-FORWARD: If packet-type is PBUF_REF clone it before forwarding
  - Add NAPT unit test to exercise NAT feature for both RAM and REF pbuf types
* version: Update version numbers to match 2.1.2-esp
* Minor fixes listed below: Fix client receive KOD, NAPT fixes, restore
  dhcp_cb, sntp docs, vendor class id (disabled)

* Update submodule: 2195f7416f...76303df238

Detailed description of the changes:
  - test/napt: Add unit test for IP forward with PBUF_REF (espressif/esp-lwip@76303df2)
  - napt: Fix PBUF_REF type to clone the pbuf before forwarding (espressif/esp-lwip@39068263)
  - version: Update version numbers to match 2.1.2-esp (espressif/esp-lwip@2b922919)
  - pppos: fix in_tail null (espressif/esp-lwip@537c69d5)
  - PPP: Add test exhibiting empty packet null-deref (espressif/esp-lwip@202a07da)
  - pbuf: Add pbuf_copy_partial_pbuf library function (espressif/esp-lwip@1c9cd9c1)
  - Add #define for minimum IPv6 MTU length (espressif/esp-lwip@d2dc577b)
  - zepif: Copy possibly chained output pbuf properly (espressif/esp-lwip@64ab7f2a)
  - icmp6: Don't copy too much data (espressif/esp-lwip@4a64731b)
  - icmp6: Fix copying of chained pbuf in reply (espressif/esp-lwip@7c822ff4)
  - icmp6: keep to the RFC and send as much as possible with icmp6 error messages (espressif/esp-lwip@29100ab6)
  - dns: Add API to clear dns cache (espressif/esp-lwip@ee59f77d)
  - CI: Fixed adding gitlab key (espressif/esp-lwip@5a2bdba7)
  - test case: modify test case test_tcp_new_max_num_remove_FIN_WAIT_1 (espressif/esp-lwip@6b090f7d)
  - add function for deinit lwip timers (espressif/esp-lwip@2749568f)
  - dhcp: Fix build issue that set ESP_DHCP_DISABLE_VENDOR_CLASS_IDENTIFIER to true will build fail (espressif/esp-lwip@d827dbf7)
  - Document that sntp_setservername doesn't copy the string (espressif/esp-lwip@54acdb59) #6786
  - lwip/dhcp: add 60 option for vendor class identify (espressif/esp-lwip@ae7edc2a) espressif/esp-lwip#32
  - dhcp: Restore dhcp_cb on restart after dhcp_release_and_stop() (espressif/esp-lwip@55ea9d9c) #7217
  - napt: Fix disbale IPv6 and enable NAPT will build error (espressif/esp-lwip@74cf7f9f)
  - napt: fix checksum of UDP (espressif/esp-lwip@bb63eed1)
  - sntp: Fix client receive KOD packet that make pool MEMP_SYS_TIMEOUT not be freed (espressif/esp-lwip@1c1642fe)
  - test case: add tcp state and reset test cases. (espressif/esp-lwip@67deb805)

Closes https://github.com/espressif/esp-idf/issues/8300
Closes https://github.com/espressif/esp-idf/issues/8451
2022-03-09 10:33:31 +01:00
NikLeberg
828f9920c3 allow for minimal scope of wifi_init_config_t
With this change one can use the default config as a variable with minimal scope: esp_wifi_init(&(wifi_init_config_t)WIFI_INIT_CONFIG_DEFAULT())
2022-03-09 14:54:31 +08:00
Shang Zhou
d30480c113 docs: Update miswritten and abbreviated words and syntax errors for initialize WiFi section in esp_wifi.h header file 2022-03-09 14:54:06 +08:00
muhaidong
9b3ce4b15f esp_wifi: fix fragment issue and PMF compatible for faulty APs
1. fix(pp): fix fragment plt loss when 2td pn compare with 1th pn
2. pmf allow keyindex in big endian format to workaround faulty APs
3. docs: update miswritten and abbreviated words and syntax errors for initialize WiFi section in esp_wifi.h header file
4. allow for minimal scope of wifi_init_config_t
5.compute packet length use lldesc length instead rx_ctl sig_len for sniffer
2022-03-09 14:48:49 +08:00
paul
112bfbe465 I2C: Fix typo in I2C_TIMING_VAL_ERR_STR macro name
* Closes https://github.com/espressif/esp-idf/pull/8012
2022-03-09 06:29:14 +00:00
chenjianxing
02fe2fa96f esp_phy: update esp32 phy max tx power 2022-03-09 14:02:53 +08:00
Omar Chebib
65cfc9e656 UART: Fix custom ISR unit test
On ESP32, UART_INTR_BRK_DET may be triggered after setting the new ISR handler.
Disable these interrrupts.
2022-03-09 04:34:00 +00:00
Omar Chebib
5f27ec9157 UART: fix a bug preventing the user from freeing a previously registered ISR
* Closes https://github.com/espressif/esp-idf/issues/8150
2022-03-09 04:34:00 +00:00
morris
79cdc465fd Merge branch 'bugfix/modbus_fix_start_after_destroy_issues_v43' into 'release/v4.3'
modbus: fix tcp slave destroy issues (backport v4.3)

See merge request espressif/esp-idf!17403
2022-03-09 09:46:07 +08:00
Wang Meng Yang
2d7f61758b Merge branch 'bugfix/add_pll_track_feature_4.3' into 'release/v4.3'
Add pll track feature

See merge request espressif/esp-idf!17287
2022-03-08 16:52:32 +08:00
David Cermak
9e15d184d1 mqtt: Fix sending log data; dup flag after queue
* Fix sending mqtt message longer than Tx buffer size
* Fix enqueue API to send data with correct dup flag
* Update submodule: git log --oneline b86d42c130ac64a916ce6cf299d99f9756692394..985078affa8a2d2b56b87c8e6455252850f895c6

Detailed description of the changes:
* Isolate IDF env for v4.4 and v5.0(master)
  - See merge request espressif/esp-mqtt!111
  - ci: Isolate IDF env for v4.4 and v5.0(master) (espressif/esp-mqtt@4c5a65c)
* Client: Remove usage of legacy FreeRTOS types
  - See merge request espressif/esp-mqtt!120
  - ci: Fix build issues with IDF-4.4 against master (espressif/esp-mqtt@c28a56d)
  - See commit https://github.com/espressif/esp-mqtt/commit/6ef98d6
* mqtt_client: Fix mqtt send long data error
  - See merge request espressif/esp-mqtt!117
  - Closes https://github.com/espressif/esp-mqtt/issues/214
  - See commit https://github.com/espressif/esp-mqtt/commit/372b323
* Client: Fix use esp_mqtt_client_enqueue API to send data, data dup flag will be set 1
  - See merge request espressif/esp-mqtt!116
  - See commit https://github.com/espressif/esp-mqtt/commit/df8dc92
2022-03-08 09:49:50 +01:00
aleks
f11e17f886 freemodbus: fix port enable disable sequence for tcp master and slave 2022-03-08 09:40:08 +01:00
morris
22e630b145 Merge branch 'bugfix/esp_eth_start_tx_buff_v4.3' into 'release/v4.3'
Fixed ESP32 EMAC driver `insufficient TX buffer size` (v4.3)

See merge request espressif/esp-idf!16665
2022-03-08 16:38:18 +08:00
aleks
106fcdcc1c modbus: fix tcp slave destroy issues
Closes https://github.com/espressif/esp-idf/issues/8211
2022-03-08 09:30:59 +01:00
Mahavir Jain
9338d1d121 Merge branch 'bugfix/http_client_body_v4.3' into 'release/v4.3'
esp_http_client: Fix data corruption in http_on_body callback (v4.3)

See merge request espressif/esp-idf!17315
2022-03-08 12:56:21 +08:00
xiongweichao
7cb6468fff Update HFP_HF version to 1.7.2 2022-03-08 11:01:40 +08:00
“YangZhao”
c399f5d1e7 Update ESP32-C3 bt lib and phy lib
Add the pll track feature to keep the ble connection stable when the environment
temprature increase form 0 to 74.
2022-03-08 01:45:06 +00:00
Roland Dobai
0b8d52a926 Merge branch 'bugfix/add-resolution-suggestion-for-coredump_v4.3' into 'release/v4.3'
idf_monitor.py: Remove line finalization when coredump is in progress to avoid coredump failure (v4.3)

See merge request espressif/esp-idf!17365
2022-03-08 04:03:54 +08:00
Roland Dobai
df29179a56 Merge branch 'bugfix/idf_size_assertions_v4.3' into 'release/v4.3'
tools: Fix assertion messages and fix some of them in idf_size.py (v4.3)

See merge request espressif/esp-idf!17350
2022-03-08 02:58:23 +08:00
Roland Dobai
46c5ad2292 Merge branch 'bugfix/tools_fix_gdb_2021r2_patch3_v4.3' into 'release/v4.3'
tools: update esp-2021r2-patch3 toolchain for fixing GDB (v4.3)

See merge request espressif/esp-idf!17246
2022-03-07 23:37:18 +08:00
Martin Gaňo
a7b249b182 Remove line finalization when coredump is active to avoid coredump failure
Closes https://github.com/espressif/esp-idf/issues/8099
2022-03-07 15:25:24 +01:00
Armando
fe5a5284ba sleep: restore analog calibration registers after waking up from light sleep
Closes https://github.com/espressif/esp-idf/issues/8287
Closes https://github.com/espressif/esp-idf/issues/7921
2022-03-07 21:58:42 +08:00
Ondrej Kosta
8f1f424390 esp_eth: EMAC start/stop optimization 2022-03-07 14:54:55 +01:00
Ondrej Kosta
3c8bab0285 Fixed ESP32 EMAC driver insufficient TX buffer size which could followed esp_eth_stop and esp_eth_start sequence 2022-03-07 14:54:33 +01:00
Shubham Kulkarni
6b9381f754 esp_http_client: Cache received data in http_on_body callback.
This change fixes issue with data loss when multiple body chunks are
received after calling esp_http_client_fetch_headers.
2022-03-07 06:16:56 +00:00
Island
55da7a2f2e Merge branch 'feature/add_proxy_conn_and_disconn_event_v4.3' into 'release/v4.3'
ble_mesh: stack: Add proxy server connect and disconnect event (v4.3)

See merge request espressif/esp-idf!16994
2022-03-06 14:10:33 +08:00
wangjialiang
8cf5786444 ble_mesh: stack: Bugfix the proxy client abnormal disconnection 2022-03-05 11:14:57 +00:00
wangjialiang
d975bb0086 ble_mesh: stack: Add proxy server connect and disconnect event 2022-03-05 11:14:57 +00:00
Jiang Jiang Jian
e4e76aedc4 Merge branch 'bugfix/assoc_comeback_fail_issue_v4.3' into 'release/v4.3'
Fix assoc comeback causing invalid state & FTM cleanup (Backport v4.3)

See merge request espressif/esp-idf!17171
2022-03-04 20:11:27 +08:00
Wang Fang
a469559e1a docs: add an example list for esp-wrover-kit 2022-03-04 07:01:02 +00:00
Mahavir Jain
028f1d9345 Merge branch 'feature/websocket_server_support_close_handle_v4.3' into 'release/v4.3'
esp_http_server: Websocket CLOSE frame can support callback function (backport v4.3)

See merge request espressif/esp-idf!17340
2022-03-04 13:37:52 +08:00
Mahavir Jain
0aa2b4eaec Merge branch 'bugfix/http_client_ci_v4.3' into 'release/v4.3'
esp_http_client example: Use dl.espressif.com URL for performing request with Range header (v4.3)

See merge request espressif/esp-idf!17317
2022-03-04 11:10:10 +08:00
Jiang Jiang Jian
0f2003cd79 Merge branch 'bugfix/a2dp_sniff_v4.3' into 'release/v4.3'
fix crash when host exits sniff mode(V4.3)

See merge request espressif/esp-idf!14457
2022-03-04 00:27:58 +08:00
Roland Dobai
769335dae3 Tools/idf_size.py: Support .noinit sections
Closes https://github.com/espressif/esp-idf/issues/8428
2022-03-03 15:06:29 +01:00
Roland Dobai
6fe0f873c2 tools/idf_size.py: Identify objects without extension in MAP files 2022-03-03 14:52:54 +01:00
Shubham Kulkarni
3f728f68c7 examples/esp_http_client: Use dl.espressif.com URL for performing request with Range header
esp_http_client_test.py: Add check for range request log
2022-03-03 17:52:21 +05:30
Jiang Jiang Jian
ae84265128 Merge branch 'bugfix/dual_core_pm_lock_issue_backport_v4.3' into 'release/v4.3'
System: fix pm lock issue in dual core mode(backport v4.3)

See merge request espressif/esp-idf!17262
2022-03-03 18:40:40 +08:00
Jiang Jiang Jian
1955dcda69 Merge branch 'bugfix/bootloader_uart_custom_gpio_v4.3' into 'release/v4.3'
bootloader: fixed the issue custom_uart_gpio doesn't take effect (v4.3)

See merge request espressif/esp-idf!17308
2022-03-03 16:49:49 +08:00
Shang Zhou
81ac6fb7f0 docs: add note for MALLOC_CAP_DMA for ESP32-S2 according to customer feedback 2022-03-03 16:40:34 +08:00
xiongweichao
e98d72ee76 Fix crash when host exit sniff mode 2022-03-03 16:20:13 +08:00
yuanjm
29f5f119b2 esp_http_server: Websocket CLOSE frame can support callback function
Closes https://github.com/espressif/esp-idf/issues/7493
2022-03-03 15:48:07 +08:00
morris
bfbe5dcbbe Merge branch 'docs/dynamic_copyright_date_v4.3' into 'release/v4.3'
docs: update copyright date for docs automatically (v4.3)

See merge request espressif/esp-idf!17328
2022-03-03 12:38:45 +08:00
Jiang Jiang Jian
cf3413384a Merge branch 'bugfix/remove_c_series_chips_unsupported_efuse_field_backport_v4.3' into 'release/v4.3'
efuse: free esp32c3 unused efuse field (backport v4.3)

See merge request espressif/esp-idf!17293
2022-03-03 11:07:16 +08:00
Wang Meng Yang
4bc28054ee Merge branch 'demo/opt_a2dp_demo_doc_v4.3' into 'release/v4.3'
demo/optimize a2dp demo documents (v4.3)

See merge request espressif/esp-idf!16588
2022-03-03 11:07:02 +08:00
Marius Vikhammer
b31f974b99 docs: update copyright date for docs automatically 2022-03-03 10:38:26 +08:00
Marius Vikhammer
b30ff28034 freertos: always inline xPortSetInterruptMaskFromISR and vPortClearInterruptMaskFromISR
These were called from IRAM context where the caller expect them to be inlined
and accessible when cache is disabled. This was not the case when compiled with -O0.

Closes https://github.com/espressif/esp-idf/issues/8301
2022-03-03 10:09:33 +08:00
Mahavir Jain
f02c6037d4 Merge branch 'bugfix/spiffs_example_test_v4.3' into 'release/v4.3'
examples/spiffs: increase test timeout (v4.3)

See merge request espressif/esp-idf!17266
2022-03-02 17:14:18 +08:00
morris
ad94b8b9dc Merge branch 'bugfix/touch_ll_get_sleep_time_v4.3' into 'release/v4.3'
Fixed error in "touch_ll_get_sleep_time" function for ESP32 (v4.3)

See merge request espressif/esp-idf!16248
2022-03-02 12:11:04 +08:00
Michael (XIAO Xufeng)
7a14739e71 Merge branch 'bugfix/gpio_intr_on_core1_s3_v4.3' into 'release/v4.3'
gpio: Fix the bug that gpio interrupt cannot be triggered on app cpu on ESP32S3 (backport v4.3)

See merge request espressif/esp-idf!16596
2022-03-02 11:23:42 +08:00
songruojing
1bcb419fd2 uart: fixed reset logic on ESP32-S3 2022-03-02 02:56:23 +08:00
songruojing
5f3f615ff1 uart: fixed incorrect channel number on ESP32S2, S3 and C3 2022-03-02 02:56:23 +08:00
Michael (XIAO Xufeng)
24fa86f270 bootloader: fixed the issue custom_uart_gpio doesn't take effect 2022-03-02 02:56:17 +08:00
Island
047adc5ebc Merge branch 'bugfix/ble_mesh_console_correct_repl_config_prompt_forv4.3' into 'release/v4.3'
ble mesh:example:correct repl config prompt in ble mesh console(v4.3)

See merge request espressif/esp-idf!17184
2022-03-01 13:51:02 +08:00
wuzhenghui
ad71c0031c remove in esptool 2022-02-28 19:24:59 +08:00
wuzhenghui
b8bd3ada55 remove esp32c3 unsupported efuse field 2022-02-28 18:58:12 +08:00
Sergey Gorban
3f49170ab1 Fixed error in "touch_ll_get_sleep_time" function for ESP32
Merges https://github.com/espressif/esp-idf/pull/6895
2022-02-28 09:45:43 +00:00
songruojing
f5f7a77895 gpio: Fix the bug that gpio interrupt cannot be triggered on app cpu on ESP32S3
Closes https://github.com/espressif/esp-idf/issues/7885

(cherry picked from commit 91f1159f9c)
2022-02-28 16:10:37 +08:00
songruojing
f817722109 gpio: Bugfix - Move esp_intr_free() out of the critical section in gpio_uninstall_isr_service()
Closes https://github.com/espressif/esp-idf/issues/5571

Fix the bug that if the API was called from one core to free the interrupt source on the other core, it would trigger interrupt watchdog.

(cherry picked from commit 0e8286c57b)
2022-02-28 15:50:40 +08:00
Anton Maklakov
077c5fb0b8 coredump: backport the coredump test data from v4.4 2022-02-28 12:29:08 +07:00
morris
040ae4ac72 Merge branch 'feat/support_mxic_unlock_v4.3' into 'release/v4.3'
spi_flash: support unlock MXIC flash chips (v4.3)

See merge request espressif/esp-idf!16481
2022-02-25 14:57:16 +00:00
Michael (XIAO Xufeng)
731cb09ab4 bootloader: support unlock MXIC flash chips 2022-02-25 08:20:07 +00:00
morris
c735cbde58 Merge branch 'bugfix/mitigate_test_time_adjustment_happens_linearly_v4.3' into 'release/v4.3'
newlib: Mitigate UT - time adjustment happens linearly v4.3

See merge request espressif/esp-idf!17252
2022-02-24 08:38:30 +00:00
Mahavir Jain
002a16c367 examples/spiffs: increase test timeout
This is to address frequent CI test failure where test most likely
timeouts during SPIFFS formatting operation.
2022-02-24 09:20:07 +05:30
jingli
496f2a5741 fix pm lock issue in dual core mode 2022-02-23 21:50:37 +08:00
Roland Dobai
74b912f494 Tools: IDF Monitor should flash with the unmodified port
Closes https://github.com/espressif/esp-idf/issues/8432
2022-02-23 13:41:46 +01:00
KonstantinKondrashov
ace832abf5 newlib: Mitigate UT - time adjustment happens linearly 2022-02-23 16:51:28 +08:00
Mahavir Jain
fb8ce7d010 Merge branch 'bugfix/check_chip_id_at_start_ota_v4.3' into 'release/v4.3'
esp_https_ota: fix for checking chip id at start of OTA (v4.3)

See merge request espressif/esp-idf!17221
2022-02-23 04:30:18 +00:00
Anton Maklakov
adebd5c5c3 test_apps/panic: GDB in esp-2021r2-patch3 toolchain doesn't contain the fix for interrupted backtraced
Revert "test_apps/panic: remove workaround for incorrect GDB backtrace"

This reverts commit c0e96ceb34.
2022-02-23 10:54:18 +07:00
Michael (XIAO Xufeng)
6f99b8da73 Merge branch 'bugfix/gpio_pin_num_fix_v4.3' into 'release/v4.3'
gpio: Fix some gpio pin num errors on esp32s2 and esp32c3 (backport v4.3)

See merge request espressif/esp-idf!17109
2022-02-23 03:28:15 +00:00
Anton Maklakov
115663df95 tools: update esp-2021r2-patch3 toolchain for fixing GDB
Closes https://github.com/espressif/esp-idf/issues/8065
    Closes https://github.com/espressif/esp-idf/issues/8342
    Closes https://github.com/espressif/openocd-esp32/issues/210
2022-02-23 09:25:23 +07:00
Jiang Jiang Jian
1674c63f82 Merge branch 'bugfix/update_stack_init_check_v4.3' into 'release/v4.3'
Nimble: Remove stack initialization status from unwanted functions (v4.3)

See merge request espressif/esp-idf!17235
2022-02-22 08:14:24 +00:00
Krzysztof Budzynski
dd59c5d5c5 Merge branch 'docs/update_sdmmc_vfs_cn_trans_4.3' into 'release/v4.3'
docs: update sdmmc and vfs cn trans (v4.3)

See merge request espressif/esp-idf!17196
2022-02-22 06:48:29 +00:00
Harshit Malpani
74845d89cb esp_https_ota: fix for checking chip id at start of OTA 2022-02-22 11:05:19 +05:30
Rahul Tank
4ddd1f9d11 Nimble: Check stack initialization status before executing stack command
Previous commit added checks in some functions that can be called
    without stack initalization. Corrected such instances.
2022-02-22 10:26:54 +05:30
Anton Maklakov
dd9aa85ca9 Merge branch 'bugfix/rom_time_t_size_deps_v4.3' into 'release/v4.3'
esp_rom: remove functions which depend on sizeof(struct stat) and all their callers (v4.3)

See merge request espressif/esp-idf!17041
2022-02-22 03:24:49 +00:00
intern
615e67bd6b docs: update sdmmc and vfs cn trans 2022-02-22 11:07:16 +08:00
morris
c166160f64 Merge branch 'bugfix/rtcio_increase_size_v4.3' into 'release/v4.3'
sleep: fixed ext1 cannot wakeup via RTCIO >= 18 issue (v4.3)

See merge request espressif/esp-idf!17202
2022-02-21 20:13:34 +00:00
Roland Dobai
91ed14b50f Merge branch 'bugfix/idf_tools_python_env_v4.3' into 'release/v4.3'
tools: improve virtualenv diagnostics, set python path explicitly (v4.3)

See merge request espressif/esp-idf!16808
2022-02-21 11:52:26 +00:00
Ivan Grokhotkov
4670bcf40e Merge branch 'task/esp_core_dump_get_summary_v4.3' into 'release/v4.3'
espcoredump: esp_core_dump_get_summary API (v4.3)

See merge request espressif/esp-idf!17012
2022-02-21 11:19:39 +00:00
Mahavir Jain
63f6fe34ac Merge branch 'fix/prod_mode_in_configure_ds_script_v4.3' into 'release/v4.3'
configure_ds.py: Fix the error for prod mode. They script now only verifies... (v4.3)

See merge request espressif/esp-idf!17210
2022-02-21 04:23:51 +00:00
Aditya Patwardhan
74fc0578f5 configure_ds.py: Fix the error for prod mode. They script now only verifies the purpose in the prod mode.
Closes https://github.com/espressif/esp-idf/issues/8285
2022-02-21 01:33:39 +05:30
Ivan Grokhotkov
724032022c tools: improve virtualenv diagnostics, set python path explicitly
- Check if pip is installed for sys.executable before attempting to
  create the virtual environment, bail out with an error if not.
- Don't pass --seeder argument to virtualenv if its version is
  too old. For example, on Ubuntu 18.04, virtualenv 15.1.0 doesn't
  support this argument.
- Pass --python argument to virtualenv to request specific interpreter
  to be used.

Closes https://github.com/espressif/esp-idf/issues/8045
2022-02-20 14:48:28 +03:00
Michael (XIAO Xufeng)
d3df24d950 Merge branch 'bugfix/ledc_consecutive_fade_v4.3' into 'release/v4.3'
ledc: Bugfixes for issues related to fade protection (backport v4.3)

See merge request espressif/esp-idf!16661
2022-02-19 17:38:15 +00:00
Jiang Jiang Jian
fc36f08d3f Merge branch 'bugfix/enterprise_certs_weak_md_v4.3' into 'release/v4.3'
esp_wifi: Fixed issue of weak md for certificates in wifi_enterprise example.(v4.3)

See merge request espressif/esp-idf!16989
2022-02-18 06:03:59 +00:00
Jiang Jiang Jian
5c78283f6e Merge branch 'bugfix/modbus_allow_address_gaps_in_master_data_dict_v43' into 'release/v4.3'
freemodbus: allow address gaps in master data dictionary (support of UID field in MBAP) (backport v4.3)

See merge request espressif/esp-idf!16898
2022-02-18 05:40:50 +00:00
Alex Lisitsyn
073da59d27 freemodbus: allow address gaps in master data dictionary (support of UID field in MBAP) (backport v4.3) 2022-02-18 05:40:49 +00:00
Jiang Jiang Jian
d501fd4b96 Merge branch 'fix/sdio_slave_recv_intr_unhandled_v4.3' into 'release/v4.3'
sdio_slave: fixed the issue that interrupt may be cleared with finished trans unhandled (v4.3)

See merge request espressif/esp-idf!17149
2022-02-18 05:40:33 +00:00
Jiang Jiang Jian
ef356e464d Merge branch 'bugfix/pppos_client_docs_power_v4.3' into 'release/v4.3'
Examples/PPPoS: Add troubleshooting to correctly power modem (v4.3)

See merge request espressif/esp-idf!17008
2022-02-18 05:39:00 +00:00
Michael (XIAO Xufeng)
8ff2ce6852 soc: updated soc_caps about rtc_io and the format 2022-02-18 11:11:24 +08:00
Michael (XIAO Xufeng)
f8e45766b5 sleep: fixed ext1 cannot wakeup via RTCIO >= 18 issue 2022-02-18 11:10:49 +08:00
Michael (XIAO Xufeng)
501d67fdc5 Merge branch 'bugfix/sdio_slave_dma_desc_int_v4.3' into 'release/v4.3'
sdio_slave: Fixed the issue that DMA descriptors allocated to non-DMA capable area (v4.3)

See merge request espressif/esp-idf!17138
2022-02-18 01:24:42 +00:00
Michael (XIAO Xufeng)
30a17ea53d Merge branch 'feature/support_new_psram_v4.3' into 'release/v4.3'
psram: add ESP32-D0WD-R2-V3 support(backport v4.3)

See merge request espressif/esp-idf!16707
2022-02-18 01:21:37 +00:00
Michael (XIAO Xufeng)
9e9fb39a07 Merge branch 'flash/add_th_support_v4.3' into 'release/v4.3'
spi_flash: add support for th 1M flash(backport v4.3)

See merge request espressif/esp-idf!16716
2022-02-18 01:20:28 +00:00
Jiang Jiang Jian
b1f93150f9 Merge branch 'bugfix/fix_ble_adv_underrun_error_v4.3' into 'release/v4.3'
components/bt: Fix ble adv_underrun issue(backport v4.3)

See merge request espressif/esp-idf!17165
2022-02-17 09:56:06 +00:00
Jiang Jiang Jian
40c0c33ae0 Merge branch 'bugfix/wifi_netif_on_off_cycle_race_v4.3' into 'release/v4.3'
wifi: Fix race conditon invoking invalid callback on deinit (v4.3)

See merge request espressif/esp-idf!16622
2022-02-17 04:18:18 +00:00
Jiang Jiang Jian
726ceb4fed Merge branch 'ci/add_esp32c3_integration_test' into 'release/v4.3'
CI: support integration c3 test (4.3)

See merge request espressif/esp-idf!17108
2022-02-16 09:25:29 +00:00
Nachiket Kukade
9a09f24572 esp_wifi: Update wifi lib
1. Fix assoc comeback causing invalid state
2. Better cleanup in some FTM failure cases
2022-02-16 12:54:08 +05:30
Yuan Hong Hui
ab375388ef ble mesh:example:correct the output log level 2022-02-16 15:18:06 +08:00
Yuan Hong Hui
47bd9d4171 ble mesh:example:delete unused tag 2022-02-16 15:17:57 +08:00
Yuan Hong Hui
69b9ad27c3 ble mesh:example:response for checking restart in auto_test 2022-02-16 15:17:48 +08:00
Yuan Hong Hui
432e9b6293 ble mesh:example:correct repl config prompt 2022-02-16 15:17:35 +08:00
morris
c831d1f1e0 Merge branch 'feature/adc_calibration_version_2_on_c3_v4.3' into 'release/v4.3'
adc: upgrade adc calibration algorithm to version 2 on c3 (v4.3)

See merge request espressif/esp-idf!17050
2022-02-16 07:02:07 +00:00
Jiang Jiang Jian
f75ed7c7cc Merge branch 'bugfix/mdns_null_deref_fuzzer_v4.3' into 'release/v4.3'
mdns: Fix potential null deref reported by fuzzer test(v4.3)

See merge request espressif/esp-idf!17146
2022-02-16 06:27:25 +00:00
Jiang Jiang Jian
df7cfa025c Merge branch 'bugfix/fix_esp_restart_does_not_reset_timer_groups_periph_v43' into 'release/v4.3'
modbus: fix esp restart does not reset timer groups periph (backport v4.3)

See merge request espressif/esp-idf!15501
2022-02-16 04:05:38 +00:00
Alex Lisitsyn
e48f87468e modbus: fix esp restart does not reset timer groups periph (backport v4.3) 2022-02-16 04:05:37 +00:00
Jiang Jiang Jian
acc55cae88 Merge branch 'fix/gitlab_404_local_mirror_v4.3' into 'release/v4.3'
Handle gitlab 404 error (v4.3)

See merge request espressif/esp-idf!16959
2022-02-16 04:05:21 +00:00
Jiang Jiang Jian
8fa37107be Merge branch 'bugfix/usb_default_print_wifi_v4.3' into 'release/v4.3'
esp_phy: enable usb under default(without choosing USB_SERIAL_JTAG) (backport v4.3)

See merge request espressif/esp-idf!17078
2022-02-16 04:04:38 +00:00
Jiang Jiang Jian
ad2238d7fb Merge branch 'bugfix/eap_client_crash_v4.3' into 'release/v4.3'
wpa_supplicant: Fix memory corruption (v4.3)

See merge request espressif/esp-idf!17129
2022-02-16 04:03:49 +00:00
Jiang Jiang Jian
87c2352a1e Merge branch 'bugfix/support_esp32s2_eco1_v4.3' into 'release/v4.3'
esp_phy: Update ESP32S2 phy lib to support eco1 chip(v4.3)

See merge request espressif/esp-idf!16723
2022-02-16 03:29:22 +00:00
Zim Kalinowski
e4743e7d79 Merge branch 'docs/fix_broken_links_4.3' into 'release/v4.3'
docs: fix broken links in queue.h file (v4.3)

See merge request espressif/esp-idf!17162
2022-02-16 02:40:32 +00:00
xiewenxiang
2d65703547 components/bt: Fix ble adv_underrun issue
components/bt: Fix LLCP collision for channel map update
2022-02-16 00:37:38 +08:00
Mahavir Jain
be19818db7 Merge branch 'contrib/github_pr_8402' into 'release/v4.3'
secure boot:  add missing `#include "esp_flash_encrypt.h"`

See merge request espressif/esp-idf!17159
2022-02-15 10:42:43 +00:00
Armando
bcb8d87108 adc: upgrade adc calibration algorithm to version 2 on c3 2022-02-15 15:27:25 +08:00
Ivan Grokhotkov
22e741a281 esp_adc_cal: move esp_adc_cal_get_voltage into common source file 2022-02-15 15:27:25 +08:00
Ivan Grokhotkov
b075101316 esp_adc_cal: simplify CMakeLists.txt 2022-02-15 15:27:25 +08:00
chenjianxing
5e4ec25ace esp_phy: Update ESP32S2 phy lib to support eco1 chip 2022-02-15 14:58:04 +08:00
intern
a8736a9b66 docs:fix broken links 2022-02-15 14:28:59 +08:00
Chen Yudong
ad6095ad80 CI: optimize integration test workflow 2022-02-15 13:23:15 +08:00
Chen Yudong
7fecad1473 CI: support integration c3 test 2022-02-15 13:23:15 +08:00
songruojing
230861e80f ci: increase target-test.yml UT_T1_1 job to support newly added LEDC fade ut tests 2022-02-15 11:29:33 +08:00
songruojing
7b70f6e135 ledc: Fix FADE_NO_WAIT mode concurrency problem.
Add test cases for fade concurrency issue and fade timing check.

Closes https://github.com/espressif/esp-idf/issues/6710

(cherry picked from commit be2ab09832)
2022-02-15 11:29:33 +08:00
songruojing
ad3b9a8002 ledc: bugfix - Simplify the procedure to perform a one-time duty update
Avoid adding one extra fade cycle when performing a one-time duty update.
Add some notes to ledc_get_duty and ledc_update_duty APIs, so that users
are aware of when the new duty will be effective.

Closes https://github.com/espressif/esp-idf/issues/7288

(cherry picked from commit e175086226)
2022-02-15 11:29:33 +08:00
Michael (XIAO Xufeng)
25b1c57121 sdio_slave: fixed the issue that interrupt may be cleared with finished trans unhandled 2022-02-15 00:01:33 +08:00
Michael (XIAO Xufeng)
7d65b17898 Merge branch 'bugfix/alarm_update_invalid_v4.3' into 'release/v4.3'
timer: stop alarm if alarm value doesn't change in ISR callback (v4.3)

See merge request espressif/esp-idf!16533
2022-02-14 15:38:14 +00:00
David Cermak
03f9eedc27 mdns: Fix potential null deref reported by fuzzer test 2022-02-14 22:49:34 +08:00
Jiang Jiang Jian
8d5316ceb8 Merge branch 'bugfix/wps_scan_resumption_v4.3' into 'release/v4.3'
wpa_supplicant: Scan resumption in PBC mode(backport v4.3)

See merge request espressif/esp-idf!17063
2022-02-14 13:05:28 +00:00
Jiang Jiang Jian
9ff972046b Merge branch 'bugfix/fix_smartconfig_setopt_fail_v4.3' into 'release/v4.3'
smartconfig: Fix smartconfig set socket option fail(backport v4.3)

See merge request espressif/esp-idf!16771
2022-02-14 13:03:35 +00:00
Cao Sen Miao
d3f5fd6eb6 spi_flash: add support for th 1M flash 2022-02-14 16:01:43 +08:00
Michael (XIAO Xufeng)
b1d6217f5c Merge branch 'bugfix/usb_no_rom_log_v4.3' into 'release/v4.3'
USB_SERIAL_JTAG: Fix the issue that there is no rom log when restarting(backport v4.3)

See merge request espressif/esp-idf!17074
2022-02-14 07:34:24 +00:00
Michael (XIAO Xufeng)
81948262c8 sdio_slave: fixed the issue DMA desc not capable 2022-02-14 12:55:56 +08:00
Christian Winkler
06d7fd95d4 secure_boot.c add missing '#include "esp_flash_encrypt.h"' 2022-02-13 19:51:55 +01:00
Cao Sen Miao
1f980ae982 psram: add ESP32-D0WD-R2-V3 support 2022-02-13 22:31:24 +08:00
Mahavir Jain
8504a878f3 Merge branch 'bugfix/fix_esp_http_client_example_v4.3' into 'release/v4.3'
esp_http_client: Fix memory leak in esp_http_client_example (backport v4.3)

See merge request espressif/esp-idf!17094
2022-02-13 13:26:25 +00:00
Michael (XIAO Xufeng)
d04dacdaa1 Merge branch 'bugfix/usb_device_struct_cleanup_v4.3' into 'release/v4.3'
USB: Cleanup device side struct and fix incorrect DM pulldown configuration (v4.3)

See merge request espressif/esp-idf!17103
2022-02-12 20:53:02 +00:00
Kapil Gupta
7df150b3de wpa_supplicant: Fix invalid memory dereference 2022-02-12 10:32:53 +05:30
Ivan Grokhotkov
f527010044 esp_rom: remove functions which depend on sizeof(struct stat)
...and all their callers.

With the upcoming switch from sizeof(time_t)==4 to sizeof(time_t)==8,
sizeof(struct stat) is also increasing.

A few newlib functions present in ROM allocate 'struct stat' on the
stack and call _fstat_r on this structure. The implementation of
fstat is provided in ESP-IDF. This implementation will often do
memset(st, 0, sizeof(*st)), where st is 'struct stat*', before setting
some fields of this structure. If IDF is built with sizeof(st)
different from sizeof(st) which ROM was built with, this will lead
to an out-of-bounds write and a stack corruption.

This commit removes problematic ROM functions from the linker script.
Here are the functions which allocate 'struct stat':
* _isatty_r (in ROM)
* __swhatbuf_r, called by __smakebuf_r, called by __swsetup_r and
  __srefill_r (in ROM)
* _fseeko_r (not in ROM)
* glob2 (not in ROM)
* _gettemp (not in ROM)

As a result, these functions are used from libc.a, and use correct
size of 'stat' structure.

Closes https://github.com/espressif/esp-idf/issues/7980
2022-02-11 07:07:12 +00:00
Sergei Silnov
d359f88054 examples: Add the component manager example 2022-02-10 13:17:29 +00:00
Sergei Silnov
917510ea96 docs: Add component manager documentation 2022-02-10 13:17:29 +00:00
Sergei Silnov
611c5a2496 Build System: Don't track dependencies.lock 2022-02-10 13:17:29 +00:00
Sergei Silnov
69e784d07e Add idf-component-manager python dependency 2022-02-10 13:17:29 +00:00
songruojing
b1017de2e6 gpio: Fix some gpio pin num errors on esp32s2 and esp32c3 2022-02-10 20:27:43 +08:00
Michael (XIAO Xufeng)
dcfd5187ac Merge branch 'bugfix/fix_spi_cs_hold_time_issue_v4.3' into 'release/v4.3'
spi_master: fix spi cs_ena_posttrans issue (v4.3)

See merge request espressif/esp-idf!16687
2022-02-10 09:36:50 +00:00
Darian Leung
7f51eb7e7c Fix incorrect D- pulldown and cleanup USB device struct
This commit fixes the incorrect setting of the D- pulldown resistor in the USB LL.
The usb_struct.h used by USB device mode has also been cleaned up.
2022-02-10 17:20:39 +08:00
morris
b979547b06 Merge branch 'bugfix/rmt_s2_doesnt_support_rx_wrap_v4.3' into 'release/v4.3'
rmt: do not support rx wrap on esp32s2 (v4.3)

See merge request espressif/esp-idf!17080
2022-02-10 09:12:04 +00:00
yuanjm
94e58eac30 esp_http_client: Fix memory leak in esp_http_client_example
Closes https://github.com/espressif/esp-idf/issues/8346
2022-02-10 14:35:49 +08:00
Cao Sen Miao
9c4b96d63b USB_SERIAL_JTAG: Fix the issue that there is no rom log when restarting 2022-02-10 10:33:40 +08:00
Krzysztof Budzynski
4a14745b28 Merge branch 'docs/update_wifi_cn_trans_4.3' into 'release/v4.3'
Docs: update wifi.rst and nvs_flash.rst docs (Backport 4.3)

See merge request espressif/esp-idf!16899
2022-02-09 14:09:34 +00:00
Wang Meng Yang
119ae77993 Merge branch 'bugfix/a2dp_source_congest_v4.3' into 'release/v4.3'
component_bt: Fixed a2dp source audio data packet congestion causing choppy audio in a2dp sink (v4.3)

See merge request espressif/esp-idf!16735
2022-02-09 11:34:21 +00:00
Wang Meng Yang
ab099369c8 Merge branch 'bugfix/config_parse_crash_after_flash_erase_v4.3' into 'release/v4.3'
component_bt: fixed config parse crash after flash_erase(v4.3)

See merge request espressif/esp-idf!16731
2022-02-09 11:15:52 +00:00
Cao Sen Miao
3a628eb470 usb_serial_jtag: remove the strict condition check in esp_phy 2022-02-09 19:02:36 +08:00
morris
81e3035f4d rmt: do not support rx wrap on esp32s2
Closes https://github.com/espressif/esp-idf/issues/8354
2022-02-09 18:23:44 +08:00
intern
c7fd71a893 docs: update wifi and nvs cn trans 2022-02-09 17:52:55 +08:00
Cao Sen Miao
d64553797c usb_serial_jtag: can print when wifi enabled by default
Closes https://github.com/espressif/esp-idf/issues/8131
2022-02-09 17:36:04 +08:00
Zim Kalinowski
5c72bbcb3d Merge branch 'bugfix/uart_no_int_after_flush_v4.3' into 'release/v4.3'
UART: RX interrupts are now properly restored after a flush (backport v4.3)

See merge request espressif/esp-idf!16928
2022-02-09 06:51:43 +00:00
Roland Dobai
7bb51e9a67 Merge branch 'bugfix/win_rename_delay_v4.3' into 'release/v4.3'
Tools: Use delay between rename attempts on Windows in the installer (v4.3)

See merge request espressif/esp-idf!17057
2022-02-08 18:24:10 +00:00
Ivan Grokhotkov
5bcb77fdca Merge branch 'bugfix/vfs_open_errno_v4.3' into 'release/v4.3'
vfs: don't overwrite errno by a hard coded ENOENT (Github PR) (v4.3)

See merge request espressif/esp-idf!17045
2022-02-08 14:37:45 +00:00
Kapil Gupta
b19424d67e wpa_supplicant: Scan resumption in PBC mode 2022-02-08 17:16:29 +05:30
Jiang Jiang Jian
93a3a47440 Merge branch 'bugfix/fix_common_clock_bug_v4.3' into 'release/v4.3'
esp_wifi: fix common clock bug (backport v4.3)

See merge request espressif/esp-idf!16969
2022-02-08 11:28:02 +00:00
Roland Dobai
422892d7b4 Tools: Use delay between rename attempts on Windows in the installer 2022-02-08 11:08:27 +01:00
Ivan Grokhotkov
489fcf1b6c vfs: add test for errno value after 'open' 2022-02-07 11:36:21 +01:00
hörbert
d8c3b4d646 vfs: don't overwrite errno by a hard coded ENOENT
Calling "open" in CHECK_AND_CALL sets a perfectly correct errno.
There is no need to overwrite that with a value of ENOENT, since doing
so hides lower level errors like EIO.

Closes https://github.com/espressif/esp-idf/pull/8036
2022-02-07 11:36:20 +01:00
Armando
b3c51e74c8 spi_master: fix spi cs_ena_posttrans issue 2022-02-07 12:22:15 +08:00
Wang Meng Yang
8a4bcdb563 Merge branch 'bugfix/nimble_spp_v4.3' into 'release/v4.3'
NimBLE :  SPP example fails to build on Windows (v4.3)

See merge request espressif/esp-idf!17014
2022-02-07 02:35:24 +00:00
Zim Kalinowski
187c5b893d Merge branch 'feature/adds_tips_to_run_ci_example_tests_v4.3' into 'release/v4.3'
examples: Adds a note on how to meet requirements to run the example_test.py (v4.3)

See merge request espressif/esp-idf!16945
2022-02-06 09:25:14 +00:00
David Cermak
17f9c7aaef Examples/PPPoS: Add troubleshooting to correctly power modem
Closes https://github.com/espressif/esp-idf/issues/7807
2022-02-04 17:07:37 +08:00
Mahavir Jain
fea5bdce86 Merge branch 'feature/mbedtls-2.28.0_v4.3' into 'release/v4.3'
mbedtls: Upgrading to v2.28.0 (v4.3)

See merge request espressif/esp-idf!17005
2022-02-03 04:12:10 +00:00
Isha Pardikar
1a3f5accda Merge branch 'bugfix/nimble_spp' into 'release/v4.3'
NimBLE : Fixed BLE SPP build fail on Windows

Closes : https://github.com/espressif/esp-idf/issues/8305

See merge request espressif/esp-idf!17014
2022-02-02 15:18:09 +05:30
Laukik Hase
bdd329ff02 ci: Fix issues for build stage
- Fixed logs expecting different format specifier
- Updated ignore list for check_public_header test
- Updated functions ported from mbedTLS
- Fix for make-system build errors
2022-02-02 15:07:50 +05:30
Laukik Hase
df9f101792 mbedtls: Added option MBEDTLS_SSL_KEEP_PEER_CERTIFICATE
- Removed code regarding MBEDTLS_DYNAMIC_FREE_PEER_CERT
  (config was kept for backward compatibility)
- Combined mbedTLS v2.28.x related options under a separate Kconfig menu
2022-02-02 11:00:32 +05:30
Laukik Hase
6957b4815a protocomm: Updated function for constant time buffer comparison
- mbedtls_ssl_safer_memcmp() -> mbedtls_ct_memcmp()
2022-02-02 11:00:32 +05:30
Laukik Hase
46388a0741 wpa_supplicant: Saved message-type digest used in handshake for PRF operations 2022-02-02 11:00:32 +05:30
Laukik Hase
92c0c09514 mbedtls: Moved mbedtls_mpi_mul_int to port layer 2022-02-02 11:00:32 +05:30
Laukik Hase
29b6d229c1 mbedtls: Added config options for v2.28.0 upgrade 2022-02-02 11:00:32 +05:30
Laukik Hase
021627754c mbedtls: Upgrade to v2.28.0 2022-02-02 11:00:27 +05:30
Shubham Patil
aa89d67923 espcoredump: Parse bt for instruction fetch prohibited cause 2022-02-01 18:28:30 +05:30
Sachin Parekh
e0fc13b23d coredump: Parse backtrace info for RISCV
For RISCV, backtrace generation on device is not possible without
including and parsing DWARF sections. We extract the crash task stack
and let the host generate the backtrace
2022-02-01 17:52:13 +05:30
Shubham Patil
8536cf46a5 espcoredump: Fix string truncation build failure 2022-02-01 17:51:55 +05:30
Shubham Patil
9928f44894 espcoredump: On device core dump parsing to generate summary 2022-02-01 15:24:16 +05:30
Mahavir Jain
c6278acdf2 Merge branch 'bugfix/provisioning_not_stopping_v4.3' into 'release/v4.3'
wifi_prov_mgr: Fix provisioning not stopping in release mode (v4.3)

See merge request espressif/esp-idf!17003
2022-02-01 07:29:51 +00:00
Laukik Hase
d29ab82bc9 wifi_prov_mgr: Fix provisioning not stopping in release mode
- For the wifi_prov_mgr example in release mode (with NDEBUG defined -
  assertions disabled), the task to stop provisioning is never started
  as it is voided by the assert function it is called in.

Closes https://github.com/espressif/esp-idf/issues/8309
2022-02-01 09:50:45 +05:30
Mahavir Jain
ab8b292407 Merge branch 'feature/upgrade_expat_component_v4.3' into 'release/v4.3'
expat: upgrade to v2.4.3 release

See merge request espressif/esp-idf!16980
2022-01-31 06:54:24 +00:00
Harshit Malpani
5b36459611 expat: upgrade to v2.4.3 release
Detailed changelog: https://github.com/libexpat/libexpat/blob/R_2_4_3/expat/Changes
2022-01-31 11:15:29 +05:30
Mahavir Jain
dfaf73c197 Merge branch 'provisioning/update_readme_v4.3' into 'release/v4.3'
provisioning: Remove legacy examples reference (v4.3)

See merge request espressif/esp-idf!16988
2022-01-31 04:36:40 +00:00
Anton Maklakov
dd7826d456 Merge branch 'bugfix/rm_copyright_ignore_list_v4.3' into 'release/v4.3'
CI: Remove unused copyright ignore list (v4.3)

See merge request espressif/esp-idf!16966
2022-01-28 11:02:02 +00:00
aditi_lonkar
8fee811d55 esp_wifi: Fixed issue of weak md for certificates in wifi_enterprise example. 2022-01-28 16:14:05 +05:30
Laukik Hase
f178727aae esp_prov.py: Replaced deprecated function for loading modules 2022-01-28 15:51:50 +05:30
Roland Dobai
5fc51252e9 Merge branch 'bugfix/add_dummy_to_total_size_v4.3' into 'release/v4.3'
Tools: fix bug with total size calculation issue (v4.3)

See merge request espressif/esp-idf!16861
2022-01-27 18:28:36 +00:00
simon.chupin
22cd519375 add test for checking memory segments with esptool.py 2022-01-27 17:21:17 +01:00
liuning
72e4b5ac5b esp_wifi: fix common clock bug (backport v4.3) 2022-01-27 20:20:31 +08:00
Roland Dobai
6357a37846 CI: Remove unused copyright ignore list 2022-01-27 12:50:23 +01:00
Tomas Sebestik
65cb65df1a Handle gitlab 404 error
ci: do not retry on 404 when LOCAL_GITLAB_HTTPS_HOST not set
2022-01-27 11:19:22 +01:00
Krzysztof Budzynski
78f4405c7c Merge branch 'docs/update_c3_ledc_cn_trans' into 'release/v4.3'
Docs: update ledc.rst cn translation for C3 (backport v4.3)

See merge request espressif/esp-idf!16846
2022-01-27 08:27:47 +00:00
KonstantinKondrashov
87514f4a2b 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-27 14:40:29 +08:00
Mahavir Jain
84149f0974 Merge branch 'fix/http2_request_example_v4.3' into 'release/v4.3'
http2_request_example: Change the target http2 server to http2.github.io (v4.3)

See merge request espressif/esp-idf!16671
2022-01-27 06:39:45 +00:00
Omar Chebib
a5a4718600 UART: RX interrupts are now properly restored after a flush
Added a unit test to make sure the expected behavior happens
2022-01-27 10:53:41 +08:00
Jiang Jiang Jian
f1adc8efbe Merge branch 'bugfix/wpa3_memory_leak_v4.3' into 'release/v4.3'
esp_wifi: Fixes memory leak in wpa3 connection.(v4.3)

See merge request espressif/esp-idf!16562
2022-01-26 14:29:15 +00:00
aditi_lonkar
aa044f4a63 esp_wifi: Fixes memory leak in wpa3 connection. 2022-01-26 17:33:20 +08:00
yuanjm
51e196ac93 smartconfig: Fix smartconfig set socket option fail 2022-01-26 11:09:22 +08:00
Zim Kalinowski
87f8a0d5f1 Merge branch 'bugfix/efuse_timesettigs_in_burn_op_v4.3' into 'release/v4.3'
efuse: Fixes eFuse timesettings issue on esp32c3 (v4.3)

See merge request espressif/esp-idf!16922
2022-01-26 00:48:52 +00:00
Zim Kalinowski
df3e1405d5 Merge branch 'bugfix/bootloader_common_get_sha256_of_partition_when_image_invalid_v4.3' into 'release/v4.3'
bootloader: Fixes bootloader_common_get_sha256_of_partition. Adds hash check. (v4.3)

See merge request espressif/esp-idf!16924
2022-01-26 00:48:22 +00:00
KonstantinKondrashov
8374e3b0ee bootloader: Fixes bootloader_common_get_sha256_of_partition. Adds hash check.
Closes https://github.com/espressif/esp-idf/issues/8274
2022-01-25 20:01:00 +08:00
KonstantinKondrashov
5ebbe6aea7 efuse: Fixes eFuse timesettings issue on esp32c3 2022-01-25 19:16:16 +08:00
intern
2216d4d8f7 docs: update c3 ledc cn trans 2022-01-25 17:32:18 +08:00
Jiang Jiang Jian
436eb37a8b Merge branch 'feature/support_eap_fast_on_release_v4.3' into 'release/v4.3'
Feature/support eap fast on release v4.3

See merge request espressif/esp-idf!16852
2022-01-25 08:13:24 +00:00
Island
3829ee1889 Merge branch 'bugfix/filter_repeated_packages_forv4.3' into 'release/v4.3'
filter repeated packages then send response(v4.3)

See merge request espressif/esp-idf!16819
2022-01-25 06:39:59 +00:00
Yuan Hong Hui
117b23a82a filter repeated packages then send response(v4.3) 2022-01-25 06:39:59 +00:00
jincheng
df62fbb6d0 optmize a2dp demo document 2022-01-25 13:33:12 +08:00
simon.chupin
a985402da1 tools/idf_size: Fixed bug with wrong memory calculation 2022-01-24 16:05:14 +01:00
Island
5bad27d0d5 Merge branch 'feature/pro_recv_hb_forv4.3' into 'release/v4.3'
provisioner receive heartbeat message(v4.3)

See merge request espressif/esp-idf!16639
2022-01-24 07:54:41 +00:00
xiongweichao
58bd27b713 btc_a2dp_control_set_datachnl_stat is only used by a2dp sink 2022-01-24 14:39:33 +08:00
xiongweichao
a0f69c3499 remove btc_a2dp_dispatch_datapath_evt and event 2022-01-24 14:39:33 +08:00
xiongweichao
8368bf3760 Fixed the crash caused by calling esp_a2d_media_ctrl(ESP_A2D_MEDIA_CTRL_START) after stream started 2022-01-24 14:39:31 +08:00
xiongweichao
c56cf9d6fd Fixed a2dp source audio data packet congestion causing choppy audio in a2dp sink 2022-01-24 14:39:28 +08:00
Hrudaynath Dhabe
49bd3f0795 esp_wifi: Add an example for EAP-FAST. 2022-01-24 14:24:14 +08:00
Hrudaynath Dhabe
e8196c0ff2 esp_wifi: Add support for EAP-FAST authentication method 2022-01-24 14:24:14 +08:00
Jiang Jiang Jian
ab6b4a13db Merge branch 'bugfix/rd_rem_ext_feats_delayed_cs_v4.3' into 'release/v4.3'
bugfix/fix cs event for rd_rem_ext_feats delayed issue (v4.3)

See merge request espressif/esp-idf!16814
2022-01-24 06:02:47 +00:00
xiongweichao
947e7909b9 fixed config parse crash after flash_erase
Closes https://github.com/espressif/esp-idf/issues/6170
2022-01-24 14:02:01 +08:00
Jiang Jiang Jian
f77e018256 Merge branch 'Doc/optimize_spp_doc_v4.3' into 'release/v4.3'
Doc/Optimize SPP Document[backport 4.3]

See merge request espressif/esp-idf!16604
2022-01-24 05:59:54 +00:00
jincheng
53f20589a4 fix cs event for rd_rem_ext_feats delayed issue 2022-01-24 10:31:27 +08:00
Aditya Patwardhan
0b7ed763e4 http2_request_example: Change the target http2 server to http2.github.io and perform only a GET request 2022-01-21 13:11:48 +05:30
Aditya Patwardhan
045b38857d http2_request/sh2lib: Modified the "sh2lib_connect" API to take in a new
defined `struct sh2lib_config_t` which contains required config options.

Modified the http2_request_example with the required changes.
2022-01-21 09:39:34 +05:30
Fu Hanxi
b9a96186fd Merge branch 'feature/espcoredump_py_riscv_support_v4.3' into 'release/v4.3'
feature: espcoredump py riscv support (v4.3)

See merge request espressif/esp-idf!16840
2022-01-20 01:16:04 +00:00
Ivan Grokhotkov
9aa263c103 Merge branch 'test/remove_spi_flash_perf_thr_v4.3' into 'release/v4.3'
spi_flash_test: remove threshold from unit test (v4.3)

See merge request espressif/esp-idf!16822
2022-01-18 11:51:26 +00:00
Fu Hanxi
3afc31c0de ci: improve test_coredump workflow
use commit sha to let it pass in MRs' CI pipelines
2022-01-18 18:03:44 +08:00
Fu Hanxi
b865a84661 test(coredump): refactor coredump test and add esp32s2/esp32c3 tests 2022-01-18 18:03:44 +08:00
Ivan Grokhotkov
4dc1801c7a ci: install CMake version from tools.json in espcoredump test
To help achieve reproducible builds.
2022-01-18 17:48:41 +08:00
Ivan Grokhotkov
677d6a8625 cmake: sort lists obtained from file(GLOB)
CMake sorts result of file(GLOB) command since version 3.6.0:
https://gitlab.kitware.com/cmake/cmake/-/commit/edcccde7d

Since ESP-IDF sets cmake_minimum_required version to 3.5, and version
3.5.1 is used in CI, sort file lists obtained from file(GLOB)
manually.

This helps obtain reproducible order of libraries passed to the linker
and to ldgen.
2022-01-18 17:48:41 +08:00
Fu Hanxi
54b50ab4ac docs(coredump): update coredump documentation 2022-01-18 17:48:41 +08:00
Fu Hanxi
fbfef19982 feat(coredump): add esp32s2 and esp32c3 support 2022-01-18 17:48:41 +08:00
Michael (XIAO Xufeng)
cc2c92a7ab spi_flash_test: remove threshold from unit test 2022-01-18 15:40:00 +08:00
Michael (XIAO Xufeng)
39f39ac53d test_utils: allow printint multiple argument in the performance log 2022-01-18 15:40:00 +08:00
Ivan Grokhotkov
cc3aeeb279 Merge branch 'ci/fix_wpa_supplicant_exclude_release_v4.3' into 'release/v4.3'
ci: bypass wpa_supplicant upstream codes

See merge request espressif/esp-idf!16358
2022-01-18 06:41:44 +00:00
Fu Hanxi
f9cf648afd fix(coredump): pr_status pid padding should be uint16 2022-01-18 13:50:10 +08:00
Krzysztof Budzynski
fffc5ac658 Merge branch 'docs/update_user_guides_cn_trans' into 'release/v4.3'
docs: update cn trans for esp32-devkitc and esp32-s2-kaluga-1-kit user guides (backport v4.3)

See merge request espressif/esp-idf!16724
2022-01-18 03:40:26 +00:00
Fu Hanxi
c761f44d94 ci: bypass wpa_supplicant upstream codes 2022-01-18 02:07:47 +00:00
intern
2cf554df6e docs: update user guides cn trans 2022-01-17 19:17:15 +08:00
Zim Kalinowski
0786d1a337 Merge branch 'bugfix/task_wdt_timeout_uint32_overflow_v4.3' into 'release/v4.3'
Task WDT: Fix overflow issue during timeout calculation

See merge request espressif/esp-idf!16809
2022-01-17 08:38:35 +00:00
David Čermák
8a5c51d05b Merge branch 'feature/update_mqtt_test_url_v4.3' into 'release/v4.3'
mqtt: Update mqtt test url and doc(backport v4.3)

See merge request espressif/esp-idf!16415
2022-01-17 08:36:16 +00:00
Marius Vikhammer
3bad4e3ca4 Task WDT: Fix overflow issue during timeout calculation
Closes https://github.com/espressif/esp-idf/issues/8239
2022-01-17 10:06:38 +08:00
Roland Dobai
71f63df9d5 Merge branch 'feature/oocd_ver_upgrade_v4.3' into 'release/v4.3'
tools: Updates OpenOCD version to 'v0.11.0-esp32-20211220' (v4.3)

See merge request espressif/esp-idf!16766
2022-01-14 12:04:33 +00:00
Alexey Gerenkov
260bf53b52 tools: Updates OpenOCD version to 'v0.11.0-esp32-20211220' 2022-01-13 16:59:29 +00:00
Mahavir Jain
fbc8ad0417 Merge branch 'docs/update_ws_server_example_readme_v4.3' into 'release/v4.3'
docs: Add user-friendly guide about how to use ws_server_example_test.py (backport v4.3)

See merge request espressif/esp-idf!16784
2022-01-13 10:11:06 +00:00
Mahavir Jain
8a5f624801 Merge branch 'bugfix/invalid_url_cause_to_crash_v4.3' into 'release/v4.3'
http: Fix parsing invalid url cause to crash (v4.3)

See merge request espressif/esp-idf!16479
2022-01-13 06:39:28 +00:00
Mahavir Jain
9760352810 Merge branch 'bugfix/fix_esp_https_ota_v4.3' into 'release/v4.3'
esp_https_ota: Fix esp_https_ota_begin may exist memory leak (backport v4.3)

See merge request espressif/esp-idf!16778
2022-01-13 05:00:59 +00:00
yuanjm
4bdcb9f5a9 docs: Add user-friendly guide about how to use ws_server_example_test.py 2022-01-13 10:50:38 +08:00
yuanjm
be89be5a3f esp_https_ota: Fix esp_https_ota_begin may exist memory leak 2022-01-12 19:57:43 +08:00
Zim Kalinowski
c6c7068776 Merge branch 'bugfix/app_compatible_with_3_1_bootloader_v4.3' into 'release/v4.3'
esp_system: Fix RTC_WDT protection in esp_restart_noos (v4.3)

See merge request espressif/esp-idf!16741
2022-01-12 08:39:02 +00:00
Chen Wu
7f1ab6d8d1 http: Fix parsing invalid url cause to crash
Reason:
For example, if an url is lack of leading 'http:' by mistake, it causes to http_parser_parse_url() cannot parse http host item,
and then pass the null host pointer to _get_host_header(), crash happens.

Fix:
http added null pointer check now.

Closes https://jira.espressif.com:8443/browse/ESPAT-953
2022-01-12 16:17:20 +08:00
Krzysztof Budzynski
5548b3b71c Merge branch 'docs/fixed_typos_in_esp32-s2-saola-1_user_guide_v4.3' into 'release/v4.3'
Docs: Fixed typos in ESP32-S2-Saola-1 user guide (backport v4.3)

See merge request espressif/esp-idf!16734
2022-01-12 07:57:56 +00:00
Wang Meng Yang
f68da60831 Merge branch 'bugfix/fix_bluedroid_compile_issue_v4.3' into 'release/v4.3'
components/bt: Fix bluedroid compile issue(backport release/v4.3)

See merge request espressif/esp-idf!16593
2022-01-11 09:52:16 +00:00
KonstantinKondrashov
f295efce12 esp_system: Fix RTC_WDT protection in esp_restart_noos
Fixed issue - v4.3 app not compatible with 3.1 bootloader
2022-01-10 21:57:46 +08:00
Wang Ning
33190700aa docs/fixed_typos_in_esp32-s2-saola-1_user_guide 2022-01-10 19:26:32 +08:00
Krzysztof Budzynski
00c0c1fd45 Merge branch 'docs/update_esp32-s2_devkit_user_guides_backport_v4.3' into 'release/v4.3'
Docs/Update two ESP32-S2 devkit user guides (backport v4.3)

See merge request espressif/esp-idf!15307
2022-01-10 11:16:42 +00:00
David Čermák
b0060dc0a3 Merge branch 'bugfix/mqtt_update_refs_v4.3' into 'release/v4.3'
MQTT: Fix build if CONFIG_WS_TRANSPORT is not set and client cleanups (v4.3)

See merge request espressif/esp-idf!15627
2022-01-10 10:25:06 +00:00
Wang Meng Yang
06f2f1c6b2 Merge branch 'bugfix/fix_null_pointer_deference_issue_4.3_mr' into 'release/v4.3'
Fix the null pointer deference issue via Reconnection Spamming

See merge request espressif/esp-idf!16638
2022-01-10 08:44:25 +00:00
Wang Meng Yang
62c10b2a05 Merge branch 'bugfix/PRs_on_esp_hid_v4.3' into 'release/v4.3'
bugfix/handle_3_esp_hid_PRs (v4.3)

See merge request espressif/esp-idf!16591
2022-01-10 03:21:32 +00:00
David Cermak
308b3e31a3 MQTT: Fix build if CONFIG_WS_TRANSPORT is not set and client cleanups
Updated MQTT submodule: git log --oneline f10321a53b53a146ee299cfecc320b89c0cf6611...89894bd0c611b1392967fe90bb49682eba858383
* Fix build issue if cert bundle disabled
* Fix build issue if ws transport disabled
* Add config to set retransmission interval

Detailed description of the changes (f10321a53b...89894bd0c6):
* Added config option to configure custom retransmission interval
    - See merge request espressif/esp-mqtt!110
    - esp_mqtt commit 1b009c840b
    - Related https://github.com/espressif/esp-mqtt/pull/199
* Configuration conflicts were verified, logged but not reported to the user.
    - See merge request espressif/esp-mqtt!102
    - esp_mqtt commit 88f4b8ed50
* Fixed build issue if cert bundle disabled
    - See merge request espressif/esp-mqtt!109
    - esp_mqtt commit 4a89bff610
    - esp_mqtt commit 1b71980575
    - esp_mqtt commit 5b3c81ee48
    - Related https://github.com/espressif/esp-mqtt/pull/198
    - Related https://github.com/espressif/esp-idf/issues/7535
* Removes unnecessary outbox_cleanup
    - This function were used on old version to handle QoS 2 messages. It's no longer necessary in current implementation.
    - See merge request espressif/esp-mqtt!108
    - esp_mqtt commit ebef896b00
* Fixed return an error when fail to enqueue
    - The functions that enqueue messages didn't had a return for the handler, with this the error was only logged instead of returned whichmay cause the user to have an ID for a message that was not published.
    - See merge request espressif/esp-mqtt!103
    - esp_mqtt commit 7471177fe7
* CI: Use qemu image based on esp-env:v4.4-1
    - Replaced the temporary qemu image with the official qemu:v4.4-1-20210517 derived from the esp-env:v4.4-1 test environment
    - See merge request espressif/esp-mqtt!107
    - esp_mqtt commit 231b274962

Closes https://github.com/espressif/esp-idf/issues/7535
2022-01-07 15:07:27 +00:00
Zim Kalinowski
6dce875bf9 Merge branch 'bugfix/freertos_pd_ticks_to_ms_precision_v4.3' into 'release/v4.3'
Freertos: Fix loss of precision in pdTICKS_TO_MS (v4.3)

See merge request espressif/esp-idf!16675
2022-01-07 14:32:13 +00:00
Wang Ning
f7bb64e896 docs/update_esp32-s2_devkit_user_guides 2022-01-07 16:47:56 +08:00
Zim Kalinowski
9138b9aff5 Merge branch 'bugfix/crypto_allocate_lldesc_v4.3' into 'release/v4.3'
crypto: dont create DMA descriptors on the stack (v4.3)

See merge request espressif/esp-idf!16342
2022-01-07 08:45:43 +00:00
Yuan Hong Hui
aabac43480 add cmd to publish and recv heartbeat message 2022-01-07 15:03:58 +08:00
Zim Kalinowski
ade22c9072 Merge branch 'bugfix/fix_heap_memory_corruption_v4.3' into 'release/v4.3'
Heap: Fix a possible bug in the TLSF allocator (backport v4.3)

See merge request espressif/esp-idf!16508
2022-01-06 11:36:47 +00:00
Omar Chebib
d300a9cfe3 Heap: Fix a possible bug in the TLSF allocator (backport v4.3) 2022-01-06 11:36:46 +00:00
Jiang Jiang Jian
e383693ac2 Merge branch 'bugfix/set_authmode_by_switching_number_to_string_v4.3' into 'release/v4.3'
CI: change ap authmode from number to string (backport v4.3)

See merge request espressif/esp-idf!16554
2022-01-06 10:10:03 +00:00
lisekt84
3764b03734 freertos: Fix loss of precision in pdTICKS_TO_MS
Closes https://github.com/espressif/esp-idf/pull/7856
Closes https://github.com/espressif/esp-idf/issues/7853

[darian@espressif.com: Updated commit message]
Signed-off-by: Darian Leung <darian@espressif.com>
2022-01-06 15:54:01 +08:00
Wang Meng Yang
b9c5ef1717 Merge branch 'bugfix/fix_spp_open_err_bda_v4.3' into 'release/v4.3'
Component_bt/Fix SPP acceptor open with wrong remote address[backport 4.3]

See merge request espressif/esp-idf!16614
2022-01-06 04:06:42 +00:00
Zim Kalinowski
d6b5b0ab00 Merge branch 'bugfix/pthread_destructor_sequencing_v4.3' into 'release/v4.3'
pthread: Fix behaviour when pthread destructor calls pthread_getspecific/pthread_setspecific (v4.3)

See merge request espressif/esp-idf!14828
2022-01-06 00:38:14 +00:00
Marius Vikhammer
6e9d90d6e1 soc: Added support for specify the maximum descriptor length when setting up the DMA descriptor link 2022-01-06 08:11:57 +08:00
Marius Vikhammer
2a28ec3522 crypto: also apply cache writeback/invalidate for SPIRAM_USE_MEMMAP
Closes https://github.com/espressif/esp-idf/issues/7944
2022-01-06 08:11:57 +08:00
Marius Vikhammer
b957692888 crypto: allocate all DMA descriptors to DMA capable memory.
These were previously placed on the stack, but the stack could be placed in
RTC RAM which is not DMA capable.
2022-01-06 08:11:57 +08:00
Zim Kalinowski
c2f14e192e Merge branch 'bugfix/ci-increase-number-of-parallel' into 'release/v4.3'
ci: increase number of parallel jobs

See merge request espressif/esp-idf!16652
2022-01-06 00:07:23 +00:00
Zim Kalinowski
a28f9a6770 ci: increase number of parallel jobs 2022-01-05 12:42:57 +08:00
Murray Fordyce
606d7e48d2 Fixed left right key confusion in comments.
"Left" and "Right" were swapped in some comments.
2022-01-05 10:47:56 +08:00
Mahavir Jain
0bc2cb89e5 Merge branch 'bugfix/rtc_section_alignment_v4.3_2' into 'release/v4.3'
System: fix RTCFAST section alignment (v4.3)

See merge request espressif/esp-idf!16518
2022-01-04 12:34:12 +00:00
Roland Dobai
6993fbdbe8 Merge branch 'bugfix/idf_tools_test_without_versions_v4.3' into 'release/v4.3'
Tools: Load tool versions automatically for IDF Tools tests (v4.3)

See merge request espressif/esp-idf!16511
2022-01-04 09:49:17 +00:00
“YangZhao”
74f4d07c3b There is an issue that if the the btm_cb.p_sec_dev_rec_list is full,but at the same
time we can't find old device to be replaced,then this can cause crash. So we need
to change the way to malloc the new device or replace the old in the list.
2022-01-04 11:09:44 +08:00
Zim Kalinowski
5965ad859d Merge branch 'bugfix/ringbuf_read_pointer_wrap_v4.3' into 'release/v4.3'
ringbuf: Fix bug where comparision between a signed and unsigned operand resulted in incorrect free size for no-split/allow-split buffers (v4.3)

See merge request espressif/esp-idf!15882
2022-01-04 02:31:48 +00:00
David Čermák
f8d60e2008 Merge branch 'bugfix/dm9051_tx_throughput_rate_optimization_v4.3' into 'release/v4.3'
esp_eth: optimize dm9051 Tx throughput(v4.3)

See merge request espressif/esp-idf!15886
2022-01-03 12:42:54 +00:00
David Cermak
d34f2e407b wifi: Fix race conditon invoking invalid callback on deinit
Closes https://github.com/espressif/esp-idf/issues/7579
2022-01-03 11:04:17 +01:00
Zim Kalinowski
1dfe3570b4 Merge branch 'bugfix/psram_fix_bootloader_v4.3' into 'release/v4.3'
bootloader: disable psram cache bug fix for bootloader (v4.3)

See merge request espressif/esp-idf!15805
2022-01-02 06:14:08 +00:00
yuanjm
9eba0ff6a6 tools: Update mqtt open source test server address 2021-12-31 15:31:15 +08:00
yuanjm
3eceea7f5d doc: Update mqtt open source test server address 2021-12-31 15:31:15 +08:00
yuanjm
2d1e1c50e8 examples: Update mqtt open source test server address 2021-12-31 15:31:15 +08:00
liqigan
78e8702963 fix typos and format 2021-12-31 11:25:28 +08:00
Zim Kalinowski
aef7850157 Merge branch 'bugfix/freertos_round_robin_scheduling_retain_skip_v4.3' into 'release/v4.3'
freertos: Implement best effort round robin scheduling (v4.3)

See merge request espressif/esp-idf!16542
2021-12-31 02:58:53 +00:00
Zim Kalinowski
04d2887493 Merge branch 'bugfix/spi_slave_test_non_dma_v4.3' into 'release/v4.3'
spi-slave: fix single-board: hd test failing due to DMA buffers ending up in PSRAM (v4.3)

See merge request espressif/esp-idf!16306
2021-12-31 02:57:25 +00:00
Xie Wen Xiang
9b2f6a2a77 Merge branch 'bugfix/fix_bluedroid_ble50_adv_data_length_issue_v4.3' into 'release/v4.3'
components/bt: Fix bluedroid ble50 adv data length issue(backport release/v4.3)

See merge request espressif/esp-idf!16580
2021-12-31 00:40:11 +00:00
liqigan
04bea91b38 fix SPP open with wrong remote bd_addr 2021-12-30 16:36:51 +08:00
liqigan
2b186e04d0 optimize SPP documents 2021-12-30 16:14:57 +08:00
xiewenxiang
abacbb1d12 components/bt: Fix bluedroid compile issue 2021-12-30 11:58:21 +08:00
Robin Krens
0818a8b4f1 spacing styling correction 2021-12-30 10:57:30 +08:00
Robin Krens
f61b57e5e5 minor styling changes 2021-12-30 10:57:30 +08:00
Robin Krens
837d4637f5 esp_hid: fix output report char declaration
Current issue: output reports sent by Windows not received.
The report characteristic declaration should also support write without
response as specified by HIDS profile:
See https://www.bluetooth.com/specifications/GATT/ (page 14)
2021-12-30 10:57:30 +08:00
Mahavir Jain
154f54253c Merge branch 'wifi_prov_mgr/service_key_check_v4.3' into 'release/v4.3'
wifi_prov_mgr: Added check for passphrase length in softAP scheme (v4.3)

See merge request espressif/esp-idf!16570
2021-12-29 13:18:23 +00:00
xiewenxiang
aaeecdf0e7 component/bt: Support set HW CCA threshold value 2021-12-29 15:40:26 +08:00
xiewenxiang
ab2148a390 component/bt: fix periodic adv parameters detection issue 2021-12-29 15:03:28 +08:00
baohongde
ecfa3c96ba components/bt: modify name of file 2021-12-29 14:39:23 +08:00
baohongde
918d8fabcf components/bt: Update the document of demo bt discovery 2021-12-29 14:39:18 +08:00
baohongde
d5a20a5a4f components/bt: Modify demo bt_discovery 2021-12-29 14:39:10 +08:00
Wei Tian Hua
b0133c72a0 Merge branch 'doc/optimize_hfp_doc_4_3' into 'release/v4.3'
Doc/optimize hfp doc [release/v4.3]

See merge request espressif/esp-idf!16450
2021-12-29 02:47:54 +00:00
Laukik Hase
cc5e2107bb wifi_prov_mgr: Added check for passphrase length in softAP scheme
Closes https://github.com/espressif/esp-idf/issues/8063
2021-12-28 18:13:51 +05:30
Omar Chebib
7467c68a17 Merge branch 'bugfix/xStreamBufferReset_crashing_v4.3' into 'release/v4.3'
FreeRTOS: Fix xStreamBufferReset function always crashing (backport v4.3)

See merge request espressif/esp-idf!16171
2021-12-27 14:25:01 +00:00
huchaoru
143fb842a5 CI: change ap authmode from number to string (backport v4.3) 2021-12-27 19:59:11 +08:00
Chen Yu Dong
1738b905a7 Merge branch 'ci/upload_build_example_for_release_test_4.3' into 'release/v4.3'
ci: preserve artifacts for local test apps (4.3)

See merge request espressif/esp-idf!16292
2021-12-27 11:50:18 +00:00
Ivan Grokhotkov
df5f73e165 Merge branch 'bugfix/modbus_port_fix_lgpl_licensed_files_v43' into 'release/v4.3'
freemodbus: fix port contains lgpl licensed files (backport v4.3)

See merge request espressif/esp-idf!16183
2021-12-27 10:02:21 +00:00
Dai Zi Yan
6dde759a99 Merge branch 'docs/update_CN_trans_console_ota_v4.3' into 'release/v4.3'
update CN trans for console and ota for v4.3

See merge request espressif/esp-idf!16022
2021-12-27 08:17:36 +00:00
Sudeep Mohanty
7c0d99e68d ringbuf: Fix bug where comparision between a signed and unsigned operand resulted in incorrect free size for no-split/allow-split buffers
This commit fixes a bug in no-split and allow-split ring buffers free buffer size calculation.
When the free size available in the buffers less than the size of one item header,
the function prvGetCurMaxSizeNoSplit/AllowSplit() incorrectly returned the maxItemSize instead of 0.
This is due to the comparision between a negative and a positive value
where both operands are treated as unsigned during the comparision operation,
thereby treating the negative operand as a large integer.

Also added new unit tests to test buffer-full and almost-full conditions
where this scenario is likely to be hit.

Closes https://github.com/espressif/esp-idf/issues/7344
Closes https://github.com/espressif/esp-idf/pull/7371
2021-12-27 15:02:27 +08:00
Mahavir Jain
8a7b2f326b Merge branch 'bugfix/freertos_prvTaskIsTaskSuspended_v4.3' into 'release/v4.3'
freertos: Fix prvTaskIsTaskSuspended check (v4.3)

See merge request espressif/esp-idf!16540
2021-12-27 03:56:22 +00:00
Wang Meng Yang
6585626b62 Merge branch 'bugfix/fix_phy_enable_watchdog_timeout_issue_4.3' into 'release/v4.3'
Fix the ble task watchdog timeout issue

See merge request espressif/esp-idf!16289
2021-12-27 03:54:57 +00:00
Darian Leung
e9cbf56d36 freertos: Fix SMP round robin scheduling
The previous SMP freertos round robin would skip over tasks when
time slicing. This commit implements a Best Effort Round Robin
where selected tasks are put to the back of the list, thus
makes the time slicing more fair.

- Documentation has been updated accordingly.
- Tidy up vTaskSwitchContext() to match v10.4.3 more
- Increased esp_ipc task stack size to avoid overflow

Closes https://github.com/espressif/esp-idf/issues/7256
2021-12-27 11:52:11 +08:00
Darian Leung
c33b260e7a freertos: Fix prvTaskIsTaskSuspended check
This commit fixes prvTaskIsTaskSuspended(). Both pending ready lists
should be checked to confirm that is truly suspended.

Closes https://github.com/espressif/esp-idf/issues/7564
2021-12-24 21:08:56 +08:00
morris
19ddefeb5c timer: stop alarm if alarm value doesn't change in ISR handler
Alarm will be disabled by hardware when alarm event happend.
In the ISR, if auto-reload is enabled, we should re-enable the alarm.
If the alarm target value is changed in user's callback,
the alarm will be reenabled as well.

Closes https://github.com/espressif/esp-idf/issues/7001
Closes https://github.com/espressif/esp-idf/issues/8095
2021-12-24 12:28:45 +08:00
Yang Zhao
65edf90e93 Update esp32c3 phy lib and bb lib
Fix the ble task watchdog timeout issue caused by phy enable when exit modem sleep.
2021-12-23 20:30:12 +08:00
Mahavir Jain
da6c5be6c1 Merge branch 'feature/mbedtls_dynamic_memory_v4.3' into 'release/v4.3'
fix(mbedtls): fix compiling error when open MBEDTLS_SSL_PROTO_DTLS and disable...(backport v4.3)

See merge request espressif/esp-idf!16521
2021-12-23 11:43:45 +00:00
Ivan Grokhotkov
f8ee842e8c Merge branch 'bugfix/ringbuf_send_semaphore_release_order_v4.3' into 'release/v4.3'
esp_ringbuf: Fix order of semaphore release in xRingbufferSend (v4.3)

See merge request espressif/esp-idf!16230
2021-12-23 07:51:39 +00:00
Li Jingyi
e3b39381fd fix(mbedtls): fix compiling error when open MBEDTLS_SSL_PROTO_DTLS and disable MBEDTLS_DYNAMIC_BUFFER feature when MBEDTLS_SSL_PROTO_DTLS is selected 2021-12-23 15:34:18 +08:00
Omar Chebib
5e805d58a8 FreeRTOS: Fix xStreamBufferReset function always crashing
This function resets the spinlock given as a parameter after taking it
(when entering the critical section). This then results in a panic once
it tries to exit the same critical section.

* Closes https://github.com/espressif/esp-idf/issues/7725
2021-12-23 06:15:50 +00:00
Jiang Jiang Jian
57efd94fea Merge branch 'bugfix/scannable_adv_duration_estimation_v4.3' into 'release/v4.3'
[Coexistence]: fixed BLE scannable extended adv performance issue in case of Wi-Fi coexistence(backport v4.3)

See merge request espressif/esp-idf!16477
2021-12-23 04:21:37 +00:00
Wang Fang
9abfa2c645 Merge branch 'fix/remove_deprecated_macro_SPI_TRANS_SET_CD' into 'release/v4.3'
Remove a deprecated macro: SPI_TRANS_SET_CD

See merge request espressif/esp-idf!16494
2021-12-23 02:21:11 +00:00
Martin Vychodil
d581312451 System: fix RTCFAST section alignment
This bugfix contains 3 fixes:
1. .rtc_dummy section is removed (not needed for C3)
2. .rtc_text section is padded with 16B for possible CPU prefetch
3. .rtc_text section is aligned to 4B boundary to comply with PMS Memprot requirements
2021-12-23 02:09:46 +01:00
Jiang Jiang Jian
7a4ed65769 Merge branch 'bugifx/nimble_timer_memory_leak_v4.3' into 'release/v4.3'
[NimBLE]: Fixed memory leak of timer during NimBLE Host start-stop process(backport v4.3)

See merge request espressif/esp-idf!16446
2021-12-22 13:34:03 +00:00
Jiang Jiang Jian
31d1156c6d Merge branch 'bugfix/fix_can_not_find_mac_addr_error_mr_4.3' into 'release/v4.3'
fix can not find mac addr error

See merge request espressif/esp-idf!16146
2021-12-22 13:33:29 +00:00
Jiang Jiang Jian
25c047d2fa Merge branch 'bugfix/wpa_supplicant_logs_release_v4.3' into 'release/v4.3'
esp_wifi: Change the verbosity of wpa_supplicant logs. (Backport v4.3)

See merge request espressif/esp-idf!16348
2021-12-22 13:32:58 +00:00
Jiang Jiang Jian
0fed811a46 Merge branch 'feature/mbedtls-2.16.12-integration_v4.3' into 'release/v4.3'
mbedtls: upgrade to release v2.16.12 (v4.3)

See merge request espressif/esp-idf!16484
2021-12-22 13:32:30 +00:00
Mahavir Jain
bd5176f108 Merge branch 'bugfix/vfs_io_disabled_console_v4.3' into 'release/v4.3'
Fix console output flushing when CONFIG_VFS_SUPPORT_IO is disabled (v4.3)

See merge request espressif/esp-idf!15653
2021-12-22 13:12:21 +00:00
Jiang Jiang Jian
39ab27d0cf Merge branch 'bugfix/wps_fixes_v4.3' into 'release/v4.3'
wpa_supplicant: Add WPS Fixes (backport V4.3)

See merge request espressif/esp-idf!16151
2021-12-22 12:20:46 +00:00
Roland Dobai
2787237d38 Tools: Load tool versions automatically for IDF Tools tests 2021-12-22 12:06:22 +01:00
Jiang Jiang Jian
7c9ef7466f Merge branch 'bugfix/riscv_fix_vector_mcause_v4.3' into 'release/v4.3'
RISC-V: fix usage of special register when interrupts are enabled (backport v4.3)

See merge request espressif/esp-idf!16188
2021-12-22 10:09:55 +00:00
Mahavir Jain
97f8f1b0d6 Merge branch 'feature/mbedtls_dynamic_memory_v4.3' into 'release/v4.3'
feat(mbedtls): modify __wrap_mbedtls_ssl_setup to decrease SSL peak heap cost(backport v4.3)

See merge request espressif/esp-idf!16274
2021-12-22 08:21:43 +00:00
Zim Kalinowski
eef3c878aa Merge branch 'bugfix/fix_select_timeout_v4.3' into 'release/v4.3'
VFS: `select` function's timeout is now POSIX compliant (backport v4.3)

See merge request espressif/esp-idf!16190
2021-12-22 05:49:13 +00:00
Mahavir Jain
ad2652c1f4 Merge branch 'bugfix/stdatomic_sync_op_and_fetch_v4.3' into 'release/v4.3'
newlib: stdatomic: implement missing "op_fetch", "nand" builtins (v4.3)

See merge request espressif/esp-idf!16466
2021-12-22 04:14:53 +00:00
Zim Kalinowski
f00a1bf164 Merge branch 'bugfix/fix_esp32h2_efuse_get_ext_mac_v4.3' into 'release/v4.3'
efuse_table_gen: Fixes wrong joining fields with omitted names (v4.3)

See merge request espressif/esp-idf!15738
2021-12-22 02:17:47 +00:00
Ivan Grokhotkov
e0777cbbd4 Merge branch 'bugfix/freertos_linker_lf_fixes_v4.3' into 'release/v4.3'
freertos: linker.lf rules fixes (v4.3)

See merge request espressif/esp-idf!14042
2021-12-22 00:17:22 +00:00
Roland Dobai
71f7d9a8f4 Merge branch 'bugfix/ldgen_plus_in_archive_name_v4.3' into 'release/v4.3'
ldgen: allow + sign in archive names (v4.3)

See merge request espressif/esp-idf!16468
2021-12-21 17:52:21 +00:00
Jiang Jiang Jian
57d90c5cd6 Merge branch 'mesh/bugfix_fix_no_ip_issue_v4.3' into 'release/v4.3'
esp_wifi_mesh: fix the device can not receive IP_EVENT_STA_GOT_IP when the router restarted(backport_v4.3)

See merge request espressif/esp-idf!16344
2021-12-21 12:51:37 +00:00
Wang Fang
641e86c1dc fix: remove a deprecated macro: SPI_TRANS_SET_CD 2021-12-21 17:44:15 +08:00
Roland Dobai
9d0fca67a9 Merge branch 'bugfix/remove_PIP_USER_v4.3' into 'release/v4.3'
tools: Add check for PIP_USER variable (backport v4.3)

See merge request espressif/esp-idf!16337
2021-12-21 08:38:42 +00:00
Mahavir Jain
0fd5c562bf mbedtls: upgrade to release v2.16.12
For release notes, please refer to:
https://github.com/ARMmbed/mbedtls/releases/tag/v2.16.12
2021-12-21 14:04:31 +05:30
Mahavir Jain
9d79b70acf mbedtls: small documentation update 2021-12-21 14:04:12 +05:30
Li Jingyi
32e29580de feat(mbedtls): modify __wrap_mbedtls_ssl_setup to decrease SSL peak heap cost 2021-12-21 15:19:29 +08:00
wangmengyang
3f63a4caee component/bt: fixed coexistence scannable extended adv performance issue 2021-12-21 12:55:13 +08:00
Wang Meng Yang
450b05a64a Merge branch 'bugfix/fix_spp_listen_err_v4.3' into 'release/v4.3'
Component_bt/Fix SPP cannot malloc slot bugs[backport v4.3]

See merge request espressif/esp-idf!16384
2021-12-21 04:35:07 +00:00
Mahavir Jain
9844845214 Merge branch 'bugfix/address_already_used_exception_in_ota_tests_v4.3' into 'release/v4.3'
Fix 'address already in use' exception in OTA tests (v4.3)

See merge request espressif/esp-idf!16417
2021-12-21 04:34:57 +00:00
Jiang Jiang Jian
778faeb7dd Merge branch 'fix/remove_warning_when_disabling_rom_dl_mode_v4.3' into 'release/v4.3'
secure_boot: Fix warning when UART ROM DL mode is disabled (v4.3)

See merge request espressif/esp-idf!16238
2021-12-21 03:54:33 +00:00
Jiang Jiang Jian
e9f47296a8 Merge branch 'reduce_bootup_time_when_using_usb-serial-jtag_v4.3' into 'release/v4.3'
rtc_clk: reduce bootup time when using usb-serial-jtag(backport v4.3)

See merge request espressif/esp-idf!16261
2021-12-21 03:52:39 +00:00
Jiang Jiang Jian
7dbfd01520 Merge branch 'bugfix/hardware_mpi_fallback_issue_v4.3' into 'release/v4.3'
mbedtls: fix hardware MPI (bignum) related regression (v4.3)

See merge request espressif/esp-idf!16237
2021-12-21 03:49:11 +00:00
Jiang Jiang Jian
6c38e7c5de Merge branch 'bugfix/esptool_bump_v4.3' into 'release/v4.3'
bugfix: ESP32 rev0/1 connection in release/v4.3

See merge request espressif/esp-idf!16218
2021-12-21 03:47:24 +00:00
Jiang Jiang Jian
201ae7e0e7 Merge branch 'bugfix/avoid-exception-messages-while-export_v4.3' into 'release/v4.3'
Avoid exception messages while autocomplete initialization in export.sh (v4.3)

See merge request espressif/esp-idf!16200
2021-12-21 03:46:12 +00:00
Jiang Jiang Jian
4ab1fb9b2a Merge branch 'bugfix/bootloader_debug_buffers_v4.3' into 'release/v4.3'
bootloader_support: Fix and re-enable bootloader_debug_buffer function (v4.3)

See merge request espressif/esp-idf!16074
2021-12-21 03:45:32 +00:00
Jiang Jiang Jian
683a98fbe3 Merge branch 'feature/adds_fault_injection_protection_for_check_anti_rollback_v4.3' into 'release/v4.3'
bootloader_support: Adds fault injection protection for check_anti_rollback (v4.3)

See merge request espressif/esp-idf!16180
2021-12-21 03:44:41 +00:00
Jiang Jiang Jian
0193aeffd6 Merge branch 'feature/add_dhcp_option_v4.3' into 'release/v4.3'
lw-ip: Add macro to disable vendor class option(backport v4.3)

See merge request espressif/esp-idf!15983
2021-12-21 03:44:09 +00:00
Jiang Jiang Jian
9dac6b0643 Merge branch 'docs/examples_bluedroid_ble50_v4.3' into 'release/v4.3'
Readme for the bluedroid ble50 example with tutorial of walkthrough example (v4.3)

See merge request espressif/esp-idf!16100
2021-12-21 03:43:50 +00:00
Jiang Jiang Jian
9a0a697b27 Merge branch 'bugfix/mdns_non_standard_domains_v4.3' into 'release/v4.3'
mdns: Fix parsing non-standard queries (v4.3)

See merge request espressif/esp-idf!16060
2021-12-21 03:43:18 +00:00
Jiang Jiang Jian
3eb854c3ea Merge branch 'bugfix/LAN8720_reset_assertion_v4.3' into 'release/v4.3'
Increased LAN8720 ETH-PHY reset assertion time (v4.3)

See merge request espressif/esp-idf!15826
2021-12-21 03:42:37 +00:00
Jiang Jiang Jian
e7db515b35 Merge branch 'bugfix/link_spi_flash_rom_func_in_bootloader_stage_v4.3' into 'release/v4.3'
esp_rom: link rom spi flash functions in bootloader stage (v4.3)

See merge request espressif/esp-idf!15257
2021-12-21 03:42:15 +00:00
Jiang Jiang Jian
4d2674a7f4 Merge branch 'docs/wifi_security_and_dpp_v4.3' into 'release/v4.3'
docs: Separate Doc on WiFi security, added DPP Doc (Backport v4.3)

See merge request espressif/esp-idf!14834
2021-12-21 03:40:23 +00:00
Wang Meng Yang
37591f6a85 Merge branch 'nimble/add_throughput_example_v4.3' into 'release/v4.3'
NimBLE: Add NimBLE throughput demo examples (v4.3)

See merge request espressif/esp-idf!16124
2021-12-21 03:38:39 +00:00
Wang Meng Yang
b62308c363 Merge branch 'nimble_spp_v4.3' into 'release/v4.3'
NimBLE: BLE example for SPP service (v4.3)

See merge request espressif/esp-idf!16123
2021-12-21 03:34:21 +00:00
Wang Meng Yang
04f69192d2 Merge branch 'bugfix/fix_blufi_encryption_fail_v4.3' into 'release/v4.3'
components/bt: fix blufi encryption fail(backport release/v4.3)

See merge request espressif/esp-idf!16315
2021-12-21 03:30:02 +00:00
Wang Meng Yang
91d7557579 Merge branch 'feature/support_ble_direct_ind_low_adv_v4.3' into 'release/v4.3'
components/bt: Support low duty cycle directed advertising(backport release/v4.3)

See merge request espressif/esp-idf!16378
2021-12-21 03:27:09 +00:00
Angus Gratton
564229c9a6 pthread: Fix behaviour when pthread destructor calls pthread_getspecific/pthread_setspecific
Update as per specification at https://pubs.opengroup.org/onlinepubs/009695399/functions/pthread_key_create.html

Specifically:

- Before a destructor is called then the value for the corresponding key is
  already set to NULL.

- If a destructor calls pthread_setspecific() to assign a non-NULL value then
  this destructor is called again, after all existing non-NULL values have been
  called.

Adds a test for this relatively complex behaviour.

Closes https://github.com/espressif/esp-idf/issues/6643
2021-12-21 01:27:49 +00:00
Ivan Grokhotkov
e26a2250a5 freertos: linker.lf rules fixes
1. Add conditions based on Kconfig options for functions which are
   compiled based on those options.
2. Static allocation is always enabled, move corresponding functions
   into the common list.
2021-12-21 01:26:44 +00:00
Ivan Grokhotkov
8e7b11f6d1 newlib: set errno in the explicitly provided reent structure
Since these functions receive the pointer to reent structure, they
should set errno in it rather than using thread-local errno.

This didn't cause practical issues because console functions in IDF
are only called from threads, and in that case 'r' is a pointer to
the thread-local structure, so &errno is the same thing as
&__errno_r(r). Still, fixing this for consistency.
2021-12-21 01:25:49 +00:00
Ivan Grokhotkov
3d91e6d993 newlib: implement _fstat_r stub for console
When CONFIG_VFS_SUPPORT_IO is disabled, _read_r and _write_r
implementations in syscalls.c are used to provide console I/O via
esp_rom_uart_tx_one_char/esp_rom_uart_rx_one_char.

When newlib opens a (FILE*) stream, it calls fstat to check if the
underlying file is character-oriented. In this case, it configures the
stream to use line buffering. Otherwise (or if fstat fails) the stream
is opened as block buffered.

Since fstat wasn't provided, stdin/stdout/stderr streams got opened in
block buffered mode. For console, we need line buffered output so that
the stream buffer is flushed each time a complete line (ending with
'\n') is sent to stdout or stderr.

Fix by implementing _fstat_r stub, setting st->st_mdoe=S_IFCHR.
2021-12-21 01:25:49 +00:00
Ivan Grokhotkov
f976bb0ef8 ldgen: allow + sign in archive names
Closes https://github.com/espressif/esp-idf/issues/8073
2021-12-21 02:17:43 +01:00
Ivan Grokhotkov
bd598e36ea newlib: stdatomic: implement missing "op_fetch", "nand" builtins
* Adds implementations of __{atomic,sync}_nand_fetch_n. These builtins
  were implemented for other operations but were not defined for NAND.
* Adds implementation of __atomic_OP_fetch_n for all OPs.
* Adds implementation of __sync_OP_and_fetch_n for all OPs.

Reported in https://github.com/espressif/arduino-esp32/issues/5948
2021-12-21 02:16:02 +01:00
Omar Chebib
824552e9b4 RISC-V: fix usage of special register when interrupts are enabled 2021-12-21 01:06:11 +00:00
Ivan Grokhotkov
3c0d892d43 Merge branch 'bugfix/missing-atomic-definitions' into 'release/v4.3'
newlib: missing atomic definitions (v4.3)

See merge request espressif/esp-idf!15610
2021-12-21 01:03:24 +00:00
Ivan Grokhotkov
6217ebd865 Merge branch 'feature/remove_component_manager_tests_v4.3' into 'release/v4.3'
ci: Remove component manager test from build system tests (v4.3)

See merge request espressif/esp-idf!16107
2021-12-21 01:02:40 +00:00
Ivan Grokhotkov
5ec8dcf937 Merge branch 'bugfix/scheduler_state_query_thread_safety_v4.3' into 'release/v4.3'
freertos: fix thread safety for checking scheduler state (v4.3)

See merge request espressif/esp-idf!16131
2021-12-21 01:02:12 +00:00
Ivan Grokhotkov
c72c3fdb3c Merge branch 'update/version_4_3_2' into 'release/v4.3'
Update version to 4.3.2

See merge request espressif/esp-idf!16462
2021-12-21 00:56:13 +00:00
Ivan Grokhotkov
8bf14a9238 versions: Update version to 4.3.2 2021-12-20 19:02:41 +01:00
Kapil Gupta
92331a8c62 wpa_supplicant: Add WPS Fixes
Add following bugfixes

1. Station not able to connect when WPS pin is pressed first on AP.
2. PBC overlap getting detected for selected registrar PIN APs.
3. Station not considering authorised MACs for PIN method.
4. For PIN methodm If no AP is found, station will loop through
   APs in its vicinity and try to do WPS with them one by one till
   WPS timeout occurs. This is for some APs which do not set
   selected registrar correctly.
2021-12-20 22:02:53 +05:30
weitianhua
bb9a13e328 Fix Typos 2021-12-20 17:03:14 +08:00
weitianhua
b34c461d35 Optimize HFP Documents 2021-12-20 17:03:02 +08:00
wangmengyang
971d9b9436 component/bt/host/nimble: fixed memory leak due to timer not destroyed during NimBLE host start-stop 2021-12-20 15:55:47 +08:00
shenjun
6a2f9b21ec esp_wifi_mesh: fix the device can not receive IP_EVENT_STA_GOT_IP when the router restarted 2021-12-16 17:27:24 +08:00
Harshit Malpani
3a55b28ba9 Fix for advanced_ota_redirect_url example failure in CI 2021-12-16 12:18:00 +05:30
Harshit Malpani
c9940a3eed Fix 'address already in use' exception in OTA tests
We will stop the server instance at the end of each test case. This will solve the "address already in use" exception
2021-12-16 10:16:32 +05:30
Armando
b812712757 spi_slave_hd: fix stack variable bug in seg_slave example
Closes https://github.com/espressif/esp-idf/issues/7163
2021-12-14 12:40:38 +08:00
liqigan
a269df84e9 fix SPP server bugs when the BTC layer can not allocate a slot for the listen port 2021-12-14 11:07:29 +08:00
xiewenxiang
a7900f871f components/bt: Fix high duty cycle directed advertising will not be stopped when timeout 2021-12-14 09:33:24 +08:00
xiewenxiang
d4cc192782 components/bt: Support low duty cycle directed advertising 2021-12-14 09:33:17 +08:00
xiewenxiang
8409e3bcbe components/bt: fix blufi encryption fail 2021-12-13 09:55:00 +08:00
Hrudaynath Dhabe
d3b88a13e1 esp_wifi: Change the verbosity of wpa_supplicant logs. 2021-12-09 12:41:36 +05:30
Juraj Sadel
255da2605b tools: Add check for PIP_USER variable
Closes https://github.com/espressif/esp-idf/issues/7910
2021-12-08 16:23:50 +01:00
Chen Yudong
1c18f28a4a ci: preserve artifacts for local test apps
build ble_mesh_console example on c3 as well
add test dir examples/bluetooth/esp_ble_mesh/ble_mesh_console
add test dir examples/bluetooth/hci/controller_hci_uart_esp32
2021-12-08 16:31:21 +08:00
Marius Vikhammer
44af11f38c spi-slave: fix single-board: hd test failing due to DMA buffers ending up in PSRAM 2021-12-08 12:17:06 +08:00
jingli
4b73610eea reduce bootup time when using usb-serial-jtag 2021-12-03 20:55:52 +08:00
RichFalk
2305b5f474 esp_ringbuf: Fix assertion xQueueGenericSend queue.c:818
The release of the semaphore indicating the item was successfully sent must be the last semaphore released.  The receiver may be in another task and may delete the Ringbuffer (such as with a return code across tasks design pattern) if they are through with the Ringbuffer.

The function xRingbufferSendAcquire followed by xRingbufferSendComplete had the semaphores released in the proper order and that same pattern should have been used in xRingbufferSend and xRingbufferSendFromISR.  This commit fixes this order.

Issue (IDFGH-6030) #7716 describes the problem in more detail.

Closes IDFGH-6030, https://github.com/espressif/esp-idf/issues/7716
Closes IDFGH-6036, https://github.com/espressif/esp-idf/pull/7721
2021-12-03 09:34:15 +05:30
Mahavir Jain
70936f4c92 mbedtls: remove wrap from component.mk as well
Note: This was not required in original MR, as master branch does
not support GNU Make.
2021-12-02 17:15:42 +05:30
Aditya Patwardhan
9fb61791fe secure_boot: Fix warning when UART ROM DL mode is disabled
*Additionally use updated calls to enable rom secure download mode
2021-12-02 15:17:56 +05:30
Mahavir Jain
7a8c8f8576 esp_bignum: move check for supported MPI bits at start of API
This can allow hardware MPI API to return as soon as it identifies
that it can handle require bitlength operation.
2021-12-02 15:08:42 +05:30
Mahavir Jain
1cae1fc18e mbedtls: update mbedtls submodule pointer for MPI API change 2021-12-02 15:08:41 +05:30
Mahavir Jain
0befb28237 mbedtls: fix hardware MPI (bignum) related regression
In commit de22f3a4e5, combination of
hardware and software MPI (bignum) related approach was used to
work around chip (e.g. ESP32-C3) limitation of max 3072 bits support.

This was done using linker "--wrap" flag but since the relevant API is
being used in same translation (compilation unit), hardware mode was not
getting used in some cases (e.g., RSA key generation).

This commit modified internal mbedTLS API and makes software+hardware
combination deterministic.
2021-12-02 15:08:37 +05:30
Mahavir Jain
f864e1ddbb mbedtls: update kconfig help to correct on supported MPI bits 2021-12-02 15:07:37 +05:30
Anton Maklakov
6ebd748c75 ci: Fix build system tests to clean the dir 2021-12-01 18:25:10 +01:00
radim.karnis
4f19ef06fb esptool: Bump version, fix esp32r0/1 connection
Closes https://github.com/espressif/esptool/issues/698
2021-12-01 12:43:50 +01:00
daiziyan
4fe9b8c40f docs: update CN translation for oat.rst and console.rst for v4.3 2021-12-01 17:22:39 +08:00
Armando
c38215cb2c spi_master: correctly reset spi afifos before DMA transaction starts 2021-12-01 11:48:05 +08:00
Gustavo Henrique Nihei
f34a85dc31 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-30 21:01:55 +08:00
Martin Gaňo
a93e3dff25 Avoid exception messages while autocomplete initialization in export.sh 2021-11-30 12:58:14 +01:00
Yang Zhao
f2d6cb7298 Add the feature that switch random address to origin mac addr in the ADV
report data.
2021-11-30 14:27:32 +08:00
Omar Chebib
2ccf84cedf VFS: select function's timeout is now POSIX compliant
`select` function will now round up the timeout passed as a parameter (if any).
It  makes it POSIX compliant.

* Closes https://github.com/espressif/esp-idf/issues/7514
2021-11-30 12:05:34 +08:00
Mahavir Jain
0855521014 bootloader: add anti-FI checks around secure version in anti-rollback scheme 2021-11-29 18:49:36 +05:30
aleks
9204605d98 freemodbus: fix port contains lgpl licensed files
Initial version of freemodbus master port files have been added to ESP-IDF based on https://github.com/armink/FreeModbus_Slave-Master-RTT-STM32.
The overall repository license, at the time of adding these files, has been BSD 3-clause. However at that time, several port files carried LGPL license headers. As the author of these files confirmed in https://github.com/armink/FreeModbus_Slave-Master-RTT-STM32/issues/61#issuecomment-977828450, this wasn't intentional. ESP-IDF version of modbus master port has been rewritten to target FreeRTOS instead of RT-Thread, but the license headers remained from the original version. This commit corrects this, replacing the license of these files with BSD 3-clause.
2021-11-29 14:15:23 +01:00
Isha Pardikar
fcd5e502a7 Merge branch 'nimble/add_throughput_example_v4.3' into 'release/v4.3'
NimBLE throughput example: Changed write api to write without response

See merge request espressif/esp-idf!16124
2021-11-26 11:21:15 +05:30
isha pardikar
25c61606a1 Merge branch 'nimble_spp' of ssh://gitlab.espressif.cn:27227/espressif/esp-idf into 'release/v4.3'
Nimble: Added BLE SPP Service

Closes: https://github.com/espressif/esp-idf/issues/7303

See merge request espressif/esp-idf!16123
2021-11-26 09:55:47 +05:30
Mahavir Jain
a8260c9c77 freertos: fix thread safety for checking scheduler state
This issue was earlier fixed in commit 79e74e5d5f
but during migration to newer FreeRTOS release, it got introduced again.

This commit fixes thread safety issues with configASSERT() calls
regarding the value of uxSchedulerSuspended. A false negative
occurs if a context switch to the opposite core occurs in between
the getting the core ID and the assesment.

Relevant https://github.com/espressif/esp-idf/issues/4230
Closes https://github.com/espressif/esp-idf/issues/7726
Closes IDFGH-6041
2021-11-25 19:32:19 +05:30
Nachiket Kukade
ff42b70176 docs: Separate Doc on WiFi security, added DPP Doc
1. Add new Doc on WiFi security
2. Add DPP related Doc under WiFi
3. Add Supplicant public headers in Doxyfile
2021-11-25 21:01:29 +08:00
Jiang Jiang Jian
233dc30fb1 Merge branch 'bugfix/pppos_event_deinit_exit_ppp_v4.3' into 'release/v4.3'
Examples/PPPoS: Minor fixes related to init/deinit cycling (v4.3)

See merge request espressif/esp-idf!16062
2021-11-25 11:46:10 +00:00
Jiang Jiang Jian
d95accbda9 Merge branch 'bugfix/multi_heap_get_info_impl_backport_v4.3' into 'release/v4.3'
heap: fix multi_heap_get_info_impl (backport v4.3)

See merge request espressif/esp-idf!16118
2021-11-25 11:45:31 +00:00
Michael (XIAO Xufeng)
d16584c313 Merge branch 'bugfix/spi_slave_wrong_miso_mosi_v4.3' into 'release/v4.3'
spi_slave: Fix MOSI/MISO inconsistent references on the SPI Slave drivers. (v4.3)

See merge request espressif/esp-idf!14405
2021-11-25 09:36:55 +00:00
Jiang Jiang Jian
0c77b89e13 Merge branch 'feature/add_coex_hci_command_v4.3' into 'release/v4.3'
Add hci command to set coexistence status (4.3)

See merge request espressif/esp-idf!16054
2021-11-25 08:02:14 +00:00
Jiang Jiang Jian
55e415377d Merge branch 'docs/update_the_assignment_type_in_i2s_programming_example' into 'release/v4.3'
docs: update assignment type for .bit_per_sample (v4.3)

See merge request espressif/esp-idf!15494
2021-11-25 06:20:02 +00:00
Prasad Alatkar
6f9e611725 NimBLE throughput example: Add espressif license 2021-11-25 11:06:40 +05:30
Prasad Alatkar
cd0a66e0d9 NimBLE throughput example: make multi target support readable 2021-11-25 11:06:40 +05:30
Prasad Alatkar
c86c83ca4d NimBLE: Add throughput demo examples
- Added blecent_throughput(client) and bleprph_throughput(server) examples to
  demonstrate application throughput.
2021-11-25 11:06:40 +05:30
Michael (XIAO Xufeng)
8892b4c008 Merge branch 'bugfix/i2c_cmd_not_initailized' into 'release/v4.3'
i2c: fixed i2c_cmd_t not initialized properly issue (v4.3)

See merge request espressif/esp-idf!16096
2021-11-25 04:16:52 +00:00
Michael (XIAO Xufeng)
f055fbb713 i2c: fixed i2c_cmd_t not initialized properly issue 2021-11-25 04:16:51 +00:00
Michael (XIAO Xufeng)
b1ca6be111 Merge branch 'bugfix/modbus_fix_invalid_error_handling_for_duplicate_param_key_v43' into 'release/v4.3'
freemodbus: fix invalid error handling for duplicate param key (backport v4.3)

See merge request espressif/esp-idf!14788
2021-11-25 04:15:33 +00:00
Gustavo Henrique Nihei
de7d86b8a1 driver: Refactor and clean up SPI Slave test 2021-11-25 12:03:55 +08:00
Gustavo Henrique Nihei
7b587bf1d7 driver: Create TX/RX-only test cases for SPI Slave 2021-11-25 12:03:55 +08:00
Gustavo Henrique Nihei
880e96d7bb spi: Ensure DMA In-Link EOF is generated by trans_done on SPI Slave 2021-11-25 12:03:55 +08:00
Gustavo Henrique Nihei
2bc4a0836f spi: Remove Slave TX/RX set bitlen not effective for ESP32-S2/C3/S3
Furthermore, RX_EOF_EN should only be set when SPI Slave is configured
for segment transfer mode and the "ms_data_bitlen" field is configured
to control the "IN_SUC_EOF" interrupt. Since "ms_data_bitlen" is not
set anymore for S2, C3 and S3, "RX_EOF_EN" should be cleared.
2021-11-25 12:03:54 +08:00
Gustavo Henrique Nihei
6fb126657a spi: Fix SPI Slave TX/RX bitlen configuring wrong registers
The maximum input length for the SPI Slave should be applied to the read
buffer configuration, not for the write buffer. Similarly, the output
configuration should also target the write buffer.
2021-11-25 12:03:54 +08:00
Gustavo Henrique Nihei
74f010ddfd spi_slave: Fix MOSI/MISO enable on transaction preparation
MOSI and MISO enablement were conditioned to the existence of TX
and RX buffers, respectively. This is valid for the SPI Master,
but for the SPI Slave the opposite is expected.
2021-11-25 12:03:54 +08:00
Anton Maklakov
920e7796b4 Merge branch 'feature/docker_build_use_git_mirror_v4.3' into 'release/v4.3'
ci: use LOCAL_GIT_MIRROR in docker build job, if set (v4.3)

See merge request espressif/esp-idf!16111
2021-11-25 02:53:20 +00:00
Anton Maklakov
30fe11b932 Merge branch 'feature/ci_runner_failure_retries_v4.3' into 'release/v4.3'
ci: runner system failure retries (v4.3)

See merge request espressif/esp-idf!15723
2021-11-25 02:51:53 +00:00
gaoxiaojie
61d300f055 heap: fix multi_heap_get_info_impl 2021-11-25 10:22:41 +08:00
Zim Kalinowski
28792cdfea Merge branch 'bugfix/gdbstub_includes' into 'release/v4.3'
[gdbstub]: fixed includes of component.mk (v4.3)

See merge request espressif/esp-idf!15870
2021-11-25 01:51:12 +00:00
aleks
158384043d freemodbus: fix invalid error handling for duplicate param_key 2021-11-25 01:16:10 +08:00
Michael (XIAO Xufeng)
ab5c956bdf Merge branch 'bugfix/esp_timer_before_init_v4.3' into 'release/v4.3'
esp_timer: allow querying the timer before esp_timer_init is called (backport v4.3)

See merge request espressif/esp-idf!15772
2021-11-24 16:44:56 +00:00
Jiang Jiang Jian
23d6e460d9 Merge branch 'bugfix/backport_wifi_fix_1123_v4.3' into 'release/v4.3'
esp_wifi: backport some wifi fix(v4.3)

See merge request espressif/esp-idf!16070
2021-11-24 15:26:43 +00:00
Ivan Grokhotkov
f298fca893 ci: use LOCAL_GIT_MIRROR in docker build job, if set
When the build runner has a local git mirror configured via
LOCAL_GIT_MIRROR variable, use that mirror when cloning IDF insider
the docker build job. Follows similar logic for
LOCAL_GITLAB_HTTPS_HOST, which is used for geo nodes.
2021-11-24 15:43:01 +01:00
Michael (XIAO Xufeng)
48997e82c0 Merge branch 'bugfix/modbus_fix_compiler_err_when_tcp_is_disabled_v43' into 'release/v4.3'
freemodbus: fix compiler err when tcp is disabled (backport v4.3)

See merge request espressif/esp-idf!14789
2021-11-24 14:13:04 +00:00
Alex Lisitsyn
de7f5305a7 freemodbus: fix compiler err when tcp is disabled (backport v4.3) 2021-11-24 14:13:03 +00:00
Sergei Silnov
6ed81a632c ci: Remove component manager test from build system tests
Component manager itself has a set of integration tests
that run against different ESP-IDF versions
2021-11-24 15:12:29 +01:00
satish.solanke
c00c3f74ae Readme for the bluedroid ble50 example with tutorial of walkthrough example. 2021-11-24 14:57:05 +05:30
Roland Dobai
7cf7bec582 Merge branch 'feature/json_schema_for_idf_size_v4.3' into 'release/v4.3'
tools: add json schema for idf_size (v4.3)

See merge request espressif/esp-idf!15960
2021-11-24 08:58:02 +00:00
Jiang Jiang Jian
daf9cbbb01 Merge branch 'doc/make_classic_bt_API_ref_only_for_esp32_4.3' into 'release/v4.3'
Doc/make classic bt api ref only for esp32 [backport v4.3]

See merge request espressif/esp-idf!15726
2021-11-24 02:54:02 +00:00
Jiang Jiang Jian
050fd07486 Merge branch 'bugfix/fix_crash_when_shutdown_bt_v4.3' into 'release/v4.3'
component/bt: fix crash when shutdown bt(backport v4.3)

See merge request espressif/esp-idf!15709
2021-11-24 02:53:21 +00:00
Mahavir Jain
6f21f1e6cf Merge branch 'feature/lwip_ipv6_automatic_coap_asio_v4.3' into 'release/v4.3'
asio coap: If LWIP IPV6 is disabled, automatically don't build asio & coap (v4.3)

See merge request espressif/esp-idf!15782
2021-11-24 00:30:23 +00:00
Roland Dobai
9aca518ccc Merge branch 'feature/oocd_ver_upgrade_v4.3' into 'release/v4.3'
tools: Updates OpenOCD version to 'v0.10.0-esp32-20211111' (v4.3)

See merge request espressif/esp-idf!16000
2021-11-23 18:06:09 +00:00
Angus Gratton
9d72bdda58 asio coap: If LWIP IPV6 is disabled, automatically don't build asio & coap
- Removes need to manually exclude these components as shown at
  https://github.com/espressif/esp-idf/issues/3781#issuecomment-825742378

- Hide the config for these components if IPV6 is disabled

- The components are still included in the build, but with no source
  files

Backport of e305f29382

Closes https://github.com/espressif/esp-idf/issues/7816
2021-11-23 22:39:58 +08:00
Jiang Jiang Jian
76ddca045e Merge branch 'bugfix/sleep_wrong_log_lvl_v4.3' into 'release/v4.3'
Sleep: fix wrong debug level (backport v4.3)

See merge request espressif/esp-idf!16037
2021-11-23 14:31:30 +00:00
simon.chupin
f9c1ecba70 tools: add json schema for idf_size 2021-11-23 14:31:30 +01:00
Jiang Jiang Jian
b946d30602 Merge branch 'docs/update_esp32-c3_devkit_user_guide_backport_v4.3' into 'release/v4.3'
Docs/Update two ESP32-C3 devkit user guides (backport v4.3)

See merge request espressif/esp-idf!15303
2021-11-23 13:19:04 +00:00
Jiang Jiang Jian
4cb5d9a5c8 Merge branch 'bugfix/protocomm_nimble_allocation_v4.3' into 'release/v4.3'
Fix for potential allocation bug in protocomm_nimble.c (v4.3)

See merge request espressif/esp-idf!15997
2021-11-23 13:17:12 +00:00
ChenJianxing
5788bd02c6 esp_wifi: Modify Mexico channel refer to FCC
esp_coex: fix wrong alloctation for coex_funcs_t
2021-11-23 21:13:26 +08:00
Jiang Jiang Jian
793b814789 Merge branch 'mesh/bugfix_fix_layer2_node_connection_issue_v4.3' into 'release/v4.3'
mesh: fix the issue that layer2 node connect to lower-layer node when FIXED-ROOT root disappeared(backport_v4.3)

See merge request espressif/esp-idf!15660
2021-11-23 12:40:52 +00:00
xiewenxiang
1fbf3bcfef component/bt: fix crash when shutdown bt 2021-11-23 20:01:16 +08:00
yuanjm
a8fd3ef48e lwip: Add macro to disable vendor class option 2021-11-23 19:42:47 +08:00
David Cermak
2e8b419b7a Examples/PPPoS: Add mandatory delay after +++ command
Switching back from data (PPP) mode to command mode must be done is the following sequence:
* No characters entered for T1 time (1 second)
* "+++" characters entered with no characters in between (1 second)
* No characters entered for T1 timer (1 second)
(per specification of SIM800 SIM800_Series_AT_Command_Manual_V1.09.pdf)

Related https://github.com/espressif/esp-idf/issues/7608
2021-11-23 09:59:52 +01:00
David Cermak
f129871b72 Examples/PPPoS: Fixed missed NETIF_PPP_STATUS event unregister
NETIF_PPP_STATUS is registerd while modem gets attached to the related netif.
we don't have any network detach functionality in the modem component, so we
unregister the event during esp_modem_netif_clear_default_handlers().

Related https://esp32.com/viewtopic.php?f=13&t=23632
Related https://github.com/espressif/esp-idf/issues/7469
2021-11-23 09:59:52 +01:00
David Cermak
12509dd0c1 mdns: Fix parsing non-standard queries
Fix for packets containing unexpected domains, such as openthread.thread.home.arpa.
If we find this packet we set the name entry as invalid, but continue with parsing as the packet might contain related queries for us.

Closes https://github.com/espressif/esp-idf/issues/7694
2021-11-23 09:10:27 +01:00
Roland Dobai
633266105a Merge branch 'bugfix/doskey_v4.3' into 'release/v4.3'
tools: fix export.bat /tools/idf.py not found issue (v4.3)

See merge request espressif/esp-idf!16049
2021-11-23 07:38:45 +00:00
Roland Dobai
82144c913c Merge branch 'bugfix/archive_details_always_run_like_diff_v4.3' into 'release/v4.3'
tools: fix bug with idf_size argument archive_details (v4.3)

See merge request espressif/esp-idf!15775
2021-11-23 07:30:54 +00:00
Roland Dobai
88f671b54e Merge branch 'bugfix/create_dir_idf_env_v4.3' into 'release/v4.3'
tools: Create the ".espressif" directory on the first run on clean system (v4.3)

See merge request espressif/esp-idf!15856
2021-11-23 07:25:51 +00:00
Roland Dobai
43edf01b47 Merge branch 'bugfix/ps_export_prs_v4.3' into 'release/v4.3'
Tools: PowerShell export script improvements from PRs (v4.3)

See merge request espressif/esp-idf!15924
2021-11-23 07:25:45 +00:00
Roland Dobai
9a9afed5f1 Merge branch 'bugfix/tools_fix_win_gdb_dlls_v4.3' into 'release/v4.3'
tools: Fix missed DLLs in GDB for Windows (v4.3)

See merge request espressif/esp-idf!15895
2021-11-23 07:20:06 +00:00
Jiang Jiang Jian
d39bf64e17 Merge branch 'test/update_ble_mesh_console_files_for4.3' into 'release/v4.3'
test: fix ble mesh send problem (v4.3)

See merge request espressif/esp-idf!14489
2021-11-23 07:11:34 +00:00
Yuan Hong Hui
0315383d92 test: fix ble mesh send problem (v4.3) 2021-11-23 07:11:34 +00:00
Jiang Jiang Jian
daaa29a439 Merge branch 'bugfix/simplify_codeowners_v4.3' into 'release/v4.3'
gitlab: simplify approvals for backports (v4.3)

See merge request espressif/esp-idf!15864
2021-11-23 07:10:23 +00:00
Jiang Jiang Jian
b1290591df Merge branch 'bugfix/register_non_32bit_access_v4.3' into 'release/v4.3'
hal: avoid non-32bit access to registers (v4.3)

See merge request espressif/esp-idf!15616
2021-11-23 07:09:41 +00:00
Jiang Jiang Jian
5934660e46 Merge branch 'bugfix/hfp_demo_audio_not_sine_v4.3' into 'release/v4.3'
fix hfp_ag demo audio not sine_v4.3

See merge request espressif/esp-idf!15747
2021-11-23 06:53:34 +00:00
Jiang Jiang Jian
9e37f39441 Merge branch 'bugfix/fix_ble_prefered_ext_conn_parameter_detection_v4.3' into 'release/v4.3'
component/bt: check the ble ext conn parameter(backport v4.3)

See merge request espressif/esp-idf!15769
2021-11-23 06:53:16 +00:00
Jiang Jiang Jian
5e179b19a3 Merge branch 'ci/fix_deploy_docs_preview_url_v4.3' into 'release/v4.3'
ci: update docs preview url (v4.3)

See merge request espressif/esp-idf!15508
2021-11-23 06:52:42 +00:00
Wang Ning
e1aaa31140 docs/update_two_esp32-c3_devkit_user_guides 2021-11-23 14:46:19 +08:00
Jiang Jiang Jian
d1107db72d Merge branch 'bugfix/simple_sniffer_example_v4.3' into 'release/v4.3'
examples/simple_sniffer: only enable apptrace if JTAG is selected (backport v4.3)

See merge request espressif/esp-idf!13269
2021-11-23 06:41:04 +00:00
Jiang Jiang Jian
96b284bcd3 Merge branch 'bugfix/fix_static_check_error_mr_4.3' into 'release/v4.3'
Fix the high-impact issues from the code analysis report from customer.

See merge request espressif/esp-idf!16045
2021-11-23 06:36:23 +00:00
Jiang Jiang Jian
254b78d449 Merge branch 'bugfix/leedarson_v4.3' into 'release/v4.3'
component_bt: Fix some code logic errors (v4.3)

See merge request espressif/esp-idf!16026
2021-11-23 06:34:33 +00:00
Jiang Jiang Jian
e8153a3cd5 Merge branch 'bugfix/sig_ble_mesh_errata_e16350_v4.3' into 'release/v4.3'
ble_mesh: stack: Apply the errata E16350 from Bluetooth SIG (v4.3)

See merge request espressif/esp-idf!15784
2021-11-23 06:30:46 +00:00
Jiang Jiang Jian
07daa951b6 Merge branch 'bugfix/ble_mesh_host_init_v4.3' into 'release/v4.3'
ble_mesh: nimble: return error if init host twice (v4.3)

See merge request espressif/esp-idf!15788
2021-11-23 06:30:28 +00:00
Jiang Jiang Jian
a657543989 Merge branch 'bugfix/nimble_dirty_timer_handle_after_deinit_v4.3' into 'release/v4.3'
[NimBLE]: clear timer handler during de-initialization(backport v4.3)

See merge request espressif/esp-idf!16029
2021-11-23 06:24:11 +00:00
Jiang Jiang Jian
1e9872bd6a Merge branch 'bugfix/11kv_scan_event_removal_v4.3' into 'release/v4.3'
esp_wifi: Fixes related to 802.11kv (v4.3)

See merge request espressif/esp-idf!16038
2021-11-23 06:23:52 +00:00
Jiang Jiang Jian
b57fff983f Merge branch 'bugfix/fix_memory_leak_controller_deinit_v4.3' into 'release/v4.3'
ESP32: Fix memory leak in controller deinit function v4.3

See merge request espressif/esp-idf!15969
2021-11-23 06:19:52 +00:00
xiongweichao
8a9ca26d61 Add hci command to set coexistence status 2021-11-23 11:40:17 +08:00
Ivan Grokhotkov
7092d7eff5 tools: {install, export}.bat: fix path quoting
Also includes fix for DOSKEY definitions.
Closes https://github.com/espressif/esp-idf/issues/7605
Closes https://github.com/espressif/esp-idf/issues/7927
2021-11-22 22:56:01 +01:00
“YangZhao”
911847e3ea Fix the high-impact issues from the code analysis report from customer.
For the CID10564,10384,10280,10098,10038,The memory was released in other place.
For the CID10365,it release the memory in the function when sent successfully.
For the CID10268,10011, we need not change the code.
2021-11-22 19:46:14 +08:00
Kapil Gupta
a63084ae3f esp_wifi: Remove scan done event for supplicant scans
Closes https://github.com/espressif/esp-idf/issues/7423
2021-11-22 14:48:32 +05:30
Kapil Gupta
9d174e7944 wpa_supplicant: Optimize BTM request scan 2021-11-22 14:45:58 +05:30
Omar Chebib
e615a9546b Sleep: fix wrong debug level
Fix usage of ESP_LOGD in sleep_modes.c which triggers a panic when
used in debug log level.

* Closes https://github.com/espressif/esp-idf/issues/7942
2021-11-22 16:42:48 +08:00
Jiang Jiang Jian
0c8fb540b2 Merge branch 'bugfix/fix_modem_sleep_hw_error_mr_4.3' into 'release/v4.3'
fix modem sleep hw error

See merge request espressif/esp-idf!16018
2021-11-22 06:34:33 +00:00
wangmengyang
21666192d5 [nimble]: clear timer handler during de-initialization 2021-11-22 10:59:21 +08:00
xiongweichao
92a4cdd7fd Missing break in switch 2021-11-22 10:47:28 +08:00
xiongweichao
97e728a9aa Dereference null return value 2021-11-22 10:47:23 +08:00
xiongweichao
a977434855 already defined in bt_target.h 2021-11-22 10:47:12 +08:00
xiongweichao
50f34eb553 Dereference after null check 2021-11-22 10:47:07 +08:00
xiongweichao
a7f26d24d9 Dereference before null check 2021-11-22 10:47:01 +08:00
xiongweichao
6576cee0e8 Logically dead code 2021-11-22 10:46:55 +08:00
Yang Zhao
5a7ae2d8c8 1.It is abnormal when getting the deep sleep state bit. So we need to check
the state again and run the "ble_master_soft_rst()" if neesed.
2.fix HCI_Read_Clock error
3.fix HCI_Create_Connection_Cancel error
4.fix ASSERT_WARN during epr
2021-11-19 16:50:30 +08:00
Alexey Gerenkov
fb4fc7ab48 idf_tools: Adds 'linux-armhf' platform support 2021-11-19 11:25:00 +03:00
Alexey Gerenkov
db501ea0f2 tools: Updates OpenOCD version to 'v0.10.0-esp32-20211111' 2021-11-19 11:24:48 +03:00
Yang Zhao
ea3a586709 Fix the issue of device name len limited 2021-11-19 16:06:03 +08:00
Mahavir Jain
e241ee32e7 Merge branch 'bugfix/fix_ota_crash_backport_v4.3' into 'release/v4.3'
spi_flash: fix app crash when OTA because the OTA task's stack is in rtc fast memory(backport v4.3)

See merge request espressif/esp-idf!15858
2021-11-19 04:54:25 +00:00
isha pardikar
d47c54e706 Merge branch 'bugfix/protocomm_nimble_allocation' into 'master'
NimBLE: Fixed potential allocation bug in protocomm_nimble.c

Closes https://github.com/espressif/esp-idf/issues/7689

See merge request espressif/esp-idf!15669
2021-11-18 14:16:25 +05:30
Mahavir Jain
2406153a25 Merge branch 'add_agressive_revoke_v4.3' into 'release/v4.3'
secure_boot: Added Kconfig option for aggressive key revoke (v4.3)

See merge request espressif/esp-idf!15851
2021-11-18 02:58:48 +00:00
Sachin Parekh
017f7a241a secure_boot: Do not allow key revocation in bootloader 2021-11-17 12:35:06 +05:30
Sachin Parekh
812a92c703 secure_boot: Added Kconfig option for aggressive key revoke
Applicable to S2, C3, and S3
2021-11-17 12:35:06 +05:30
Mahavir Jain
d49917edeb Merge branch 'bugfix/aes_unaligned_access_v4.3' into 'release/v4.3'
aes: fix unaligned access (v4.3)

See merge request espressif/esp-idf!15802
2021-11-17 03:57:14 +00:00
Mahavir Jain
a397a70373 Merge branch 'bugfix/nvs_partition_encrypted_flag_compatibility_v4.3' into 'release/v4.3'
nvs: add config to ignore "encrypted" flag of nvs partitions (v4.3)

See merge request espressif/esp-idf!15921
2021-11-17 03:56:42 +00:00
Mahavir Jain
fa640fef3e Merge branch 'bugfix/efuse_stdbool_v4.3' into 'release/v4.3'
efuse: Add missing stdbool.h include file (v4.3)

See merge request espressif/esp-idf!15936
2021-11-16 15:14:26 +00:00
Mahavir Jain
b6806002df Merge branch 'bugfix/fix_http_head_request_v4.3' into 'release/v4.3'
esp_http_client: Fix HEAD request will affect the all next HTTP requests unless we close the HTTP request(backport v4.3)

See merge request espressif/esp-idf!15714
2021-11-16 15:13:09 +00:00
Mahavir Jain
4841480a52 Merge branch 'bugfix/define__DOXYGEN___v4.3' into 'release/v4.3'
docs: define __DOXYGEN__ for doxygen builds (v4.3)

See merge request espressif/esp-idf!15680
2021-11-16 15:12:27 +00:00
Mahavir Jain
38be4eef46 Merge branch 'bugfix/select_boot_app_v4.3' into 'release/v4.3'
partition_table: Fix case when a few similar to otadata partitions in the table (v4.3)

See merge request espressif/esp-idf!15647
2021-11-16 15:11:51 +00:00
Rahul Tank
0f96ebce13 ESP32: Fix memory leak in controller deinit function
Added change to dealloc s_pm_lock in controller deinit as it gets allocated
during init procedure.

Closes https://github.com/espressif/esp-idf/issues/7653
2021-11-16 10:43:38 +05:30
Gustavo Henrique Nihei
728c391766 efuse: Enable C++ linkage for the include headers on esp_efuse.h
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-12 13:30:11 -03:00
Gustavo Henrique Nihei
985ca0bcf2 efuse: Add missing stdbool.h include file
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-12 13:30:10 -03:00
Roland Dobai
896f6f2dfc Tools: Make clear the used platform in the PowerShell export script 2021-11-12 07:52:19 +01:00
Chris Mumford
ddf79c2be9 Define $IsWindows if not defined.
The `$IsWindows` PowerShell variable was added in PowerShell Core 6 and
PowerShell 7, and is not present in earlier PowerShell versions. Set to
true if undefined. This fixes https://github.com/espressif/esp-idf/issues/7820.

The first version to run on non-Windows platforms was PowerShell Core
6.0[^1] which means that IsWindows is guaranteed to be defined on all
non-Windows systems. So, if undefined this indicates a Windows platform.

[^1]: https://docs.microsoft.com/en-us/powershell/scripting/install/powershell-support-lifecycle?view=powershell-7.2#release-history

Closes https://github.com/espressif/esp-idf/pull/7858

Closes https://github.com/espressif/esp-idf/issues/7820
2021-11-12 07:52:18 +01:00
Chris Mumford
35a949ea66 Initialize $envvars_array to an empty list.
With strict debugging, i.e. `Set-PSDebug -strict`, execution of export.ps1 will
report the following error:

```
The variable '$envars_array' cannot be retrieved because it has not been set.
At C:\path\to\export.ps1:15 char:1
+ $envars_array # will be filled like:
+ ~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (envars_array:String) [], RuntimeException
    + FullyQualifiedErrorId : VariableIsUndefined
```

Closes https://github.com/espressif/esp-idf/pull/7819
2021-11-12 07:52:17 +01:00
Mahavir Jain
2b4604ce8e spi_flash: minor cleanup, use type/subtype from esp_partition.h 2021-11-12 09:44:04 +05:30
Mahavir Jain
893342794f nvs: add config to ignore "encrypted" flag of nvs partitions
This is to allow having pre IDF v4.3 behavior where "encrypted"
flag was not being checked for NVS partitions.

It is recommended to enable this new config only if you have
production devices where NVS partition was being set with "encrypted"
flag by mistake.

Please see commit aca9ec28b3 which
introduced check to not allow NVS partitions with "encrypted" flag set.

More discussion on this at:
https://github.com/espressif/esp-idf/issues/5747#issuecomment-956223024
https://github.com/espressif/esp-idf/issues/7839#issuecomment-961477667

Closes https://github.com/espressif/esp-idf/issues/7839
Closes IDFGH-6162
2021-11-12 09:44:04 +05:30
Tian Sen Wen
8999626545 esp_eth: optimize dm9051 Tx throughput 2021-11-11 14:41:58 +08:00
Anton Maklakov
9102574a9d tools: Fix missed DLLs in GDB for Windows 2021-11-10 17:08:05 +07:00
Jakob Hasse
6085518bcb fix (gdbstub): added xtensa, esp32 as public includes in component.mk
Closes https://github.com/espressif/esp-idf/issues/7846
2021-11-10 13:45:05 +08:00
Ivan Grokhotkov
0261b78c0c gitlab: simplify approvals for backports (v4.3) 2021-11-09 18:36:33 +01:00
simon.chupin
49add90a1b change --archive_details output 2021-11-09 14:43:26 +01:00
jingli
04ac2b319a fix: app crash when OTA because the OTA task's stack is in rtc fast memory 2021-11-09 19:51:35 +08:00
Roland Dobai
c652c1de0c tools: Create the ".espressif" directory on the first run on clean system
Closes https://github.com/espressif/esp-idf/issues/7848
2021-11-09 12:03:08 +01:00
boarchuz
22fad5110c fix bootloader build with rom flash driver
Closes https://github.com/espressif/esp-idf/pull/7508
Closes https://github.com/espressif/esp-idf/issues/6849
2021-11-08 14:14:53 +08:00
Frank Sautter
08aacb02f7 Increased LAN8720 ETH-PHY reset assertion time (IDFGH-6018)
Increase reset assertion time from 100µs (as specified minimum in the datasheet) to 150µs.
Some specimen of the LAN8720 need the reset signal asserted longer than 100µs to initialise properly. Otherwise they are in a zombie state where they are establishing and loosing an Ethernet link once in a seconds interval.
2021-11-05 11:46:58 +01:00
KonstantinKondrashov
b0c1ceca06 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-04 15:18:44 +08:00
Marius Vikhammer
b1d346f682 bootloader: disable psram cache bug fix for bootloader
The psram cache bug fix was also being applied to the bootloader binary (for cmake),
which doesnt do any psram access.

Applying this fix would increase the binary size, as much as 300 bytes in worst case scenarios
2021-11-04 11:32:07 +08:00
Marius Vikhammer
1c9f018891 aes: fix potential unaligned access in aes-gcm 2021-11-04 10:59:53 +08:00
Marius Vikhammer
b57a1d7f48 ci: update docs preview url 2021-11-04 02:41:56 +00:00
Marius Vikhammer
79b59947d8 aes: fix potential unaligned access of buffers
https://github.com/espressif/esp-idf/issues/7236
2021-11-04 10:35:55 +08:00
Marius Vikhammer
519f17f831 docs: define __DOXYGEN__ for doxygen builds
Some docs depended on __DOXYGEN__ but this was never defined anywhere.
2021-11-04 10:14:49 +08:00
lly
fe9efd2770 ble_mesh: nimble: return error if init host twice 2021-11-03 19:22:25 +08:00
lly
aab04816f9 ble_mesh: stack: Apply the errata E16350 from Bluetooth SIG 2021-11-03 19:05:14 +08:00
Andrei Safronov
6a57c4d5d5 newlib: fix clang atomics
Correction of the SYNC_LOCK_* macros in stdatomic
2021-11-02 16:24:18 +01:00
Scott Mabin
710c1f2fad remove __clang ifdef around atomic emulation
* CI errors led me to believe these were needed, but as it turns out the
load/store intrinsics are required even when idf is built by gcc when
linking to a clang based project.
* remove ... postfix inside `SYNC_LOCK_TEST_AND_SET` expansion
2021-11-02 16:24:18 +01:00
Scott Mabin
b01c197505 newlib: provide missing atomic libcalls
Provide emulated atomic load & store libcalls for u8, u16 & u32 integer
types. This is required when building with Clang as llvm does not lower
these operations to native load / stores, where as gcc does.

Provide `sync_lock_test_and_set` atomic implementations for all
supported integer types.

Closes https://github.com/espressif/esp-idf/issues/7591.
Closes https://github.com/espressif/esp-idf/issues/7592.
2021-11-02 16:24:18 +01:00
Andrei Safronov
de5e0fa3bd newlib,clang: implement __sync_* atomics for clang/llvm toolchain. 2021-11-02 16:24:18 +01:00
Ivan Grokhotkov
d4f2e03e4a newlib: stdatomic: emulate 64-bit atomics on 32-bit SMP SoCs
Closes https://github.com/espressif/esp-idf/issues/3163
2021-11-02 16:24:18 +01:00
Ivan Grokhotkov
be520f975a newlib: stdatomic: fix prototypes, don't disable compiler warnings 2021-11-02 16:24:18 +01:00
Sachin Parekh
2250da111e stdatomic: Implemented legacy __sync APIs and __atomic_exchange_n
These APIs are used when the architecture doesn't have atomic
instruction support

Closes https://github.com/espressif/esp-idf/issues/6463
2021-11-02 16:24:18 +01:00
Renz Bagaporo
5f2fabb2b1 arch: move stdatomic 2021-11-02 16:24:18 +01:00
simon.chupin
d4ea7df9b5 tools: fix bug with idf_size argument archive_details 2021-11-02 14:17:23 +01:00
Cao Sen Miao
173f7e87aa esp_timer: init rtc timer and system timer in early init 2021-11-02 17:33:31 +08:00
Ivan Grokhotkov
b5fe84a250 esp_timer: allow querying the timer before esp_timer_init is called 2021-11-02 17:33:07 +08:00
xiewenxiang
5ff15a3895 component/bt: check the ble ext conn parameter 2021-11-02 15:32:13 +08:00
yuanjm
cbfffc7269 esp_http_client: Fix HEAD request will affect the all next HTTP requests unless we close the HTTP request
Closes https://github.com/espressif/esp-idf/issues/7777
2021-11-01 17:21:21 +08:00
jincheng
ec43017afe fix hfp_ag demo audio not sine_v4.3 2021-11-01 11:23:24 +08:00
KonstantinKondrashov
e335a16356 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-29 19:36:26 +08:00
shenjun
57131eff89 mesh: fix the issue that layer2 node connect to lower-layer node when FIXED-ROOT root disappeared 2021-10-29 16:43:22 +08:00
Anton Maklakov
d85b0b869b ci: Add retries on runner system failures 2021-10-29 13:50:38 +07:00
weitianhua
b2fba50e78 Remove dummy defines of Classic BT 2021-10-29 14:37:23 +08:00
Isha Pardikar
98d34e5f6d Merge branch 'wifi_prov_mgr_fix_v4.3' into 'release/v4.3'
Wifi_prov_mgr: Fix for ios device needs to do forget device (v4.3)

See merge request espressif/esp-idf!15484
2021-10-29 06:30:25 +00:00
weitianhua
f765b7acb6 Make ESP32 Bluetooth stack architecture Doc only visible for ESP32 2021-10-29 14:26:25 +08:00
weitianhua
58ff27cc03 Make Classic BT related document links only visible for ESP32 2021-10-29 14:25:31 +08:00
Jiang Jiang Jian
3f752f7e0d Merge branch 'bugfix/fix_phy_usb_issue_v4.3' into 'release/v4.3'
esp_phy: fix esp32c3 phy USB & RSSI issue(V4.3)

See merge request espressif/esp-idf!15648
2021-10-29 03:13:02 +00:00
Zim Kalinowski
2acbecbb40 Merge branch 'bugfix/sync_rtc_and_esp_timer_before_reboot_v4.3' into 'release/v4.3'
esp_system: Adds sync of FRC & RTC counters in esp_restart (v4.3)

See merge request espressif/esp-idf!15655
2021-10-28 17:33:47 +00:00
Konstantin Kondrashov
8140b10a16 esp_system: Adds sync of FRC & RTC counters in esp_restart (v4.3) 2021-10-28 17:33:46 +00:00
chenjianxing
33a616d6a0 esp_phy: fix esp32c3 phy USB & RSSI issue 2021-10-28 17:52:01 +08:00
Zim Kalinowski
534ca101e4 Merge branch 'refactor/systimer_reset_alternative_v4.3' into 'release/v4.3'
Systimer reset alternative on S2 (and others) (v4.3)

See merge request espressif/esp-idf!15652
2021-10-28 08:00:29 +00:00
Konstantin Kondrashov
fa85714845 Systimer reset alternative on S2 (and others) (v4.3) 2021-10-28 08:00:28 +00:00
Jiang Jiang Jian
181e51a596 Merge branch 'bugfix/eap_client_iot_issues_v4.3' into 'release/v4.3'
ESP_WiFi: Fix some wpa enterprise issue (backport v4.3)

See merge request espressif/esp-idf!15567
2021-10-28 05:59:09 +00:00
Jiang Jiang Jian
6c1c6a3e37 Merge branch 'bugfix/modbus_allow_master_slave_work_simultaneously_v43' into 'release/v4.3'
freemodbus: fix issues when modbus master and slave work simultaneously (backport v4.3)

See merge request espressif/esp-idf!14930
2021-10-28 03:08:12 +00:00
Alex Lisitsyn
4f716817e0 freemodbus: fix issues when modbus master and slave work simultaneously (backport v4.3) 2021-10-28 03:08:12 +00:00
Kapil Gupta
6acb4620b4 wpa_supplicant: Add missing cflag for legacy makefile 2021-10-28 11:07:05 +08:00
Kapil Gupta
e78d06beb2 wpa_supplicant: Update internal tls client with sha384/sha512 support
Add support for validating certificates with SHA384 and SHA512 hashes.
2021-10-28 11:07:05 +08:00
Kapil Gupta
d680db8ed3 esp_wifi: Fix interoperability issue with windows 2008 2021-10-28 11:07:05 +08:00
Island
8165bbca55 Merge branch 'bugfix/heartbeat_filter_with_acceptlist_v4.3' into 'release/v4.3'
ble_mesh: stack: Fix heartbeat filter with accept list (v4.3)

See merge request espressif/esp-idf!15676
2021-10-28 02:58:25 +00:00
morris
8051d60d0b Merge branch 'bugfix/examples_connect_openeth_v4.3' into 'release/v4.3'
examples/protocols: fix compilation when CONFIG_EXAMPLE_USE_OPENETH=y (v4.3)

See merge request espressif/esp-idf!15654
2021-10-28 02:05:29 +00:00
Ivan Grokhotkov
0b6fc0b7e8 Merge branch 'bugfix/ci_fix_test_build_system_cmake_v4.3' into 'release/v4.3'
ci: Fix concurrency issues for macOS build system tests (v4.3)

See merge request espressif/esp-idf!14398
2021-10-27 20:59:25 +00:00
Anton Maklakov
befd021767 Merge branch 'bugfix/gdbstub_4_c3_v4.3' into 'release/v4.3'
bugfix/esp-gdbstrub: add missing function for esp32c3 (backport v4.3)

See merge request espressif/esp-idf!15665
2021-10-27 09:49:35 +00:00
wangjialiang
3139ef5ab6 ble_mesh: stack: Fix heartbeat filter with accept list 2021-10-27 16:32:17 +08:00
Jiang Jiang Jian
c11d71f06f Merge branch 'bugfix/remove_assert_when_inq_done_4.3' into 'release/v4.3'
component_bt: fix crash after inquiry has finished (v4.3)

See merge request espressif/esp-idf!15666
2021-10-27 08:29:05 +00:00
xiongweichao
25a7cdcbd3 Remove assert when inq done
Closes https://github.com/espressif/esp-idf/issues/6759
2021-10-27 11:34:51 +08:00
Dmitry
8cb6baac6c bugfix/esp-gdbstrub: add missing function for esp32c3/esp32h2. 2021-10-27 11:03:35 +08:00
Anton Maklakov
44c701abb6 Merge branch 'feature/toolchain_2021r2_v4.3' into 'release/v4.3'
Update toolchains to esp-2021r2 (v4.3)

See merge request espressif/esp-idf!15638
2021-10-26 20:13:28 +00:00
Sergei Silnov
fd9bfb42a1 ci: Fix concurrency issues for macos buildsystem tests 2021-10-26 22:07:53 +08:00
Ivan Grokhotkov
feaf29a340 examples/protocols: fix compilation when CONFIG_EXAMPLE_USE_OPENETH=y
The code checked CONFIG_ETH_USE_SPI_ETHERNET (which is usually set),
but CONFIG_EXAMPLE_ETH_SPI_xxx_GPIO options are only defined if
CONFIG_EXAMPLE_USE_SPI_ETHERNET is set. Fix the ifdef accordingly.
Regression from aea901f0.
2021-10-26 12:39:46 +02:00
KonstantinKondrashov
208b41975b 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-10-26 16:07:31 +08:00
Jiang Jiang Jian
54b25318cd Merge branch 'bugfix/remove_dis_rtc_ram_boot_efuse_bit_backport_v4.3' into 'release/v4.3'
efuse: remove DIS_RTC_RAM_BOOT efuse bit (backport v4.3)

See merge request espressif/esp-idf!15233
2021-10-26 03:59:46 +00:00
Wang Fang
034dd2da18 docs: update assignment type for .bit_per_sample 2021-10-26 11:33:53 +08:00
Anton Maklakov
798b52af1d Update toolchains to esp-2021r2
Updated GDB to 9.2 version for xtensa chips
    Fixed coredump work for xtensa chips
    Fixed backtrace for xtensa chips
    Fixed multilib for riscv32 chips
    Fixed running GDB on some RaspberryPi configuration for riscv32 chip
    Fixed support of fnmatch(), iconv() and some other posix functions in stdlib

    Closes https://github.com/espressif/esp-idf/issues/6124
    Closes https://github.com/espressif/esp-idf/issues/2484
    Closes https://github.com/espressif/esp-idf/issues/3264
    Closes https://github.com/espressif/crosstool-NG/issues/13
    Closes https://github.com/espressif/crosstool-NG/pull/16
2021-10-25 20:19:55 +07:00
Anton Maklakov
c0e96ceb34 test_apps/panic: remove workaround for incorrect GDB backtrace 2021-10-25 20:19:55 +07:00
Anton Maklakov
6e48d5bd6b coredump: update test data for toolchain 2021r2 2021-10-25 20:19:52 +07:00
Anton Maklakov
a3ff680dff Merge branch 'bugfix/tools_fix_win_c3_gdb_v4.3' into 'release/v4.3'
tools: Update ESP32-C3 toolchain for Windows, added some missed DLLs for GDB (backport v4.3)

See merge request espressif/esp-idf!14298
2021-10-25 13:07:29 +00:00
Wang Meng Yang
dfe5f7432f Merge branch 'bugfix/fix_ble_scan_failed_issue_master_4.3' into 'release/v4.3'
Fix the ble scan failed issue

See merge request espressif/esp-idf!15588
2021-10-25 07:53:16 +00:00
Wang Meng Yang
717627ad1a Merge branch 'feature/add_README_for_controller_hci_uart_demo_v4.3' into 'release/v4.3'
feature/add README.md for demo controller_hci_uart_demo_4.3

See merge request espressif/esp-idf!15569
2021-10-25 07:36:53 +00:00
morris
62bd98158f hal: avoid non-32bit access to registers 2021-10-25 11:33:50 +08:00
Zim Kalinowski
b5936c8323 Merge branch 'bugfix/i2c_cxx_warning_4.3' into 'release/v4.3'
[cxx]: Added virtual desctructor in I2C class (backport 4.3)

See merge request espressif/esp-idf!15465
2021-10-22 14:41:53 +00:00
Sergei Silnov
81047b02d0 Merge branch 'bugfix/support_py34-35_cffi' into 'release/v4.3'
Tools: Constrain the cffi package for older pythons

See merge request espressif/esp-idf!15598
2021-10-22 13:52:24 +00:00
Mahavir Jain
e4995581dc Merge branch 'bugfix/esp32_app_cpu_core_cache_access_err' into 'release/v4.3'
esp32: fix cache access error exception for APP CPU core

See merge request espressif/esp-idf!15586
2021-10-22 09:10:22 +00:00
morris
9a59b6379c Merge branch 'ci/update_esp_eth_cert_v4.3' into 'release/v4.3'
ci: update cert used for esp_eth test (v4.3)

See merge request espressif/esp-idf!15584
2021-10-22 06:54:59 +00:00
morris
498c159b55 Merge branch 'bugfix/fix_efuse_err_address_backport4.3' into 'release/v4.3'
fix efuse err address in block0 (backport v4.3)

See merge request espressif/esp-idf!14814
2021-10-22 05:06:41 +00:00
Wu Zheng Hui
e5bd4427e3 fix efuse err address in block0 (backport v4.3) 2021-10-22 13:06:40 +08:00
morris
49a5cd23a4 Merge branch 'bugfix/fix_stuck_in_rtc_clk_calibration_backport_v4.3' into 'release/v4.3'
[bugfix] Fix stuck in rtc clk calibration (backport v4.3)

See merge request espressif/esp-idf!15526
2021-10-22 03:03:54 +00:00
wuzhenghui
7c52647243 fix stuck in rtc_clk_cal 2021-10-21 21:54:04 +08:00
wuzhenghui
fd5a63f31e modify csv & generate
update efuse_reg.h & efuse_struct.h & references in rst file
2021-10-21 19:24:12 +08:00
Sergei Silnov
2dec9fadf9 Tools: Constrain the cffi package for older pythons 2021-10-21 11:43:19 +02:00
isha pardikar
7a0a6879e3 Wifi_prov_mgr:Fix for ios device needs to do forget device 2021-10-21 10:11:58 +05:30
Wang Meng Yang
625bd4f767 Merge branch 'bugfix/btdm_fix_some_bluedroid_issues_v4.3' into 'release/v4.3'
Fix some bluedroid issues(backport v4.3)

See merge request espressif/esp-idf!15230
2021-10-21 03:49:20 +00:00
Yang Zhao
521c0ef956 1.Fix the ble scan failed issue, this may happen in coexit environment
2.Fix connection failed with LG 5.0 phone
3.Check only for same X component of public key in BR/EDR
2021-10-21 10:45:25 +08:00
Mahavir Jain
28f8ac5f12 cpu_start: rename function to add core prefix for more clarity 2021-10-21 08:09:14 +05:30
Mahavir Jain
76e606ab32 cpu_start: let individual core clear its interrupt matrix
There was race condition where interrupt entries set by APP cpu core
could have been cleared during PRO cpu startup.

This was causing "cache access error" not being detected for ESP32 APP
CPU core.

This fix allows to NOT modify or clear any entries set by other core
(APP or PRO) and thus avoiding any race conditions during startup code.
2021-10-21 08:03:55 +05:30
Marius Vikhammer
1eab7a033b ci: update cert used for esp_eth test 2021-10-21 10:06:03 +08:00
jincheng
75d98216a2 add README.md for demo controller_hci_uart_demo 2021-10-19 21:57:45 +08:00
morris
eef5add97e Merge branch 'bugfix/fix_esp32s2_deep_sleep_timer_wake_up_fail_backport_v4.3' into 'release/v4.3'
rtc: fix esp32s2 fall into sleep forever when deep-sleep time is set to 0(backport v4.3)

See merge request espressif/esp-idf!13560
2021-10-19 04:44:47 +00:00
Michael (XIAO Xufeng)
43d2a6eeed Merge branch 'bugfix/modbus_add_task_affinity_and_callbacks_v43' into 'release/v4.3'
freemodbus: add affinity option for modbus stack tasks (backport v4.3)

See merge request espressif/esp-idf!14540
2021-10-19 04:11:51 +00:00
Jiang Jiang Jian
2318522f04 Merge branch 'feature/support_ota_multi_phy_v4.3' into 'release/v4.3'
esp_wifi: support multi phy init data bin embedded(v4.3)

See merge request espressif/esp-idf!13868
2021-10-18 13:47:28 +00:00
Wang Meng Yang
d474c76556 Merge branch 'bugfix/btdm_ble_data_length_update_fail_v4.3' into 'release/v4.3'
Fix data length update failed(release v4.3)

See merge request espressif/esp-idf!15502
2021-10-18 03:07:14 +00:00
morris
5a0b570702 Merge branch 'bugfix/modbus_fix_stack_reinitialization_sequence_v43' into 'release/v4.3'
modbus: fix stack reinitialization sequence (backport v4.3)

See merge request espressif/esp-idf!15402
2021-10-18 01:45:12 +00:00
morris
2e8abdb814 Merge branch 'bugfix/fix_touch_sensor_measure_start_wait_time_backport_v4.3' into 'release/v4.3'
Bugfix(Touch): fix the touch sensor wait cycle after wakeup from sleep (backport v4.3)

See merge request espressif/esp-idf!13640
2021-10-18 01:42:41 +00:00
Michael (XIAO Xufeng)
14977d7561 Merge branch 'bugfix/spi_ll_intr_bits_v4.3' into 'release/v4.3'
spi: Fix wrong target register for interrupt disable (v4.3)

See merge request espressif/esp-idf!14404
2021-10-16 16:18:10 +00:00
Michael (XIAO Xufeng)
8732cc6c6b Merge branch 'bugfix/timer_example_crashed_not_calling_timer_group_set_alarm_value_in_isr_v4.3' into 'release/v4.3'
driver/timer: fixed auto reload problem in default isr callback (backport to 4.3)

See merge request espressif/esp-idf!13529
2021-10-16 15:59:26 +00:00
Ivan Grokhotkov
60ad592a23 Merge branch 'bugfix/retry_download_submodule_v4.3' into 'release/v4.3'
ci: retry download from Gitlab on error 500 (v4.3)

See merge request espressif/esp-idf!15532
2021-10-15 17:01:28 +00:00
Michael (XIAO Xufeng)
61bd1eb225 Merge branch 'bugfix/xmc_overerase_v4.3' into 'release/v4.3'
bootloader: add xmc spi_flash startup flow to improve reliability (v4.3)

See merge request espressif/esp-idf!14768
2021-10-15 16:52:25 +00:00
Armando (Dou Yiwen)
9e0c9be1d4 Merge branch 'feature/essp_spi_driver_v4.3' into 'release/v4.3'
essl: add essl spi support to communicate with spi slave hd mode (v4.3)

See merge request espressif/esp-idf!14702
2021-10-15 11:23:36 +00:00
Michael (XIAO Xufeng)
9645d8d015 ci: increase the job number of ESP32 unit test 2021-10-15 17:21:41 +08:00
Ivan Grokhotkov
f7d023383b ci: revert type annotations in gitlab_api.py to python2 compatible 2021-10-15 10:57:08 +02:00
aleks
5b52358092 freemodbus: check/fix reinitialization issues (tcp master and slave examples) 2021-10-15 16:50:33 +08:00
Armando
52a8f6cdd5 essl: add essl spi support to communicate with spi slave hd mode 2021-10-15 16:50:24 +08:00
Wang Meng Yang
98c1974fb5 Merge branch 'bugfix/stack_init_check_v4.3' into 'release/v4.3'
Nimble: Check stack status before executing stack command (v4.3)

See merge request espressif/esp-idf!15321
2021-10-15 07:53:32 +00:00
David Čermák
dacd74cd0f Merge branch 'bugfix/mdns_remove_service4.3' into 'release/v4.3'
mdns: fix memory free issue when repeating the query in reply (v4.3)

See merge request espressif/esp-idf!13516
2021-10-15 05:03:50 +00:00
Ivan Grokhotkov
81e1277559 ci: retry Gitlab operations on error 500 2021-10-15 09:32:24 +07:00
Fu Hanxi
39528b1783 ci: retry download artifacts 2021-10-15 09:32:11 +07:00
Cao Sen Miao
fa0dc23a71 Merge branch 'flash/support_gd_32Mb' into 'release/v4.3'
spi_flash: support 32Mb-addess flash(backport v4.3)

See merge request espressif/esp-idf!13654
2021-10-15 01:48:59 +00:00
Roland Dobai
d5699b08cc Merge branch 'backport/v4.3/dockerfile_multiarch' into 'release/v4.3'
Dockerfile working on x64/ARM (v4.3)

See merge request espressif/esp-idf!15521
2021-10-14 21:14:48 +00:00
Michael (XIAO Xufeng)
d4fd54f8ce 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-10-15 02:18:03 +08:00
Michael (XIAO Xufeng)
e00f6cbde9 bootloader: add xmc spi_flash startup flow to improve reliability 2021-10-15 01:49:46 +08:00
Michael (XIAO Xufeng)
5875b03266 Merge branch 'bugfix/fix_bit_error_in_ledc_struct_backport_v4.3' into 'release/v4.3'
LEDC: fix bit error in ledc_struct.h(backport v4.3)

See merge request espressif/esp-idf!14162
2021-10-14 17:41:00 +00:00
Jiacheng Guo
0b556de95c mdns: fix memory free issue when repeating the query in reply
The repeated query will be copied in the next event loop while the
memory is freed instantly. Delay the free to fix this issue.
2021-10-14 17:31:01 +02:00
chenjianxing
b4b57a25b8 esp_wifi: backport some wifi fix
1.support multi phy init data bin embedded
2.fix not tx 9M rate issue
2021-10-14 21:37:57 +08:00
Tomas Sebestik
e1353a1a0e Dockerfile working on x64/ARM 2021-10-14 13:03:35 +02:00
Cao Sen Miao
ce9e615679 Merge branch 'feature/esp32c3_usbjtagserial_v4.3' into 'release/v4.3'
usb_serial_jtag: support usb_serial_jtag on esp32c3(backport v4.3)

See merge request espressif/esp-idf!15319
2021-10-14 10:38:02 +00:00
XieWenxiang
1ea757c0f1 component/bt: Modify the bluetooth device name length limits 2021-10-14 18:24:17 +08:00
fuzhibo
8ab23d4395 Driver(Touch sensor): fix the touch sensor wait cycle after wakeup from sleep 2021-10-14 17:17:45 +08:00
David Čermák
1cddcd010c Merge branch 'bugfix/fix_cplusplus_miss_in_dhcp_v4.3' into 'release/v4.3'
dhcpserver: support cplusplus (backport v4.3)

See merge request espressif/esp-idf!15448
2021-10-14 09:12:02 +00:00
Michael (XIAO Xufeng)
1b75fb5622 Merge branch 'bugfix/spi_master_crash_cache_disabled_v4.3' into 'release/v4.3'
spi_master: fix the crash when using interrupt mode when cache is disabled (v4.3)

See merge request espressif/esp-idf!14681
2021-10-14 07:15:54 +00:00
morris
340a4a95ee Merge branch 'bugfix/i2s_write_failed_in_32bit_slave_mode' into 'release/v4.3'
i2s: fix write failure issue in slave mode (backport v4.3)

See merge request espressif/esp-idf!15081
2021-10-14 01:46:57 +00:00
Roland Dobai
82927f768b Merge branch 'feat/lock_ldgen_order' into 'release/v4.3'
feature: lock ldgen entries order

See merge request espressif/esp-idf!15137
2021-10-13 16:04:39 +00:00
xiewenxiang
594f604e7d component/bt: fix data length update failed 2021-10-13 19:55:43 +08:00
Song Ruo Jing
75916a8758 Merge branch 'bugfix/cpu_reset_perip_clk_disable_v4.3' into 'release/v4.3'
esp_system: Peripheral clocks faulty become disabled during cpu reset

See merge request espressif/esp-idf!15482
2021-10-13 10:04:13 +00:00
Fu Hanxi
404ee09181 feat: ldgen generate ld files with fixed order of entries
the frozenset order inside could be different
2021-10-13 17:40:55 +08:00
Roland Dobai
d480469aa3 Merge branch 'feature/windows_installer_moved_to_github_backport_4.3' into 'release/v4.3'
tools: Windows Installer project moved to github.com/espressif/idf-installer - backport v4.3

See merge request espressif/esp-idf!15474
2021-10-13 09:00:55 +00:00
morris
faa44d5843 Merge branch 'backport/v4.3/8_16bits_periph_access' into 'release/v4.3'
bugfix/driver: fix and cleanup soc/ll stuffs (backport v4.3)

See merge request espressif/esp-idf!15204
2021-10-13 08:30:51 +00:00
Cao Sen Miao
6c01cdc38f Merge branch 'feature/add_official_support_for_gd_v4.3' into 'release/v4.3'
spi_flash(bootloader): adjust unlock patch from rom patch into bootloader, and add support for GD chips (backport v4.3)

See merge request espressif/esp-idf!14605
2021-10-13 08:28:10 +00:00
laokaiyao
07410a1381 i2s: fix write failure issue in slave mode 2021-10-13 10:22:26 +08:00
aleks
33fe673e85 freemodbus: add affinity option for modbus stack tasks 2021-10-12 17:38:39 +08:00
yuanjm
72cbfbf26a ci: Remove public headers check exceptions for dhcp 2021-10-12 14:25:38 +08:00
yuanjm
6e182d7ed3 dhcpserver: support cplusplus
Closes https://github.com/espressif/esp-idf/issues/7494

Merges https://github.com/espressif/esp-idf/pull/7526
2021-10-12 14:25:38 +08:00
songruojing
023bbe5cb1 esp_system: fix the bug that some peripheral clocks are being disabled during cpu reset for esp32s2, c3, s3 2021-10-12 11:37:17 +08:00
Cao Sen Miao
e226a65a1f spi_flash: add support for 32Mbit address GD flash, for GD25Q256 2021-10-12 10:53:07 +08:00
suda-morris
91fa868bd6 twai: update register struct file 2021-10-12 10:42:04 +08:00
SalimTerryLi
29accf2533 soc/ll: workaround compiler bug that generate 8/16 bits inst instead of 32 bits one
Note: on ESP32 UART rxfifo seems to be read as u8 instead of u32 to make it work
2021-10-12 10:42:04 +08:00
Jakob Hasse
50b5ff058c [cxx]: Added virtual desctructor in I2C class
Closes https://github.com/espressif/esp-idf/issues/7435
2021-10-12 10:21:26 +08:00
Juraj Michálek
157c27e8cf tools: remove dependency on Windows installer - backport 2021-10-11 12:18:16 +02:00
Cao Sen Miao
f49d6bf061 usb_serial_jtag: fix the bug that cannot write with usb_jtag 2021-10-11 17:34:24 +08:00
Jeroen Domburg
d6cdb3e0ae usb_serial_jtag: support usb_serial_jtag on esp32c3
USB serial/jtag controller: Add vfs (logging/printf), panic handler, gdb support.

See merge request espressif/esp-idf!12925
2021-10-11 17:34:24 +08:00
Mahavir Jain
ba15ac8634 Merge branch 'fix/update_https_example_root_certificate_v4.3' into 'release/v4.3'
Updated the root certificate of https examples (v4.3)

See merge request espressif/esp-idf!15437
2021-10-11 04:00:38 +00:00
Martin Vychodil
e1b9532848 Merge branch 'bugfix/memprot_wrong_fi_check_v4.3' into 'release/v4.3'
System/Memprot: Fixed voltage glitching detection logic (v4.3)

See merge request espressif/esp-idf!15412
2021-10-11 03:02:51 +00:00
Cao Sen Miao
ea06ee1ad6 spi_flash: move the unlock patch to bootloader and add support for GD 2021-10-11 10:52:52 +08:00
Cao Sen Miao
a05d4e9e86 Merge branch 'bugfix/bugfix/gpio_cant_hold_v4.3' into 'release/v4.3'
gpio: fix issue that gpio cannot hold during deep-sleep on c3 (backport v4.3)

See merge request espressif/esp-idf!15358
2021-10-11 02:30:22 +00:00
Roland Dobai
64fe41a7dc Merge branch 'bugfix/constrain_cryptography' into 'release/v4.3'
Tools: Constrain the cryptography package version in order to avoid breaking changes

See merge request espressif/esp-idf!15410
2021-10-10 17:18:49 +00:00
Mahavir Jain
c990c8f752 Merge branch 'bugfix/memprot_bad_esp_restart_check_v4.3_3' into 'release/v4.3'
System/Security: wrong check of the Memprot feature in esp_restart()/panic_restart() (v4.3)

See merge request espressif/esp-idf!15424
2021-10-10 13:01:23 +00:00
Mahavir Jain
d3ec2dc904 Merge branch 'feature/github-7632_v4.3' into 'release/v4.3'
esp_crt_bundle: remove EC-ACC certificate (v4.3)

See merge request espressif/esp-idf!15434
2021-10-10 11:25:48 +00:00
morris
e7cc27417f Merge branch 'feature/support_sdspi_on_s2_c3-backport_v4.3' into 'release/v4.3'
example: support sdspi on s2 c3 (backports v4.3)

See merge request espressif/esp-idf!15426
2021-10-09 09:57:21 +00:00
Song Ruo Jing
3bcc85d96d Merge branch 'bugfix/enable_gpio_20_v4.3' into 'release/v4.3'
gpio: Enable IO20 on ESP32 (backport v4.3)

See merge request espressif/esp-idf!15022
2021-10-09 08:44:17 +00:00
Li Shuai
0e0e298322 Merge branch 'feature/ledc_use_rtc8m_or_xtal_lightsleep_v4.3' into 'release/v4.3'
backport v4.3: support RTC8M and XTAL power domain in light sleep mode

See merge request espressif/esp-idf!15362
2021-10-09 07:28:39 +00:00
Cao Sen Miao
cbfa3eb350 gpio: fix issue that gpio cannot hold during deep-sleep on c3, Closes https://github.com/espressif/esp-idf/issues/7455 2021-10-08 19:56:14 +08:00
Jiang Jiang Jian
e8394e801f Merge branch 'bugfix/ping_iface_v4.3' into 'release/v4.3'
lw ip: Fix ICMP Ping on specific iface (GitHub PR) (v4.3)

See merge request espressif/esp-idf!15145
2021-10-08 06:10:12 +00:00
Wang Meng Yang
166790d354 Merge branch 'bugfix/a2dp_no_audio_transmitted_v4.3' into 'release/v4.3'
bugfix/fix wrong clock_id in function `time_now_us` (v4.3)

See merge request espressif/esp-idf!15316
2021-10-08 06:01:22 +00:00
xiewenxiang
5a26d7008d component/bt: set ext adv param failed when stop ext adv 2021-10-08 11:58:15 +08:00
SalimTerryLi
c0695e4216 example/storage: fix incorrect SDSPI DMA setting on c3
Closes https://github.com/espressif/esp-idf/issues/7389
2021-10-08 11:53:18 +08:00
Harshit Malpani
222f48367f Update example test for esp_http_client 2021-10-07 17:47:12 +05:30
Harshit Malpani
ee409e042a Updated the root certificate of https examples 2021-10-07 17:46:02 +05:30
Victor Morales
caafeff63f esp_crt_bundle: remove EC-ACC certificate
Fixes bug #7631
2021-10-07 13:13:52 +05:30
Martin Vychodil
ec6745a137 System/Security: wrong check of the Memprot feature in esp_restart()/panic_restart()
esp_restart()/panic_restart() never resets the Digital system (so far required only by the Memprot feature) as there's a typo in the corresponding #define:
it checks CONFIG_ESP_SYSTEM_CONFIG_MEMPROT_FEATURE instead of CONFIG_ESP_SYSTEM_MEMPROT_FEATURE.
Issue fixed.

IDF-4094
2021-10-05 11:58:31 +02:00
Alex Lisitsyn
86b7acc932 Merge branch 'bugfix/freemodbus_change_max_task_prio_v43' into 'release/v4.3'
Bugfix/freemodbus change max task prio (backport v4.3)

See merge request espressif/esp-idf!13732
2021-10-05 07:47:21 +00:00
ivmarkov
98733692c9 lwip: Fix ICMP Ping on specific iface
Fix broken parentheses in setsockopt call

Merges https://github.com/espressif/esp-idf/pull/7397
2021-10-05 13:12:01 +08:00
Martin Vychodil
7689a801d4 System/Memprot: fixed voltage glitching detection logic
When the application is being debugged it should check the call result (esp_cpu_in_ocd_debug_mode())
is not given volt.glitch attack - so the result is triple-checked by ESP_FAULT_ASSERT macro. In case
the check fails, the system is reset immediately

IDF-4014
2021-10-04 19:25:32 +02:00
Roland Dobai
9944c8acbe Tools: Constrain the cryptography package for avoiding breaking changes
The cryptography 35 release causes breaking changes. Some of
certificates are rendered invalid and the package cannot be build
without rust. See
https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst#3500---2021-09-29
for more details.
2021-10-04 16:51:46 +02:00
David Čermák
3a925002a7 Merge branch 'bugfix/esp_sntp_declare_v4.3' into 'release/v4.3'
lw-ip: Fix sntp custom options if sntp_get_system_time used (v4.3)

See merge request espressif/esp-idf!15142
2021-10-04 04:45:08 +00:00
Konstantin Kondrashov
1e8c0b7956 Merge branch 'feature/esp32c3_eco3_default_v4.3' into 'release/v4.3'
example_tests: Deletes usage esp32c3 ECO0 in CI (by default ECO3) (v4.3)

See merge request espressif/esp-idf!15341
2021-09-30 05:20:27 +00:00
Jiang Jiang Jian
28b768807e Merge branch 'bugfix/bt_legacy_paring_wrong_pin_code_err_v4.3' into 'release/v4.3'
bugfix/fix the crash when using legacy paring with wrong pin code (v4.3)

See merge request espressif/esp-idf!15298
2021-09-30 01:12:54 +00:00
Jiang Jiang Jian
b10888a591 Merge branch 'bugfix/fix_macro_conversion_v4.3' into 'release/v4.3'
Nimble: Fix logging level mismatch (v4.3)

See merge request espressif/esp-idf!15331
2021-09-30 01:09:56 +00:00
Jiang Jiang Jian
8aa9103307 Merge branch 'feature/sync_bt_lib_with_hli_v4.3' into 'release/v4.3'
components/bt: Sync bt lib with the high level interrupt version

See merge request espressif/esp-idf!15327
2021-09-30 01:07:45 +00:00
Li Shuai
4f71b49aa6 esp_hw_support: keep external 40 MHz xtal related analog circuit power on during sleep 2021-09-28 11:21:33 +08:00
Li Shuai
aac59ed5ec Power Management: add XTAL power domain to control whether external 40MHz xtal is powered down during sleep 2021-09-28 11:21:31 +08:00
Li Shuai
4f4254537c esp_hw_support: No voltage drop during light sleep to ensure stable output clock of rtc8m oscillator 2021-09-28 11:20:00 +08:00
Li Shuai
4ef6e37fcb Power Management: add RTC8M power domain to control whether internal 8m oscillator is powered down during sleep 2021-09-28 11:19:57 +08:00
Roland Dobai
2ccc45dd11 Merge branch 'bugfix/idf_size_nan_in_json_v4.3' into 'release/v4.3'
Tools: fix appearing NaN value when calling idf_size.py --json (v4.3)

See merge request espressif/esp-idf!15352
2021-09-27 12:36:57 +00:00
Roland Dobai
e47549e9e7 Merge branch 'bugfix/idf_tools_virtualenv_seeder_v4.3' into 'release/v4.3'
tools/idf_tools.py: Changed default AppData seeder to seeder pip (backport v4.3)

See merge request espressif/esp-idf!15349
2021-09-27 12:33:25 +00:00
simon.chupin
70c29f9575 Tools: fix appearing NaN value when calling idf_size.py --json 2021-09-24 18:09:10 +02:00
Juraj Sadel
6a125fbafa tools/idf_tools.py: Changed default AppData seeder to seeder pip 2021-09-24 14:21:34 +02:00
KonstantinKondrashov
2a635b6c63 unit-test-app/configs(esp32c3): CI sill uses ECO2 for flash_encryption tests 2021-09-24 17:49:30 +08:00
KonstantinKondrashov
2cc8fc907c example_tests: Deletes usage esp32c3 ECO0 in CI (by default ECO3) 2021-09-24 17:49:30 +08:00
Mahavir Jain
d2fa3fd234 Merge branch 'feature/local_control_sec1_v4.3' into 'release/v4.3'
Added support for security1 in local control (backport v4.3)

See merge request espressif/esp-idf!15281
2021-09-24 08:51:39 +00:00
morris
d5fb9c8cc1 Merge branch 'bugfix/wavegen_disable_iram_isr_backport4.3' into 'release/v4.3'
Bugfix/wavegen disable iram isr (backport v4.3)

See merge request espressif/esp-idf!15334
2021-09-24 07:02:17 +00:00
David Cermak
bb0eecee0e lwip: Fix sntp custom options if sntp_get_system_time used 2021-09-24 14:49:15 +08:00
David Čermák
0e956b5977 Merge branch 'bugfix/eth_dm9051_not_responding_v4.3' into 'release/v4.3'
esp_eth: Fix dm9051 Rx interrupt processing (v4.3)

See merge request espressif/esp-idf!15284
2021-09-24 06:45:49 +00:00
Mahavir Jain
0021be424f Merge branch 'fix/no_stub_secure_boot_v4.3' into 'release/v4.3'
secure_boot: Enable --no-stub if secure boot enabled (v4.3)

See merge request espressif/esp-idf!15320
2021-09-24 04:17:36 +00:00
Mahavir Jain
5ab3dd40ba Merge branch 'feature/secure_boot_key_check_before_revoke_v4.3' into 'release/v4.3'
Check if the running app is signed by a valid key before revocation (v4.3)

See merge request espressif/esp-idf!15293
2021-09-24 04:03:40 +00:00
morris
b36bc02ef1 Merge branch 'bugfix/uart_driver_obj_into_sram_v4.3' into 'release/v4.3'
uart: put driver object into sram(v4.3)

See merge request espressif/esp-idf!14745
2021-09-24 03:12:28 +00:00
Dai Zi Yan
6d09d5e2f7 Merge branch 'docs/update_CN_trans_getstarted_V4.3' into 'release/v4.3'
docs: update CN translation and keep line number consistent for all documents...

See merge request espressif/esp-idf!15309
2021-09-24 03:09:52 +00:00
SalimTerryLi
3f25d48520 bugfix by disabling IRAM attr on ISR 2021-09-24 10:53:05 +08:00
Supreet Deshpande
9abe6da406 app_update: Check if the running app is signed by a valid key before revocation 2021-09-23 21:06:44 +08:00
Rahul Tank
b49a979a51 Removed Critical debug level from menuconfig, since it internally maps
to level Error.
2021-09-23 18:07:25 +05:30
baohongde
0e18b8b4cb components/bt: Sync bt lib with the high level interrupt version 2021-09-23 16:58:37 +08:00
Jiang Jiang Jian
1c1572ed51 Merge branch 'bugfix/fix_blufi_init_crash_c3_v4.3' into 'release/v4.3'
Blufi [Nimble] Add fix to crash while running blufi on ESP32C3 (v4.3)

See merge request espressif/esp-idf!15219
2021-09-23 07:44:12 +00:00
Rahul Tank
2a359c3ee4 Nimble: Check stack status before executing stack command 2021-09-23 13:02:52 +05:30
Sachin Parekh
1f5473dd1a secure_boot: Enable --no-stub if secure boot enabled
ROM code doesn't allow loader stub to be executed in case secure boot in
enabled. Providing --no-stub flag to esptool allows user to flash new
firmware, given download mode hasn't been disabled
2021-09-23 12:50:45 +05:30
jincheng
2e8f0a47ff fix wrong clock_id in function time_now_us
Close https://github.com/espressif/esp-idf/issues/7561
2021-09-23 10:02:12 +08:00
daiziyan
5da482e871 docs: update CN translation and keep line number consistent for all documents in get-started section 2021-09-22 19:12:32 +08:00
Mo Fei Fei
bbc33583ad Merge branch 'docs/backport_translation' into 'release/v4.3'
Docs: backport translation for api-guides/jtag-debugging/index.rst to V4.3

See merge request espressif/esp-idf!15166
2021-09-22 09:27:22 +00:00
intern
ec177e963f docs: backport translation for jtag-debugging/index.rst and fix link
errors in examples/bluetooth/hci/README.md
2021-09-22 15:02:33 +08:00
jincheng
e08f69aaff bugfix/fix the crash when using legacy paring with wrong pin code
Close https://github.com/espressif/esp-idf/issues/7556
2021-09-22 14:55:53 +08:00
Hrishikesh Dhayagude
7851240037 Merge branch 'bluedriod_esp32c3_v4.3' into 'release/v4.3'
ESP32C3: Fix for provisioning failure with ble transport mode and bluedriod stack for v4.3

See merge request espressif/esp-idf!14490
2021-09-22 04:30:10 +00:00
morris
73c5a68c6f uart: support alloc driver object in SRAM
If CONFIG_UART_ISR_IN_IRAM is on, which means user hope the uart
interrupt can still be serviced even when cache is diabled (e.g.
writing to flash). In that case, the driver should make sure to
put the all related objects into SRAM, avoid putting them in the PSRAM.

Closes https://github.com/espressif/esp-idf/issues/7044
Closes https://github.com/espressif/esp-idf/pull/7355
2021-09-22 11:46:42 +08:00
morris
f4ccb8e766 uart: format driver code by astyle 2021-09-22 11:46:42 +08:00
Marius Vikhammer
c50b102787 Merge branch 'docs/google_analytics_fix' into 'release/v4.3'
docs: fix docs not being able to be built locally due to missing env variable.

See merge request espressif/esp-idf!15192
2021-09-22 01:16:11 +00:00
Simon Chupin
e4063e4aa2 Merge branch 'feature/run_idf_size_with_overflow_v4.3' into 'release/v4.3'
Tools: make idf_size work with overflow (v4.3)

See merge request espressif/esp-idf!15243
2021-09-21 16:59:03 +00:00
simon.chupin
7249a022e5 Tools: make idf_size work with overflow
Closes https://github.com/espressif/esp-idf/issues/6914
closes https://github.com/espressif/esp-idf/issues/4234
2021-09-21 18:03:32 +02:00
Switi Mhaiske
a30195d87b ESP32C3: Fix for provisioning failure with ble transport mode and bluedriod stack for v4.3 2021-09-21 19:34:13 +05:30
Aditya Patwardhan
05bdb58297 Merge branch 'fix/esp_mbedtls_write_api_v4.3' into 'release/v4.3'
Fix esp_mbedtls_write API (v4.3)

See merge request espressif/esp-idf!15214
2021-09-21 12:42:43 +00:00
Mahavir Jain
b8ab11b1c7 Merge branch 'bugfix/http_client_eagain_v4.3' into 'release/v4.3'
esp_http_client: Fixed handling of EAGAIN return (backport v4.3)

See merge request espressif/esp-idf!15273
2021-09-21 11:51:05 +00:00
Martin Vychodil
5eae543571 Merge branch 'bugfix/fix_SD_card_tests_timeout_v4.3' into 'release/v4.3'
vfs/fatfs: fix failed tests by increasing timeout (v4.3)

See merge request espressif/esp-idf!15283
2021-09-21 11:25:29 +00:00
David Cermak
609f5ef9a0 esp_eth: Fix dm9051 Rx interrupt processing
* Disable Tx interrupts to fix race condition of missing Rx interrupt
* Check if GPIO interrupt is asserted periodically if the ISR event missed

Closes https://github.com/espressif/esp-idf/issues/6414
2021-09-21 11:10:19 +02:00
Aditya Patwardhan
c62682cd07 Fix esp_mbedtls_write API
Fix esp_wolfssl_write API
Closes https://github.com/espressif/esp-idf/issues/7461
2021-09-21 16:31:21 +08:00
Adam Múdry
3926b436b5 vfs/fatfs: fix failed tests by increasing timeout
Default 30s timeout is too low for a case when SD card formatting is triggered,
which could lead to tests failure. Timeout of tests is now set to 60s.

JIRA IDFCI-742
2021-09-21 08:53:18 +02:00
Vikram Dattu
effc809cfb esp_local_ctrl: Added documentation to chose protocom security
Signed-off-by: Vikram Dattu <vikram.dattu@espressif.com>
2021-09-21 09:21:19 +05:30
Vikram Dattu
9e00034ec7 Added support for security1 in local control
1. Added config options to chose from protocom security.
    It can be chosen 0/1 or custom.
    Possible to set POP as well

2. Added support in `esp_local_ctrl.py` test script for sec_ver selection

Signed-off-by: Vikram Dattu <vikram.dattu@espressif.com>
2021-09-21 09:21:18 +05:30
Vikram Dattu
70db0406fc esp_http_client: Fixed handling of EAGAIN return
For https connection `ESP_TLS_ERR_SSL_WANT_READ` of esp_transport_read was getting treated as error.
Treated this as a timeout to fix connection abort issue!

Also handled http connection EAGAIN with `errno == EAGAIN` check.

Signed-off-by: Vikram Dattu <vikram.dattu@espressif.com>
2021-09-20 17:10:44 +05:30
Shivani Tipnis
9e24590d9b Merge branch 'bugfix/fix_nvstool_readme_v4.3' into 'release/v4.3'
Update Readme with supports of multiline strings and comments in the CSV file (v4.3)

See merge request espressif/esp-idf!15223
2021-09-20 10:44:30 +00:00
Rahul Tank
c6b756b2d7 Blufi [Nimble] Add fix to crash while running blufi on ESP32C3
A race condition is occuring while creating task on ESP32C3. Task is
getting created, but the function returns with a delay. Since task was
created, events start getting posted, but existing application
initializes certain threads / callbacks after stack initialization.

The same application works in different ways for bluedroid and nimble.
Hence modified the order during initialization accordingly.
2021-09-20 17:46:57 +08:00
Mahavir Jain
4ad49c4ae7 Merge branch 'bugfix/coap_with_cxx' into 'release/v4.3'
coap : fix for coap implementation with cxx

See merge request espressif/esp-idf!15220
2021-09-20 09:45:21 +00:00
Roland Dobai
956f6c6e3b Merge branch 'feature/gcov_dump_in_thread_v4.3' into 'release/v4.3'
backport/gcov dump in thread to v4.3

See merge request espressif/esp-idf!15205
2021-09-20 09:36:25 +00:00
Mahavir Jain
c33ac6d1a9 Merge branch 'feature/clock_glitch_enable_v4.3' into 'release/v4.3'
bootloader: Enable clock glitch detection (v4.3)

See merge request espressif/esp-idf!15225
2021-09-20 09:35:42 +00:00
Mahavir Jain
4b89915e41 Merge branch 'feature/esp_http_client_client_key_password_v4.3' into 'release/v4.3'
esp_http_client: Support client key password for HTTPS connections. (v4.3)

See merge request espressif/esp-idf!15226
2021-09-20 08:22:33 +00:00
Shivani Tipnis
4a21a9e341 nvs_tool: Update Readme with supports of multiline strings and comments in the CSV file
Closes https://github.com/espressif/esp-idf/issues/7175
2021-09-20 14:12:13 +08:00
Jon Maloney
57042ab56c esp_http_client: Support client key password for HTTPS connections.
Closes https://github.com/espressif/esp-idf/pull/7420
Closes https://github.com/espressif/esp-idf/issues/7418

Signed-off-by: Aditya Patwardhan <aditya.patwardhan@espressif.com>
2021-09-19 21:12:35 +08:00
Xie Wen Xiang
75a7abe946 Merge branch 'bugfix/btdm_ble_event_mask_default_value_v4.3' into 'release/v4.3'
[BLE] Fixed default LE Event Mask(backport v4.3)

See merge request espressif/esp-idf!15242
2021-09-18 08:27:23 +00:00
Li Shuai
72f87748e8 Merge branch 'bugfix/esp32s3_lightsleep_psram_leakage_current_v4.3' into 'release/v4.3'
backport v4.3: fix SPIRAM leakage when its CS pin has no hardware pullup

See merge request espressif/esp-idf!15224
2021-09-18 04:37:56 +00:00
Erhan Kurubas
d6ed894113 esp_ipc: fix race condition in ipc task 2021-09-17 23:19:27 +03:00
Erhan Kurubas
804a99790a gcov: enable single core tests 2021-09-17 23:19:27 +03:00
Erhan Kurubas
89a6a7fc30 ipc: enable ipc task at single core for gcov dump 2021-09-17 23:19:27 +03:00
Erhan Kurubas
bea97c8e91 gcov: add stub table size entry 2021-09-17 23:19:27 +03:00
Erhan Kurubas
f5b297a654 gcov: add gcov callback into the ipc task 2021-09-17 23:19:27 +03:00
Erhan Kurubas
8bb7427775 gcov: readme update for ESP32-S2 2021-09-17 23:19:27 +03:00
Erhan Kurubas
93259b9508 gcov: dump in a special thread 2021-09-17 23:19:27 +03:00
Erhan Kurubas
81956c63c8 gcov: added dbg stub capabilites and magic number entry to keep backward compatible 2021-09-17 23:19:27 +03:00
xiewenxiang
371e1bb4c9 component/bt: Fixed default LE Event Mask(release v4.3) 2021-09-17 17:53:02 +08:00
morris
be1539f926 Merge branch 'bugfix/rotary_encoder_v4.3' into 'release/v4.3'
bugfix:rotary encoder example isr service install(backport v4.3)

See merge request espressif/esp-idf!14351
2021-09-17 08:57:05 +00:00
Li Shuai
3f17cc2ab8 light sleep: fix Flash leakage when its CS pin has no hardware pullup 2021-09-17 16:28:47 +08:00
Li Shuai
acdf49a5ac light sleep: fix SPIRAM leakage when its CS pin has no hardware pullup 2021-09-17 16:28:47 +08:00
chenjianqiang
42039cde0a add flash and PSRAM CS IO acquire function 2021-09-17 16:28:47 +08:00
Harshit Malpani
d43bb775a5 coap: Fix coap implentation with cxx
Closes https://github.com/espressif/esp-idf/issues/6804
2021-09-17 16:26:29 +08:00
Sachin Parekh
26563474d6 bootloader: Enable clock glitch detection
Reset the device when clock glitch detected. Clock glitch detection is
only active in bootloader
2021-09-17 13:32:34 +05:30
Yuriy Shestakov
872c42ecf7 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-17 13:32:34 +05:30
morris
5fd169059d Merge branch 'bugfix/pr_ksz8041' into 'release/v4.3'
esp_eth: fix ksz8041 driver issue (PR)

See merge request espressif/esp-idf!15227
2021-09-17 06:39:52 +00:00
morris
eaebc58e61 ci: bump up s2 ut parallels 2021-09-17 11:18:18 +08:00
Christian Fischerauer
3bd69d296d esp_eth: adapt ksz8041.c to changes from commit 03a6c49
Closes https://github.com/espressif/esp-idf/issues/7570
Merges https://github.com/espressif/esp-idf/pull/7573
2021-09-16 21:39:23 +08:00
Mahavir Jain
316674a096 Merge branch 'feature/hmac_downstream_jtag_v4.3' into 'release/v4.3'
hmac: Added Downstream JTAG enable mode for esp32c3 (v4.3)

See merge request espressif/esp-idf!15203
2021-09-16 04:20:14 +00:00
Jiang Jiang Jian
3908360e46 Merge branch 'feature/support_bss_in_psram_for_esp32s2_v4.3' into 'release/v4.3'
[system] Allow .bss segment placed in external memory for ESP32-S2 ( backport v4.3)

See merge request espressif/esp-idf!14946
2021-09-15 08:09:42 +00:00
Wu Zheng Hui
4fd6d3deae Adjust the variable name &
Add mapping support for different sizes of spi ram
2021-09-15 16:09:33 +08:00
Jiang Jiang Jian
f83699a67f Merge branch 'cherry-pick-e8360fe0-4' into 'release/v4.3'
wpa_supplicant: clean tls client state machine (backport v4.3)

See merge request espressif/esp-idf!15040
2021-09-15 08:06:00 +00:00
Krzysztof Budzynski
2006d66aee Merge branch 'docs/add_a_note_and_module_variants_to_esp32-devkitm-1_pico-devkitm-02u_v4.3' into 'release/v4.3'
Add a note to ESP32-DevKitM-1 User Guide, to enable single core mode (v4.3)

See merge request espressif/esp-idf!15186
2021-09-15 07:43:30 +00:00
Sachin Parekh
94c9e5299a esp32s2/hmac: Release HMAC lock in downstream mode incase of failure 2021-09-14 17:05:28 +05:30
Sachin Parekh
c215bb04f6 hmac: Added Downstream JTAG enable mode for esp32c3
If JTAG is disabled temporarily by burning SOFT_DIS_JTAG, it can be
re-enabled temporarily through esp_hmac_jtag_enable API
2021-09-14 17:05:01 +05:30
Marius Vikhammer
bf89a900a3 docs: fix docs not being able to be built locally due to missing env variable. 2021-09-14 18:02:19 +08:00
Krzysztof Budzynski
b501ebe138 Merge branch 'docs/fix_adc_pad_typo_MOSI_typo_and_broken_link_v4.3' into 'release/v4.3'
Fix ADC pad and MOSI typo, update esp32c3 rom elf link (v4.3)

See merge request espressif/esp-idf!15187
2021-09-14 08:45:11 +00:00
Zim Kalinowski
96b204bc9e Merge branch 'bugfix/efuse_table_for_c3_v4.3' into 'release/v4.3'
efuse: Fix len of SOFT_DIS_JTAG for esp32c3(v4.3)

See merge request espressif/esp-idf!14637
2021-09-14 05:22:14 +00:00
Konstantin Kondrashov
0d16e61d96 efuse: Fix len of SOFT_DIS_JTAG for esp32c3(v4.3) 2021-09-14 13:22:08 +08:00
Wang Fang
ba31aab2f4 Add a note to ESP32-DevKtiM-1 User Guide, to enable single core mode
Add new module variants for ESP32-DevKitM-1 and ESP32-PICO-DevKitM-02 boards
Replace Ordering Information globally
2021-09-14 12:08:35 +08:00
Wang Fang
6c14a4b9f1 docs: Fix ADC pad and MOSI typo, update esp32c3 rom elf link 2021-09-14 11:20:48 +08:00
Omar Chebib
6b0cbe54e6 Merge branch 'bugfix/add_critical_section_in_uart_driver_v4.3' into 'release/v4.3'
UART: add missing critical section wrappers around rx_buffered_len (backport v4.3)

See merge request espressif/esp-idf!14774
2021-09-13 15:18:32 +00:00
Omar Chebib
6c363a4075 uart: Add missing critical section wrappers around rx_buffered_len
The missing barriers caused uart_get_buffered_data_len() to (very rarely)
return a garbage value. When used in MicroPython, though, this caused
select() to return and a subsequent read() to stall indefinitely until
a char was actually available.

Signed-off-by: Chen Yi Qun <chenyiqun@espressif.com>

Closes https://github.com/espressif/esp-idf/issues/6397
Merges https://github.com/espressif/esp-idf/pull/6396
2021-09-13 23:18:25 +08:00
Zim Kalinowski
80cfaeb7cc Merge branch 'bugfix/nvs_host_test_missing_struct' into 'release/v4.3'
[nvs] Add page host test to CI (backport 4.3)

See merge request espressif/esp-idf!15010
2021-09-13 13:11:56 +00:00
Zim Kalinowski
3e94cd5888 Merge branch 'bugfix/i2c_cxx_timeout_4.3' into 'release/v4.3'
[cxx]: fixed I2C master timeout (backport 4.3)

See merge request espressif/esp-idf!14415
2021-09-13 13:10:15 +00:00
Zim Kalinowski
cfeca10c06 Merge branch 'bugfix/repl_on_another_uart_v4.3' into 'release/v4.3'
console: fix a bug preventing us from starting a CLI on non-default UART (backport v4.3)

See merge request espressif/esp-idf!14628
2021-09-13 10:33:29 +00:00
Omar Chebib
0d0bec6c31 console: fix a bug preventing us from starting a CLI on non-default UART
It is now possible to start a REPL CLI on another UART than the default
one.

Closes https://github.com/espressif/esp-idf/issues/6897
2021-09-13 14:10:19 +08:00
Zim Kalinowski
8bb5d87f0c Merge branch 'bugfix/freertos_ut_suspend_v4.3' into 'release/v4.3'
freertos: Increases delta for UT - Test suspend-resume CPU. The number of... (v4.3)

See merge request espressif/esp-idf!14630
2021-09-13 04:14:14 +00:00
Wang Meng Yang
de48a67083 Merge branch 'bugfix/btdm_ble_connection_will_crash_durning_erase_flash_v4.3' into 'release/v4.3'
[BLE] Fixed ble conn will crash during erasing flash(backport v4.3)

See merge request espressif/esp-idf!14795
2021-09-13 01:50:09 +00:00
Wang Meng Yang
d5e5f44d36 Merge branch 'bugfix/btdm_fix_some_Document_Description_Error_v4.3' into 'release/v4.3'
component/bt: fix some ble document description error(backport v4.3)

See merge request espressif/esp-idf!14823
2021-09-13 01:49:49 +00:00
Wang Meng Yang
2777ff73f4 Merge branch 'bugfix/btdm_auto_update_PPCP_attribute_value_v4.3' into 'release/v4.3'
component/bt: fix bluedroid host auto update PPCP attribute value(backport v4.3)

See merge request espressif/esp-idf!14748
2021-09-13 01:49:01 +00:00
Zim Kalinowski
e0c2bf1d0a Merge branch 'feature/regi2c_add_lock_v4.3' into 'release/v4.3'
regi2c: add a spinlock for accessing (reg)I2C devices (backport v4.3)

See merge request espressif/esp-idf!13690
2021-09-11 01:07:10 +00:00
Zim Kalinowski
1ab4819b74 Merge branch 'bugfix/esp_event_any_id_unregister_4.3' into 'release/v4.3'
ESP Event: fix unregister documentation (backport 4.3)

See merge request espressif/esp-idf!14431
2021-09-10 11:52:44 +00:00
Omar Chebib
173e001680 regi2c: add a spinlock for accessing (reg)I2C devices
When not compiling bootloader, a spinlock will be used for reading or writing
I2C internal devices/registers.
When compiling for bootloader, no need to use any lock.
2021-09-10 18:50:16 +08:00
Krzysztof Budzynski
b22f9d2d42 Merge branch 'docs/bump_sphinx_version_v4.3' into 'release/v4.3'
docs: bump idf_sphinx_theme version

See merge request espressif/esp-idf!13771
2021-09-10 08:17:26 +00:00
Jakob Hasse
eebf301acc [cxx]: fixed I2C master timeout 2021-09-10 13:03:03 +08:00
Jakob Hasse
a6371d2a97 [nvs] nvs page host runs in CI, fix build failure
* nvs host page unit test now runs in ci
* fixed nvs host page unit test build failure
2021-09-10 13:02:51 +08:00
Dai Zi Yan
fdf4070cdc doc:updated cn translation for language.rst and version.rst to provide new layout for version/target select 2021-09-10 12:53:54 +08:00
Marius Vikhammer
539f7edbb3 Docs: build doc with new layout for target and version select 2021-09-10 12:53:54 +08:00
Marius Vikhammer
eeab4e4469 docs: add google analytics tracking 2021-09-10 12:53:50 +08:00
Marius Vikhammer
d13b69558a docs: add warning for outdated versions 2021-09-10 12:53:50 +08:00
Zim Kalinowski
1546c28a5f Merge branch 'bugfix/spi_example_gdma_v4.3' into 'release/v4.3'
spi: update examples to use the new GDMA driver (v4.3)

See merge request espressif/esp-idf!14460
2021-09-10 04:31:38 +00:00
Zim Kalinowski
55dfd61796 Merge branch 'bugfix/uart_sw_sw_flow_error_typo_v4.3' into 'release/v4.3'
uart: fix typo in error message (v4.3)

See merge request espressif/esp-idf!14613
2021-09-10 04:30:37 +00:00
Zim Kalinowski
121910b939 Merge branch 'ci/change_perf_key_v4.3' into 'release/v4.3'
ci: update performance test key to db compatible format (v4.3)

See merge request espressif/esp-idf!14654
2021-09-10 04:23:09 +00:00
Zim Kalinowski
1f0d8585ca Merge branch 'feature/update_efuses_for_esp32s2_v4.3' into 'release/v4.3'
efuse(esp32s2): Added flash_ver, psram_ver, pkg_ver efuses (v4.3)

See merge request espressif/esp-idf!14770
2021-09-10 04:21:54 +00:00
Jakob Hasse
dfa2a980d7 [esp_event]: fixed and improved docs
* Description of unregistering was incorrect
* Made clear that event loop arg mustn't be NULL
* Added parameter check in create function

Closes https://github.com/espressif/esp-idf/issues/6761
Closes IDFGH-4969
2021-09-10 10:12:39 +08:00
Roland Dobai
9805fc85ee Merge branch 'feature/doc_sbv2_key_not_read_protected_v4.3' into 'release/v4.3'
secure_boot_v2(doc): secure_boot_v2 key/s must be readable (v4.3)

See merge request espressif/esp-idf!14671
2021-09-09 19:37:52 +00:00
Ivan Grokhotkov
746f2e2d49 Merge branch 'bugfix/newlib_dirent_decls_4.3' into 'release/v4.3'
newlib: add C++ guards to the platform-specific dirent.h  (backport 4.3)

See merge request espressif/esp-idf!14621
2021-09-09 18:46:58 +00:00
Mahavir Jain
94667365d3 Merge branch 'esp32c3/override_assert_v4.3' into 'release/v4.3'
newlib: Override __assert and __assert_func (v4.3)

See merge request espressif/esp-idf!14685
2021-09-09 13:24:01 +00:00
David Čermák
51f1bc3ced Merge branch 'bugfix/cmake_compiler_warn_write_string_v4.3' into 'release/v4.3'
Build: Fix CMake to pass -Wwrite-string compiler flag if enabled (v4.3)

See merge request espressif/esp-idf!14426
2021-09-09 09:49:33 +00:00
David Čermák
4c400e9311 Merge branch 'bugfix/wifi_ap_handler_docs_v4.3' into 'release/v4.3'
wifi/netif: Fix wifi_ap_handlers comments to relate to AP (v4.3)

See merge request espressif/esp-idf!15147
2021-09-09 09:40:32 +00:00
morris
943c9cc560 Merge branch 'bugfix/config_data_interface_early_v4.3' into 'release/v4.3'
initialize data interface early (v4.3)

See merge request espressif/esp-idf!15087
2021-09-09 08:45:22 +00:00
Roland Dobai
f47085ac70 Merge branch 'feature/oocd_ver_upgrade_v4.3' into 'release/v4.3'
tools: Updates OpenOCD version to 'v0.10.0-esp32-20210902' (v4.3)

See merge request espressif/esp-idf!15132
2021-09-09 07:44:04 +00:00
morris
eea13b76a1 Merge branch 'bugfix/mcpwm-deadtime-preset-config-backport_v4.3' into 'release/v4.3'
MCPWM/deadtime: fix and sync preset deadtime modes with well-known definition (backport v4.3)

See merge request espressif/esp-idf!14622
2021-09-09 07:29:11 +00:00
Mahavir Jain
9ac4c49553 Merge branch 'fixes/secure_boot_v4.3' into 'release/v4.3'
secure_boot/esp32(s2,c3): Disable read protecting of efuses (v4.3)

See merge request espressif/esp-idf!14960
2021-09-09 07:16:54 +00:00
Mahavir Jain
1d866dc4a0 Merge branch 'bugfix/uninitialized_tasknumber_v4.3' into 'release/v4.3'
fix(FreeRTOS): Initialize uxTaskNumber at task initialization (v4.3)

See merge request espressif/esp-idf!14669
2021-09-09 07:01:01 +00:00
Yuan Jian Min
2429a578ad Merge branch 'bugfix/fix_ping_sock_return_error_v4.3' into 'release/v4.3'
ping_sock: Fix esp_ping_new_session may return ESP_OK when the error occured(backport v4.3)

See merge request espressif/esp-idf!14847
2021-09-09 06:20:56 +00:00
David Cermak
801c3a4c60 wifi/netif: Fix wifi_ap_handlers comments to relate to AP 2021-09-09 07:53:35 +02:00
Mahavir Jain
7fa47e87dd Merge branch 'bugfix/fix_ws_handle_big_messages_v4.3' into 'release/v4.3'
esp_http_server: Fix ws server handle length over 1440(MTU) messages incorrectly(backport v4.3)

See merge request espressif/esp-idf!15015
2021-09-09 04:13:02 +00:00
Roland Dobai
d121672808 CI: Fix idf_tools.py tests with the updated openocd version 2021-09-08 20:53:42 +03:00
Roland Dobai
9177682a7e CI: Check the number of detected cores of apptrace 2021-09-08 20:51:41 +03:00
Alexey Gerenkov
fcbcdf32d8 tools: Updates OpenOCD version to 'v0.10.0-esp32-20210902' 2021-09-08 20:51:41 +03:00
morris
b76369ddb6 eth: dont warn nego timeout if link is down 2021-09-08 20:52:26 +08:00
morris
b829fcff3e emac: configure data interface early 2021-09-08 20:52:26 +08:00
Wang Meng Yang
5e7d08d083 Merge branch 'bugfix/build_warning_unused_variable' into 'release/v4.3'
bugfix/remove unused variable which caused to build warnings

See merge request espressif/esp-idf!15105
2021-09-08 11:56:04 +00:00
Alex Lisitsyn
3a9a208edc Merge branch 'bugfix/freemodbus_fix_zero_based_reg_address_in_iterator_v43' into 'release/v4.3'
freemodbus: fix mb zero based reg address in the iterator (backport v4.3)

See merge request espressif/esp-idf!14551
2021-09-08 09:48:21 +00:00
Ondrej Kosta
d6b1a9909f Merge branch 'docfix/eth_events_4.3' into 'release/v4.3'
Added warning when to init user Eth handlers (release/v4.3)

See merge request espressif/esp-idf!14953
2021-09-08 09:37:23 +00:00
Mahavir Jain
a6b632661c Merge branch 'feature/update_expat_v4.3' into 'release/v4.3'
expat: Update library from 2.2.9 to 2.4.1(backport v4.3)

See merge request espressif/esp-idf!15071
2021-09-08 09:17:25 +00:00
Roland Dobai
9032828325 Merge branch 'bugfix/idf_size_wrong_memory_calculations_v4.3' into 'release/v4.3'
Tools: Fix memory calculations of idf_size.py (v4.3)

See merge request espressif/esp-idf!14933
2021-09-08 09:11:57 +00:00
Marius Vikhammer
d1ce75b018 Merge branch 'bugfix/ulp_overflow_rtc_mem_v4.3' into 'release/v4.3'
ulp: ULP_COPROC_RESERVE_MEM limitation (v4.3)

See merge request espressif/esp-idf!14375
2021-09-08 09:05:46 +00:00
Marius Vikhammer
e741161b2e Merge branch 'bugfix/renable_unit_tests_v4.3' into 'release/v4.3'
ci: enable previously disabled unit tests (v4.3)

See merge request espressif/esp-idf!13775
2021-09-08 09:03:32 +00:00
Mahavir Jain
f5731c832f Merge branch 'bugfix/rename_newlib_header_v4.3' into 'release/v4.3'
esp_rom: remove "newlib.h" header (v4.3)

See merge request espressif/esp-idf!15012
2021-09-08 09:01:30 +00:00
Marius Vikhammer
ab111b7f79 Merge branch 'bugfix/ulp_riscv_cocpu_trap_v4.3' into 'release/v4.3'
ulp riscv: force cocpu clock on to prevent spurious cocpu trap resets (v4.3)

See merge request espressif/esp-idf!14317
2021-09-08 08:59:42 +00:00
Marius Vikhammer
0f7dd04a83 Merge branch 'bugfix/crypto_gdma_v4.3' into 'release/v4.3'
aes/sha: fixed driver reseting the wrong GDMA channel (v4.3)

See merge request espressif/esp-idf!15002
2021-09-08 08:58:24 +00:00
Roland Dobai
26315f1c84 Merge branch 'feature/installing_tools_for_IDF_TARGET_v4.3' into 'release/v4.3'
tools: Installing tools for given IDF_TARGET (v4.3)

See merge request espressif/esp-idf!14708
2021-09-08 08:52:42 +00:00
Sachin Parekh
c2f015ace1 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-09-08 16:42:54 +08:00
Roland Dobai
49fcfafed3 Merge branch 'bugfix/core_dump_image_erase_with_encryption_v4.3' into 'release/v4.3'
Fix a bug in `core_dump_image_erase` when flash encryption is enabled (backport v4.3)

See merge request espressif/esp-idf!14618
2021-09-08 08:42:44 +00:00
Gautier Seidel
7808bccfb9 fix(FreeRTOS): Initialize uxTaskNumber at task initialization
Signed-off-by: Laukik Hase <laukik.hase@espressif.com>

Closes https://github.com/espressif/esp-idf/pull/4025
2021-09-08 16:42:30 +08:00
Roland Dobai
e493a4c30e Merge branch 'bugfix/xtensa_extra_info_register_values_v4.3' into 'release/v4.3'
espcoredump.py: Parse EPS and EPC register values using register index (v4.3)

See merge request espressif/esp-idf!14563
2021-09-08 08:36:09 +00:00
Sachin Parekh
cc9d354ba8 Update tests for assert and abort
- Place panic_abort in IRAM
- Added abort, assert test case in case of cache disabled
- Expect assert instead of abort in a freertos_mutex test
2021-09-08 16:32:09 +08:00
Sachin Parekh
659cfcb1f6 newlib: Override __assert and __assert_func
Default assert implementation calls fiprintf, which tries to acquire a
lock and fails if it is executing in critical section or ISR
2021-09-08 16:32:09 +08:00
Michael (XIAO Xufeng)
15439631a4 Merge branch 'bugfix/check_spi_master_cmd_test_fail_v4.3' into 'release/v4.3'
spi_master: fix cmd test ringbufferReturn issue (4.3)

See merge request espressif/esp-idf!13656
2021-09-08 08:25:56 +00:00
Mahavir Jain
77965b01ca Merge branch 'feature/update_cjson_submodule_v4.3' into 'release/v4.3'
cJSON: Update submodule to v1.7.15 (v4.3)

See merge request espressif/esp-idf!14999
2021-09-08 08:19:50 +00:00
Mahavir Jain
4fe718dd0b Merge branch 'fix/warning_in_wifi_prov_mgr_v4.3' into 'release/v4.3'
provisioning: fix wifi warning in wifi_prov_mgr application (v4.3)

See merge request espressif/esp-idf!14763
2021-09-08 08:19:40 +00:00
Krzysztof Budzynski
e34a6591fa Merge branch 'docs/add_ESP32-S2-DevKitC-1_user_guide_backport_v4.3' into 'release/v4.3'
Docs: Add ESP32-S2-DevKitC-1 user guide (backport v4.3)

See merge request espressif/esp-idf!14877
2021-09-08 08:17:20 +00:00
Wang Meng Yang
90ef051d16 Merge branch 'bugfix/controller_hci_uart_sdkconfig_v4.3' into 'release/v4.3'
Bugfix/controller hci uart sdkconfig(backport v4.3)

See merge request espressif/esp-idf!14807
2021-09-08 06:23:17 +00:00
Wang Meng Yang
fbd128af6f Merge branch 'bugfix/spp_memory_leak_v4.3' into 'release/v4.3'
Fix spp memory leak(v4.3)

See merge request espressif/esp-idf!14525
2021-09-08 02:47:51 +00:00
Wang Meng Yang
57c4316855 Merge branch 'component_bt/add_spp_faq_v4.3' into 'release/v4.3'
Component_bt/Add FAQ in SPP Demo README[backport v4.3]

See merge request espressif/esp-idf!14793
2021-09-08 02:47:28 +00:00
Wang Meng Yang
5eee25aea5 Merge branch 'bugfix/bt_spp_timer_collision_v4.3' into 'release/v4.3'
Fix timer collision in role switch(v4.3)

See merge request espressif/esp-idf!14815
2021-09-08 02:46:55 +00:00
Wang Meng Yang
d4a86ab4fe Merge branch 'bugfix/a2dp_deint_crash_v4.3' into 'release/v4.3'
component_bt: fix a2dp deinit crash(v4.3)

See merge request espressif/esp-idf!14416
2021-09-08 02:46:24 +00:00
Wang Meng Yang
5348c30141 Merge branch 'bugfix/hf_disc_acl_no_disc_v4.3' into 'release/v4.3'
bugfix/acl can't disconnect when hfp_client disconnect [release/v4.3]

See merge request espressif/esp-idf!15056
2021-09-08 02:46:06 +00:00
Song Ruo Jing
665b221b6b Merge branch 'docs/spi_max_transfer_sz_limit_v4.3' into 'release/v4.3'
spi_docs: Fixed the default value of max_transfer_sz_limit (backport v4.3)

See merge request espressif/esp-idf!14249
2021-09-08 02:34:43 +00:00
Ivan Grokhotkov
96d498a7b5 Merge branch 'update/version_4_3_1' into 'release/v4.3'
Update version to 4.3.1

See merge request espressif/esp-idf!15032
2021-09-08 00:09:01 +00:00
jincheng
2845b70f83 remove unused variable which caused to build warning 2021-09-07 19:15:36 +08:00
Liu Han
6ad84919ad expat: Update library from 2.2.9 to 2.4.1 2021-09-03 19:36:56 +08:00
jincheng
b7a1a53629 fix acl can not disconnect when hf_client disconnenct 2021-09-03 10:56:25 +08:00
He Yin Ling
2e74914051 versions: Update version to 4.3.1 2021-09-02 17:15:36 +08:00
He Yin Ling
f2490688dc ci: temp disable code_quality_report job 2021-09-02 17:15:36 +08:00
simon.chupin
34ab97f081 Tools: Fix memory calculations of idf_size.py 2021-09-01 16:36:48 +02:00
Shu Chen
706a17bdf1 openthread: enable ot_cli on esp32h2 2021-09-01 16:36:47 +02:00
Michael (XIAO Xufeng)
7716134457 idf_size.py: fixed diram counted twice issue, and improve display
Currently static RAM usage are listed under corresponding physical
memory.

ld: fix linker script for C3 and S3
2021-09-01 16:36:47 +02:00
XieWenxiang
508b033cc0 component/bt: fix some ble document description error 2021-09-01 20:42:44 +08:00
Kapil Gupta
c110c31957 Merge branch 'bugfix/eap_client_windows' into 'master'
wpa_supplicant: clean tls client state machine

Closes IDFGH-5702, IDFGH-5662, and IDFGH-119

Closes https://github.com/espressif/esp-idf/issues/7422
Closes https://github.com/espressif/esp-idf/issues/1297

See merge request espressif/esp-idf!14968

(cherry picked from commit e8360fe075)

d3a42d78 wpa_supplicant: clean tls client state machine
2021-09-01 19:17:53 +08:00
Alberto García Hierro
68f8b999bb Enable IO20 on ESP32
Some newer ESP32 variants (like ESP32-PICO-V3 and ESP32-PICO-MINI-02)
do implement this pin and it can be used as a normal GPIO.

Fixes #6016
Fixes #6837

Closes https://github.com/espressif/esp-idf/pull/6918

(cherry picked from commit 6deaefde69)
2021-08-31 20:11:00 +08:00
yuanjm
f728202ee9 esp_http_server: Fix ws server handle length over 1440(MTU) messages incorrectly.
Closes https://github.com/espressif/esp-idf/issues/7457
2021-08-31 14:08:42 +08:00
yuanjm
3938792732 Revert "Merge branch 'bugfix/fix_ws_handle_big_messages_error_v4.3' into 'release/v4.3'"
This reverts commit de8c6aaa8d, reversing
changes made to ab452839ed.
2021-08-31 14:07:59 +08:00
Mahavir Jain
4446e2f632 esp_rom: remove "newlib.h" header
We found conflict in "sizeof(time_t)" due to inclusion of this
header over toolchain specific "newlib.h".

Moreover, there are no users for this header and implementation
for API is also not available in ROM. Hence removing it.
2021-08-31 10:32:34 +05:30
Marius Vikhammer
d5d126b73e aes/sha: fixed driver reseting the wrong GDMA channel
Driver was using the channel ID from tx when reseting rx.
But since rx and tx is not necessarily from the same pair this could lead
to the driver reseting the wrong DMA channel.
2021-08-30 17:06:13 +08:00
Shubham Kulkarni
7059591d92 cJSON: Update submodule to latest release.
This update fixes NULL pointer dereference issues in previous release

Closes https://github.com/espressif/esp-idf/issues/7317
2021-08-30 13:16:55 +05:30
Ivan Grokhotkov
f80c0e8d31 Merge branch 'bugfix/sdcard_example_format_timeout' into 'release/v4.3'
CI: [Examples/Storage] provide sufficient timeout for SD card formatting

See merge request espressif/esp-idf!14883
2021-08-27 12:51:22 +00:00
Jiang Jiang Jian
605c1b16f0 Merge branch 'bugfix/fix_esp32c3_auto_adjust_volt_v4.3' into 'release/v4.3'
fix_esp32c3_auto_adjust_volt_v4.3

See merge request espressif/esp-idf!14954
2021-08-26 10:07:57 +00:00
Jiang Jiang Jian
0c0b503f04 Merge branch 'bugfix/remove_bt_get_mac_v4.3' into 'release/v4.3'
bt: Remove unused function esp_bt_get_mac. (v4.3)

See merge request espressif/esp-idf!14835
2021-08-26 02:50:28 +00:00
Jiang Jiang Jian
b368fa45d1 Merge branch 'bugfix/fix_airkiss_esptouch_find_channel_crash_issue_v4.3' into 'release/v4.3'
esp_wifi:fix airkiss and esptouch find channel crash issue(backport v4.3)

See merge request espressif/esp-idf!14931
2021-08-26 02:49:33 +00:00
sly
517dd5c5d5 fix_esp32c3_auto_adjust_volt 2021-08-25 21:31:07 +08:00
Ondrej Kosta
95f454b510 Added warning when to init user Eth handlers 2021-08-25 12:45:06 +02:00
muhaidong
4b95b8a5c4 esp_wifi:fix airkiss and esptouch find channel crash issue(backport v4.3) 2021-08-25 15:55:07 +08:00
KonstantinKondrashov
75e099129e secure_boot_v2(doc): secure_boot_v2 key/s must be readable 2021-08-23 12:28:32 +05:00
Mahavir Jain
93c639872b Merge branch 'doc/fix_secure_boot_v4.3' into 'release/v4.3'
doc/secure_boot_v2: Fix the steps mentioned for enabling secure boot (v4.3)

See merge request espressif/esp-idf!14588
2021-08-20 09:35:48 +00:00
Mahavir Jain
5fa8c0c088 Merge branch 'bugfix/libsodium_build_with_gnu_make_v4.3' into 'release/v4.3'
libsodium: fix build issues with GNU Make (v4.3)

See merge request espressif/esp-idf!14757
2021-08-20 09:34:34 +00:00
Mahavir Jain
8787f15a2d Merge branch 'bugfix/memprot_bypass_v4.3' into 'release/v4.3'
System/Security: Memprot bypassing mitigation (v4.3)

See merge request espressif/esp-idf!14607
2021-08-20 09:33:47 +00:00
Wang Ning
4cf9aecfe9 docs/add_esp32-s2-devkitc-1_user_guide 2021-08-20 12:15:47 +08:00
Martin Vychodil
56cb3429ac Examples/Storage: provide sufficient timeout for SD card formatting
Large SD cards (16GB+) require significant amount of time for FS formatting.
Added FS mount checkpoint in example test python, timeout set to 60 sec

Closes IDFCI-706
2021-08-19 23:36:41 +02:00
Jiang Jiang Jian
25ebb55908 Merge branch 'bugfix/esp32c3_check_if_allow_light_sleep_v4.3' into 'release/v4.3'
Fix that when EXT CRYS is configured but not detected, light sleep is still allowed to be used(v4.3)

See merge request espressif/esp-idf!14818
2021-08-19 03:32:45 +00:00
xiongweichao
7d0b387bea Not initialized or in the process of de-initialization, calling API will return ERR 2021-08-19 11:10:31 +08:00
xiongweichao
a5fb684908 fix a2dp deinit crash 2021-08-19 11:10:31 +08:00
Island
92b98b475d Merge branch 'bugfix/ble_mesh_cve_recommendation_v4.3' into 'release/v4.3'
ble_mesh: Update the SIG recommendations for CVE issues (v4.3)

See merge request espressif/esp-idf!14841
2021-08-19 02:56:34 +00:00
David Cermak
7f8d47203e ci/test: Fix esp_http_client const char* correction 2021-08-18 15:28:08 +02:00
David Cermak
dd1de21216 panic/memprot: Fix minor const string correction on panic print 2021-08-18 19:29:44 +08:00
David Cermak
e7500c711d rtc: Fix minor const char* correction issue 2021-08-18 19:29:44 +08:00
David Cermak
c805a5cff8 wpa_supplicant: Temporarily disable write-string warning
Since some assignment of a string literal to `char *` variables were
added and not caught by the CI.
2021-08-18 19:29:44 +08:00
David Cermak
64eb3a28b6 Build: Fix CMake to pass -Wwrite-string compiler flag if enabled 2021-08-18 19:29:44 +08:00
Harshit Malpani
fb345ecc2e provisioning: fix wifi warning in wifi_prov_mgr application
Scan configuration parameters should not modify in co-existence mode.
2021-08-18 18:30:18 +08:00
yuanjm
25a6744ff7 ping_sock: Fix esp_ping_new_session may return ESP_OK when the error occured
Closes https://github.com/espressif/esp-idf/issues/7363
2021-08-18 11:33:36 +08:00
lly
58b289a22c ble_mesh: Update the SIG recommendations for CVE issues 2021-08-18 10:57:33 +08:00
Chinmay Chhajed
69845456dc bt: Remove unused function esp_bt_get_mac.
Closes https://github.com/espressif/esp-idf/issues/7410
2021-08-17 18:46:04 +05:30
xiongweichao
dc13a3d161 Fix that when EXT CRYS is configured but not detected, light sleep is still allowed to be used 2021-08-17 17:18:33 +08:00
jincheng
30660bd6e0 fix timer collision in role switch
Closes https://github.com/espressif/esp-idf/issues/7203
2021-08-17 10:55:25 +08:00
Kelvie Wong
0f15c28a84 Fix install.fish
install.fish script didn't catch error exit code from idf_tools.py. Now it does.

Signed-off-by: Marek Fiala <marek.fiala@espressif.com>

Closes: https://github.com/espressif/esp-idf/pull/7325
2021-08-16 16:16:32 +02:00
Marek Fiala
5639b6888d tools: Installing tools for given IDF_TARGET
Allow user to select specific ESP_TARGET while setting up ESD_IDF.
Only necessary tools for given target will be downloaded and installed.

Closes https://github.com/espressif/esp-idf/issues/5113
2021-08-16 16:16:31 +02:00
wangmengyang
194b510125 controller_hci_uart: rename the example with suffix "_esp32" 2021-08-16 11:46:19 +08:00
wangmengyang
8d06c987d2 controller_hci_uart: fixed the deprecated Kconfig options in the example 2021-08-16 11:45:54 +08:00
liqigan
fb53ea7d22 add FAQ in SPP demo README 2021-08-16 09:18:12 +08:00
xiewenxiang
82f094669a component/bt: Fixed ble conn will crash durning erase flash 2021-08-13 18:08:22 +08:00
KonstantinKondrashov
b7237ff0e6 efuse(esp32s2): Added flash_ver, psram_ver, pkg_ver efuses 2021-08-12 18:25:07 +05:00
Jiang Jiang Jian
48ae2309fd Merge branch 'bugfix/bugfix/wpa_supplicant_fixes_v4.3' into 'release/v4.3'
Merge wpa_supplicant github PRs (V4.3)

See merge request espressif/esp-idf!14751
2021-08-12 09:02:42 +00:00
Jiang Jiang Jian
6a13a9d0c4 Merge branch 'bugfix/pmf_bcast_deauth_fix_v4.3' into 'release/v4.3'
Fix some PMF and FTM issues (Backport v4.3)

See merge request espressif/esp-idf!14690
2021-08-12 09:02:09 +00:00
Mahavir Jain
496f749f63 libsodium: fix source directory names to address build issues with Make 2021-08-12 08:43:35 +05:30
Mahavir Jain
f06307c08d tools/unit_test_app: fixes to build this application with Make build 2021-08-12 08:43:35 +05:30
Jiang Jiang Jian
b5262e9980 Merge branch 'bugfix/fix_deep_sleep_miss_bug_mr_4.3' into 'release/v4.3'
Fixed missing the sleep time

See merge request espressif/esp-idf!14591
2021-08-11 12:38:16 +00:00
Axel Lin
af03dcb037 wpa_supplicant: Trivial typo fix for setting spp_sup.require
No functional change since both SPP_AMSDU_CAP_ENABLE and SPP_AMSDU_REQ_ENABLE
are defined as 1.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Sagar Bijwe <sagar@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/7366
2021-08-11 16:43:35 +05:30
Axel Lin
3e1b174c53 esp_supplicant: Make esp_rrm_send_neighbor_rep_request return proper error
Current code always return 0 even though wpas_rrm_send_neighbor_rep_request()
fails. Return proper error so the caller can know what's wrong.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Sagar Bijwe <sagar@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/7233
2021-08-11 16:43:23 +05:30
Axel Lin
c56aa5f34d wpa_supplicant: Fix clear WLAN_FC_STYPE_ACTION bit in esp_register_action_frame
It should clear WLAN_FC_STYPE_ACTION bit intead of WLAN_FC_STYPE_ACTION.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Sagar Bijwe <sagar@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/7252
2021-08-11 16:41:21 +05:30
Axel Lin
30d6c8401c wpa_supplicant: Fix memory leak in esp_issue_scan error paths
Fix memory leak when allocate memory for params->ssid / params->bssid fails.

Fixes: 27101f9454 ("wpa_supplicant: Add initial roaming support")
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Sagar Bijwe <sagar@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/7240
2021-08-11 16:40:57 +05:30
XieWenxiang
84cb47d7e0 component/bt: fix bluedroid host auto update PPCP attribute value 2021-08-11 17:49:31 +08:00
Yang Zhao
edcb5942ba The controller may miss the sleep time caculated before. So it will stuck
in the loop to get the deep sleep HW flag. Then the watchdog issue happen.
2021-08-11 14:07:00 +08:00
Jiang Jiang Jian
9b8cdf9e87 Merge branch 'feature/btdm_esp32_add_local_irk_to_controller_v4.3' into 'release/v4.3'
component/bt: add local irk to controller

See merge request espressif/esp-idf!14667
2021-08-10 03:49:11 +00:00
Nachiket Kukade
913b31c13f esp_wifi: Fix PMF and FTM issues
1. Update wifi lib with fix for dropping bcast PMF deauths/disassocs
   with certain reason codes
2. Fix FTM not working in connected state and some other FTM bugs
2021-08-09 18:54:07 +05:30
xiewenxiang
032f6d34d1 component/bt: add local irk to controller 2021-08-06 18:19:25 +08:00
Michael (XIAO Xufeng)
e3954297bb spi_master: fix the crash when using interrupt mode when cache is disabled
Closes https://github.com/espressif/esp-idf/issues/6529
Closes https://github.com/espressif/esp-idf/issues/6781
Closes https://github.com/espressif/esp-idf/issues/7368
2021-08-06 12:20:23 +08:00
Fu Hanxi
2231d6b158 ci: update performance test key to db compatible format 2021-08-04 12:22:25 +08:00
KonstantinKondrashov
0cd1bc6753 freertos: Increases delta for UT - Test suspend-resume CPU. The number of tick_hook should be the same for both CPUs 2021-08-03 12:50:15 +05:00
Li Hang Fan
7de5c312a3 Update components/hal/include/hal/mcpwm_types.h 2021-08-03 15:20:47 +08:00
SalimTerryLi
f23acef8eb MCPWM/deadtime: fix and sync preset deadtime modes with well-known definition
Closes https://github.com/espressif/esp-idf/issues/7321
2021-08-03 14:27:34 +08:00
Ivan Grokhotkov
03109eb013 newlib: add C++ guards to the platform-specific dirent.h
Before newlib 3.3.0, <dirent.h> bundled in newlib did not include any
function declarations. Instead, the file included the platform-
specific <sys/dirent.h>. This inclusion was inside a C++ guard block.
ESP-IDF provided sys/dirent.h inside newlib component, and this file
contained all the necessary function and structure declarations.

Since da418955f5,
common function declarations have been added to <dirent.h> in newlib.
However, the inclusion of sys/dirent.h has been moved out of the C++
guard block. However we didn't notice this change and did not update
sys/dirent.h in ESP-IDF newlib component to and the now-required
C++ guards there.

This commit adds the missing C++ guards to the platform-specific
sys/dirent.h.

The declarations of common dirent.h functions are now present both in
<dirent.h> (provided by newlib) and in sys/dirent.h (provided by IDF).
We keep the declarations in sys/dirent.h for compatibility, since some
ESP-IDF files and applications may include <sys/dirent.h> directly,
rather than <dirent.h>.

Closes https://github.com/espressif/esp-idf/issues/7204
2021-08-03 13:53:34 +08:00
Omar Chebib
c8e5b0611a coredump: simplify the implementation of esp_core_dump_image_erase function
Closes https://github.com/espressif/esp-idf/pull/6949
2021-08-03 11:48:39 +08:00
035c1ac901 Fixed esp_core_dump_image_erase() for flash encryption with 16byte long write buffer 2021-08-03 11:48:39 +08:00
Marius Vikhammer
f550724055 uart: fix typo in error message
Closes https://github.com/espressif/esp-idf/issues/7360
2021-08-03 09:27:10 +08:00
Martin Vychodil
b04705cfe2 system/security: Memprot bypassing mitigation
Check Memprot lock bit(s) during the system startup, abort/reset on any Memprot parts found locked during this phase.
There is no legal reason to disallow the Memprot configuration by the system, so it's either a critical bug in the
application or an malicious attempt to bypass the system security.
Error message is printed before digital system reset.

Closes IDF-2700
2021-08-02 12:18:46 +02:00
Jiang Jiang Jian
0423027d5d Merge branch 'bugfix/fix_some_wifi_bugs_0728_v4.3' into 'release/v4.3'
bugfix fix some wifi bugs for 4.3

See merge request espressif/esp-idf!14577
2021-07-31 15:43:25 +00:00
muhaidong
1fd8fdcf7d bugfix fix some wifi bugs for 4.3
1. sync idf menuconfig nvs status to lib
2. disable ampdu+amsdu bit
3. fix 80211 tx crash issue
4. supoort config 80211 tx rate
2021-07-31 21:46:14 +08:00
Marius Vikhammer
78392f0e84 ULP: reduce max possible memory reserved for ULP coprocessor
Some RTC slow memory is reserved by IDF, reduce CONFIG_TARGET_ULP_COPROC_RESERVE_MEM
range to reflect this.

Closes https://github.com/espressif/esp-idf/issues/7073
2021-07-31 14:10:57 +08:00
Marius Vikhammer
ee54dbfaab 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-07-31 14:10:57 +08:00
Jiang Jiang Jian
135b46a078 Merge branch 'mesh/non_mesh_connections_access_v4.3' into 'release/v4.3'
esp_wifi_mesh: add non mesh connections access(backport_v4.3)

See merge request espressif/esp-idf!14241
2021-07-31 02:52:11 +00:00
Wang Meng Yang
1537cff293 Merge branch 'bugfix/btdm_esp32_ble_white_list_connection_fail_v4.3' into 'release/v4.3'
Fixed ESP32 BLE can't resolve the peer address when enable white list(release v4.3)

See merge request espressif/esp-idf!14558
2021-07-30 23:58:22 +00:00
Sachin Parekh
9f1854533e doc/secure_boot_v2: Fix the steps mentioned for enabling secure boot 2021-07-30 19:16:46 +05:30
Marius Vikhammer
b5b49eba82 spi: update examples to use the new GDMA driver 2021-07-30 17:59:52 +08:00
Wang Meng Yang
353f493f22 Merge branch 'bugfix/btdm_enable_gattc_cache_will_crash_v4.3' into 'release/v4.3'
component/bt: fix enable gattc nvs cache lead to crash

See merge request espressif/esp-idf!13888
2021-07-30 07:39:50 +00:00
Shubham Patil
68095b46c4 espcoredump.py: Parse EPS and EPC register values using register index 2021-07-30 15:35:02 +08:00
xiewenxiang
192aa18c31 Fixed ESP32 BLE can't resolve the peer address when enable white list 2021-07-30 15:09:00 +08:00
Anton Maklakov
983e0c7fb2 Merge branch 'bugfix/ttfw_fix_flush_index_error_v4.3' into 'release/v4.3'
test: TTFW fix flush index error (v4.3)

See merge request espressif/esp-idf!14260
2021-07-30 06:36:20 +00:00
shenjun
217c023a44 esp_wifi_mesh: add non mesh connections access 2021-07-30 14:32:48 +08:00
Michael (XIAO Xufeng)
95c572c0d2 Merge branch 'bugfix/fix_uart_reset_issue_on_esp32c3_backport_v4.3' into 'release/v4.3'
bugfix(uart): reset uart0 core before uart apb reset(backport v4.3)

See merge request espressif/esp-idf!14462
2021-07-30 06:27:22 +00:00
Gustavo Henrique Nihei
de1a4f0c0d spi: Fix wrong target register for interrupt disable 2021-07-30 13:55:08 +08:00
David Čermák
9d4af47fa7 Merge branch 'bugfix/fix_eth2ap_example_crash_v4.3' into 'release/v4.3'
eth2ap: Fix eth2ap example crash issue (backport v4.3)

See merge request espressif/esp-idf!14562
2021-07-30 05:16:26 +00:00
Ivan Grokhotkov
36130916f0 Merge branch 'docs/fix_readme_links_v4.3' into 'release/v4.3'
docs: fixed dead readme links (v4.3)

See merge request espressif/esp-idf!14464
2021-07-30 03:04:44 +00:00
Ivan Grokhotkov
ea06260ec9 Merge branch 'docs/wifi_table_not_showing_v4.3' into 'release/v4.3'
docs: fix table in WifI guide not being rendered (v4.3)

See merge request espressif/esp-idf!14376
2021-07-30 03:04:26 +00:00
Ivan Grokhotkov
953e9a78e2 Merge branch 'bugfix/panic_handler_disable_wdts_early_v4.3' into 'release/v4.3'
esp_system: Reconfigure the WDTs at the start of the panic handler (v4.3)

See merge request espressif/esp-idf!14225
2021-07-30 03:03:09 +00:00
Ivan Grokhotkov
716efae251 Merge branch 'bugfix/esp32s2_disable_bss_extram_v4.3' into 'release/v4.3'
esp32s2: disable bss extram option, clean up spiram init code a bit (v4.3)

See merge request espressif/esp-idf!13733
2021-07-30 03:01:57 +00:00
Renz Bagaporo
b07276265a esp32s2: reset systimer clk on startup 2021-07-30 10:13:46 +08:00
Renz Bagaporo
cebab7fa7f newlib: init microseconds offset 2021-07-30 10:13:41 +08:00
David Čermák
c169788dac Merge branch 'bugfix/ci_move_udp_socket_tests_to_eth_runners_v4.3' into 'release/v4.3'
CI: Adjust UDP socket tests to be more reliable (v4.3)

See merge request espressif/esp-idf!14420
2021-07-29 18:56:38 +00:00
Roland Dobai
4c09277b27 Merge branch 'bugfix/workaround-bash-lang-issue_v4.3' into 'release/v4.3'
Bugfix: Set LANG to en code to avoid RuntimeError during autocompletion activation & Replaced broken link to shell autocompletion (v4.3)

See merge request espressif/esp-idf!14122
2021-07-29 13:31:53 +00:00
Jiang Jiang Jian
d33824ac4d Merge branch 'bugfix/fix_connect_fail_cause_by_sleep_v4.3' into 'release/v4.3'
Fix connection failure caused by sleep (backport v4.3)

See merge request espressif/esp-idf!14272
2021-07-29 12:38:48 +00:00
Michael (XIAO Xufeng)
2333795d52 Merge branch 'doc/update_gpio_c3_v4.3' into 'release/v4.3'
doc: update gpio api guide reference on c3(backport v4.3)

See merge request espressif/esp-idf!13784
2021-07-29 07:10:46 +00:00
aleks
002e6b8cec freemodbus: increase max priority of modbus tasks
allows to avoid issues with modbus processing when higher priority tasks are used in user application
2021-07-29 14:27:04 +08:00
Cao Sen Miao
8bda396582 doc: update gpio api guide reference on c3 2021-07-29 11:24:26 +08:00
yuanjm
19f96b0e4f eth2ap: Fix eth2ap example crash issue
Closes https://github.com/espressif/esp-idf/issues/7260
2021-07-29 10:44:06 +08:00
Marius Vikhammer
00c304535f system: enable C3 light sleep related example tests 2021-07-29 09:29:29 +08:00
Marius Vikhammer
0b8ed8d76e ci: enable previously disabled unit tests 2021-07-29 09:29:29 +08:00
Ivan Grokhotkov
617da9f403 Merge branch 'bugfix/twai_low_speed_bit_rates_v4.3' into 'release/v4.3'
TWAI: Fix incorrect configuration initializers for low speed bit rates (backport v4.3)

See merge request espressif/esp-idf!14412
2021-07-28 11:23:08 +00:00
Ivan Grokhotkov
0e6f4ba2cf Merge branch 'bugfix/uart_race_condition_v4.3' into 'release/v4.3'
Fix couple of UART issues (backport v4.3)

See merge request espressif/esp-idf!14207
2021-07-28 11:22:18 +00:00
Ivan Grokhotkov
5adb8bd0d7 Merge branch 'bugfix/missing_extern_c_4.3' into 'release/v4.3'
[test_utils]: added extern C decl to ccomp (backport 4.3)

See merge request espressif/esp-idf!14326
2021-07-28 11:21:42 +00:00
Marius Vikhammer
b667770cc6 ulp riscv: force cocpu clock on to prevent spurious cocpu trap resets
Closes https://github.com/espressif/esp-idf/issues/7224
2021-07-28 18:15:38 +08:00
Krzysztof Budzynski
878e3f8468 Merge branch 'docs/windows_installer_2.9_backport_4.3' into 'release/v4.3'
docs: update Windows Tools 2.9 installation

See merge request espressif/esp-idf!14097
2021-07-28 09:34:33 +00:00
aleks
0d0f4adbf8 freemodbus: fix mb zero based reg address in the iterator
Fixes https://github.com/espressif/esp-idf/issues/6571
2021-07-28 11:34:19 +02:00
Roland Dobai
ed21dd43de Merge branch 'bugfix/ci_debug_gdb_issues_v4.3' into 'release/v4.3'
CI: Wait for the GDB process to start and print more debugging information (v4.3)

See merge request espressif/esp-idf!14535
2021-07-28 08:49:29 +00:00
Mahavir Jain
47b96db12d Merge branch 'feature/prov_mgr_reset_state_v4.3' into 'release/v4.3'
wifi_provisioning: Add API to erase credentials and reset provisioning state (v4.3)

See merge request espressif/esp-idf!14531
2021-07-28 08:46:32 +00:00
Mahavir Jain
82b868a4b2 Merge branch 'bugfix/esp32c3_wrong_iram_alignment_v4.3_2' into 'release/v4.3'
System/memprot: ESP32C3 IRAM section alignment fix (v4.3)

See merge request espressif/esp-idf!14506
2021-07-28 03:34:08 +00:00
Roland Dobai
89486da74e CI: Debug GDB issues 2021-07-27 20:03:57 +02:00
Shubham Kulkarni
7793f58e71 wifi_provisioning: Add check for WIFI_REASON_MIC_FAILURE error code in wifi_prov_mgr_event_handler_internal 2021-07-27 15:11:26 +05:30
Shubham Kulkarni
f56cd8fb29 wifi_prov_mgr: Add Kconfig option to restart provisioning 2021-07-27 15:11:23 +05:30
Shubham Kulkarni
f93fdda2ff wifi_provisioning: Add API to reset state if provisioning fails 2021-07-27 15:09:51 +05:30
Jiang Jiang Jian
59af9606e6 Merge branch 'bugfix/fix_scan_timeout_mr_4.3' into 'release/v4.3'
Fix the scan timeout report

See merge request espressif/esp-idf!14445
2021-07-27 07:42:37 +00:00
xiongweichao
a60a2892fb components/bt: fix spp memory leak
Closes https://github.com/espressif/esp-idf/issues/7238
2021-07-27 14:26:22 +08:00
Andrey Starodubtsev
b5b629c584 Fix couple of UART issues
- there was a small race in `uart_pattern_link_free`:
  `rx_pattern_pos.data` was accessed for reading outside spinlock
- `uart_flush_input` enabled
  `UART_INTR_RXFIFO_FULL|UART_INTR_RXFIFO_TOUT` intr mask on exit even
  if these flags weren't set when function was called

Closes https://github.com/espressif/esp-idf/pull/7023
2021-07-27 10:50:05 +08:00
Armando
96de941a6e spi_master: fix cmd test ci failure 2021-07-27 10:28:13 +08:00
Ivan Grokhotkov
7dc2e5e545 Merge branch 'bugfix/rtos_systick_cycle_time_error_dfs_v4.3' into 'release/v4.3'
backport v4.3: fix RTOS SysTick cycle time error caused by DFS

See merge request espressif/esp-idf!14494
2021-07-26 21:38:16 +00:00
David Čermák
4fd1479dc6 Merge branch 'bugfix/remove_unstable_network_tests_v4.3' into 'release/v4.3'
CI: Move mqtt publish tests from regular pipeline to weekend tests (v4.3)

See merge request espressif/esp-idf!14425
2021-07-26 17:02:51 +00:00
David Čermák
ebf1d15e54 Merge branch 'bugfix/esp_netif_dhcps_state_v4.3' into 'release/v4.3'
esp_netif: Fix dhcps state transitions (v4.3)

See merge request espressif/esp-idf!14423
2021-07-26 17:00:43 +00:00
Mahavir Jain
27e3447eea Merge branch 'bugfix/read_ota_partition_required_output_arg_v4.3' into 'release/v4.3'
otatool: Fixes read_ota_partition cmd, required output arg (v4.3)

See merge request espressif/esp-idf!13672
2021-07-26 11:34:19 +00:00
Mahavir Jain
47ec40c44f Merge branch 'fix/memory_leaks_identified_by_cppcheck_v4.3' into 'release/v4.3'
Fix/memory leaks identified by cppcheck (v4.3)

See merge request espressif/esp-idf!14501
2021-07-26 10:25:16 +00:00
Juraj Michálek
35f79460a5 docs: update Windows Tools 2.9 installation 2021-07-26 12:18:23 +02:00
Martin Vychodil
e9dc39730f System/memprot: ESP32C3 IRAM section alignment fix (LD)
IRAM section didn't contain sufficient padding for possible CPU instruction prefetch,
ie instruction fetch could happen in DRAM section which is prohibited by the Memprot module.
This is fixed by adding 16B to the end of IRAM section in LD script (C3 CPU prefetch buffer depth is 4 words)

Closes IDF-3554
2021-07-25 12:39:48 +02:00
Alex Henrie
0cb48f2f2e Fix memory leak on error path in register_select
And remove dead error handling code from unregister_select.

Closes https://github.com/espressif/esp-idf/pull/7296
2021-07-25 07:42:15 +05:30
Alex Henrie
afd3fc6d16 Fix memory leak on error path in http_header_set_format 2021-07-25 07:42:14 +05:30
Alex Henrie
e634a00ef8 Fix memory leak on error path in md5_printf 2021-07-25 07:42:13 +05:30
Alex Henrie
de49ec5a46 Fix memory leak on error path in esp_ds_start_sign 2021-07-25 07:42:13 +05:30
Li Shuai
1772277e98 fix RTOS SysTick cycle time error caused by DFS 2021-07-23 19:15:28 +08:00
Krzysztof Budzynski
75940e9364 Merge branch 'docs/fix_UART_default_pin_error_and_provide_a_link_to_ESP_PROG_v4.3' into 'release/v4.3'
docs: fix uart default pin error and provide more information about ESP-Prog board (v4.3)

See merge request espressif/esp-idf!13968
2021-07-23 11:15:24 +00:00
Krzysztof Budzynski
5ab8799f09 Merge branch 'docs/provide_link_to_pcb_layout_for_ethernet_board_v4.3' into 'release/v4.3'
docs: provide the link to pcb layout for ethernet board v1.2 and fix a typo in freetos/task (v4.3)

See merge request espressif/esp-idf!13966
2021-07-23 10:57:37 +00:00
Roland Dobai
ecd2c51e64 Merge branch 'ci/rename_test_log_path_v4.3' into 'release/v4.3'
CI: rename log path of IT jobs (v4.3)

See merge request espressif/esp-idf!14452
2021-07-22 13:20:52 +00:00
Mahavir Jain
de8c6aaa8d Merge branch 'bugfix/fix_ws_handle_big_messages_error_v4.3' into 'release/v4.3'
esp_http_server: Fix ws server handle length over 1440(MTU) messages incorrectly(backport v4.3).

See merge request espressif/esp-idf!14344
2021-07-22 04:20:26 +00:00
Mahavir Jain
ab452839ed Merge branch 'feature/upgrade_mbedtls_to_v4.3' into 'release/v4.3'
mbedtls: upgrade to release v2.16.11 (v4.3)

See merge request espressif/esp-idf!14437
2021-07-21 12:17:00 +00:00
David Cermak
965423d532 CI: Prepare mqtt app test for QEMU tests
Adds qemu configuration
Generalize the get_dut() to enable choosing DUT class per configuration
2021-07-21 11:48:27 +02:00
David Cermak
de30298223 mdns: Fix crashes reported by the fuzzer 2021-07-21 11:48:27 +02:00
David Cermak
355e152082 mdns: Minor correction of the test code 2021-07-21 11:48:27 +02:00
David Cermak
0d3c3a9173 mdns: Fix fuzzer from miss-interpreting adding services as timeouts 2021-07-21 11:48:27 +02:00
David Cermak
91c93611e1 CI: Enable publish tests only when started from weekend pipeline 2021-07-21 11:48:27 +02:00
David Cermak
4373a89237 CI: Removed weekend network tests
Temporarily, before getting reworked and stable for running in the CI
2021-07-21 11:48:27 +02:00
David Cermak
6adaf783aa CI/mqtt: Execute mqtt weekend tests from test apps 2021-07-21 11:48:20 +02:00
Marius Vikhammer
ae7197e882 docs: fixed dead readme links 2021-07-21 17:48:11 +08:00
Anton Maklakov
3d7666562b Merge branch 'ci/reduce_checK_docs_gh_link_v4.3' into 'release/v4.3'
ci: only run check_docs_gh_links job once per pipeline (v4.3)

See merge request espressif/esp-idf!14200
2021-07-21 08:33:35 +00:00
Wangjialin
427fe1bcde uart: fix esp32c3 uart output garbage value after resetting 2021-07-21 15:31:50 +08:00
Roland Dobai
cba6f1ae66 Merge branch 'bugfix/docs_c3_jtag_v4.3' into 'release/v4.3'
docs: Improve the ESP32-C3 JTAG guide (v4.3)

See merge request espressif/esp-idf!13532
2021-07-21 06:45:04 +00:00
Roland Dobai
be3b44c92d Merge branch 'bugfix/idf_tools_not_found_issue_v4.3' into 'release/v4.3'
tools: Catch OSError which is raised when the tool is not available (v4.3)

See merge request espressif/esp-idf!14133
2021-07-21 06:40:11 +00:00
Mahavir Jain
8f75f93c14 Merge branch 'bugfix/fix_truncated_headers_for_esp_http_client_v4.3' into 'release/v4.3'
esp_http_client: Fix header truncated when responded header length over buffer_size (backport v4.3)

See merge request espressif/esp-idf!14383
2021-07-21 05:31:26 +00:00
Mahavir Jain
3222f0a811 Merge branch 'feature/protocomm_mfg_data_v4.3' into 'release/v4.3'
Provisioning BLE: Add API to set manufacturer data in advertisement (scan response) packets (v4.3)

See merge request espressif/esp-idf!14366
2021-07-21 05:24:25 +00:00
Mahavir Jain
1d4eb835d0 Merge branch 'bugfix/otatool_imported_as_lib_v4.3' into 'release/v4.3'
otatool: Fix a crash when imported as external python lib (v4.3)

See merge request espressif/esp-idf!13666
2021-07-21 05:23:12 +00:00
Mahavir Jain
60ef790969 Merge branch 'cherry-pick-76bd33e9' into 'release/v4.3'
MbedTLS: Add config option for key elements and key element extension for SSL connection (backport v4.3)

See merge request espressif/esp-idf!14361
2021-07-21 05:22:05 +00:00
He Yin Ling
bd4d591b79 CI: rename log path of IT jobs 2021-07-21 10:17:45 +08:00
Yang Zhao
658aaa4f93 This is to fix the hardware bug. The device may report scan event timeout
when scaning.If check this error,then reset the rwble core.
2021-07-20 20:02:14 +08:00
Mahavir Jain
f817971f68 mbedtls: fix crt_bundle test to ensure proper server start event
This fixes occasional test failure that was observed due to
client task getting started before server was up.
2021-07-20 14:15:59 +05:30
Mahavir Jain
4333e618b5 mbedtls: upgrade to release v2.16.11
For detailed release notes please refer to:
https://github.com/ARMmbed/mbedtls/releases/tag/v2.16.11
2021-07-20 14:15:59 +05:30
Chen Yi Qun
eb01aaacc7 fix esp32s2 fall into sleep forever when deep-sleep time is set to 0
(backport v4.3)
2021-07-19 21:11:04 +08:00
David Cermak
f7169ed063 mqtt: Moved weekend tests to test apps 2021-07-19 15:05:58 +02:00
David Cermak
acf5333b1e esp_netif: Fix dhcps state transitions
When the DHCP server is stopped before starting the netif,
it should remain stopped -- as per compatibility with previous tcpip_adapter behavior
2021-07-19 15:00:37 +02:00
David Cermak
fa55d3722c CI/socket examples: Add UDP operation retries, wait until server is up 2021-07-19 14:54:42 +02:00
Mahavir Jain
4b47e7e643 Merge branch 'fix/esp32c3_memprot_split_line_v4.3' into 'release/v4.3'
esp32c3/memprot: Fix incorrect calculations and register access (v4.3)

See merge request espressif/esp-idf!14372
2021-07-19 11:28:55 +00:00
Darian Leung
e701c98e27 TWAI: Fix incorrect configuration initializers for low speed bit rates
This commit fixes the timing configuration initializers for the
1K, 5K, and 10K bit rates.
2021-07-19 17:13:34 +08:00
Jiang Jiang Jian
42376de238 Merge branch 'bugfix/SCO_connect_fail_after_peer_not_accept_sniff_v4.3' into 'release/v4.3'
Add remove sniff when peer not accepted sniff mode(v4.3)

See merge request espressif/esp-idf!14395
2021-07-19 07:31:37 +00:00
KonstantinKondrashov
c9ebba355f otatool: Fix a crash when imported as external python lib
Closes: https://github.com/espressif/esp-idf/issues/6733
2021-07-19 12:41:51 +08:00
KonstantinKondrashov
6785534f63 otatool: Fixes read_ota_partition cmd, required output arg
Closes: https://github.com/espressif/esp-idf/issues/6559
2021-07-19 12:41:00 +08:00
Mahavir Jain
1f7172dbf9 Merge branch 'bugfix/secure_boot_sig_verify_v4.3' into 'release/v4.3'
secure boot: Fix incorrect handling of mbedtls_ctr_drbg_seed() failure in signature verification (v4.3)

See merge request espressif/esp-idf!14390
2021-07-16 10:54:13 +00:00
xiongweichao
bc3f0c7cdd Add remove sniff when peer not accepted sniff mode 2021-07-16 17:55:10 +08:00
Chinmay Chhajed
ee8a78025c bt/controller: Fix for BLE ACL tx flush issue during reset. 2021-07-16 17:54:27 +08:00
Mahavir Jain
9c8dfa4ba4 Merge branch 'bugfix/fix_timer_delete_crash_v4.3' into 'release/v4.3'
Nimble: Add fix for crash in esp_timer deletion (v4.3)

See merge request espressif/esp-idf!14364
2021-07-16 08:20:14 +00:00
Mahavir Jain
33f1ad2106 Merge branch 'bugfix/update_ota_cert_v4.3' into 'release/v4.3'
OTA examples: Update server certificate (v4.3)

See merge request espressif/esp-idf!14354
2021-07-16 08:17:49 +00:00
Angus Gratton
07465563c5 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-16 11:03:21 +05:30
Angus Gratton
7c55633bfb esp_common: Correctly disable ".bss segment placed in external memory" for ESP32-S2 & ESP32-S3
Support for this feature is still pending.

As reported by https://github.com/espressif/esp-idf/issues/6162
2021-07-16 11:39:09 +10:00
Angus Gratton
3c13a480d7 esp32s2: Simplify the code for adding spiram to heap 2021-07-15 21:22:33 +10:00
Angus Gratton
d5d20920bb esp32s2: Remove unused option CONFIG_SPIRAM_USE_AHB_DBUS3 2021-07-15 21:22:33 +10:00
yuanjm
b7791c171d esp_http_client: Optimize code structure 2021-07-15 16:17:51 +08:00
Clickau
d25b354cfc esp_http_client: fix truncated headers
Signed-off-by: yuanjm <yuanjianmin@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/6370
2021-07-15 16:17:36 +08:00
Marius Vikhammer
0347b5d043 docs: fix table in WifI guide not being rendered 2021-07-15 14:57:15 +08:00
Sachin Parekh
47c728adf0 esp32c3/memprot: Correct the split line address calculation 2021-07-15 10:57:18 +05:30
Sachin Parekh
65b9f87998 esp32c3/memprot: Fix incorrect access to DRAM0 split line registers
memprot_ll_set_dram0_split_line_* and memprot_ll_get_dram0_split_line_* APIs were accessing
incorrect configuration register
2021-07-15 10:57:18 +05:30
Prasad Alatkar
6a9a962083 Provisioning BLE: Add API to set manufacturer data in scan response
- Add `wifi_prov_scheme_ble_set_mfg_data` API to set custom manufacturer data
  in BLE advertisements.
- Run format.sh script on modified files.
- Fix few typos in `protocomm_nimble.c`.

- Incorporate suggestion to remove extra check on protocomm_ble_mfg_data_len

- Remove few unnecessary comments.
2021-07-14 18:22:40 +05:30
Rahul Tank
758fc73efe system : Add defination of ESP_ERROR_CHECK_WITHOUT_ABORT under CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT flag 2021-07-14 16:02:33 +05:30
Rahul Tank
2dc4961063 Nimble: Add fix for crash in esp_timer deletion
Added change in nimble submodule to handle crash in case of non-started
timer is attempted to be deleted.
2021-07-14 16:02:32 +05:30
Mahavir Jain
dd12e9f8cd Merge branch 'cert/skipping_keyelements_validation' into 'master'
MbedTLS: Add config option for key elements and key element extension for SSL connection

See merge request espressif/esp-idf!12898

(cherry picked from commit 76bd33e9a4)

38d67725 mbedtls: Add config option key element and key element ext
2021-07-14 16:43:58 +08:00
Shubham Kulkarni
49a99fee56 OTA examples: Updated server certificate 2021-07-14 12:44:18 +05:30
bizhuangyang
835d1b0bac bugfix:rotary encoder example isr service install
Fix the issue mentioned when using two or more encoders. Modify PCNT_CTRL_GND_IO
to avoid the affect of USB JTAG(origin pin 19 is used for USB D-). Update esp32c3.
peripherals.ld and docs for esp32s3.

Closes https://github.com/espressif/esp-idf/issues/6889
2021-07-14 10:13:21 +08:00
laokaiyao
8b2331a810 driver/timer: only re-enable alarm in callback when auto reload is true
closes https://github.com/espressif/esp-idf/issues/7001
2021-07-13 17:22:33 +08:00
yuanjm
1214944e78 esp_http_server: Fix ws server handle length over 1440(MTU) messages incorrectly.
Closes https://github.com/espressif/esp-idf/issues/7202
2021-07-13 17:05:24 +08:00
Roland Dobai
fe485a1ea0 docs: Suggest how to use JTAG for ESP32-C3 on Windows 2021-07-12 17:32:34 +02:00
Jakob Hasse
a2a7ea7012 [test_utils]: added extern C decl to ccomp
Closes https://github.com/espressif/esp-idf/issues/7121
2021-07-12 14:26:22 +08:00
Anton Maklakov
7443d7d274 tools: Update ESP32-C3 toolchain for Windows - add some missed DLLs for GDB 2021-07-08 13:00:55 +07:00
xiehang
96122d6f28 Fix connection failure caused by sleep 2021-07-06 10:49:10 +08:00
Angus Gratton
1fc288556c esp_system: Reconfigure the WDTs at the start of the panic handler
This is mostly important on ESP32 ECO3 with the
ESP32_ECO3_CACHE_LOCK_FIX, because when we stall the other CPU core
before we disable the TG1 WDT then the first CPU can get stuck
in WDT ISR handle_livelock_int routine waiting for the other CPU.
2021-07-06 09:59:39 +08:00
Jiang Jiang Jian
8807d8a5d8 Merge branch 'bugfix/revert_default_country_v4.3' into 'release/v4.3'
esp_wifi: Revert default country to China (backport v4.3)

See merge request espressif/esp-idf!14250
2021-07-05 14:02:36 +00:00
He Yin Ling
b8ca42400b ttfw: fix incorrect length when flush data cache after expect:
data cache is unicode. while we use bytes in RegEx expect. The index of
matched pattern is calculated with bytes, could be different from
unicode. Now we fix this issue by using unicode in expect.
2021-07-05 19:43:15 +08:00
He Yin Ling
ce279af00d ttfw: full_stdout should not return data after pattern in expect 2021-07-05 19:43:14 +08:00
Kapil Gupta
b47e8123ca esp_wifi: Revert default country to China 2021-07-05 12:40:47 +05:30
Michael (XIAO Xufeng)
596d17a6cc spi_docs: Fixed the default value of max_transfer_sz.
(cherry picked from commit e89fabb963)
2021-07-05 11:47:27 +08:00
Jiang Jiang Jian
4d53269a6d Merge branch 'feature/regdomain_support_v4.3' into 'release/v4.3'
esp_wifi: Add support for regdomain db (backport v4.3)

See merge request espressif/esp-idf!13609
2021-07-02 17:22:09 +00:00
Jiang Jiang Jian
4b24d3d464 Merge branch 'bugfix/tls_alignment_v4.3' into 'release/v4.3'
esp32[s2,s3]: fix _flash_rodata_align value in the linker scripts (v4.3)

See merge request espressif/esp-idf!14233
2021-07-02 11:00:50 +00:00
Michael (XIAO Xufeng)
2ac59cc885 Merge branch 'bugfix/delete_i2c_cmd_mux_semaphore_more_cleanly_v4.3' into 'release/v4.3'
driver/i2c: delete i2c cmd_mux semaphore more cleanly (backport 4.3)

See merge request espressif/esp-idf!13400
2021-07-02 10:58:38 +00:00
Michael (XIAO Xufeng)
6e05a56713 Merge branch 'bugfix/i2s_apll_disable_issue_v4.3' into 'release/v4.3'
i2s: fix driver uninstall issue (backport v4.3)

See merge request espressif/esp-idf!13998
2021-07-02 10:56:17 +00:00
Jiang Jiang Jian
ff75da76e4 Merge branch 'feature/add-nimble-host-to-blufi_v4.3' into 'release/v4.3'
Add support of NimBLE host to Blufi (v4.3)

See merge request espressif/esp-idf!14198
2021-07-02 09:29:31 +00:00
Jiang Jiang Jian
64dc45a2e6 Merge branch 'bugfix/rrm_caps_for_open_ap_v4.3' into 'release/v4.3'
wpa_supplicant: Fix some issues in 11kv (backport v4.3)

See merge request espressif/esp-idf!13695
2021-07-02 09:23:19 +00:00
Kapil Gupta
cf44123da5 esp_wifi: Add support for regdomain database 2021-07-02 14:29:45 +05:30
Ivan Grokhotkov
64057d302a esp32[s2,s3]: fix _flash_rodata_align value in the linker scripts
Regression from 4702feeee. The TLS segment is located inside
.flash.rodata, so we need to get the alignment of that section, not
.flash.rodata_noload.
2021-07-02 08:37:47 +02:00
Kapil Gupta
69a48e431e wpa_supplicant: Fix some issues in 11kv
1. RRM capability addition for open AP
2. Crash during scan flush
3. Station not able to connect if disassoc timer is present in BTM request
4. Memory leaks during wifi init/deinit.
2021-07-02 10:28:57 +05:30
Jiang Jiang Jian
8080c8d343 Merge branch 'bugfix/ftm_lock_free_issue_v4.3' into 'release/v4.3'
esp_wifi: Update wifi lib with lock free issue fix

See merge request espressif/esp-idf!14215
2021-07-01 17:38:39 +00:00
Nachiket Kukade
e280541892 esp_wifi: Update wifi lib with lock free issue fix 2021-07-01 14:14:42 +05:30
Jiang Jiang Jian
ea9dc928ee Merge branch 'feature/optimize_wifi_log_by_linker_script_v4.3' into 'release/v4.3'
esp_wifi: move unused WiFi log to noload section to save binary size(backport v4.3)

See merge request espressif/esp-idf!14167
2021-07-01 08:40:11 +00:00
Zhang Jun Hao
5e600d5b31 esp_wifi: move unused WiFi log to noload section to save binary size 2021-07-01 14:11:38 +08:00
Rahul Tank
e4ada333cc Merge branch 'release/v4.3' into 'feature/add-nimble-host-to-blufi_v4.3'
# Conflicts:
#   components/bt/host/nimble/Kconfig.in
2021-07-01 11:47:03 +08:00
“sonalipatil”
00b9df2937 Add support of NimBLE host to Blufi
Merges https://github.com/espressif/esp-idf/pull/6904
2021-07-01 09:06:15 +05:30
Jiang Jiang Jian
91430c8674 Merge branch 'bugfix/add_esp_timer_helper_function_v4.3' into 'release/v4.3'
Add esp timer helper function (v4.3)

See merge request espressif/esp-idf!14202
2021-07-01 03:01:02 +00:00
Marius Vikhammer
4de35f8e1e ci: only run check_docs_gh_links job once per pipeline
Job simply walks all .rst files and check links. No need to
run for multiple targets/languages
2021-07-01 09:55:30 +08:00
Jiang Jiang Jian
df99c92193 Merge branch 'feature/ftm_support_stage2_v4.3' into 'release/v4.3'
wifi/ftm: Additional FTM features implementation (Backport v4.3)

See merge request espressif/esp-idf!14157
2021-06-30 15:20:01 +00:00
Mahavir Jain
eb78648fa6 Merge branch 'bugfix/esp_https_ota_v4.3' into 'release/v4.3'
esp_https_ota: Add  check for HTTP error codes and documentation updates (v4.3)

See merge request espressif/esp-idf!14206
2021-06-30 14:55:36 +00:00
Nachiket Kukade
c1d5eafd16 wifi/ftm: Additional FTM features implementation
Update wifi lib with below features -
1. ASAP mode for both Initiator and Responder
2. Offchannel FTM while connected to AP (ASAP only)
3. Support up to 3 Initiators simultaneously
4. Session termination, failure support etc
5. Mem-zero AP scan buffer in get_records API
2021-06-30 17:49:28 +05:30
Jiang Jiang Jian
3a0b4628ce Merge branch 'feature/crypto_porting_v4.3' into 'release/v4.3'
wpa_supplicant: Rewrite Crypto APIs based on MbedTLS (backport V4.3)

See merge request espressif/esp-idf!14181
2021-06-30 11:46:03 +00:00
Shubham Kulkarni
01f05da3ae esp_https_ota: Add check for HTTP error codes and corresponding error logs
Closes: https://github.com/espressif/esp-idf/issues/7058
2021-06-30 15:59:10 +05:30
Angus Gratton
82c6e0628a Merge branch 'test/flash_perf_thr_update_by_grafana_avg_v4.3' into 'release/v4.3'
ci: adjust spi_flash performance value according to more test data (v4.3)

See merge request espressif/esp-idf!14116
2021-06-30 10:06:10 +00:00
Rahul Tank
f1adfaaced Add esp_timer_is_active function for Nimble stack to use esp_timer instead of FreeRTOS timer 2021-06-30 14:53:06 +05:30
Ivan Grokhotkov
c836cef1a5 Merge branch 'bugfix/add_exception_emergency_pool_again_4.3' into 'release/v4.3'
[esp_system]: added __cxx_eh_arena_size_get again (backport 4.3)

See merge request espressif/esp-idf!14132
2021-06-30 07:30:39 +00:00
Michael (XIAO Xufeng)
689fad7372 ci: adjust spi_flash performance value according to more test data
After we have the performance dashboard, we have more data and no longer depend on the threshold to ensure performance.
Set looser performance thresholds to avoid CI failure.
2021-06-30 08:52:03 +08:00
Jiang Jiang Jian
df0ed79cd5 Merge branch 'bugfix/deep_sleep_rtcwdt_rst_issue_v4.3' into 'release/v4.3'
backport v4.3: clear wakeup and reject int raw signal before entry sleep

See merge request espressif/esp-idf!13999
2021-06-29 14:05:06 +00:00
Jiang Jiang Jian
32e8a809f6 Merge branch 'bugfix/correct_gatt_max_macro_name_v4.3' into 'release/v4.3'
Bluedroid: Fixed issue of option not being set due to incorrect macro (v4.3)

See merge request espressif/esp-idf!14180
2021-06-29 09:25:12 +00:00
Kapil Gupta
073b45a8aa wpa_supplicant: Fix crypto related bugs
1. Fix aes_unwrap functionality when hardware acceleration is disabled
2. Fix compilation errors when mbedTLS is disabled.
3. Disable WPA3 when mbedTLS is disabled.
2021-06-29 14:34:48 +08:00
kapil.gupta
ae35d70359 wpa_supplicant: Write Crypto API based on mbedtls
This commit add following crypto changes

1. Update current crypto code with upstream supplicant code
2. Add a proper porting layer to use mbedtls APIs for all the crypto
   operations used by supplicant.

Internal crypto will be used when USE_MBEDLTS flag is disabled
in supplicant's menuconfig.

This commit also removes the clutter in crypto files due to partial
porting of some APIs to mbedtls, all the code from those files have
been removed and rewritten in a generic way, this is inspired from
current upstream code.

This also reduces the lib size significantly, supplicant's lib
size reduces around ~567kb after this change(NB: lib size doesn't
indicate reduction in final bin size).
2021-06-29 14:34:48 +08:00
Rahul Tank
9c8b2b92ad Bluedroid: Fixed issue of option not being set due to incorrect macro
name.
2021-06-29 09:53:35 +05:30
Jiang Jiang Jian
a060ee8e9c Merge branch 'bugfix/wifi_mac_sleep_issue_v4.3' into 'release/v4.3'
backport v4.3: fix wifi mac sleep bug when wifi is initialized multiple times

See merge request espressif/esp-idf!13669
2021-06-29 04:22:59 +00:00
Jiang Jiang Jian
de92d7e15f Merge branch 'mesh/bugfix_fix_esp_mesh_send_block_issue_v4.3' into 'release/v4.3'
mesh/ps: esp_mesh_send is blocked in nodes(layer>=3), when a FIXED-ROOT root is duty master(backport_v4.3)

See merge request espressif/esp-idf!14085
2021-06-29 03:01:22 +00:00
Li Shuai
139afb094e fix wifi mac sleep bug when wifi is initialized multiple times 2021-06-29 10:26:02 +08:00
David Čermák
5b5e46971a Merge branch 'feature/ssl_components_optimize_v4.3' into 'release/v4.3'
tls: Modify tls optimize both mbedtls and wolfssl(backport v4.3)

See merge request espressif/esp-idf!14160
2021-06-28 21:00:34 +00:00
liuhan
6a1938384a tls: Modify tls optimize both mbedtls and wolfssl 2021-06-29 00:19:03 +08:00
Roland Dobai
84a0c67a8c Merge branch 'feature/toolchain_2021r1_v4.3' into 'release/v4.3'
Bring 2021r1 toolchains (backport v4.3)

See merge request espressif/esp-idf!13996
2021-06-28 16:15:05 +00:00
David Čermák
f022863c35 Merge branch 'feature/update_mqtt_submodule_v4.3' into 'release/v4.3'
MQTT: Support for certificate bundle; Client clean-up (v4.3)

See merge request espressif/esp-idf!14159
2021-06-28 14:35:17 +00:00
Jiang Jiang Jian
7339b019f1 Merge branch 'bugfix/wps_wfa_cert_fixes_v4.3' into 'release/v4.3'
wpa_supplicant: Add WPS strict in config option(backport v4.3)

See merge request espressif/esp-idf!13547
2021-06-28 13:28:21 +00:00
David Čermák
b9b7750b78 Merge branch 'feature/sperate_esp_netif_component_v4.3' into 'release/v4.3'
esp_netif: Add CONFIG_PPP_SUPPORT and CONFIG_LWIP_SLIP_SUPPORT to sperate the code(backport v4.3)

See merge request espressif/esp-idf!14158
2021-06-28 09:15:41 +00:00
Angus Gratton
17f30a4aec Merge branch 'feature/parametrize_core_dump_check_v4.3' into 'release/v4.3'
coredump: core dump data check can now be parametrized (v4.3)

See merge request espressif/esp-idf!13773
2021-06-28 07:03:50 +00:00
shenjun
62cc976e0e mesh/ps: esp_mesh_send is blocked in nodes(layer>=3), when a FIXED-ROOT root is duty master 2021-06-28 11:57:10 +08:00
Wang Meng Yang
95ddb84df1 Merge branch 'bugfix/fix_c3_some_bugs_06_15_v4.3' into 'release/v4.3'
Bugfix/fix c3 some bugs 06 15 v4.3

See merge request espressif/esp-idf!14017
2021-06-28 00:00:06 +00:00
Michael (XIAO Xufeng)
c42ee1b790 Merge branch 'bugfix/spi_flash_cs_setup_v4.3' into 'release/v4.3'
spi_flash: fix cs line setup to make the flash driver more stable(backport v4.3)

See merge request espressif/esp-idf!13967
2021-06-27 14:37:08 +00:00
David Čermák
4cf65c3533 Merge branch 'feature/lwip_icmp_v4.3' into 'release/v4.3'
lw-ip: Add CONFIG_LWIP_ICMP and CONFIG_LWIP_ICMP6 to sperate the code(backport v4.3)

See merge request espressif/esp-idf!14110
2021-06-25 18:01:40 +00:00
Chen Yi Qun
d4d308d580 LEDC: fix bit error in ledc_struct.h(backport v4.3) 2021-06-25 20:43:36 +08:00
David Cermak
9de41781d5 MQTT: Support for certificate bundle; Client clean-up
* Closes https://github.com/espressif/esp-idf/issues/7040
* Merges https://github.com/espressif/esp-idf/pull/7041
* Update submodule: git log --oneline 9fdf7b61385633075d5c3b84803f2dd0578d7869..f10321a53b53a146ee299cfecc320b89c0cf6611

Detailed description of the changes:
* Remove unnecessary parentheses
  - esp-mqtt commit: db13533904
  - esp-mqtt MR: espressif/esp-mqtt!101
* outbox: Cleanup all items when connection closes
  - esp-mqtt commit: 1a94efe8b9
  - esp-mqtt MR: espressif/esp-mqtt!104
* Outbox: Removes unnecessary calls to outbox_set_pending
  - esp-mqtt commit: 36a3990404
  - esp-mqtt MR: espressif/esp-mqtt!105
* MQTT: Makes abort connection function void.
  - esp-mqtt commit: 67553aba45
  - esp-mqtt MR: espressif/esp-mqtt!106
* Client: Removes unused defines
  - esp-mqtt commit: eec6f0e17d
  - esp-mqtt MR: espressif/esp-mqtt!100
  - Closes https://github.com/espressif/esp-mqtt/issues/194
* Config: Added support for certificate bundle
  - esp-mqtt commit: 06157be118
  - esp-mqtt MR: espressif/esp-mqtt!98
  - Closes https://github.com/espressif/esp-mqtt/issues/190
* Config: Adds missing field at config struct (path field)
  - esp-mqtt commit: 5b27d1896e
  - esp-mqtt MR: espressif/esp-mqtt!96
* Client: Add support for partial transport writes
  - esp-mqtt commit: d8c9c7a9e7
  - esp-mqtt MR: espressif/esp-mqtt!99
  - Partially addresses https://github.com/espressif/esp-idf/issues/6940
* Client: Add support for Retain flag in messages posted by events
  - esp-mqtt commit: a00a3134c6
  - esp-mqtt MR: espressif/esp-mqtt!99
  - Closes https://github.com/espressif/esp-mqtt/issues/193
* esp-mqtt: Added nullchecks for public APIs
  - esp-mqtt commit: 2f57985c0b
  - esp-mqtt MR: espressif/esp-mqtt!94
  - Closes https://github.com/espressif/esp-mqtt/issues/185
* esp-mqtt: Reduce the includes used in all files
  - esp-mqtt commit: 87fcce72c9
  - esp-mqtt MR: espressif/esp-mqtt!93
* mqtt_outbox: Use STAILQ_FOREACH for outbox_delete_single_expired
  - esp-mqtt commit: ff8e64839a
  - esp-mqtt MR: espressif/esp-mqtt!97
  - Merges https://github.com/espressif/esp-mqtt/pull/187
* Client: Add optimize for depend on ssl
  - esp-mqtt commit: 8f3cac8c36
  - esp-mqtt MR: espressif/esp-mqtt!95
2021-06-25 14:15:49 +02:00
yuanjm
bde386ab94 esp_netif: Correct spelling mistakes 2021-06-25 19:40:22 +08:00
yuanjm
c1fe7fe230 slip: Fix the definition of cplusplus in the code 2021-06-25 19:40:08 +08:00
yuanjm
00d84a3bb2 esp_netif: Add CONFIG_PPP_SUPPORT and CONFIG_LWIP_SLIP_SUPPORT to sperate the code 2021-06-25 19:39:53 +08:00
Wang Meng Yang
3844f6bb84 Merge branch 'bugfix/ble_start_scan_crash_issue_mr_4.3' into 'release/v4.3'
ble start scan crash issue

See merge request espressif/esp-idf!14081
2021-06-25 11:25:36 +00:00
liuhan
8767aa7a4f lwip: Add CONFIG_LWIP_ICMP and CONFIG_LWIP_ICMP6 to sperate the code 2021-06-25 16:36:11 +08:00
zwj
4d3715c836 support hw recorrect 2021-06-25 15:32:50 +08:00
zwj
dc209757b1 - fix data length update failed
- fix no callback when the value being used is the same as the value to be set
2021-06-25 15:32:28 +08:00
zwj
c2c3193209 hid examples support esp32c3/s3 2021-06-25 15:32:17 +08:00
Anton Maklakov
2365242391 tools: stop building if compiler is unsupported 2021-06-25 11:48:26 +07:00
Anton Maklakov
18e7da0285 ci: add debug artifacts for test_idf_tools 2021-06-25 11:48:26 +07:00
Anton Maklakov
99115d7e52 ci: fix test_build_system* fails 2021-06-25 11:48:26 +07:00
Anton Maklakov
b6c91daa68 Update toolchains to esp-2021r1
Adds ESP32-C3 support
    Updates ESP32-S3 overlay
    GDB 9.2 for ESP32-C3 with core dump support
    Linker supports eh-frame-hdr for ESP32-C3
    Newlib 3.3.0 includes fixes for <cmath> funcs, for overflow when TZ calculating, for malloc checks
    Binutils 2.35.1

    Closes https://github.com/espressif/esp-idf/issues/6795
2021-06-25 11:48:25 +07:00
Anton Maklakov
12e882632b make build system: fix build for undefined _lock_* funcs 2021-06-25 11:48:25 +07:00
Anton Maklakov
166281238f make build system: fix ar warning 2021-06-25 11:48:25 +07:00
Anton Maklakov
29b8f3b719 newlib: Add ESP_ROM_HAS_RETARGETABLE_LOCKING capability for C3 and S3 chips 2021-06-25 11:48:25 +07:00
Anton Maklakov
e7b70a2f44 hal: fix ee.get_gpio_in command for esp32-s3 2021-06-25 11:47:59 +07:00
Anton Maklakov
39bf05467a tools: fix parsing regex 2021-06-25 11:47:59 +07:00
Jiang Jiang Jian
02872ada4f Merge branch 'test/wifi_connect_with_full_scan_in_examples_v4.3' into 'release/v4.3'
example: set example wifi scan method to all channel (v4.3)

See merge request espressif/esp-idf!13912
2021-06-25 04:07:47 +00:00
David Čermák
3a588d7d19 Merge branch 'bugfix/mdns_one_shot_multicast_v4.3' into 'release/v4.3'
mdns: Support for One-Shot mDNS queries (v4.3)

See merge request espressif/esp-idf!14130
2021-06-24 18:47:46 +00:00
David Čermák
0e2045006c Merge branch 'feature/netif_dhcp_cleint_server_update_v4.3' into 'release/v4.3'
esp_netif: Add CONFIG_LWIP_DHCPS to sperate the code(back port v4.3)

See merge request espressif/esp-idf!13175
2021-06-24 17:08:40 +00:00
liuhan
424203e411 esp_netif: Add CONFIG_LWIP_DHCPS to sperate the code 2021-06-24 23:20:17 +08:00
Jiang Jiang Jian
460fc7f546 Merge branch 'feature/optimize_firmware_code_size_v4.3' into 'release/v4.3'
esp_wifi: refactor ioctl functions and build wifi lib with -Os to save binary size(Backport v4.3)

See merge request espressif/esp-idf!13265
2021-06-24 12:16:17 +00:00
Jiang Jiang Jian
5ab41b6c5d Merge branch 'bugfix/phy_calib_data_to_nvs_for_c3_s3_v4.3' into 'release/v4.3'
esp_wifi: re-enable phy calibration data to nvs for esp32c3 & esp32s3(V4.3)

See merge request espressif/esp-idf!13625
2021-06-24 09:50:18 +00:00
Kapil Gupta
2a09b9d91f wpa_supplicant: Add WPS strict in config option
WPS strict disables workarounds with different APs and may cause
IOT issues. Remove this as default and introduce as a config option.

Also add changes to declare esp device as single band mobile device since
WFA sniffer was not able to identify it in the certification setup.
2021-06-24 16:15:40 +08:00
Roland Dobai
f12d7c5835 tools: Catch OSError which is raised when the tool is not available
Closes https://github.com/espressif/esp-idf/issues/7140
2021-06-24 09:14:50 +02:00
Wang Meng Yang
cd4c444af9 Merge branch 'bugfix/spp_connect_20_fail_v4.3' into 'release/v4.3'
component_bt: fix spp acceptor deadlock

See merge request espressif/esp-idf!14105
2021-06-24 06:53:05 +00:00
David Čermák
4d08c344bd Merge branch 'bugfix/mdns_interface_del_crash_v4.3' into 'release/v4.3'
mdns: Fix of crash when wifi interface get deleted and mdns receives the packets(Backport v4.3)

See merge request espressif/esp-idf!13857
2021-06-24 05:47:36 +00:00
Wang Meng Yang
951c6cb719 Merge branch 'bugfix/bt_sleep_state_check_assert_failed_for_v4.3' into 'release/v4.3'
Bluetooth: fixed the assertion failure in checking hardware sleep state during wake-up(backport v4.3)

See merge request espressif/esp-idf!14128
2021-06-24 05:23:35 +00:00
David Cermak
0e078d9481 mdns: Support for One-Shot mDNS queries 2021-06-24 06:58:53 +02:00
David Čermák
5abe2b059e Merge branch 'bugfix/lwip_config_dhcp_client_id_v4.3' into 'release/v4.3'
lw-ip: Add config for DHCP client id; Fix DNS server idx assert issue (v4.3)

See merge request espressif/esp-idf!13515
2021-06-24 04:21:38 +00:00
Jakob Hasse
58583f187e [esp_system]: added __cxx_eh_arena_size_get again
* This function has been accidentally removed.
  It is necessary to provide the emergency
  exception memory pool size for C++ code.
  Since our libstdc++ always has exceptions
  enabled, this function must exist here even if
  -fno-exception is set for user code.
2021-06-24 12:19:34 +08:00
Marius Vikhammer
8744cb880b docs: add rf calibration docs for S2 and C3 2021-06-24 11:33:20 +08:00
chenjianxing
3423cc2937 esp_wifi: re-enable phy calibration data to nvs for esp32c3 & esp32s3 2021-06-24 11:33:19 +08:00
Zhang Jun Hao
306b035a51 esp_wifi: refactor ioctl functions and build wifi lib with -Os to save binary size 2021-06-24 10:11:09 +08:00
wangmengyang
ffe43f2c45 component/bt: fixed the assert in checking hardware sleep state during wake-up
The hardware sleep state change can take some time after wake-up interrupt. Use busy waiting instead of directly assert
2021-06-24 08:28:24 +08:00
Wang Meng Yang
ecc86b3f22 Merge branch 'bugfix/rx_irq_flooding_during_scan_v4.3' into 'release/v4.3'
Bluetooth: fixed interrupt flooding during scan

See merge request espressif/esp-idf!14104
2021-06-24 00:12:59 +00:00
David Čermák
6ff1d8c828 Merge branch 'bugfix/eth_w5500_io_intr_missed_v4.3' into 'release/v4.3'
esp_eth: w5500: Improve GPIO interrupt processing (v4.3)

See merge request espressif/esp-idf!13863
2021-06-23 17:54:30 +00:00
Mahavir Jain
0da3b397f2 Merge branch 'bugfix/otatool_wrong_switch_ota_partition_slots_v4.3' into 'release/v4.3'
otatool: Fix incorrect using otadata.seq&crc in switch_ota_partition cmd (v4.3)

See merge request espressif/esp-idf!13366
2021-06-23 15:37:40 +00:00
David Čermák
70912cb4b2 Merge branch 'feature/optimize_mqtt_option_v4.3' into 'release/v4.3'
transport: Add CONFI_WS_TRANSPORT for optimize the code size(backport v4.3)

See merge request espressif/esp-idf!14109
2021-06-23 15:00:47 +00:00
Krzysztof Budzynski
d42499a5db Merge branch 'docs/programming_guide_c3_update_twai_v4.3' into 'release/v4.3'
Update TWAI driver docs and registers for esp32c3 (backport v4.3)

See merge request espressif/esp-idf!13289
2021-06-23 14:41:07 +00:00
Jiang Jiang Jian
46144f7093 Merge branch 'bugfix/fix_amsdu_fragment_vulnerability_v4.3' into 'release/v4.3'
esp_wifi: fix amsdu & fragment vulnerabilities(v4.3)

See merge request espressif/esp-idf!13799
2021-06-23 13:38:27 +00:00
Ivan Grokhotkov
9175c9b706 Merge branch 'bugfix/idfpy_global_action_callbacks_order_v4.3' into 'release/v4.3'
idf.py: Run global_action_callbacks in predictable order (v4.3)

See merge request espressif/esp-idf!13681
2021-06-23 13:28:21 +00:00
Angus Gratton
b2d728075d Merge branch 'bugfix/esp_partition_get_sha256_v4.3' into 'release/v4.3'
bootloader_support: Fix bootloader_common_get_sha256_of_partition when CHECK_SIGNATURE is on (v4.3)

See merge request espressif/esp-idf!13665
2021-06-23 12:45:55 +00:00
Martin Gaňo
beba6f954c Temporarily set LANG to en code to avoid RuntimeError
Closes https://github.com/espressif/esp-idf/issues/7173
2021-06-23 14:43:01 +02:00
KonstantinKondrashov
1d23b83d3b otatool: Fix incorrect using otadata.seq&crc in switch_ota_partition cmd
Closes: https://github.com/espressif/esp-idf/issues/6773
2021-06-23 19:28:40 +08:00
Darian Leung
9b014138bf Update TWAI driver docs and registers for esp32c3
This commit updates the documentation and register struct
of the TWAI driver for the ESP32-C3. Note that the register
fields for ESP32-S3 have also been updated.
2021-06-23 19:26:16 +08:00
wangmengyang
4657069afd components/bt: Disable CS-RXDONEMSK to avoid RX interrupt flooding during scan event in Wi-Fi coexistence scenario 2021-06-23 19:14:41 +08:00
Ivan Grokhotkov
b67e388281 Merge branch 'feature/prevent_unwind_code_linking_4.3' into 'release/v4.3'
[C++]: prevent unwind code linking (backport 4.3)

See merge request espressif/esp-idf!13800
2021-06-23 08:32:17 +00:00
Omar Chebib
5186a968be coredump: core dump data check can now be parametrized
Core dump integrity check can now be parametrized through menuconfig.
It can be performed on boot or ignored. When core dump is activated
in the menuconfig, the user can still check the core dump at any time
with the function `esp_core_dump_image_check()`.

Fix a bug where `esp_core_dump_image_get()` was not accessible
when core dump was disabled.

Closes https://github.com/espressif/esp-idf/issues/6620
2021-06-23 16:17:15 +08:00
418fed12df espcoredump erase review comments 2021-06-23 16:17:15 +08:00
5d4e084669 coredump: Implemented esp_core_dump_image_erase() and esp_core_dump_image_get() now returns ESP_ERR_NOT_FOUND when partition is blank
Closes https://github.com/espressif/esp-idf/pull/6631
2021-06-23 16:17:12 +08:00
Ivan Grokhotkov
a79a8e4215 Merge branch 'bugfix/failing_python_wheels_download_v4.3' into 'release/v4.3'
Tools: Remove dependency on idf-python and idf-python-wheels (v4.3)

See merge request espressif/esp-idf!13221
2021-06-23 08:12:18 +00:00
Ivan Grokhotkov
e080f43245 Merge branch 'bugfix/dfu_split_large_bins_v4.3' into 'release/v4.3'
tools: Split up large binaries into smaller chunks in the DFU binary (v4.3)

See merge request espressif/esp-idf!13793
2021-06-23 08:11:59 +00:00
He Yin Ling
698964f4b9 example: set example wifi scan method to all channel:
in CI example test we could have runners with same SSID in the same lab.
Use scan on all channel will let DUT connect to the AP with best RSSI.
2021-06-23 13:58:42 +08:00
David Cermak
c93298c31d lwip: Add config for DHCP client id; Fix DNS server idx assert issue
This commit brings two esp-lwip fixes to IDF:

1) Add configuration to disable DHCP client identification
2195f7416f
This config could be used to disable option 61 in DHCP packets, so that
clients will be identified by their  chaddr only.
(This is the lwip upstream original behaviour)

2) Fix server_idx increasing to DNS_MAX_SERVERS and trigger the LWIP_ASSERT
5a567d52f7
When lwip doesn't have DNS server and resolve a domain address, the server_idx
will increase to DNS_MAX_SERVERS, which will trigger the LWIP_ASSERT and make device crash.

Closes https://github.com/espressif/esp-idf/issues/6878
2021-06-23 12:52:18 +08:00
Suren Gabrielyan
2ee5178667 mdns: Fix of crash when wifi interface get deleted and mdns receives the packets
Closes https://github.com/espressif/esp-idf/issues/6973
2021-06-23 12:50:11 +08:00
David Cermak
d09f6cac24 esp_eth: Improve GPIO interrupt processing in w5500 driver
Increase the interrupt reassert level timing so the chances of missing
two consecutive events are minimal.
Enable only SIR_RECV interrupt event, so the SEND events are not used
for GPIO signal.
2021-06-23 12:41:45 +08:00
David Cermak
1f2af24118 esp_eth: Recover the w5500 driver from missed io interrupt
If the GPIO interrupt is re-asserted too quickly it could be missed. If this happens the driver goes silent and never receives any data. Recover by periodic checks of the IO signal level
2021-06-23 12:41:45 +08:00
Mahavir Jain
b007024c62 Merge branch 'bugfix/heap_tracing_build_issue_for_c3_v4.3' into 'release/v4.3'
heap: fix build issue with HEAP_TRACING config for C3 (v4.3)

See merge request espressif/esp-idf!14075
2021-06-23 03:45:39 +00:00
liuhan
63e489255f transport: Add CONFI_WS_TRANSPORT for optimize the code size 2021-06-23 11:26:56 +08:00
David Čermák
1d05bb7c01 Merge branch 'bugfix/esp_netif_ppp_set_auth_fail_v4.3' into 'release/v4.3'
esp_netif: Fix failing ppp_set_auth() due to wrong arg check (v4.3)

See merge request espressif/esp-idf!13864
2021-06-22 19:32:40 +00:00
David Čermák
4e120e36eb Merge branch 'bugfix/eth_w5500_4byte_corruption_v4.3' into 'release/v4.3'
esp_eth: Fix w5500 read register operations (v4.3)

See merge request espressif/esp-idf!13862
2021-06-22 19:07:40 +00:00
David Čermák
2c9d8ac64e Merge branch 'feature/sperate_slip_component_v4.3' into 'release/v4.3'
esp_netif: Add CONFIG_LWIP_SLIP_SUPPORT to sperate slip component (backport v4.3)

See merge request espressif/esp-idf!13633
2021-06-22 16:23:04 +00:00
David Čermák
a59eccdd9e Merge branch 'bugfix/fix_disable_ipv6_build_fail_v4.3' into 'release/v4.3'
ppp: Fix disable IPv6 will make esp_netif_lwip_ppp build fail(backport v4.3)

See merge request espressif/esp-idf!13835
2021-06-22 15:39:41 +00:00
Island
7406312f11 Merge branch 'bugfix/start_enc_proc_mic_err_fix_release_4p3' into 'release/v4.3'
bt/component: Fix MIC error issue during start_encryption procedure in esp32c3 ble controller (release/v4.3)

See merge request espressif/esp-idf!14057
2021-06-22 12:54:38 +00:00
xiongweichao
15dcd2eca1 fix spp acceptor deadlock
Closes: https://github.com/espressif/esp-idf/issues/6948
2021-06-22 20:37:51 +08:00
Wang Meng Yang
3b88d9231b Merge branch 'bugfix/fix_a2dp_sink_blocked_v4.3' into 'release/v4.3'
Bugfix/Fix a2dp Sink Blocked Bugs[backport v4.3]

See merge request espressif/esp-idf!14010
2021-06-22 12:28:03 +00:00
David Cermak
2fb93e6a54 esp_eth: Fix w5500 to break from potentially infinite tx loop
The issue typically happens for link-down during Tx. Added two retry levels, one before checking the sanity of the w5500 phy register and another for the Tx done itself (if the device is in the sane state)

Closes https://github.com/espressif/esp-idf/issues/6233
2021-06-22 17:23:07 +08:00
David Cermak
8534799d66 esp_eth: Fix w5500 to correctly read registers on -Os
Reading SPI data may come in 4-byte units and thus result in unwanted
overwrites if smaller size registers read, especially if multiple placed
one after another. Fixed by using direct reads to `trans` structure for
sizes smaller or equal to 4.

Closes https://github.com/espressif/esp-idf/issues/6579
2021-06-22 17:23:07 +08:00
sushant.chougule
e6115da7e9 bt/component: Fix MIC error issue during start_encryption procedure in esp32c3 ble controller 2021-06-22 17:17:29 +08:00
Angus Gratton
97f007c08c Merge branch 'bugfix/add-MAXNAMLEN-definition' into 'release/v4.3'
newlib: add the definition of MAXNAMLEN in sys/dirent.h (backport v4.3)

See merge request espressif/esp-idf!13757
2021-06-22 07:12:56 +00:00
Wang Meng Yang
976594b853 Merge branch 'bugfix/bta_hf_client_co_cb_ptr_macro_v4.3' into 'release/v4.3'
bugfix/bta_hf_client_co_cb_ptr requires HFP_DYNAMIC_MEMORY macro to be used

See merge request espressif/esp-idf!14037
2021-06-22 04:53:19 +00:00
Angus Gratton
efb4784d78 Merge branch 'bugfix/link_gcov_rtio_backport_v4.3' into 'release/v4.3'
Bugfix/link gcov rtio backport v4.3

See merge request espressif/esp-idf!13833
2021-06-22 03:14:41 +00:00
Anton Maklakov
6d708d50d9 Merge branch 'bugfix/ci_panic_test_timeout_v4.3' into 'release/v4.3'
ci panic test: Update the panic test timeout from 1s to 10s (v4.3)

See merge request espressif/esp-idf!14083
2021-06-22 02:50:47 +00:00
Angus Gratton
6ee42ba036 Merge branch 'feature/update_libsodium_submodule_v4.3' into 'release/v4.3'
libsodium: Update library to v1.0.18 (v4.3)

See merge request espressif/esp-idf!13081
2021-06-22 02:38:03 +00:00
yuanjm
83e9c1d28d esp_netif: Add CONFIG_LWIP_SLIP_SUPPORT to sperate slip component 2021-06-22 10:12:53 +08:00
KonstantinKondrashov
6a50197246 bootloader: Fix a wrong offset in image_load after refactoring 2021-06-22 08:30:43 +08:00
KonstantinKondrashov
2d439ba001 simple_ota_example: Adds sha256 check for app images 2021-06-22 08:30:43 +08:00
KonstantinKondrashov
54ae758b77 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-06-22 08:30:43 +08:00
KonstantinKondrashov
99af5e9a71 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-06-22 08:30:41 +08:00
Angus Gratton
362c9234dc Merge branch 'bugfix/fix_ld_relinking_on_modification_v4.3' into 'release/v4.3'
build: fix linker scripts edition not triggering a rebuild (backport v4.3)

See merge request espressif/esp-idf!13450
2021-06-22 00:29:11 +00:00
Angus Gratton
9f6e09d0d3 Merge branch 'bugfix/flash_rodata_any_alignement_v4.3' into 'release/v4.3'
build: Fix cache issue and add dedicated section for (Custom) App version info (backport v4.3)

See merge request espressif/esp-idf!13448
2021-06-22 00:23:49 +00:00
Angus Gratton
fafaeb195c ci panic test: Update the panic test timeout from 3s to 10s
If it takes longer than 10s to respond, it's probably not because of the
runner...
2021-06-22 09:37:43 +10:00
Angus Gratton
c5fc90f579 ci: Extend timeout for initial gdbstub commands in panic tests
Theory is that on the runner, in rare cases, gdb may need more than
1 second to load and start responding to commands.

However it's possible these timeouts are due to some other problem
(like gdb failing)
2021-06-22 09:37:29 +10:00
“YangZhao”
fe9ecf2f7a If the scan window set as 4 slots and the scan interval set as 5 slots
,then the device will crash when starting scanning.This commit is to fix
this bug.
2021-06-21 21:56:03 +08:00
liqigan
a6b1fda209 fix a2dp sink RxSbcQ bugs
Closes https://github.com/espressif/esp-idf/issues/6712
Closes https://github.com/espressif/esp-idf/issues/7100
2021-06-21 20:05:41 +08:00
Island
7182219718 Merge branch 'feat/ble_mesh_make_unprov_beacon_interval_configurable_v4.3' into 'release/v4.3'
Feat/ble mesh make unprov beacon interval configurable (v4.3)

See merge request espressif/esp-idf!14061
2021-06-21 11:39:47 +00:00
Juraj Michálek
e55985335d tools: remove dependency of idf-python and idf-python-wheels
Closes IDFGH-5097
Closes https://github.com/espressif/esp-idf/issues/6881
2021-06-21 11:29:17 +02:00
yuanjm
b2dfa2ed85 ppp: Fix disable IPv6 will make esp_netif_lwip_ppp build fail
Closes https://github.com/espressif/esp-idf/issues/6935
2021-06-21 17:23:58 +08:00
Mahavir Jain
46d04231e6 docs/en: update heap debugging guide for tracing on RISC-V architecture 2021-06-21 14:40:07 +05:30
Mahavir Jain
1c0fb793b4 test_apps: add HEAP_TRACING configuration to build tests 2021-06-21 14:40:07 +05:30
Mahavir Jain
dd73ba9601 heap: use hal specific API to get cpu cycles count
This fixes compilation issue of heap tracing feature for RISC-V
architecture.
2021-06-21 14:40:07 +05:30
Anton Maklakov
49c6b790c6 Merge branch 'bugfix/loadable_elf_test_eco3_v4.3' into 'release/v4.3'
tests: gdb_loadable_elf: adjust the breakpoint location for ESP32 ECO3 (v4.3)

See merge request espressif/esp-idf!14039
2021-06-21 05:35:27 +00:00
wangjialiang
6203a22e2c ble_mesh: stack: Fix crash for net_key_del when subnet is NULL 2021-06-21 11:19:31 +08:00
wangjialiang
c250bbc3fb ble_mesh: stack: Make unprovisioned beacon interval configurable.
Closes https://github.com/espressif/esp-idf/issues/6722
2021-06-21 11:19:01 +08:00
Island
8c909d3319 Merge branch 'bugfix/AuthValue_leak_v4.3' into 'release/v4.3'
ble_mesh: stack: Fix AuthValue Leak and Predictable AuthValue in Bluetooth... (v4.3)

See merge request espressif/esp-idf!14024
2021-06-21 03:08:55 +00:00
liaowenhao
2060f63130 bugfix/bta_hf_client_co_cb_ptr requires HFP_DYNAMIC_MEMORY macro to be used
Closes https://jira.espressif.com:8443/browse/IDFGH-5399
2021-06-21 10:55:34 +08:00
laokaiyao
5f184c6556 driver/i2c: add notes to i2c deleteing function v4.3 2021-06-21 10:07:40 +08:00
Melissa LeBlanc-Williams
b6826d8878 dreiver/i2c: delete i2c cmd_mux semaphore more cleanly v4.3
Merges https://github.com/espressif/esp-idf/pull/6846
2021-06-21 10:07:40 +08:00
Wang Meng Yang
51aaf310fd Merge branch 'bugfix/active_ext_scan_performance_in_coex_v4.3' into 'release/v4.3'
bugfix/active_ext_scan_performance_in_coex_v4.3

See merge request espressif/esp-idf!13544
2021-06-19 02:28:13 +00:00
Ivan Grokhotkov
84e4127f0c tests: gdb_loadable_elf: adjust the breakpoint location for ESP32 ECO3
The previous location was the return from the first ets_printf call
that prints ROM sign-on message. Since the main function was patched
in ECO3, the new address no longer works — there is no instruction at
0x40007901 in ECO3 ROM. This could be solved by setting two
breakpoints (one would work for ECO <=2, the other for ECO3), but we
would need to remove the unused breakpoint later.
Fix this by setting the breakpoint at ets_printf. This means that when
debugging a loadable ELF the ROM sign-on message will no longer be
shown, but this doesn't seem to be an issue.
2021-06-18 14:38:43 +02:00
Aditya Patwardhan
694f7e349f libsodium: Update library to v1.0.18 2021-06-18 16:57:37 +08:00
Angus Gratton
e9fd883f50 Merge branch 'bugfix/esp32_u4wdh_quad_io_v4.3' into 'release/v4.3'
bootloader: Fix selection of Quad I/O modes on ESP32-U4WDH chip (v4.3)

See merge request espressif/esp-idf!13876
2021-06-18 07:16:50 +00:00
wangjialiang
36cb29280a ble_mesh: stack: Fix AuthValue Leak and Predictable AuthValue in Bluetooth Mesh Provisioning Leads to MITM 2021-06-18 14:16:07 +08:00
Mahavir Jain
f819a4fffa Merge branch 'feature/update_esp_cryptoauthlib_v4.3' into 'release/v4.3'
secure_element: Update esp-cryptoauthlib submodule latest version. (v4.3)

See merge request espressif/esp-idf!13836
2021-06-18 06:15:36 +00:00
Island
cf3445db01 Merge branch 'bugfix/impersonation_attacks_and_AuthValue_disclosure_v4.3' into 'release/v4.3'
ble_mesh: stack: Add check the value of Provisioning Random & Confirmation... (v4.3)

See merge request espressif/esp-idf!13922
2021-06-18 03:33:15 +00:00
wangmengyang
ef6910467c components/bt: fixed performance issue for extended active scan in coexistence scenario: use the same priority for Rx of AUX_ADV_IND and AUX_SCAN_RSP 2021-06-17 19:34:03 +08:00
Island
4d20919ff3 Merge branch 'bugfix/ble_mesh_sensor_server_model_not_start_on_esp32s3_v4.3' into 'release/v4.3'
ble_mesh: stack: Add sdkconfig.defaults.esp32s3 for esp32s3 (v4.3)

See merge request espressif/esp-idf!13910
2021-06-17 07:42:08 +00:00
David Čermák
777907f8ef Merge branch 'bugfix/start_emac_after_phy_reset_v4.3' into 'release/v4.3'
esp_eth: restart negotiation in esp_eth_start (v4.3)

See merge request espressif/esp-idf!13698
2021-06-17 07:13:31 +00:00
He Yin Ling
1508b9ff03 Merge branch 'bugfix/enable_pmf_in_iperf_test_v4.3' into 'release/v4.3'
iperf example: set PMF capable to connect to PMF required APs (v4.3)

See merge request espressif/esp-idf!13869
2021-06-17 06:16:48 +00:00
Aditya Patwardhan
92a5c34a61 secure_element: Update esp-cryptoauthlib submodule latest version.
*This updates the cryptoauthlib version in the esp-cryptoauthlib to cryptoauthlib-v3.3.1
2021-06-17 13:52:03 +08:00
morris
5c3d5faeff i2s: fix driver uninstall issue 2021-06-17 12:57:58 +08:00
Michael (XIAO Xufeng)
9249f05fc9 spi_flash: reverted unwilling cs_setup argument
Partially reverted 08f1bbe0c7.

The host should have this flexibility, which is consistent to the cs_hold argument.

However, the user should know as less as possible about the host.
So the wrapper layer (esp_flash_spi_init.c) should cover this, helping to set cs_setup to 1, to meet the common requirements.
2021-06-17 12:26:11 +08:00
He Yin Ling
cb8d4585b2 Merge branch 'test/support_multiple_targets_for_iperf_example_test_v4.3' into 'release/v4.3'
test: support multiple targets for iperf example test (v4.3)

See merge request espressif/esp-idf!13617
2021-06-17 03:48:12 +00:00
He Yin Ling
850d8170f5 Merge branch 'ci/ttfw_fix_dut_exception_not_added_to_junit_report_v4.3' into 'release/v4.3'
ttfw: fix DUT exception not added to junit report (v4.3)

See merge request espressif/esp-idf!13611
2021-06-17 03:36:02 +00:00
ChenJianxing
f2676b8e59 esp_wifi: fix amsdu & fragment vulnerabilities 2021-06-17 10:44:06 +08:00
Li Shuai
21b3068b77 deep sleep: clear wakeup and reject int raw signal before entry sleep 2021-06-17 10:41:22 +08:00
Angus Gratton
b5256118ff Merge branch 'bugfix/riscv_stack_alignment_v4.3' into 'release/v4.3'
core: fix cases where riscv SP were not 16 byte aligned (v4.3)

See merge request espressif/esp-idf!13653
2021-06-17 02:09:34 +00:00
Angus Gratton
9d50e27aff Merge branch 'bugfix/cmake_ulp_reserved_size_v4.3' into 'release/v4.3'
ulp: Fix bug where ULP linker script not regenerated for new config (v4.3)

See merge request espressif/esp-idf!13628
2021-06-17 00:06:30 +00:00
Angus Gratton
f40f6b4bb1 Merge branch 'bugfix/ci_ble_wifi_example_test_v4.3' into 'release/v4.3'
Fix for ble and wifi example test (v4.3)

See merge request espressif/esp-idf!13802
2021-06-16 23:24:50 +00:00
Mahavir Jain
a213b289be Merge branch 'feature/extmem_alloc_for_s2_v4.3' into 'release/v4.3'
External memory allocation policy support  for ESP32-S2 (GitHub PR) (v4.3)

See merge request espressif/esp-idf!13619
2021-06-16 16:34:13 +00:00
wangjialiang
6300f7791a ble_mesh: stack: Add check the value of Provisioning Random & Confirmation sent and received by provisioner 2021-06-16 21:26:38 +08:00
Krzysztof Budzynski
a6f4f7399a Merge branch 'bugfix/doc_no_secure_boot_sig_verify_v4.3' into 'release/v4.3'
secure boot doc: Clarify limits for verifying signed updates without secure boot (v4.3)

See merge request espressif/esp-idf!13983
2021-06-16 09:56:19 +00:00
David Čermák
3e28c250d7 Merge branch 'bugfix/tcp_transport_tls_no_mem_v4.3' into 'release/v4.3'
tcp_transport: Fix error handling of esp_tls_init() (v4.3)

See merge request espressif/esp-idf!13676
2021-06-16 09:50:10 +00:00
Wang Meng Yang
a75b53954b Merge branch 'bugfix/btdm_set_discoverable_after_create_server_v4.3' into 'release/v4.3'
components/bt: Set discoverable after create server

See merge request espressif/esp-idf!13725
2021-06-16 09:01:11 +00:00
Wang Meng Yang
0c3173874e Merge branch 'bugfix/bt_impersonation_passkey_fix_v4.3' into 'release/v4.3'
Bluedroid: Check only x component of passkey to avoid passkey impersonation attack. (v4.3)

See merge request espressif/esp-idf!13758
2021-06-16 08:59:13 +00:00
Wang Meng Yang
b3d17474d6 Merge branch 'bugfix/invalid_feat_page_exec_v4.3' into 'release/v4.3'
bt controller: Fixed handling for invalid feature page. (v4.3)

See merge request espressif/esp-idf!13566
2021-06-16 08:57:36 +00:00
Angus Gratton
c0c0497de3 ulp: Fix bug where ULP linker script not regenerated for new config
ULP linker script relies on value of CONFIG_ESP32S2_ULP_COPROC_RESERVE_MEM,
when this value changes in config then it should be regenerated.
2021-06-16 16:54:03 +08:00
Angus Gratton
94f447f599 Merge branch 'bugfix/partition_table_integrity_check_v4.3' into 'release/v4.3'
paritition_table: Verify the partition table md5sum when loading in the app (v4.3)

See merge request espressif/esp-idf!13582
2021-06-16 08:49:55 +00:00
Angus Gratton
fdec7348e2 Merge branch 'bugfix/override_cmake_python_v4.3' into 'release/v4.3'
cmake: Minor Python CMake build fixes (v4.3)

See merge request espressif/esp-idf!13191
2021-06-16 08:48:59 +00:00
David Cermak
054770407e esp_netif: Fix failing ppp_set_auth() due to wrong arg check
Closes https://github.com/espressif/esp-idf/issues/7047
2021-06-16 13:59:35 +08:00
Jiang Jiang Jian
7e8afda8b2 Merge branch 'bugfix/fix_crash_when_csi_enable_v4.3' into 'release/v4.3'
esp_wifi: fix crash when csi enable(v4.3)

See merge request espressif/esp-idf!13925
2021-06-16 04:38:41 +00:00
Angus Gratton
d8966087b1 Merge branch 'ci/unify_all_target_test_artifacts_paths_v4.3' into 'release/v4.3'
ci: unify target test artifacts to all .log file and $LOG_PATH (v4.3)

See merge request espressif/esp-idf!13846
2021-06-16 04:25:36 +00:00
Angus Gratton
a45fa929c2 Merge branch 'bugfix/ulp_riscv_unintended_wake_v4.3' into 'release/v4.3'
ulp: unintended wakeup in ulp_riscv (v4.3)

See merge request espressif/esp-idf!13630
2021-06-16 04:25:29 +00:00
Angus Gratton
2baf0e626a Merge branch 'bugfix/fix_mbedtls_cmake_warning_v4.3' into 'release/v4.3'
mbedtls: fixed CMake build warning (v4.3)

See merge request espressif/esp-idf!13590
2021-06-16 04:20:46 +00:00
Angus Gratton
c0e07f8975 Merge branch 'bugfix/pthread_join_debug_log_v4.3' into 'release/v4.3'
pthread: Fix possible deadlock when using pthread_join() and Debug log level (v4.3)

See merge request espressif/esp-idf!13776
2021-06-16 04:19:56 +00:00
Angus Gratton
6507d1d892 secure boot doc: Clarify limits for verifying signed updates without secure boot
Closes https://github.com/espressif/esp-idf/issues/7080
2021-06-16 14:04:49 +10:00
Mahavir Jain
0b2f0a3213 bt: use generic SPIRAM config option for memory alloc policy 2021-06-16 11:11:55 +08:00
Marcel Kottmann
4c8ae4fd56 mbedtls: Allow external mem alloc for ESP32-S2
Closes https://github.com/espressif/esp-idf/pull/6998
Closes IDFGH-5226
2021-06-16 11:11:55 +08:00
Krzysztof Budzynski
e660e32a6e Merge branch 'bugfix/check_readme_links_no_exception_v4.3' into 'release/v4.3'
check_readme_links: remove throwing of exception before exit (v4.3)

See merge request espressif/esp-idf!13345
2021-06-16 02:59:28 +00:00
Krzysztof Budzynski
9fde997b5c Merge branch 'enhance/update-vscode-setup-docs-v4.3' into 'release/v4.3'
docs: Fix vscode extension setup links (backport v4.3)

See merge request espressif/esp-idf!13322
2021-06-16 02:56:46 +00:00
Brian Alberto Ignacio Reyes
f50a8cc7b5 docs: Fix vscode extension setup links (backport v4.3) 2021-06-16 10:56:40 +08:00
Krzysztof Budzynski
21dfe81a68 Merge branch 'bugfix/doc_freertos_task_stack_bytes_v4.3' into 'release/v4.3'
freertos docs: Specify that uxTaskGetStackHighWaterMark() returns bytes not words (v4.3)

See merge request espressif/esp-idf!13627
2021-06-16 02:54:35 +00:00
Krzysztof Budzynski
28010d4ef7 Merge branch 'docs/update_c3_devkit_user_guides' into 'release/v4.3'
Update Strapping Pins in ESP32-C3 Devkit User Guides (backport v4.3)

See merge request espressif/esp-idf!13768
2021-06-16 02:53:33 +00:00
Krzysztof Budzynski
09d7409f44 Merge branch 'feature/link_idf_common_docs_v4.3' into 'release/v4.3'
docs: Linking to a page to help navigate to documentation for specific ESP32-x chip (v4.3)

See merge request espressif/esp-idf!13842
2021-06-16 02:53:00 +00:00
Krzysztof Budzynski
ce9f195abe Merge branch 'doc/nvs_get_used_entry_count__clarify_4.3' into 'release/v4.3'
[doc]: NVS documentation updates  (backport 4.3)

See merge request espressif/esp-idf!13821
2021-06-16 02:52:15 +00:00
He Yin Ling
05f780cdb2 example: set PMF capable to connect to PMF required APs 2021-06-16 09:51:16 +08:00
He Yin Ling
528d162da5 ttfw: fix DUT exception not added to junit report 2021-06-16 09:50:09 +08:00
He Yin Ling
6fe2da9f89 ci: save built binaries could be tested locally:
we have some test cases not executed in CI. we need to save those
binaries as artifacts so we can test locally.
2021-06-16 09:49:23 +08:00
He Yin Ling
381464d1cf test: support multiple targets for iperf example test 2021-06-16 09:49:23 +08:00
Angus Gratton
04e4bdcff5 Merge branch 'bugfix/enable_wifi_prov_example_c3_v4.3' into 'release/v4.3'
CI: re-enable wifi prov examples for C3 (v4.3)

See merge request espressif/esp-idf!13605
2021-06-16 00:50:33 +00:00
Angus Gratton
2a6e69c9f3 Merge branch 'update/version_4_3_0' into 'release/v4.3'
Update version to 4.3.0

See merge request espressif/esp-idf!13936
2021-06-15 23:29:18 +00:00
Wang Fang
9ac6b53760 docs: Correct uart default pin names and provid more information about ESP-Prog board 2021-06-15 15:32:22 +08:00
Cao Sen Miao
9c7d2c7595 spi_flash: fix cs line setup to make the flash driver more stable 2021-06-15 15:27:51 +08:00
Wang Fang
1903d8587a docs: provide the link to pcb layout for ethernet board v1.2 and fix a typo in freetos/task 2021-06-15 15:26:10 +08:00
Zhang Jun Hao
e86ca4edc2 esp_wifi: fix crash when csi enable 2021-06-10 16:00:01 +08:00
He Yin Ling
c9646ff0be versions: Update version to 4.3.0 2021-06-10 14:20:45 +08:00
wangjialiang
b6bea34706 ble_mesh: stack: Add sdkconfig.defaults.esp32s3 for esp32s3
Closes https://github.com/espressif/esp-idf/issues/7061
2021-06-09 12:51:52 +00:00
He Yin Ling
88c2b69c68 Merge branch 'bugfix/example_test_socket_issue_4.3' into 'release/v4.3'
CI: fix connection failures in asio example tests (4.3)

See merge request espressif/esp-idf!13903
2021-06-09 10:33:43 +00:00
Chen Yudong
94a54d574b CI: fix connection failures in asio example tests 2021-06-08 17:00:55 +08:00
xiewenxiang
84b157e2ea component/bt: fix enable gattc nvs cache lead to crash 2021-06-07 17:33:06 +08:00
Angus Gratton
22a02656b7 bootloader: Fix selection of Quad I/O modes on ESP32-U4WDH chip
Closes https://github.com/espressif/esp-idf/issues/6191
2021-06-07 14:53:43 +10:00
Sergei Silnov
cde3860d21 Run global_action_callbacks in predictable order 2021-06-04 15:56:41 +00:00
laokaiyao
e8ad727b80 examples/simple_sniffer: add SPI work mode to SD card to support all chips 2021-06-04 05:00:02 +00:00
Ivan Grokhotkov
d7e8537dfa examples/simple_sniffer: only enable apptrace if JTAG is selected
Fixes compilation of this example on esp32c3, where apptrace is not
yet supported.
2021-06-04 05:00:02 +00:00
David Cermak
c7de165ccb tcp_transport: Fix error handling of esp_tls_init() 2021-06-03 13:47:41 +00:00
Fu Hanxi
b53d874dac ci: unify target test artifacts to all .log file and $LOG_PATH 2021-06-03 15:21:56 +08:00
Krzysztof
186fcc328b docs: Linking to a page that helps navigate to documentation for specific ESP32-x chip 2021-06-03 08:17:50 +02:00
Alexey Gerenkov
e900224343 gcov: Fixes not linked gcov rtio functions 2021-06-02 22:05:15 +03:00
Angus Gratton
a560a506f2 Merge branch 'bugfix/rtc_retain_mem_addr_v4.3' into 'release/v4.3'
bootloader: Fix "skip validate in deep sleep" on ESP32 & ESP32-S2 (v4.3)

See merge request espressif/esp-idf!13812
2021-06-02 08:55:20 +00:00
Marius Vikhammer
57442c38bd core: fix cases where riscv SP were not 16 byte aligned
RISC-V stack pointer should always be 16 byte aligned, but for some cases where
we were doing manual SP manipulation this was not always the case.
2021-06-02 16:02:10 +08:00
liaowenhao
7e4f7867f0 bugfix/fix crash when lmp flooding 2021-06-02 15:31:33 +08:00
Jakob Hasse
5395f451a2 [doc]: NVS documentation updates
* Move nvs flash README to common doc directory
* correct markup of functions and types in text
  from old README
* Better comment of nvs_get_used_entry_count()
* Mention C++ example in API reference
* Used target instead of hard code ESP32
* Note that strings can only span one page
* Reflect that item types have been moved
* Some clarification about nvs_commit()
* Improved reference to the ESP Partition API
* fixed little mistake in documenting-code.rst
* Change of nvs_open_from_part() to
  nvs_open_from_partition() reflected in docs
* Corrected documentation of
  NVSHandle::get_string(), NVSHandle::get_blob()
  and NVSHandle::get_item_size().

* Closes DOC-165
* Closes IDF-1563
* Closes IDF-859
* Closes https://github.com/espressif/esp-idf/issues/6123
2021-06-02 13:34:35 +08:00
baohongde
b41108b60a components/bt: Set discoverable after create server 2021-06-02 03:03:07 +00:00
baohongde
f0679fe175 components/bt: Delete BLE ADV priority high 2021-06-01 16:19:24 +00:00
Chinmay Chhajed
b7ab286edf bt controller: Fixed handling for invalid feature page. 2021-06-01 16:19:24 +00:00
Renz Bagaporo
0e904b3f7e ulp: clear rtc int at initialization
Closes https://github.com/espressif/esp-idf/issues/6654
2021-06-01 21:41:12 +08:00
Wang Ning
9dafde59b1 docs/update_strapping_pins_in_c3_devkit_user_guides 2021-06-01 10:10:45 +00:00
Angus Gratton
1967e53f4a 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 19:05:09 +10:00
Jiang Jiang Jian
98c20ce417 Merge branch 'bugfix_fix_ble_ANON_ADV_addr_err_v4.3' into 'release/v4.3'
Fixed ANON_ADV address error(backport v4.3)

See merge request espressif/esp-idf!13790
2021-06-01 08:49:49 +00:00
Shivani Tipnis
1c875e5baa ble-wifi-example-tests: Add fixes and cleanups to ble and wifi tests
(cherry picked from commit 2d22374460)
2021-06-01 12:27:04 +05:30
Jakob Hasse
d376c161aa [C++]: wrapper functions around unwind code
* Replaced all C++ exception related
  functions with wrappers if -fno-exception
  is used. This prevents linking of the
  corresponding code in libgcc. The code
  size will decrease by around 7-9 KB when
  building with -fno-exception.
* added no except test app

Closes https://github.com/espressif/esp-idf/pull/5380
Closes https://github.com/espressif/esp-idf/issues/5363
Closes https://github.com/espressif/esp-idf/issues/5224
Closes IDFGH-3153
Closes IDF-2577
2021-06-01 13:46:50 +08:00
zhiweijian
9e2ce84a9a Fixed ANON_ADV address error 2021-06-01 11:49:21 +08:00
Roland Dobai
b66b98a25f tools: Split up large binaries into smaller chunks in the DFU binary
ROM will erase the region a partition is in as soon as it receives the
first bit of the data that is in the partition. For large partitions it
takes more than 5 seconds to erase which is a hard-coded limit in
dfu-utils.

This splits large binaries and adds them by chunks which should avoid
timing-out during flashing.

Closes https://github.com/espressif/esp-idf/issues/6999
2021-05-31 19:25:00 +02:00
Angus Gratton
9596f0d966 pthread: Fix possible deadlock when using pthread_join() and Debug log level
Possible for a joined task to be deleted at the moment it is logging,
meaning it might hold the stdout lock. In that case the lock isn't
released and the next task to try and take it (i.e. call printf)
will block indefinitely.
2021-05-31 13:49:59 +10:00
Angus Gratton
a3856c5438 esp_rom: Allow passing any type of data pointer to md5, remove unchecked size on digest pointer 2021-05-30 23:21:14 +00:00
Angus Gratton
58a3e08895 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-30 23:21:14 +00:00
Chinmay Chhajed
24035f698d Bluedroid: Check only x component of passkey to avoid passkey impersonation attack. 2021-05-28 19:24:27 +05:30
WangQixiang
ac362cc662 change MAXNAMLEN to 255 2021-05-28 20:41:25 +08:00
WangQixiang
a29fe72cc9 add the definition of MAXNAMLEN in sys/dirent.h 2021-05-28 20:41:10 +08:00
Jiang Jiang Jian
4de9ba152a Merge branch 'bugfix/ble_fix_reconnect_failed_when_using_rpa_public_address_v4.3' into 'release/v4.3'
Fixed BLE reconnect failed when using rpa public address (backport v4.3)

See merge request espressif/esp-idf!13743
2021-05-28 08:31:18 +00:00
morris
03a6c4975c esp_eth: restart negotiation in esp_eth_start 2021-05-28 08:22:56 +00:00
Angus Gratton
415418cf0e Merge branch 'bugfix/fix_coredump_fake_stack_bug_v4.3' into 'release/v4.3'
espcoredump: Fix bugs related to (fake) stacks v4.3

See merge request espressif/esp-idf!13657
2021-05-28 06:14:15 +00:00
Angus Gratton
0cca9e860d freertos docs: Specify that uxTaskGetStackHighWaterMark() returns bytes not words
As reported https://esp32.com/viewtopic.php?f=13&t=20043&p=73732
2021-05-28 05:13:40 +00:00
Omar Chebib
a573cfe58a espcoredump: Fix bugs related to (fake) stacks
Add support to tasks stacks in RTC DRAM. Before this fix, any stack
in RTC DRAM would have been considered as corrupted, whichi is not
the case.
Fix a bug related to wrong parameters passed to esp_core_dump_get_stack.
Fix a bug reading fake stack memory, triggering a memory violation.

* Closes https://github.com/espressif/esp-idf/issues/6751
* Merges https://github.com/espressif/esp-idf/pull/6750
2021-05-28 01:58:09 +00:00
zwj
7d1fe0b553 Fixed BLE reconnect failed when using rpa public address 2021-05-27 08:17:18 +00:00
He Yin Ling
f2f6acd6a6 Merge branch 'bugfix/fixed-autocompletion-test_v4.3' into 'release/v4.3'
Fixed test autocompletion (v4.3)

See merge request espressif/esp-idf!13738
2021-05-27 08:07:59 +00:00
Martin Gaňo
e66fec955e Fixed test autocompletion 2021-05-26 13:47:29 +02:00
Angus Gratton
a9a8fd03b6 Merge branch 'feature/c3_example_tests_v4.3' into 'release/v4.3'
CI: add Example_GENERIC for C3 (v4.3)

See merge request espressif/esp-idf!12780
2021-05-20 07:42:48 +00:00
Marius Vikhammer
8efb2bb1ed ci: run Example_GENERIC for C3
Add support for running example_GENERIC tests for C3 on label.

Fix examples that fail.
2021-05-20 14:32:47 +10:00
KonstantinKondrashov
c270a9f0b9 esp32c3: Updates a description in Kconfig about Universal MAC Address strategy 2021-05-20 04:30:31 +00:00
Marius Vikhammer
23b6e47aef CI: re-enable wifi prov examples for C3 2021-05-20 11:06:26 +08:00
Marius Vikhammer
390bdf2f78 mbedtls: fixed CMake build warning
Building mbedtls with CMake would warn that:

"A private source from a directory other than that of target "mbedcrypto
 has a relative path"

This happened due to some of the CMake variables listing sources could be empty.

Changed to only use target_sources in the code-path where we set the sources,
so we only call target_sources will non-empty variables.

Closes https://github.com/espressif/esp-idf/issues/6767
2021-05-19 11:11:04 +08:00
Jiang Jiang Jian
6be10fab09 Merge branch 'bugfix/addba_pmf_issue_fix_v4.3' into 'release/v4.3'
Fix aggregation issue and validate FTM config params (Backport v4.3)

See merge request espressif/esp-idf!13520
2021-05-14 03:49:02 +00:00
Nachiket Kukade
aa33c43644 esp_wifi: Update wifi lib
Update wifi library with below fixes -
1. Fix Block Ack setup issue in PMF scenario
2. Validate FTM Initiator config parameters and propagate status
2021-05-14 11:14:03 +08:00
Angus Gratton
2b19bd0c2f Merge branch 'doc/timer_group_update_for_esp32c3' into 'release/v4.3'
timer: clean up example and api reference (v4.3)

See merge request espressif/esp-idf!13279
2021-05-14 01:48:37 +00:00
Angus Gratton
de0063164d Merge branch 'bugfix/place_xt_int_fns_into_iram_4.3' into 'release/v4.3'
[system]: put xtensa_intr_asm into IRAM (backport 4.3)

See merge request espressif/esp-idf!13402
2021-05-14 01:48:11 +00:00
Angus Gratton
acb05c21d9 Merge branch 'feature/installed_tool_failed_v4.3' into 'release/v4.3'
tools: Warning about tool being installed but failed to run. (v4.3)

See merge request espressif/esp-idf!13230
2021-05-14 01:43:37 +00:00
Angus Gratton
93aee41c29 Merge branch 'bugfix/setjmp_longjmp_4.3' into 'release/v4.3'
[system]: Made longjmp save for context switch (backport 4.3)

See merge request espressif/esp-idf!13489
2021-05-14 01:40:17 +00:00
Angus Gratton
798aab5097 Merge branch 'docs/remove_c3_not_updated_warning_v4.3' into 'release/v4.3'
docs: remove c3 not updated warning (v4.3)

See merge request espressif/esp-idf!13443
2021-05-14 01:39:55 +00:00
Jiang Jiang Jian
4db80bcc78 Merge branch 'nimble/workaound_ble_conn_err_v4.3' into 'release/v4.3'
NimBLE: Add NimBLE host support to reattempt GAP connection and address MITM vulnerability (CVE-2020-26558) (release/v4.3)

See merge request espressif/esp-idf!13549
2021-05-13 16:25:54 +00:00
Jiang Jiang Jian
e97ddd80b7 Merge branch 'bugfix/mqtt_examples_certificates_update_v4.3' into 'release/v4.3'
bugfix/mqtt examples: Updates the CA certificates used. (v4.3)

See merge request espressif/esp-idf!13125
2021-05-13 16:22:11 +00:00
Jiang Jiang Jian
2647288d32 Merge branch 'bugfix/ag_use_dynamic_memory_error_v4.3' into 'release/v4.3'
Fix ag use dynamic memory error

See merge request espressif/esp-idf!13542
2021-05-13 16:20:38 +00:00
Jiang Jiang Jian
a75a988c98 Merge branch 'bugfix/wifi_modem_sleep_percentage_optimize_v4.3' into 'release/v4.3'
backport v4.3: optimize wifi station modem sleep percentage

See merge request espressif/esp-idf!13541
2021-05-13 16:19:08 +00:00
Michael (XIAO Xufeng)
f00db86668 Merge branch 'bugfix/remove_spi_flash_qio_s2_cfg_v4.3' into 'release/v4.3'
ci: remove spi_flash_qio_s2 config (v4.3)

See merge request espressif/esp-idf!12991
2021-05-13 11:41:27 +00:00
Michael (XIAO Xufeng)
c7a10f9293 Merge branch 'bugfix/timer_spinlock_iram_v4.3' into 'release/v4.3'
timer: add IRAM_ATTR to spinlock give/take API (v4.3)

See merge request espressif/esp-idf!13511
2021-05-13 11:36:48 +00:00
Prasad Alatkar
7095159a4c NimBLE: Update NimBLE submodule to reattempt conn and to fix vulnerability
* Add workaround to overcome connection establishment failure error.

* Fix vulnerability during public key exchange in secure connection
2021-05-13 16:44:17 +05:30
xiongweichao
2644f793bd Remove btc_hf_idx_by_bdaddr in both btc_hf_init and btc_hf_deinit functions 2021-05-13 16:09:47 +08:00
xiongweichao
848f931e06 fix ag use dynamic memory error 2021-05-13 16:09:40 +08:00
Euripedes Rocha
d5e2a482c3 bugfix/mqtt examples: Updates the CA certificates used.
- Updates the CA certificates.
- Updates the URI names to reflect the new URI in the service used in
  the examples.

Closes IDFGH-4986
Closes https://github.com/espressif/esp-idf/issues/6776
2021-05-13 06:51:43 +02:00
Marius Vikhammer
36d7af5200 check_readme_links: remove throwing of exception before exit
Reraising the exception before exiting was intended to help troubleshoot,
but turned out to be more confusing than helpful as it might look like the script was failing
2021-05-13 12:40:00 +08:00
Jiang Jiang Jian
410a0a5f5a Merge branch 'ci/wildcard_known_failure_cases_v4.3' into 'release/v4.3'
ci: allow wildcard in known failure cases (v4.3)

See merge request espressif/esp-idf!13303
2021-05-13 04:19:41 +00:00
Jiang Jiang Jian
7478d96228 Merge branch 'bugfix/gdbgui_v4.3' into 'release/v4.3'
tools: Add various fixes for idf.py gdbgui (v4.3)

See merge request espressif/esp-idf!13416
2021-05-13 04:18:51 +00:00
Jiang Jiang Jian
644e653293 Merge branch 'feature/IDF-2612_human_readable_error_v4.3' into 'release/v4.3'
export.bat/install.bat: print human-readable error message if Git or Python are not in PATH (v4.3)

See merge request espressif/esp-idf!13226
2021-05-13 04:18:31 +00:00
Jiang Jiang Jian
53956cf8ad Merge branch 'bugxif/fix-export-autocomplete-zsh_v4.3' into 'release/v4.3'
export.sh: Fix error when `ZSH_VERSION` is unset. (v4.3)

See merge request espressif/esp-idf!12731
2021-05-13 04:16:29 +00:00
Jiang Jiang Jian
effee74b2f Merge branch 'doc/backport_iot_solution_link_updates_to_v4.3' into 'release/v4.3'
fix dead links directed to ESP-IoT-Solution repo (backport v4.3)

See merge request espressif/esp-idf!13347
2021-05-13 04:15:28 +00:00
Jiang Jiang Jian
08c5b89096 Merge branch 'bugfix/fix_idf_monitor_unicode_path_crash_v4.3' into 'release/v4.3'
tools: handle exception in case of logging Unicode characters (v4.3)

See merge request espressif/esp-idf!13041
2021-05-13 04:14:40 +00:00
Jiang Jiang Jian
e6f96717ff Merge branch 'bugfix/remove_uart2_c3_v4.3' into 'release/v4.3'
uart: remove misleading ld files and soc defs for UART2 (v4.3)

See merge request espressif/esp-idf!13394
2021-05-13 04:11:32 +00:00
Jiang Jiang Jian
db49804f65 Merge branch 'feature/oocd_ver_backport_v4.3' into 'release/v4.3'
Feature/oocd ver backport v4.3

See merge request espressif/esp-idf!13374
2021-05-13 04:09:03 +00:00
Jiang Jiang Jian
ed76cc4dd4 Merge branch 'feature/support_adjust_voltage_storingInEfuse_open_glitch_rst_v4.3' into 'release/v4.3'
ESP32c3: auto adjust voltage dbias storing in efuse and open glitch reset for ECO3  (backport v4.3)

See merge request espressif/esp-idf!13388
2021-05-13 04:08:56 +00:00
Li Shuai
d51ed40487 modem sleep: optimize wifi station modem sleep percentage 2021-05-13 11:57:12 +08:00
Jiang Jiang Jian
31b142cf93 Merge branch 'bugfix/concurrent_mode_sae_crash_fix_v4.3' into 'release/v4.3'
esp_wifi: Add station based check for auth frame formation (backport v4.3)

See merge request espressif/esp-idf!13526
2021-05-13 03:27:54 +00:00
Michael (XIAO Xufeng)
d95e2c63ca Merge branch 'doc/update_i2c_on_esp32c3_v4.3' into 'release/v4.3'
i2c: update api reference and example pin definition (backport v4.3)

See merge request espressif/esp-idf!13451
2021-05-13 03:09:02 +00:00
Michael (XIAO Xufeng)
cdec9f3659 Merge branch 'bugfix/fix_touch_sensor_power_source_v4.3' into 'release/v4.3'
touch_sensor: fix esp32s2&esp32s3 touch sensor default power source (Backport v4.3)

See merge request espressif/esp-idf!13484
2021-05-13 03:06:01 +00:00
Michael (XIAO Xufeng)
02e742271d Merge branch 'feature/merge_c3_caps_v4.3' into 'release/v4.3'
soc: merge C3 caps into a single soc_caps.h (v4.3)

See merge request espressif/esp-idf!13518
2021-05-13 02:55:26 +00:00
Marius Vikhammer
5ec69efafa docs: remove front page C3 docs not updated warning 2021-05-13 10:04:27 +08:00
Marius Vikhammer
42657a7464 ci: remove spi_flash_qio_s2 config
This config is already run for all targets in spi_flash_qio config
2021-05-12 17:20:00 +08:00
Jakob Hasse
f16ec53183 [system]: put xtensa_intr_asm into IRAM 2021-05-12 16:44:52 +08:00
Jiang Jiang Jian
3299a19c2f Merge branch 'bugfix/lwip_debug_define' into 'release/v4.3'
lw-ip: Fix LWIP_DEBUG define which is always defined(backport v4.3)

See merge request espressif/esp-idf!13118
2021-05-12 06:28:54 +00:00
Jiang Jiang Jian
a3ae9ae482 Merge branch 'bugfix/generate_value_0_when_prov_auth_v4.3' into 'release/v4.3'
ble_mesh: stack: Fix provisioning input or output count number should be at least 1 (v4.3)

See merge request espressif/esp-idf!13480
2021-05-12 06:22:04 +00:00
Jiang Jiang Jian
a6b169f91e Merge branch 'bugfix/fix_c3_s3_ble_multi_con_failed_when_dev_act_master_and_slave_v4.3' into 'release/v4.3'
Fixed C3/S3 BLE multi-connection failed when device acts as master and slave(backport v4.3)

See merge request espressif/esp-idf!13507
2021-05-12 06:19:14 +00:00
Kapil Gupta
deeb517b72 esp_wifi: Add station based check for auth frame formation 2021-05-11 18:20:45 +05:30
Marius Vikhammer
874b470379 timer: add IRAM_ATTR to spinlock give/take API
Closes https://github.com/espressif/esp-idf/issues/6824
2021-05-11 15:31:59 +08:00
Marius Vikhammer
38aa99d63d soc: merge C3 caps into a single soc_caps.h 2021-05-11 15:20:54 +08:00
Jakob Hasse
a37c20b417 [system]: Made longjmp save for context switch
* Patched longjmp to be context-switch safe
  longjmp modifies the windowbase and windowstart
  registers, which isn't safe if a context switch
  occurs during the modification. After a context
  switch, windowstart and windowbase will be
  different, leading to a wrongly set windowstart
  bit due to longjmp writing it based on the
  windowbase before the context switch. This
  corrupts the registers at the next window
  overflow reaching that wrongly set bit.

  The solution is to disable interrupts during
  this code. It is only 6 instructions long,
  the impact shouldn't be significant.

  The fix is implemented as a wrapper which
  replaces the original first instructions of
  longjmp which are buggy. Then, it jumps back
  to execute the rest of the original longjmp
  function.

  Added a comparably reliable test to the
  test apps.
2021-05-11 12:04:27 +08:00
Alexey Gerenkov
fd5d6db71e tools: Updates OpenOCD version to 'v0.10.0-esp32-20210401' 2021-05-10 16:51:05 +00:00
zwj
1957025f4a fix C3/S3 ble multi-connection failed when device acts as master and slave 2021-05-10 13:12:01 +00:00
chaijie
6d2bdfc5f5 1. open glitch reset for c3 ECO3;
2. set digital & rtc voltage to about 1.15v which storing in efuse.
2021-05-08 17:38:24 +08:00
Kang Zuoling
d651e4e073 touch_sensor: fix esp32s2 touch sensor default power source 2021-05-08 13:54:59 +08:00
wangjialiang
5fc3c0ca91 ble_mesh: stack: Fix provisioning input or output count number should be at least 1
Closes https://github.com/espressif/esp-idf/issues/6863
2021-05-08 11:58:04 +08:00
Angus Gratton
2e64d234c4 Merge branch 'bugfix/riscv_ulp_linker_script_reset_vector_v4.3' into 'release/v4.3'
Fix RISC-V ULP failure to start (v4.3)

See merge request espressif/esp-idf!13464
2021-05-07 23:28:43 +00:00
Fu Hanxi
229fab87a5 ci: allow wildcard in known failure cases 2021-05-07 08:41:43 +00:00
Angus Gratton
e45be4dd4a Merge branch 'feature/ci_release_zips_v4.3' into 'release/v4.3'
ci: Use GitHub Actions to generate recursive source code zips for releases (v4.3)

See merge request espressif/esp-idf!13198
2021-05-07 08:22:43 +00:00
fuzhibo
f6d96f33bb bugfix: add .rodata section for riscv ulp for esp32s2 2021-05-07 10:56:33 +10:00
Angus Gratton
228f875ada esp32s2 riscv ulp: Make re-linking depend on linker script file 2021-05-07 10:54:55 +10:00
Angus Gratton
997c07c2ee esp32s2 riscv ulp: Ensure reset vector is always at offset 0x0
Previous linker script relied on nothing else using the .text section

As reported at https://esp32.com/viewtopic.php?f=2&t=20734&p=75997
2021-05-07 10:54:55 +10:00
Cao Sen Miao
dca229df07 i2c: update api reference and example pin defination 2021-05-06 12:33:55 +08:00
Omar Chebib
831d470a75 build: fix linker scripts edition not triggering a rebuild
Fix the dependencies in CMakeLists files for triggering a relink
when linker script file is modified.
2021-05-06 12:19:01 +08:00
Ivan Grokhotkov
b7707c54ce freertos: fix TLS run-time address calculation
Since dd849ffc, _rodata_start label has been moved to a different
linker output section from where the TLS templates (.tdata, .tbss)
are located. Since link-time addresses of thread-local variables are
calculated relative to the section start address, this resulted in
incorrect calculation of THREADPTR/$tp registers.

Fix by introducing new linker label, _flash_rodata_start, which points
to the .flash.rodata output section where TLS variables are located,
and use it when calculating THREADPTR/$tp.

Also remove the hardcoded rodata section alignment for Xtensa targets.
Alignment of rodata can be affected by the user application, which is
the issue dd849ffc was fixing. To accommodate any possible alignment,
save it in a linker label (_flash_rodata_align) and then use when
calculating THREADPTR. Note that this is not required on RISC-V, since
this target doesn't use TPOFF.
2021-05-06 11:42:14 +08:00
Omar Chebib
375f969d43 build: (Custom) App version info is now on a dedicated section, independent of the rodata alignment
It is now possible to have any alignment restriction on rodata in the user
applicaiton. It will not affect the first section which must be aligned
on a 16-byte bound.

Closes https://github.com/espressif/esp-idf/issues/6719
2021-05-06 11:40:57 +08:00
Omar Chebib
c29dbda5fd build: fix cache issue when .flash.text section alignment is uncommon
rodata dummy section has now the same alignment as flash text section,
and at least the same size. For these reasons, the cache will map
correctly the following rodata section.
2021-05-06 11:40:47 +08:00
Angus Gratton
788312a009 Merge branch 'bugfix/freertos_addition_overflow_v4.3' into 'release/v4.3'
freertos: Fix addition overflow (v4.3)

See merge request espressif/esp-idf!13422
2021-05-05 08:49:32 +00:00
Angus Gratton
6c9005e11b ut: Exclude test_utils component from default_2_c3 config
Theory is that the large alignments in this test component are triggering linker
bug (to be fixed in next toolchain update). This component is already tested
in a dedicated config, so it doesn't need to be included in this config.
2021-05-05 16:39:58 +10:00
Angus Gratton
d30ec8c94e freertos: Add addition overflow check for stream buffer
Patch from upstream commit d05b9c123f2bf9090bce386a244fc934ae44db5b
2021-05-04 18:30:49 +10:00
Angus Gratton
658a0acdbe freertos: Check for arithmetic overflows on queue creation
Addition overflow check is from FreeRTOS kernel commit 47338393f1f79558f6144213409f09f81d7c4837
2021-05-04 18:30:49 +10:00
Angus Gratton
4c974574d7 cmake: Improve the error message if the Python interpreter fails to run
RESULT_VARIABLE will return a string not a number in this case, so display it
for the user.
2021-05-04 07:51:04 +00:00
Angus Gratton
6ee835f6ea cmake: Set IDFTOOL variable using the correct PYTHON interpreter variable 2021-05-04 07:51:04 +00:00
Angus Gratton
69b740dc5e cmake: Fix passing PYTHON path via CMake variable if using IDF as library
Closes https://github.com/espressif/esp-idf/issues/6285
2021-05-04 07:51:04 +00:00
Roland Dobai
2ecc8fad50 tools: Add various fixes for idf.py gdbgui
Closes https://github.com/espressif/esp-idf/issues/5968
2021-05-03 11:41:39 +02:00
Angus Gratton
467c7af33e Merge branch 'doc/general_notes_v4.3' into 'release/v4.3'
doc: Update docs about startup sequence and memory types (v4.3)

See merge request espressif/esp-idf!13316
2021-05-03 06:48:07 +00:00
Angus Gratton
6121046090 ci: Use GitHub Actions to generate recursive source code zips for releases
We do this for all ESP-IDF releases, this step automates it.

Uses action added in https://github.com/espressif/github-actions/pull/10
2021-05-02 23:45:32 +00:00
Mahavir Jain
4c113a0c0c Merge branch 'bugfix/fix_mbedtls_send_alert_crash_v4.3' into 'release/v4.3'
mbedtls: Fix mbedtls_ssl_send_alert_message crash due to ssl->out_iv is NULL[backport v4.3]

See merge request espressif/esp-idf!13300
2021-04-30 07:08:19 +00:00
Mahavir Jain
ad759ee5a7 Merge branch 'newlib/no_atomic_support_v4.3' into 'release/v4.3'
stdatomic: Implemented legacy __sync APIs and __atomic_exchange_n (backport v4.3)

See merge request espressif/esp-idf!13361
2021-04-30 07:07:37 +00:00
Mahavir Jain
24af403dac Merge branch 'bugfix/esp_http_client_read_v4.3' into 'release/v4.3'
Fix esp_http_client_read for file size aligned to 289 bytes (v4.3)

See merge request espressif/esp-idf!13305
2021-04-30 07:06:33 +00:00
Jiang Jiang Jian
469bb082d7 Merge branch 'bugfix/fix_nolightsleep_after_wifi_init_v4.3' into 'release/v4.3'
esp_wif: fix nolightsleep after wifi init v4.3

See merge request espressif/esp-idf!13403
2021-04-30 05:52:09 +00:00
Jiang Jiang Jian
80e381e511 Merge branch 'bugfix/remove_redundant_other_core_cache_disable_v4.3' into 'release/v4.3'
[system]: Remove redundant othercore cache disable (backport v4.3)

See merge request espressif/esp-idf!13356
2021-04-30 05:51:43 +00:00
Jiang Jiang Jian
847273d0fb Merge branch 'bugfix/wifi_softap_deep_sleep_current_opt_v4.3' into 'release/v4.3'
backport v4.3: optimize deep sleep current in wifi softap mode

See merge request espressif/esp-idf!13391
2021-04-30 02:50:04 +00:00
yuanjm
6d32eec165 mbedtls: Fix mbedtls_ssl_send_alert_message crash due to ssl->out_iv is NULL 2021-04-30 02:01:51 +00:00
ninh
6dc067dda7 esp_wifi: fix nolightsleep after wifi init (backport to v4.3) 2021-04-29 22:01:55 +08:00
ninh
0ddf00c6e1 esp_pm: allow dfs to swith down alltime if no lightsleep (backport to v4.3) 2021-04-29 22:00:37 +08:00
Jiang Jiang Jian
8c6705ded5 Merge branch 'bugfix/interrupt_watchdog_on_reset_v4.3' into 'release/v4.3'
Bugfix/interrupt watchdog on reset v4.3

See merge request espressif/esp-idf!13386
2021-04-29 13:33:07 +00:00
Jiang Jiang Jian
a480a00237 Merge branch 'mesh/bugfix_0421_backport_v4.3' into 'release/v4.3'
esp_wifi_mesh: add esp_mesh_send_block_time to set blocking time of esp_mesh_send(v4.3)

See merge request espressif/esp-idf!13287
2021-04-29 12:24:08 +00:00
shenjun
2f603a56a7 esp_wifi_mesh: update wifi mesh libs
1. Fix mesh deinit blocking issue
2. Fix root has no eb for deauth frames during the networking
3. Add esp_mesh_send_block_time to set blocking time of esp_mesh_send
4. Forward Mgmt frames with skipping CCMP headers to fix parsing issues in Application for ESP32C3
2021-04-29 15:05:07 +08:00
Michael (XIAO Xufeng)
2bffeb7265 uart: fix misleading files for UART2
Includes: header files, ld files and clk.c

ESP32-C3 only have UART0 and UART1.
2021-04-29 14:23:13 +08:00
wangmengyang
9c872b1851 components/bt: fixed bugs in Bluetooth Controller and Baseband
1. Removed the interrupt lock operation during controller enable/disable/reset, to avoid trigger interrupt watchdog time-out due to use of mutex/semaphore in coex_st_set

2: Update libbtbb.a for ESP32-C3 to fix the Rx performance issue for CODED PHY, especially in coexistence scenario
2021-04-29 03:58:29 +00:00
wangmengyang
b2c18de9b3 components/bt: Minor fix for the range of GATTC number of reconnections. 2021-04-29 03:58:29 +00:00
Li Shuai
f684bd10f5 deep sleep: optimize sleep current in wifi softap mode 2021-04-29 10:14:30 +08:00
Michael (XIAO Xufeng)
9da031e0c3 Merge branch 'bugfix/twai_caps_naming_and_tidy_up_v4.3' into 'release/v4.3'
Fix TWAI caps (backport v4.3)

See merge request espressif/esp-idf!13304
2021-04-28 17:47:35 +00:00
Michael (XIAO Xufeng)
64de7ee38c Merge branch 'feature/spi_slave_hd_segment_example_v4.3' into 'release/v4.3'
spi_slave_hd: add an spi slave hd segment example (4.3)

See merge request espressif/esp-idf!13312
2021-04-28 17:39:25 +00:00
Michael (XIAO Xufeng)
52d9d466fb Merge branch 'ci/enable_i2c_test_v4.3' into 'release/v4.3'
I2C: enable all unit test for i2c on esp32c3 (backport 4.3)

See merge request espressif/esp-idf!13061
2021-04-28 15:00:20 +00:00
Jiang Jiang Jian
a4a7e7b3e9 Merge branch 'bugfix/update_esp32c3_phy_init_data_v4.3' into 'release/v4.3'
esp_wifi: update esp32c3 phy init data(v4.3)

See merge request espressif/esp-idf!13338
2021-04-28 12:45:36 +00:00
Jiang Jiang Jian
fbc6f27e81 Merge branch 'bugfix/update_esp32c3_docs_v4.3' into 'release/v4.3'
docs: update wifi driver docs(v4.3)

See merge request espressif/esp-idf!13381
2021-04-28 11:49:55 +00:00
Armando
31c396c127 spi_slave_hd: add segment mode example 2021-04-28 08:20:55 +00:00
Armando
a87f5c6c02 spi_slave_hd: add polling api to read/write buf to essl_spi 2021-04-28 08:20:55 +00:00
Armando
20993109e8 spi_slave_hd: add callback after data is loaded to the DMA for segment mode 2021-04-28 08:20:55 +00:00
Michael (XIAO Xufeng)
6c38cc736a Merge branch 'bugfix/twai_esp32_errata_workarounds_backport_v4.3' into 'release/v4.3'
TWAI: Add FIFO overrun handling and ESP32 hardware errata workarounds  (backport v4.3)

See merge request espressif/esp-idf!12984
2021-04-28 08:12:06 +00:00
chenjianxing
193b60afcf esp_wifi: update esp32c3 phy init data 2021-04-28 08:04:28 +00:00
chenjianxing
e4d84804c1 update esp32c3 iperf config 2021-04-28 15:50:41 +08:00
Shubham Kulkarni
e4ebaca693 esp_http_client_read: Add check for esp_http_client_is_complete_data_received before returning ESP_FAIL
Closes: https://github.com/espressif/esp-idf/issues/6772
2021-04-28 05:00:58 +00:00
Michael (XIAO Xufeng)
3f358236f0 Merge branch 'feat/c3_driver_api_cleanup_gpio_v4.3' into 'release/v4.3'
gpio, rtcio: removed unsupported features on different targets (v4.3)

See merge request espressif/esp-idf!13120
2021-04-27 09:37:15 +00:00
Cao Sen Miao
ba1ce2ebd0 I2C: enable all unit test for i2c on esp32c3 2021-04-27 17:13:47 +08:00
Sachin Parekh
aad1f7abde stdatomic: Implemented legacy __sync APIs and __atomic_exchange_n
These APIs are used when the architecture doesn't have atomic
instruction support

Closes https://github.com/espressif/esp-idf/issues/6463
2021-04-27 13:34:54 +05:30
wuzhenghui
29ad86ed5b remove othercore cache disable 2021-04-27 14:40:52 +08:00
Jiang Jiang Jian
dede31cd83 Merge branch 'bugfix/gtk_reinstallation_fix_1_4.3' into 'release/v4.3'
wpa_supplicant: Clean gtk after disconnect (backport v4.3)

See merge request espressif/esp-idf!13286
2021-04-27 03:32:46 +00:00
Marek Fiala
d592a9863b Human-readable error if Git or Python are missing.
When user forgot to add git.exe or python to the PATH, there was a not
very helpful error message.
This improves the error with which tool is misssing and shows a link to
the espressif installer tool.
2021-04-26 14:14:19 +02:00
Marek Fiala
f89f5b7f75 tools: Warning about tool beiing installed but failed to run.
idf_tool.py runs "<tool> --version" which returns the error message but it is not used
This improves the error printing.
2021-04-26 14:03:17 +02:00
Darian Leung
07291fdd27 TWAI: FIFO overrun handling and errata workarounds
This commit adds handling for FIFO overruns and
adds workarounds for HW errats on the ESP32.

Closes https://github.com/espressif/esp-idf/issues/2519
Closes https://github.com/espressif/esp-idf/issues/4276
2021-04-26 19:35:13 +08:00
Darian Leung
00801c8044 TWAI: Simply caps and remove unused caps 2021-04-26 19:34:30 +08:00
Darian Leung
b8e31efcac TWAI: Fix incorrect CAP name
Fixes a bug where SOC_TWAI_BRP_DIV_SUPPORTED was mistyped preventing
slower bit rates from being enabled on ESP32 revision 2 and 3 chips
2021-04-26 19:34:30 +08:00
Hao Ning
819ac7f847 backport link updates to v4.3 2021-04-26 11:33:22 +00:00
Martin Gaňo
46ab19818a add default value for unset env variables
Closes IDFGH-4784
2021-04-26 11:00:26 +00:00
Markus Reiter
b9038d045e Fix error when ZSH_VERSION is unset.
Merges https://github.com/espressif/esp-idf/pull/6587
2021-04-26 11:00:26 +00:00
Jiang Jiang Jian
ae72870d43 Merge branch 'bugfix/fix_c3_ble_disconnect_due_to_con_param_update_v4.3' into 'release/v4.3'
Fix c3 ble disconnect due to con param update v4.3

See merge request espressif/esp-idf!13325
2021-04-26 06:00:15 +00:00
Jiang Jiang Jian
4d1aaed682 Merge branch 'refactor/bt_lib_submodules_v4.3' into 'release/v4.3'
Refactor/bt lib submodules(backports v4.3)

See merge request espressif/esp-idf!13275
2021-04-25 06:24:46 +00:00
Michael (XIAO Xufeng)
6059ef26fb gpio, rtcio: removed unsupported features on different targets 2021-04-24 15:55:13 +00:00
Angus Gratton
5fa34f6a30 Merge branch 'docs/add_esp32-c3-devkitc-02_user_guide' into 'release/v4.3'
Add ESP32-C3-DevKitC-02 User Guide (backport master)

See merge request espressif/esp-idf!13284
2021-04-24 00:36:24 +00:00
Angus Gratton
56a3845986 Merge branch 'bugfix/fix_c3_typos_v4.3' into 'release/v4.3'
esp32c3: fix typos of c3 path (backport v4.3)

See merge request espressif/esp-idf!13326
2021-04-24 00:35:24 +00:00
Angus Gratton
2c153af57a Merge branch 'doc/c3_ledc_programming_guide_v4.3' into 'release/v4.3'
[doc]: Corrected C3 LEDC docs (backport 4.3)

See merge request espressif/esp-idf!13276
2021-04-24 00:35:12 +00:00
Angus Gratton
18d7d9497a Merge branch 'bugfix/doc_jtag_c3_v4.3' into 'release/v4.3'
docs: Update JTAG debugging guides for ESP32-C3 (v4.3)

See merge request espressif/esp-idf!13290
2021-04-24 00:35:03 +00:00
liuhan
38db3d9507 lw-ip: Fix LWIP_DEBUG define which is always defined 2021-04-23 18:25:17 +00:00
Shu Chen
42ae0166d7 esp32c3: fix typos of c3 path 2021-04-23 21:09:06 +08:00
Michael (XIAO Xufeng)
eff7fd9052 Merge branch 'feature/update_adc_programming_guide_on_c3_v4.3' into 'release/v4.3'
adc: add adc programming guide on c3 (4.3)

See merge request espressif/esp-idf!13281
2021-04-23 12:53:04 +00:00
Angus Gratton
275743ab1c doc: Add notes that vTaskStartScheduler() is called during startup
Closes https://github.com/espressif/esp-idf/issues/1457
2021-04-23 22:48:47 +10:00
Angus Gratton
8a39b5237d doc: update the memory types and startup docs 2021-04-23 22:48:47 +10:00
zwj
5e9aa539ea fix c3 ble disconnect due to connection parameters update 2021-04-23 20:39:40 +08:00
Angus Gratton
6f3b1a0554 docs: split the 'general notes' page into two 2021-04-23 19:12:06 +10:00
Angus Gratton
d0e0f80bd0 esp_system: Mark the startup array as 'const' to save RAM 2021-04-23 19:12:06 +10:00
Angus Gratton
ecb01b28c4 Merge branch 'doc/guide_uart_esp32c3_v4.3' into 'release/v4.3'
doc: update programming guide to include ESP32-C3 updates

See merge request espressif/esp-idf!13277
2021-04-23 09:09:11 +00:00
Angus Gratton
1b82e9604c Merge branch 'bugfix/esp32c3_eco3_efuse_programming_v4.3' into 'release/v4.3'
esp32c3 espefuse: Fix efuse programming timing on ESP32-C3 ECO3 (v4.3)

See merge request espressif/esp-idf!13297
2021-04-23 09:08:24 +00:00
Mahavir Jain
26139daaf5 Merge branch 'feature/adds_ota_example_test_check_sign_on_update_v4.3' into 'release/v4.3'
simple_ota_example: Adds config to test on_update_no_secure_boot option (v4.3)

See merge request espressif/esp-idf!13222
2021-04-23 08:57:46 +00:00
Mahavir Jain
f9831301ce Merge branch 'bugfix/bootloader_min_revision_c3_v4.3' into 'release/v4.3'
Fix bootloader minimum revision check and print for ESP32-C3 (v4.3)

See merge request espressif/esp-idf!13263
2021-04-23 08:56:24 +00:00
Mahavir Jain
cfb84d3381 Merge branch 'feature/mbedtls_md5_update_v4.3' into 'release/v4.3'
mbedtls: Add CONFIG_MBEDTLS_ROM_MD to enable ROM MD acceleration(back port v4.3)

See merge request espressif/esp-idf!13133
2021-04-23 08:56:08 +00:00
Kapil Gupta
952e47d45d wpa_supplicant: Group key reinstallation fixes
This commit reverts previous commit for GTK reinstallation fix
and corrects original fix.
2021-04-23 13:45:13 +05:30
Michael (XIAO Xufeng)
ed6a0c324c Merge branch 'feature/update_spi_programming_guide_on_c3_v4.3' into 'release/v4.3'
spi: update spi programming guide on c3 (4.3)

See merge request espressif/esp-idf!13280
2021-04-23 06:44:03 +00:00
Michael (XIAO Xufeng)
c6ca4e3e88 Merge branch 'bugfix/fix_flash_ci_v4.3' into 'release/v4.3'
esp_flash: fix host number for passing ci(backport v4.3)

See merge request espressif/esp-idf!13264
2021-04-23 06:43:18 +00:00
Angus Gratton
999f648a35 esp32c3 espefuse: Fix efuse programming timing on ESP32-C3 ECO3
Without this timing change, efuse programming occasionally appears to fail
(although the efuse is programmed correctly).
2021-04-23 10:33:43 +10:00
liuhan
9bf4d44235 mbedtls: Add CONFIG_MBEDTLS_ROM_MD5 to use ROM MD5 in mbedTLS 2021-04-22 12:34:00 +00:00
Roland Dobai
50e3f9f66c docs: Update JTAG debugging guides for ESP32-C3 2021-04-22 13:58:22 +02:00
Wang Ning
613201c24d Add ESP32-C3-DevKitC-02 User Guide and fix some typos 2021-04-22 15:34:45 +08:00
KonstantinKondrashov
1166bc5680 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-22 07:27:08 +00:00
KonstantinKondrashov
02170d815e bootloader: Fix error in Make build system when signature options is on 2021-04-22 07:27:08 +00:00
KonstantinKondrashov
6e06d323b1 simple_ota_example: Adds configs to test on_update_no_secure_boot option (RSA&ECDSA) 2021-04-22 07:27:08 +00:00
Armando
d7a793f406 spi_master: enable spi speed test on c3 and update the programming guide
accordingly
2021-04-22 06:31:49 +00:00
Armando
85e0728700 spi: update esp32c3 programming guide 2021-04-22 06:31:49 +00:00
Armando
3fb1165e4e adc: add adc programming guide on c3 2021-04-22 06:28:37 +00:00
morris
34140d2a00 timer_group: added example test 2021-04-22 11:21:41 +08:00
morris
face9518b2 timer_group: using isr callback in example 2021-04-22 11:21:41 +08:00
morris
5f1887b3ca doc: update general purpose timer for esp32-c3 2021-04-22 11:19:18 +08:00
Omar Chebib
d8c4ab482b doc: update programming guide to include ESP32-C3 updates 2021-04-22 10:41:51 +08:00
Jakob Hasse
94ed8f8606 [doc]: Corrected C3 LEDC docs 2021-04-22 09:38:26 +08:00
wangmengyang
cdcb85fd70 component/bt: add another bt-lib submodule and refactor the directories
# Conflicts:
#	.gitmodules
#	components/bt/component.mk
2021-04-22 07:46:55 +08:00
Jiang Jiang Jian
a67793e9fc Merge branch 'bugfix/gtk_reinstallation_fix_v4.3' into 'release/v4.3'
wpa_supplicant: Prevent reinstallation of an already in-use group key (v4.3)

See merge request espressif/esp-idf!13181
2021-04-21 15:17:35 +00:00
Jiang Jiang Jian
182c2eda48 Merge branch 'bugfix/fix_bootloader_time_too_long_bug_v4.3' into 'release/v4.3'
esp32s2/esp32c3: decrease boot up and cpu start up time (backport v4.3)

See merge request espressif/esp-idf!12728
2021-04-21 14:20:28 +00:00
Jiang Jiang Jian
1d218485ec Merge branch 'nimble/add_c3_config_max_conn_v4.3' into 'release/v4.3'
NimBLE: Add max connection config option for C3 (v4.3)

See merge request espressif/esp-idf!12999
2021-04-21 13:07:48 +00:00
wangmengyang
257047c073 remove original esp32-bt-lib submodule 2021-04-21 20:40:35 +08:00
Jiang Jiang Jian
83358061df Merge branch 'bugfix/endianness_in_output_or_input_oob_v4.3' into 'release/v4.3'
ble_mesh: stack: Fix endianness error in output or input oob data of number (v4.3)

See merge request espressif/esp-idf!13254
2021-04-21 12:35:51 +00:00
Kapil Gupta
47e4386953 wpa_supplicant: Prevent reinstallation of an already in-use group key 2021-04-21 11:41:34 +00:00
Jiang Jiang Jian
60bf9d30b2 Merge branch 'bugfix/correct_cod_check_v4.3' into 'release/v4.3'
esp-idf: Corrected check of Class of Device for discovered devices (v4.3)

See merge request espressif/esp-idf!13019
2021-04-21 11:39:19 +00:00
chaijie
e8282fb5c5 esp32s2/esp32s3/esp32c3: Decrease boot up time by delete useless slow clock calibration 2021-04-21 11:38:26 +00:00
Jiang Jiang Jian
5a5327e77e Merge branch 'bugfix/fix_esp32c3_macaddr_default_v4.3' into 'release/v4.3'
fix esp32c3 default mac addr count(v4.3)

See merge request espressif/esp-idf!13209
2021-04-21 11:35:43 +00:00
Wang Meng Yang
5580d578bd Merge branch 'nimble/add_error_prints_acl_buf_v4.3' into 'release/v4.3'
NimBLE: Add error prints for ACL buffer exhaustion in NPL (v4.3)

See merge request espressif/esp-idf!12968
2021-04-21 10:26:31 +00:00
Anton Maklakov
759e4340a9 Merge branch 'bugfix/ci/runner_py_consider_no_junit_report_as_succeeded_v4.3' into 'release/v4.3'
CI: runner py consider no test case as succeeded (v4.3)

See merge request espressif/esp-idf!13250
2021-04-21 10:23:58 +00:00
Wang Meng Yang
949a3cd61a Merge branch 'bugfix/ble_timeout_disconnected_no_report_v4.3' into 'release/v4.3'
Fix  the controller do not report the disconnect event to host

See merge request espressif/esp-idf!13262
2021-04-21 09:55:38 +00:00
Prasad Alatkar
ac9bd8bcc4 NimBLE: Add max connection config option for ESP32C3 2021-04-21 08:52:32 +00:00
“YangZhao”
e45ce5c058 bugfix: Fix the issue that the controller do not report the timeout
disconnect event. This issue is caused by modem sleep.The sleep interrupt
will come the second time before the CLKN interrupt. If we disable the sleep
interrupt when it comes in the first time, the CLKN will never come.
2021-04-21 15:02:40 +08:00
Cao Sen Miao
44b81cb280 esp_flash: fix host number for passing ci 2021-04-21 13:54:26 +08:00
Mahavir Jain
b24671e935 test_apps: increase partition table offset to fix build errors 2021-04-21 10:16:46 +05:30
Mahavir Jain
d41781099a bootloader_support: fix min. revision error print for < C3-ECO3 revisions 2021-04-21 10:16:46 +05:30
Mahavir Jain
6403a229eb bootloader: fix print related to min. chip revision
Closes https://github.com/espressif/esp-idf/issues/6890
Closes IDFGH-5106
2021-04-21 10:16:46 +05:30
Jiang Jiang Jian
98ad8cc2e3 Merge branch 'bugfix/ftm_fixes_logging_change_v4.3' into 'release/v4.3'
wifi/ftm: Move FTM report logging into application and some bugfixes (Backport v4.3)

See merge request espressif/esp-idf!13218
2021-04-21 03:22:59 +00:00
Angus Gratton
afc2f9b5d3 Merge branch 'bugfix/freertos_current_tcb_unpinned_v4.3' into 'release/v4.3'
freertos: Fix race condition returning incorrect TCB on unpinned tasks (v4.3)

See merge request espressif/esp-idf!13236
2021-04-20 22:57:47 +00:00
Jiang Jiang Jian
f2e222a8f8 Merge branch 'bugfix/optimize_c3_multi_con_and_add_connection_retry_v4.3' into 'release/v4.3'
optimize c3 multi con and add connection retry (backport v4.3)

See merge request espressif/esp-idf!12990
2021-04-20 15:28:30 +00:00
wangjialiang
bdce35c3d7 ble_mesh: stack: Fix endianness error in output or input oob data of number
Closes https://github.com/espressif/esp-idf/issues/6862
2021-04-20 21:24:25 +08:00
Fu Hanxi
7d7ad29d5a fix(ci): return as failed when no test case result generated 2021-04-20 17:16:02 +08:00
Fu Hanxi
905293a6c9 ci: add helper info for tests with no config 2021-04-20 17:16:02 +08:00
Nachiket Kukade
6587ff6110 wifi/ftm: Move FTM report logging into application and some bugfixes
Move FTM report processing and logging to application
Update wifi lib with below bugfixes
1. Initiator parameters sanity checks
2. Responder config option, fix beacon caps
3. To save space, register FTM modules only when FTM is enabled

Co-Authored-By: Nachiket Kukade <nachiket.kukade@espressif.com>
Co-Authored-By: Zhang Jun Hao <zhangjunhao@espressif.com>
2021-04-20 14:00:23 +05:30
Angus Gratton
991d0b8c31 freertos: test: Add stress test for thread local storage
(Fails without the fix applied in parent commit.)
2021-04-20 03:51:43 +00:00
Angus Gratton
2290d0385e freertos: Fix race condition returning incorrect TCB on unpinned tasks
Noted as a problem with thread local storage returning a different task's
pointers, but some other were APIs also accessing current task unsafely.

Regression in FreeRTOS 10 update a3c90bf59a
2021-04-20 03:51:43 +00:00
Jiang Jiang Jian
4f04f48a70 Merge branch 'bugfix/update_esp32s2_phylib_v1800_v4.3' into 'release/v4.3'
esp_wifi: Update esp32s2 phylib and fix s3 beta2 tsf (backport v4.3)

See merge request espressif/esp-idf!13151
2021-04-20 03:50:17 +00:00
zwj
2a7df3bcd8 optimize C3 multi-connection 2021-04-20 02:53:07 +00:00
zwj
67b09d3db5 add option to enable multi-connection 2021-04-20 02:53:07 +00:00
zwj
5717f8f2fb update con state when getting connection cancle complete 2021-04-20 02:53:07 +00:00
zwj
fe2f3bfe1e fix ble 5.0 SMP failed 2021-04-20 02:53:07 +00:00
zwj
e2af75b5e4 add BLE connection establishment retry 2021-04-20 02:53:07 +00:00
ChenJianxing
a17b57b062 fix esp32c3 default mac addr count 2021-04-20 02:38:31 +00:00
He Yin Ling
df0c1a1285 Merge branch 'bugfix/ci/ci_fetch_submodule_fully_match_return_first_v4.3' into 'release/v4.3'
fix(ci): ci_fetch_submodule return full match name first (v4.3)

See merge request espressif/esp-idf!13210
2021-04-20 02:05:08 +00:00
Fu Hanxi
662b6bb48a fix(ci): ci_fetch_submodule return full match name first 2021-04-19 20:19:43 +08:00
Jiang Jiang Jian
3d0a386c10 Merge branch 'feature/configure_max_server_profiles_count_v4.3' into 'release/v4.3'
esp32: Added an option in menuconfig to configure maximum gatt services (v4.3)

See merge request espressif/esp-idf!13187
2021-04-19 10:05:47 +00:00
Rahul Tank
9ed4e06dd2 esp-idf: Added an option in menuconfig to configure maximum gatt services
Currently Max GATT services count cannot be configured externally and
hence user needs to modify code ,everytime the count is to be
modified.

 Added an option in menuconfig to provide a way to user to set the count.

Fixes: https://jira.espressif.com:8443/browse/BT-1508
2021-04-19 12:28:49 +05:30
xiehang
ededfb47b9 esp_wifi: fix esp32s2 and esp32s3beta2 issue
1.Update libphy.a to V1800 20210413_e7ef680 for esp32s2
2.fix esp32s3beta2 tsf issue
2021-04-19 14:45:08 +08:00
Angus Gratton
6f47a4e0a6 Merge branch 'feature/add_c3_trm_link_v4.3' into 'release/v4.3'
docs: add C3 TRM links (v4.3)

See merge request espressif/esp-idf!13091
2021-04-16 05:33:29 +00:00
Angus Gratton
2335e5026f Merge branch 'bugfix/freertos_task_delete_v4.3' into 'release/v4.3'
freertos: Fix race condition using vTaskDelete() cross-core causing resource leak (v4.3)

See merge request espressif/esp-idf!13142
2021-04-16 01:46:37 +00:00
David Čermák
2bd0e9371a Merge branch 'bugfix/mdns_configure_strict_mode_v4.3' into 'release/v4.3'
mdns: Fix mdns to correctly answer non-strict queries (+ additional fixes) (v4.3)

See merge request espressif/esp-idf!13121
2021-04-15 12:27:33 +00:00
Ivan Grokhotkov
fead8b8a06 Merge branch 'bugfix/fix-automatic-connection_v4.3' into 'release/v4.3'
bugfix: fixed automatic connection in idf_monitor (v4.3)

See merge request espressif/esp-idf!13130
2021-04-14 18:06:09 +00:00
Jiang Jiang Jian
e9cf9e2978 Merge branch 'bugfix/e8192_and_assert_param_bt1551' into 'release/v4.3'
Modify E8192 ELx 200 ELx40 log level to LOGD

See merge request espressif/esp-idf!12977
2021-04-14 16:23:57 +00:00
Jiang Jiang Jian
6463dd9630 Merge branch 'bugfix/esp32c3_deep_sleep_gpio_wakeup_issue_v4.3' into 'release/v4.3'
backport v4.3: fix deep sleep gpio wakeup fail issue

See merge request espressif/esp-idf!13140
2021-04-14 16:02:32 +00:00
Jiang Jiang Jian
c9f1b55287 Merge branch 'bugfix/fix_wifi_issue_for_pm_disconnected_v4.3' into 'release/v4.3'
esp_wifi: fix some issue about wifi pm (backport to v4.3)

See merge request espressif/esp-idf!13138
2021-04-14 14:36:56 +00:00
xiongweichao
e16ec9a574 modify E8192 ELx200 ELx40 log level to LOGD 2021-04-14 19:33:03 +08:00
Angus Gratton
a7994b1a42 freertos: Add some comments about deleting tasks when using SMP
Some cases are not immediately obvious, so document them in comments.
2021-04-14 19:45:08 +10:00
Angus Gratton
c725aa3ec1 freertos: Fix race condition using vTaskDelete() cross-core causing resource leak
Causes test added in parent commit to pass.

This race happens if the deleted task is running on the other CPU,
and is already spinning in a critical section waiting for xTaskQueueMutex
because it's about to be blocked for a resource.

The "deleted" task would end up blocked, possibly indefinitely, and
never actually deleted or its resources cleaned up by the idle tasks.

Details:

vTaskDelete() adds the target task to the xTasksWaitingTermination list,
expecting it to be yielded off CPU and then cleaned up later. However as soon as
vTaskDelete() releases xTaskQueueMutex, the target task runs and moves itself to the
xDelayedTaskList1. Because interrupts are already disabled on that CPU,
the "yield" to the other CPU sent by the vTaskDelete() comes afterward so
doesn't help.
2021-04-14 19:45:08 +10:00
Angus Gratton
3687ae989b freertos: Add unit test for deleting task which may be blocking 2021-04-14 19:45:08 +10:00
Li Shuai
16cf160d57 deep sleep: fix sleep gpio wakeup fail issue 2021-04-14 15:40:13 +08:00
ninh
58160d46c6 esp_wifi: fix some issue about wifi pm (backport to v4.3) 2021-04-14 14:44:19 +08:00
Jiang Jiang Jian
776906dc84 Merge branch 'bugfix/fix_some_pm_issue_v4.3' into 'release/v4.3'
esp_pm: fix an issue and add an interface (backport to v4.3)

See merge request espressif/esp-idf!13123
2021-04-14 06:43:17 +00:00
Martin Gaňo
891a17ea62 Fixed automatic connection in idf_monitor
Closes https://github.com/espressif/esp-idf/issues/6415
2021-04-13 15:08:15 +02:00
ninh
bd03a0e66a esp_pm: fix an issue and add an interface (backport to v4.3) 2021-04-13 17:16:23 +08:00
David Cermak
eab4e6fedd mdns: Fixed the ip header TTL to be correctly set to 255
Defined in https://tools.ietf.org/html/rfc6762#section-11: All Multicast DNS responses (including responses sent via unicast)
   SHOULD be sent with IP TTL set to 255
2021-04-13 10:36:30 +02:00
David Cermak
03d504dbb2 mdns: Fix parsing answers with questions when instance name not set
mdns resolver didn't correctly resolved queries when host name wasn't
assigned. Fixed by allowing processing also if some answer present
(non-strict mode)

Closes https://github.com/espressif/esp-idf/issues/6598
2021-04-13 10:36:30 +02:00
David Cermak
8e8737c128 mdns: Fix the resolver to correctly parse it's own non-strict answers
The resolver was able to respond correctly, but would also resolve its
own queries and cause issues with BCT 1.5.2, specifically
* MULTIPLE QUESTIONS - DUPLICATE SUPPRESSION
* MULTIPLE QUESTIONS - DISTRIBUTED DUPLICATE SUPPRESSION
tests failed.
2021-04-13 10:36:30 +02:00
suren.gabrielyan
3a5d9d9431 mdns: Add MDNS_STRICT_MODE config option
Strict mode was hardcoded in private header file, but it's useful for
users to enable/disable it depending on the mdns library they are using.
e.g. Avahi might not resolve the non-strict answers.
2021-04-13 10:36:30 +02:00
Michael (XIAO Xufeng)
693aaef039 Merge branch 'bugfix/enable_gpio18_gpio19_esp32c3_v4.3' into 'release/v4.3'
gpio: Disable USB JTAG when setting pins 18 and 19 as GPIOs on ESP32C3 (backport v4.3)

See merge request espressif/esp-idf!13112
2021-04-13 07:40:00 +00:00
Angus Gratton
7703fcbd8d Merge branch 'bugfix/silent_asserts_v4.3' into 'release/v4.3'
freertos/lw ip: Support silent assertions (v4.3)

See merge request espressif/esp-idf!13011
2021-04-13 04:30:09 +00:00
Michael (XIAO Xufeng)
9a7deae742 Merge branch 'bugfix/reduce_the_consumption_of_touch_sensor_during_deep_sleep_backport_v4.3' into 'release/v4.3'
bugfix: reduce the consumption of touch sensor during deep sleep (backport v4.3)

See merge request espressif/esp-idf!12869
2021-04-13 04:16:01 +00:00
Omar Chebib
84dc42c4b0 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-12 17:45:06 +08:00
David Čermák
d7e680828a Merge branch 'feature/seperate_ipv6_function_from_ipv4_v4.3' into 'release/v4.3'
Add LWIP_IPV6 macro to strip IPv6 function (backport v4.3)

See merge request espressif/esp-idf!12998
2021-04-12 08:38:45 +00:00
Angus Gratton
da47503c14 Merge branch 'bugfix/deep_sleep_skip_verify_rtc_mem_heap_v4.3' into 'release/v4.3'
Fix bootloader "skip validate on exiting deep sleep" option if "use RTC memory as heap" is enabled (v4.3)

See merge request espressif/esp-idf!13096
2021-04-12 08:18:21 +00:00
yuanjm
e490fdafbe doc: Add description for CONFIG_LWIP_IPV6 in api-guides 2021-04-12 05:42:50 +00:00
yuanjm
94e3141a32 examples: Make tcp_server example support tcp keepalive function 2021-04-12 05:42:50 +00:00
yuanjm
fd34406960 examples: Use CONFIG_LWIP_IPV6 to strip tcp_server example 2021-04-12 05:42:50 +00:00
yuanjm
4544b709e5 lwip: Fix spelling issues in lwip_debug.c 2021-04-12 05:42:50 +00:00
yuanjm
a95c1c302d examples: Strip IPv6 function in example and use sockaddr_storage to replace sockaddr_in6 2021-04-12 05:42:50 +00:00
yuanjm
1ef91c72e2 components: Use CONFIG_LWIP_IPV6 to strip IPv6 function in components 2021-04-12 05:42:50 +00:00
yuanjm
90696dad89 lwip: Add LWIP_IPV6 macro to strip IPv6 function in LWIP component 2021-04-12 05:42:50 +00:00
fuzhibo
e310fb1393 fix: reduce the consumption of touch sensor during deep sleep 2021-04-12 12:24:53 +08:00
Angus Gratton
71de11e89d Merge branch 'feature/esp32c3_memprot_test3_v4.3' into 'release/v4.3'
ESP32C3/ESP32S2: memprot API upgrade and test application (v4.3)

See merge request espressif/esp-idf!12942
2021-04-12 03:29:29 +00:00
Krzysztof Budzynski
bda9e1fda7 Merge branch 'bugfix/doxygen_input_file_bug_v4.3' into 'release/v4.3'
docs: fix doxygen compile warnings for doxygen 1.9.1 (v4.3)

See merge request espressif/esp-idf!13075
2021-04-12 00:46:11 +00:00
Marius Vikhammer
97df333a3b docs: fix doxygen compile warnings for doxygen 1.9.1
Newer versions of doxygen will give warnings for comments in
INPUT lists

Delete all comment lines to fix these warnings, our folder structure
stil gives an OK overview of what we are including
2021-04-12 08:46:06 +08:00
Martin Vychodil
6dfff2fdbd esp32c3: memprot API upgrade and test application
Closes IDF-2641
2021-04-12 10:21:58 +10:00
Angus Gratton
2ed3e8b344 Merge branch 'bugfix/prefetch_invalid_v4.3' into 'release/v4.3'
soc: add dummy bytes to ensure instr prefetch always valid (v4.3)

See merge request espressif/esp-idf!12993
2021-04-09 14:49:07 +00:00
Prasad Alatkar
58a7d9f239 NimBLE: Add error prints for ACL buffer exhaustion in NPL 2021-04-09 14:18:20 +00:00
Angus Gratton
e4dd9053c2 Merge branch 'feature/secure_bootv2_c3_v4.3' into 'release/v4.3'
secure_boot_v2: Support SB_V2 for ESP32-C3 ECO3 (v4.3)

See merge request espressif/esp-idf!13062
2021-04-09 13:06:46 +00:00
Angus Gratton
ff5e0d0d38 Merge branch 'bugfix/calc_8m_freq_test_v4.3' into 'release/v4.3'
rtc: increase CI acceptance range for calc 8M test (v4.3)

See merge request espressif/esp-idf!13085
2021-04-09 13:06:36 +00:00
Angus Gratton
03b0540bc6 esp32s3: Reserve RTC memory in bootloader in the app linker script 2021-04-09 19:15:43 +10:00
Angus Gratton
17e30c9e89 esp32c3: Reserve RTC memory from bootloader in the app linker script 2021-04-09 19:15:43 +10:00
Angus Gratton
00cfcde385 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-09 19:15:43 +10:00
Angus Gratton
0839fd08dd Merge branch 'bugfix/dport_init_min_stack_size_v4.3' into 'release/v4.3'
freertos: Increase minimum task stack size when stack smashing checker is enabled (backport v4.3)

See merge request espressif/esp-idf!12797
2021-04-09 09:14:25 +00:00
Marius Vikhammer
626964beae docs: add C3 TRM links 2021-04-09 15:14:16 +08:00
Marius Vikhammer
220f3d2198 rtc: increase CI acceptance range for calc 8M test 2021-04-09 15:06:11 +08:00
Michael (XIAO Xufeng)
904933745b Merge branch 'bugfix/fix_esp_restart_crash_v4.3' into 'release/v4.3'
esp_hw_support: fix esp_restart crash (v4.3)

See merge request espressif/esp-idf!13072
2021-04-09 03:44:09 +00:00
Renz Bagaporo
ea4a8d5e4f esp_hw_support: fix esp_restart crash
Closes https://github.com/espressif/esp-idf/issues/6836
2021-04-09 09:30:03 +08:00
KonstantinKondrashov
10cce6b74a unit-test-app(config): esp32c3 uses eco0 for UTs 2021-04-09 00:02:40 +08:00
Michael (XIAO Xufeng)
e36e433519 Merge branch 'bugfix/fix_uart_handler_call_inline_func_v43' into 'release/v4.3'
Bugfix/fix uart handler call inline func (backport v4.3)

See merge request espressif/esp-idf!13003
2021-04-08 09:38:51 +00:00
Michael (XIAO Xufeng)
76ff1724b3 Merge branch 'feature/remove_hspi_macor_on_chips_later_than_s2_v4.3' into 'release/v4.3'
spi: remove hspi macor on chips later than s2 (v4.3)

See merge request espressif/esp-idf!12956
2021-04-08 09:37:07 +00:00
Angus Gratton
9f1ae278e0 Merge branch 'feature/vdd_sdio_pd_configurable_v4.3' into 'release/v4.3'
system: add VDD_SDIO power domain configuration for light sleep (backport v4.3)

See merge request espressif/esp-idf!13028
2021-04-08 09:27:57 +00:00
KonstantinKondrashov
54908d3a42 esp32c3: Default supported ESP32-C3 Revision ECO3 2021-04-08 15:09:14 +08:00
KonstantinKondrashov
19b90e8ba9 docs: Adds secure_boot_v2 for ESP32-C3 ECO3 2021-04-08 14:35:35 +08:00
KonstantinKondrashov
a5e27d73a5 secure_boot_v2: Adds support SB_V2 for ESP32-C3 ECO3 2021-04-08 14:35:35 +08:00
Angus Gratton
1e6a6ffa0d Merge branch 'bugfix/check_a_time_after_deepsleep_v4.3' into 'release/v4.3'
Fix esp32s2 timekeeping on deep sleep issue (v4.3)

See merge request espressif/esp-idf!13046
2021-04-08 01:14:44 +00:00
Renz Bagaporo
dbf2a64adb esp_hw_support: add test for rtc clk compensation 2021-04-07 06:40:28 +08:00
Renz Bagaporo
11970e65a1 newlib: persist rtc clk corrections 2021-04-07 06:40:28 +08:00
Juraj Michálek
3b8c7bdf0b tools: handle exception in case of logging Unicode characters 2021-04-06 19:16:15 +02:00
Armando
670b057b04 spi: remove HSPI macro on esp32c3 and esp32s3 2021-04-06 15:30:28 +08:00
Omar Chebib
ae3b4819da esp_system: add VDD_SDIO power domain configuration to documentation
Add a warning in `sleep_modes` doc page to explain how to keep
VDD_SDIO power domain ON.
2021-04-06 14:04:22 +08:00
Omar Chebib
b0684e8b3c esp_system: add VDD_SDIO power domain configuration for light sleep
VDD_SDIO power domain can now be configured for light sleep
by the application. It is now possible to keep the power domain
ON during light sleep, keeping the GPIOs connected to it powered.
The power domain will, by default be:
- Kept ON if CONFIG_ESP_SYSTEM_PD_FLASH is not set
- Turned OFF if not set

The application can still force it to be ON by calling
`esp_sleep_pd_config(ESP_PD_DOMAIN_VDDSDIO, ESP_PD_OPTION_ON);`
2021-04-06 14:01:38 +08:00
Angus Gratton
322cba0bf0 freertos: Add a small additional stack when optimization set to None
Fix for occasional crash on startup when DPORT task overwrites its stack during
context switch, otherwise.
2021-04-06 02:43:24 +00:00
Angus Gratton
f5c6595cb4 freertos: Increase minimum task stack size when stack smashing checker is enabled
Fixes issue with DPORT init task, this task uses minimum stack size and may not be
enough if stack smashing detection is set to Overall mode.

Also reworks the way we calculate minimum stack to allow for adding multiple
contributing factors.

Closes https://github.com/espressif/esp-idf/issues/6403
2021-04-06 02:43:24 +00:00
Rahul Tank
02de1a8071 esp-idf: Corrected check of Class of Device for discovered devices
Current code stopped inquiry if major class is not Phone. Modified the
condition to consider for both Phone and Audio to cover majority of real
world devices.

Closes https://github.com/espressif/esp-idf/issues/6548
2021-04-05 15:29:21 +05:30
Angus Gratton
e9e2b68587 freertos: Use the standard assert() function for configASSERT
Unless the option for "assert and keep running" is enabled.

This means that silent asserts now work for FreeRTOS, and disabling asserts
now also disables them in FreeRTOS without needing a separate config change.

Related to https://github.com/espressif/esp-idf/issues/6306
2021-04-02 11:07:23 +11:00
Angus Gratton
73d40cb813 lwip: Support silent assertion configuration
If silent assert configuration is enabled, LWIP asserts are now 'silent' also.

Also updates KConfig to note that LWIP asserts are also disabled when asserts
are disabled globally (this was already the behaviour, but the config item
suggested otherwise.)

Progress towards https://github.com/espressif/esp-idf/issues/5873
2021-04-02 11:03:44 +11:00
Angus Gratton
bf6ddf2557 bootloader: Allow 'silent assert' config to work in bootloader
Requires adding the 'newlib' component to the bootloader project, for
platform_include header.
2021-04-02 11:03:21 +11:00
aleks
d761226f36 driver: fix uart handler in iram calls inline uart_ll_is_tx_idle 2021-04-01 09:56:56 +02:00
Marius Vikhammer
5036ec363b soc: add dummy bytes to ensure instr prefetch always valid
The CPU might prefetch instructions, which means it in some cases
will try to fetch instruction located after the last instruction in
flash.text.

Add dummy bytes to ensure fetching these wont result in an error,
 e.g. MMU exceptions
2021-04-01 10:23:44 +08:00
Jiang Jiang Jian
c724236623 Merge branch 'bugfix/close_tsen_when_close_phy_v4.3' into 'release/v4.3'
esp_wifi: close tsen when close phy (backport to v4.3)

See merge request espressif/esp-idf!12986
2021-04-01 02:17:57 +00:00
Jiang Jiang Jian
f7034e7767 Merge branch 'bugfix/dirent-riscv-header-4.3' into 'release/v4.3'
vfs: use sys/dirent.h from newlib (backport v4.3)

See merge request espressif/esp-idf!12752
2021-04-01 02:16:59 +00:00
Jiang Jiang Jian
7e75d7f748 Merge branch 'bugfix/aes_dma_completion_v4.3' into 'release/v4.3'
mbedtls: Fix AES dma completion race condition (v4.3)

See merge request espressif/esp-idf!12903
2021-04-01 02:15:30 +00:00
Angus Gratton
e5437afa7f Merge branch 'bugfix/ds_invalidate_assert_v4.3' into 'release/v4.3'
esp32s2 ds: Fix invalidating Digital Signature key from HMAC peripheral if assertions are disabled (v4.3)

See merge request espressif/esp-idf!12905
2021-03-31 22:56:13 +00:00
Jiang Jiang Jian
319eecc793 Merge branch 'doc/c3_system_api_v4.3' into 'release/v4.3'
docs: updated system api-reference chapters for C3 (v.4.3)

See merge request espressif/esp-idf!12892
2021-03-31 17:57:41 +00:00
Jiang Jiang Jian
d17923151b Merge branch 'bugfix/fix_esp32c3_hardware_bug_before_ECO3_v4.3' into 'release/v4.3'
backport v4.3: fix c3 hardware bug before ECO3 and optimizate bbpll config:

See merge request espressif/esp-idf!12988
2021-03-31 17:44:01 +00:00
Jiang Jiang Jian
0a0b3bb23f Merge branch 'bugfix/assert_when_tcp_send_data_for_v4.3' into 'release/v4.3'
lw-ip:bugfix for assert when tcp send data(backport4.3)

See merge request espressif/esp-idf!12980
2021-03-31 17:40:43 +00:00
ninh
2a5cf2c3e0 esp_wifi: close tsens when close phy (backport v4.3) 2021-03-31 21:04:29 +08:00
Jiang Jiang Jian
ae15a0cab8 Merge branch 'bugfix/add_beacon_timeout_event_v4.3' into 'release/v4.3'
esp_wifi: Add beacon timeout event (backport v4.3)

See merge request espressif/esp-idf!12974
2021-03-31 13:01:41 +00:00
chaijie
0c7f286a87 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 20:17:54 +08:00
xueyunfei
3e26049a05 bugfix for assert when tcp send data 2021-03-31 16:45:45 +08:00
xiehang
dece3abd9c esp_wifi: Fix some wifi bugs
1.Add beacon timeout event.
2.Update TBTT when rx probe respones after beacon timeout.
3.Fix ESPTouch v2 issues.
2021-03-31 14:21:49 +08:00
Jiang Jiang Jian
1af5bc2f7d Merge branch 'bugfix/esp32c3_light_sleep_gpio_reset_issue_v4.3' into 'release/v4.3'
backport v4.3: add software workaround for esp32c3 gpio reset issue

See merge request espressif/esp-idf!12751
2021-03-31 03:12:09 +00:00
Angus Gratton
278cfc2047 Merge branch 'doc/embed_example_v4.3' into 'release/v4.3'
doc: Update the link to an example that embeds a file (v4.3)

See merge request espressif/esp-idf!12655
2021-03-31 01:31:12 +00:00
Michael (XIAO Xufeng)
1790aa6bc6 Merge branch 'bugfix/spi_slv_dual_boad_test_slv_fail_issue_4.3' into 'release/v4.3'
spi: spi slv dual boad test slv fail issue (4.3)

See merge request espressif/esp-idf!12958
2021-03-30 17:16:33 +00:00
Michael (XIAO Xufeng)
b75a5fd03a Merge branch 'bugfix/adc_power_issue_4.3' into 'release/v4.3'
adc: fix adc power issue (v4.3)

See merge request espressif/esp-idf!12921
2021-03-30 17:15:09 +00:00
Jiang Jiang Jian
cbf2858450 Merge branch 'bugfix/support_esp32c3eco3_v4.3' into 'release/v4.3'
Bugfix/support esp32c3eco3 v4.3

See merge request espressif/esp-idf!12931
2021-03-30 15:15:06 +00:00
Michael (XIAO Xufeng)
868c96c59f Merge branch 'bugfix/flash_suspend_restriction_v4.3' into 'release/v4.3'
spi_flash: make suspend off by default and add more information for using suspend(backport v4.3)

See merge request espressif/esp-idf!12932
2021-03-30 11:00:53 +00:00
Armando
60d5dcb000 spi_slave: enable spi slave dual board test on esp32c3 2021-03-30 17:16:16 +08:00
Armando
62787fc277 spi: update slv dual board test for ci due to no pullup resistor on io10 on c3 2021-03-30 17:11:23 +08:00
alex.li
9e97133481 Support new section addr and wifi lib for ESP32C3-ECO3. 2021-03-30 16:05:13 +08:00
Marius Vikhammer
c9087c205b docs: updated system api-reference chapters for C3 2021-03-30 14:28:02 +08:00
Jiang Jiang Jian
736b87db6d Merge branch 'ci/ignore_check_link_result_v4.3' into 'release/v4.3'
CI: ignore result from check_doc_links (v4.3)

See merge request espressif/esp-idf!12782
2021-03-30 03:11:00 +00:00
Jiang Jiang Jian
c2eaa3d844 Merge branch 'bugfix/esp32c3_gdbinit_v4.3' into 'release/v4.3'
.gdbinit generation fix (ESP32C3) (v4.3)

See merge request espressif/esp-idf!12750
2021-03-30 03:10:22 +00:00
Jiang Jiang Jian
2a715c811b Merge branch 'bugfix/extern_c_decl_4.3' into 'release/v4.3'
[cxx]: fixed extern "C" declarations (backport v4.3)

See merge request espressif/esp-idf!12741
2021-03-30 03:09:46 +00:00
Jiang Jiang Jian
17aa9c5ec4 Merge branch 'bugfix/broken_virtualenv_v4.3' into 'release/v4.3'
tools: Reinstall virtualenv if it is broken (v4.3)

See merge request espressif/esp-idf!12951
2021-03-30 03:08:08 +00:00
Roland Dobai
c93211db62 tools: Reinstall virtualenv if it is broken
Closes https://github.com/espressif/esp-idf/issues/6656
2021-03-29 15:05:42 +02:00
Li Shuai
be56456add light sleep: add software workaround for esp32c3 gpio reset issue 2021-03-29 15:06:23 +08:00
Jiang Jiang Jian
413bbe4de4 Merge branch 'bugfix/btdm_incorrectly_spelled_v4.3' into 'release/v4.3'
component/bt: fix Spelling mistakes(release v4.3)

See merge request espressif/esp-idf!12815
2021-03-29 05:07:57 +00:00
Cao Sen Miao
4906779d50 spi_flash: make suspend off by default and add more information for using suspend 2021-03-29 12:02:43 +08:00
Marius Vikhammer
7d5d57ec03 esptool: update to support flashing esp32c3 eco 3 2021-03-26 18:42:41 +08:00
Angus Gratton
67a1858bb1 esp32c3: Add support for building image with a minimum target revision 2021-03-26 18:29:53 +08:00
ronghulin
fb9de62f74 bugfix: keep wakeup state during csa 2021-03-26 18:29:10 +08:00
Armando
f48346f22f adc: apply adc power API to adc driver 2021-03-26 17:41:20 +08:00
Jiang Jiang Jian
79ce133ed7 Merge branch 'feature/support_esp32c3_aligenie_demo_v4.3' into 'release/v4.3'
ble_mesh: aligenie_demo: Add sdkconfig.defaults for esp32c3 (backport V4.3)

See merge request espressif/esp-idf!12428
2021-03-26 06:02:55 +00:00
Yuan Ming Fu
a59a5cb2cc ble_mesh: aligenie_demo: Add sdkconfig.defaults for esp32c3 (backport V4.3) 2021-03-26 14:02:49 +08:00
Jiang Jiang Jian
2d26c24e3a Merge branch 'bugfix/clear_interrupt_in_touch_sensor_initialization_backport_v4.3' into 'release/v4.3'
fix: clear interrupt in touch sensor initialization (backport v4.3)

See merge request espressif/esp-idf!12758
2021-03-26 05:55:18 +00:00
Jiang Jiang Jian
2792c333bc Merge branch 'bugfix/freemodbus_fix_mbm_event_processing_v43' into 'release/v4.3'
freemodbuss: fix event processing after merge (backport v4.3)

See merge request espressif/esp-idf!12821
2021-03-26 05:52:59 +00:00
Jiang Jiang Jian
7c5e920c37 Merge branch 'feature/temp_v4.3' into 'release/v4.3'
temp_sensor: add calibration for esp32c3(backport v4.3)

See merge request espressif/esp-idf!12703
2021-03-26 05:51:47 +00:00
Jiang Jiang Jian
d4ac30a978 Merge branch 'fix/dont_disable_uart_dl_mode_by_default_v4.3' into 'release/v4.3'
bootloader/ ESP32_ECO3: Do not disable UART download mode by default (v4.3)

See merge request espressif/esp-idf!12907
2021-03-26 05:50:48 +00:00
Jiang Jiang Jian
2596c7e2cc Merge branch 'nimble/mbedtls_aes_free_dma_v4.3' into 'release/v4.3'
NimBLE: Free AES context after use by calling `mbedtls_free_aes` (Needed for C3) (v4.3)

See merge request espressif/esp-idf!12917
2021-03-26 05:47:50 +00:00
Armando
e6b7c933d5 adc: rename adc examples according to hw feature and usage 2021-03-26 13:26:19 +08:00
Armando
8fe99aff96 adc: add implementation of missed public API
Added ``adc1_pad_get_io_num``, ``adc2_pad_get_io_num`` and
``adc_vref_to_gpio``.
2021-03-26 13:26:19 +08:00
Armando
4866027391 adc: update adc programming guide to avoid build fail 2021-03-26 13:26:19 +08:00
Armando
a6ed4611a2 adc: update lock scope on esp32c3 2021-03-26 13:26:19 +08:00
Armando
d457641f90 adc: rename adc related examples 2021-03-26 13:26:19 +08:00
Armando
1509264f2e adc: add pm_lock to adc driver on esp32c3 2021-03-26 13:26:19 +08:00
Armando
271b84f5b6 adc: update adc header files on c3 2021-03-26 13:26:19 +08:00
Armando
f1be501271 adc: refactor adc single read api on esp32c3 2021-03-26 13:26:19 +08:00
Armando
ea20966c29 adc: seperate hal layer and driver layer 2021-03-26 13:26:18 +08:00
Armando
f25c996b06 adc: remove unused functions on esp32c3 2021-03-26 13:26:18 +08:00
Jiang Jiang Jian
745bb2123f Merge branch 'bugfix/btdm_add_controller_support_RPA_4.3' into 'release/v4.3'
Add option to enable/disable esp32 controller RPA (backport v4.3)

See merge request espressif/esp-idf!12886
2021-03-26 04:21:04 +00:00
Jiang Jiang Jian
143bb1edf4 Merge branch 'bugfix/btdm_fix_multi-con_pair_failed_v4.3' into 'release/v4.3'
fix multi-connection pair failed (backport v4.3)

See merge request espressif/esp-idf!12885
2021-03-26 04:19:28 +00:00
Jiang Jiang Jian
f1737a630d Merge branch 'bugfix/btdm_synchronize_multiple_branch_of_bt_lib_v4.3' into 'release/v4.3'
Bugfix/btdm synchronize multiple branch of bt lib v4.3

See merge request espressif/esp-idf!12872
2021-03-26 04:15:52 +00:00
Angus Gratton
83087f15fa Merge branch 'feature/on_update_no_secure_boot_verify_only_one_sign_v4.3' into 'release/v4.3'
secure_boot: Only the first position of signature blocks is used to verify any update (v4.3)

See merge request espressif/esp-idf!12908
2021-03-26 03:18:42 +00:00
Prasad Alatkar
a9d1d44d4d NimBLE: Free AES context after use by calling mbedtls_free_aes
- Update NimBLE submodule to resolve issue observed while using mbedTLS as
  crypto stack during security exchanges.

Closes BT-1435, BT-1434
2021-03-25 18:43:49 +05:30
baohongde
72b27f1782 components/bt: Synchronize multiple branch of bt lib 2021-03-25 15:58:42 +08:00
baohongde
8e482c9423 components/bt: Fix assert without sw coexist enabled 2021-03-25 15:58:42 +08:00
baohongde
1fb45977fa component/coex: Decouple Wi-Fi and bluetooth with coexist to reduce binary file size 2021-03-25 15:58:42 +08:00
“YangZhao”
257728feab Fix the bug of modem sleep which may lead to the crash issue "assert(-218959118,0)" 2021-03-25 15:58:22 +08:00
KonstantinKondrashov
26d362040e secure_boot/SIGNED_ON_UPDATE_NO_SECURE_BOOT: Only the first position of signature blocks is used to verify any update 2021-03-25 15:40:24 +08:00
Aditya Patwardhan
f6a794cf51 bootloader/ ESP32_ECO3: Do not disable UART download mode by default 2021-03-25 10:32:37 +05:30
Angus Gratton
974db3016b esp32s2 ds: Fix invalidating Digital Signature key from HMAC peripheral if assertions are disabled 2021-03-25 15:34:26 +11:00
Angus Gratton
9c4c377f2d mbedtls tests: Add optional debug log output to AES stream tests 2021-03-25 15:28:45 +11:00
Angus Gratton
e6b8bc6ecb mbedtls aes dma: Fix bug where DMA would complete when the first output descriptor was done, not the last 2021-03-25 15:28:45 +11:00
Mahavir Jain
718f296587 Merge branch 'bugfix/revert_esp_log_issue_4.3' into 'release/v4.3'
efuse: revert ESP_LOG to ESP_EARLY_LOG in src/esp_efuse_utility.c (4.3)

See merge request espressif/esp-idf!12794
2021-03-25 03:56:02 +00:00
David Čermák
6c74618bff Merge branch 'bugfix/fix_wrong_bit_order_of_ksz8041_v4.3' into 'release/v4.3'
eth_phy: fix wrong register bit order in ksz8041

See merge request espressif/esp-idf!12735
2021-03-24 18:08:37 +00:00
Martin Vychodil
974f345316 * fixed generation of .gdbinit file (esp32c3 dbg issue) 2021-03-24 11:39:30 +00:00
zwj
f2ca74b139 add option to enable/disable esp32 controller RPA 2021-03-24 16:45:58 +08:00
zwj
ac8ea9e9e5 fix multi-connection pair failed 2021-03-24 16:44:45 +08:00
Jiang Jiang Jian
48890daab1 Merge branch 'bugfix/idf_size_total_size_without_bss_v4.3' into 'release/v4.3'
tools: Don't count BSS into the total image size (v4.3)

See merge request espressif/esp-idf!12575
2021-03-24 08:12:27 +00:00
Jiang Jiang Jian
f1aabb2894 Merge branch 'bugfix/ble_tx_power_mapping_for_v4.3' into 'release/v4.3'
Bugfix/ble tx power mapping for v4.3

See merge request espressif/esp-idf!12870
2021-03-24 08:07:23 +00:00
wangmengyang
cc8ef3660a components/bt: shorten some log messages for bluedroid 2021-03-24 03:38:56 +00:00
wangmengyang
67402f035f component/bt: [ESP32S3] fix missing IRAM_ATTR for function in libbtdm_app.a 2021-03-24 03:38:56 +00:00
wangmengyang
7dd5568cb7 fixed incorrect Tx power mappings for ESP32C3 chip 2021-03-24 03:38:56 +00:00
Jiang Jiang Jian
f00d7ee9d0 Merge branch 'bugfix/fix_wdt_timeout_when_enable_rf_v4.3' into 'release/v4.3'
esp_wifi: fix wdt timeout when enable rf (backport v4.3)

See merge request espressif/esp-idf!12833
2021-03-23 16:32:29 +00:00
XieWenxiang
dba5597edf component/bt: Modify some ambiguous descriptions(release v4.3) 2021-03-23 23:02:18 +08:00
Mahavir Jain
5019a6571e Merge branch 'bugfix/nvs_encryption_keys_v4.3' into 'release/v4.3'
NVS: fix nvs_flash_generate_keys to generate random keys (Github PR) (v4.3)

See merge request espressif/esp-idf!12781
2021-03-23 04:41:01 +00:00
ninh
4f8d784753 esp_wifi: fix wdt timeout when enable rf 2021-03-23 10:26:56 +08:00
Jakob Hasse
a697377871 [doc]: elaborated nvs encryption comments in nvs 2021-03-22 13:02:35 +00:00
negativekelvin
6ceee165b5 Fix nvs_flash_generate_keys
Merges https://github.com/espressif/esp-idf/pull/6478
2021-03-22 13:02:35 +00:00
Mahavir Jain
4a20f68f5c Merge branch 'feature/update_wifi_provisioning_readme_v4.3' into 'release/v4.3'
provisioning: Update README.md to explain QR code format [backport v4.3]

See merge request espressif/esp-idf!12802
2021-03-22 12:57:05 +00:00
Mahavir Jain
8ec0ffe751 Merge branch 'bugfix/fix_rtc_memory_region_name_v4.3' into 'release/v4.3'
esp32c3: correct name for RTC memory region in heap (v4.3)

See merge request espressif/esp-idf!12820
2021-03-22 12:54:07 +00:00
Jiang Jiang Jian
5d0ce8b52f Merge branch 'bugfix/crash_on_enabling_verbose_logs_v4.3' into 'release/v4.3'
esp_wifi: Fixes issue of crashing when verbose logs are enabled. (v4.3)

See merge request espressif/esp-idf!12495
2021-03-22 12:52:37 +00:00
Jiang Jiang Jian
2313683b58 Merge branch 'bugfix/fix_l2cap_repeat_cid_v4.3' into 'release/v4.3'
Bugfix/Fix L2CAP Repeat Cid[backport v4.3]

See merge request espressif/esp-idf!12613
2021-03-22 12:49:03 +00:00
Jiang Jiang Jian
c41822dc7c Merge branch 'mesh/support_for_chain_topology_backport_v4.3' into 'release/v4.3'
mesh: support for chain topology (backport v4.3)

See merge request espressif/esp-idf!12805
2021-03-22 12:48:41 +00:00
Jiang Jiang Jian
21909d7823 Merge branch 'mesh/ps_duty_signaling_backport_v4.3' into 'release/v4.3'
mesh/ps: network duty signaling (backport v4.3)

See merge request espressif/esp-idf!12804
2021-03-22 12:47:53 +00:00
Jiang Jiang Jian
651a939643 Merge branch 'bugfix/spi_flash_compatible_with_rom_c3_and_s3_v4.3' into 'release/v4.3'
spi_flash: make spiflash compatible with ESP32C3 and ESP32S3 ROM (backport v4.3)

See merge request espressif/esp-idf!12784
2021-03-22 12:47:05 +00:00
Jiang Jiang Jian
3bf9d389ef Merge branch 'bufix/ag_deep_copy_crash_v_4_3' into 'release/v4.3'
components/bt: Fix crash in btc_hf_arg_deep_copy when name or number is NULL

See merge request espressif/esp-idf!12791
2021-03-22 12:46:18 +00:00
aleks
6238c49479 freemodbuss: fix event processing after merge 2021-03-19 13:59:54 +01:00
shenjun
fe1126cccb mesh/ps: network duty signaling 2021-03-19 20:58:00 +08:00
Mahavir Jain
4725249385 esp32c3: correct name for RTC memory region in heap 2021-03-19 17:59:12 +05:30
Mahavir Jain
6cfef8ce93 Merge branch 'bugfix/sign_app_by_rsa_when_require_signed_app_v4.3' into 'release/v4.3'
secure_boot: Secure Boot V2 verify app signature on update (without Secure boot) (v4.3)

See merge request espressif/esp-idf!12766
2021-03-19 12:19:53 +00:00
jiangguangming
a643ea9432 spi_flash: make spiflash compatible with ESP32C3 and ESP32S3 ROM 2021-03-19 16:37:34 +08:00
yuanjm
f54dfe2912 provisioning: update README.md 2021-03-19 13:58:08 +08:00
mjcross
c2ba180de3 provisioning: Update README.md to explain QR code format
Add examples of how to create a QR code that will be recognised by the iOS or Android app

Signed-off-by: yuanjm <yuanjianmin@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/6629
2021-03-19 13:57:20 +08:00
Armando
d6f76f8a5f efuse: revert ESP_LOG to ESP_EARLY_LOG in src/esp_efuse_utility.c
Closes https://github.com/espressif/esp-idf/issues/6660
2021-03-19 13:25:32 +08:00
shenjun
1d778c941c mesh: support for chain topology 2021-03-19 11:25:57 +08:00
xiongweichao
87b613fd2f components/bt: Fix crash in btc_hf_arg_deep_copy when name or number is NULL 2021-03-18 20:29:05 +08:00
Marius Vikhammer
f5f7d21c83 CI: ignore result from check_doc_links
check_doc_links will always fail due to:
 * No rate limitation for requests
 * Not being able to handle github links with anchors
2021-03-18 13:15:24 +08:00
Angus Gratton
502a819757 secure boot v2: Fix issue checking multiple signature blocks on OTA update 2021-03-17 17:08:59 +08:00
Angus Gratton
802a01c0b7 docs: Add docs for Secure Boot V2 "verify on update without secure boot" 2021-03-17 17:08:59 +08:00
Angus Gratton
a479ee30c9 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-17 17:08:59 +08:00
KonstantinKondrashov
46e85ed021 secure_boot: Secure Boot V2 verify app signature on update (without Secure boot)
- ESP32 ECO3, ESP32-S2/C3/S3
2021-03-17 17:08:59 +08:00
KonstantinKondrashov
0862fe815b secure_boot: Adds empty esp_secure_boot_init_checks
There is no checks
2021-03-17 17:09:00 +08:00
fuzhibo
918875424e fix: clear interrupt in touch sensor initialization 2021-03-16 11:37:41 +08:00
Jiacheng Guo
5490c0a243 vfs: use sys/dirent.h from newlib
The dirent.h shipped with the risc-v compiler lacks `extern "C"`
declartion and causes linkage declartion conflict when included in C++
files. Use the dirent.h from newlib only to avoid this issue.

(cherry picked from commit b14830c5c0)
2021-03-16 10:33:31 +08:00
William Ferguson
a71d9cc466 [cxx]: fixed extern "C" declarations
* Moving #includes above
  #ifdef __cplusplus extern "C" { #endif
  So that we can compile with CPP.

Signed-off-by: Jakob Hasse <jakob.hasse@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/6634
Closes https://github.com/espressif/esp-idf/issues/6633
2021-03-15 17:48:23 +08:00
morris
c75a8b11bb eth_phy: fix wrong register bit order in ksz8041 2021-03-15 13:12:17 +08:00
liqigan
9c884b3ba9 fix l2cap repeat cid 2021-03-12 15:53:48 +08:00
Angus Gratton
9a2d251912 Merge branch 'feature/coredump_refactor_riscv_support_v4.3' into 'release/v4.3'
espcoredump: code refactoring and add support for RISC-V implementation (backport v4.3)

See merge request espressif/esp-idf!12680
2021-03-12 07:47:02 +00:00
Jiang Jiang Jian
3b9af23290 Merge branch 'component_bt/optimize_spp_stop_server_v4.3' into 'release/v4.3'
component_bt/Optimize SPP Stop Server API[backport v4.3]

See merge request espressif/esp-idf!12615
2021-03-12 07:45:05 +00:00
Jiang Jiang Jian
ff12b50e45 Merge branch 'feature/wifi_support_sta_sleep_at_disconnected_v4.3' into 'release/v4.3'
esp_wifi: wifi support sta sleep at disconnected (backport v4.3)

See merge request espressif/esp-idf!12720
2021-03-12 07:43:46 +00:00
Jiang Jiang Jian
f6336516d1 Merge branch 'bugfix/fix_ble_connect_evt_report_remote_addr_err_v4.3' into 'release/v4.3'
fix ble connection event report remote address error (backport v4.3)

See merge request espressif/esp-idf!12717
2021-03-12 05:59:25 +00:00
Angus Gratton
4d80dd1238 Merge branch 'bugfix/c++_usage_esp_core_dump_h_v4.3' into 'release/v4.3'
Fixed c++ include usage for esp_core_dump.h (backport v4.3)

See merge request espressif/esp-idf!12677
2021-03-12 04:01:42 +00:00
zwj
8a2155f95e fix ble connection event report remote address error 2021-03-12 11:44:13 +08:00
ninh
367190deaf esp_wifi: support sta to sleep at disconnected status 2021-03-12 00:22:38 +08:00
Jiang Jiang Jian
dbb632fe34 Merge branch 'bugfix/fix_smartconfig_issue_v4.3' into 'release/v4.3'
esp_wifi: Fix the second distribution network failure of smartconfig (backport v4.3)

See merge request espressif/esp-idf!12685
2021-03-11 14:28:52 +00:00
Michael (XIAO Xufeng)
1329747dc1 Merge branch 'bugfix/flash_s3_v4.3' into 'release/v4.3'
spi_flash: remove useless dummy and make rom compatible on esp32s3(backport v4.3)

See merge request espressif/esp-idf!12704
2021-03-11 13:38:52 +00:00
Michael (XIAO Xufeng)
f9e1942252 Merge branch 'bugfix/ota_v4.3' into 'release/v4.3'
ota: fix ota with flash encryption(backport v4.3)

See merge request espressif/esp-idf!12705
2021-03-11 13:21:00 +00:00
Angus Gratton
82ffb33085 Merge branch 'feature/crypto_reserve_gdma_ch_v4.3' into 'release/v4.3'
aes/sha: use a shared lazy allocated GDMA channel for AES and SHA (v4.3)

See merge request espressif/esp-idf!12676
2021-03-11 10:50:09 +00:00
Angus Gratton
9fd12182de Merge branch 'docs/esp32c3_fatal_errors_v4.3' into 'release/v4.3'
doc: update "Fatal Errors" chapter for ESP32C3 board (backport v4.3)

See merge request espressif/esp-idf!12678
2021-03-11 10:48:03 +00:00
Krzysztof Budzynski
d42958439d Merge branch 'doc/c3_api_ref_update_v4.3' into 'release/v4.3'
docs: update api-reference chapters for C3 (v4.3)

See merge request espressif/esp-idf!12583
2021-03-11 09:36:44 +00:00
Li Shuai
37946ab300 deep sleep: power down wifi and bt during deep sleep 2021-03-11 07:32:30 +00:00
Li Shuai
2b7a3f6d85 light sleep: some default parameters optimization 2021-03-11 07:32:30 +00:00
xiehang
60642e580c esp_wifi: Fix the second distribution network failure of ESPTouch v2 2021-03-11 07:32:30 +00:00
Jiang Jiang Jian
4235e80008 Merge branch 'bugfix/backport_bugfixs_to_release_v4.3' into 'release/v4.3'
Bugfix/backport bugfixs to release v4.3

See merge request espressif/esp-idf!12682
2021-03-11 07:15:00 +00:00
Angus Gratton
a8e0989648 Merge branch 'feature/re-enable_suspend_test_esp32c3_v4.3' into 'release/v4.3'
freertos: Workaround delay between interrupt request and trigger on RISC-V (backport v4.3)

See merge request espressif/esp-idf!12679
2021-03-11 07:12:56 +00:00
Cao Sen Miao
28f50addda ota: fix ota with flash encryption 2021-03-11 14:42:09 +08:00
Omar Chebib
9393a402eb doc: update "Fatal Errors" chapter for ESP32C3 board 2021-03-11 06:37:30 +00:00
Cao Sen Miao
268787c5fb spi_flash: remove useless dummy and make rom compatible on esp32s3 2021-03-11 14:31:27 +08:00
Cao Sen Miao
d92ac450a2 temp_sensor: add calibration for esp32c3 2021-03-11 14:25:18 +08:00
Angus Gratton
233f3f80e5 Merge branch 'feature/skip_validate_v4.3' into 'release/v4.3'
bootloader: Add config options to skip validation of app for minimum boot time (v4.3)

See merge request espressif/esp-idf!12683
2021-03-11 05:47:43 +00:00
Chinmay Chhajed
d01efe4b8c Fix for C2H flow control param check when only BLE mode is configured. 2021-03-11 12:04:01 +08:00
Michael (XIAO Xufeng)
e48935d187 Merge branch 'bugfix/uart_baud_c3_s3_v4.3' into 'release/v4.3'
uart: fixed incorrect baudrate on C3 and S3 when target is too slow (v4.3)

See merge request espressif/esp-idf!12681
2021-03-10 17:10:13 +00:00
Jiang Jiang Jian
12bbd1f051 Merge branch 'bugfix/fix_some_wifi_bugs_0309_v4.3' into 'release/v4.3'
esp_wifi: Fix some Wi-Fi bugs 0309 (backport v4.3)

See merge request espressif/esp-idf!12670
2021-03-10 11:07:20 +00:00
Angus Gratton
0305d13467 bootloader: Add config options to skip validation of app for minimum boot time 2021-03-10 19:08:47 +11:00
baohongde
e6ace495b4 Fix issues during light sleep and DFS 2021-03-10 14:14:49 +08:00
baohongde
b449909b35 Fix controller task watchdog in Wi-Fi test 2021-03-10 14:14:29 +08:00
gengyuchao
0253d825e9 Fix IRAM_ATTR missing 2021-03-10 14:14:04 +08:00
aleks
32b0836485 driver: esp32s3 fix UART driver
Fix set UART2 instance to correct base address (esp32s3 has non standard base periph address)
2021-03-10 13:41:10 +08:00
Michael (XIAO Xufeng)
7dca6b7428 uart: fixed incorrect baudrate on C3 and S3 when target is too slow
The integer part of the divider is only 12-bit now. We used prescaler to get low frequency instead.
2021-03-10 13:41:10 +08:00
Michael (XIAO Xufeng)
b180c2a146 Merge branch 'bugfix/touch_element_callback_para_v4.3' into 'release/v4.3'
touch_element: fix event callback parameter type, change it into pointer (backport v4.3)

See merge request espressif/esp-idf!12629
2021-03-10 05:26:50 +00:00
Omar Chebib
113bf479a4 espcoredump: code refactoring and add support for RISC-V implemetation
This commit includes the refactoring of the core dump feature. Thanks to
this refactoring, it is easier to integrate the support of RISC-V
architecture for this feature.

Fixes ESP-1758
2021-03-10 12:19:00 +08:00
Omar Chebib
774f010196 freertos: Fix delay between interrupt request and trigger on RISC-V
NOP instructions have been added in order to prevent the code
from executing code it shouldn't execute. This is due to a delay
between the moment an interrupt is requested and the moment it
is fired. It only happens on RISC-V SoC.
2021-03-10 12:14:21 +08:00
22a8fe5b6f Removed esp_core_dump.h from check_public_headers_exceptions.txt (as per @igrr 's request 2021-03-10 12:04:48 +08:00
d36c72fba0 Fixed c++ include usage for esp_core_dump.h 2021-03-10 12:04:42 +08:00
Marius Vikhammer
1c8fd4041e aes/sha: use a shared lazy allocated GDMA channel for AES and SHA
Removed the old dynamically allocated GDMA channel approach.
It proved too unreliable as we couldn't not ensure consumers of the mbedtls
would properly free the channels after use.

Replaced by a single shared GDMA channel for AES and SHA, which won't be
released unless user specifically calls API for releasing it.
2021-03-10 09:40:35 +08:00
Jiang Jiang Jian
d4263c2558 Merge branch 'bugfix/btdm_crash_when_esp_restart_v4.3' into 'release/v4.3'
components/bt: Fix crash in Bluetooth when esp_restart

See merge request espressif/esp-idf!12641
2021-03-09 17:30:45 +00:00
xiehang
ea49545269 esp_wifi: Fix some Wi-Fi bugs 0309
1. Fix the issue that the parameters obtained from RAM cannot be saved to NVS
2. Modify not to store the default value in NVS
3. Fixed issue with hidden AP scans after connecting AP.
4. Fix watchdog issue when receiving action frame.
5. Fixed issue of reason code change from 15 to 204 when provide wrong password
6. Fix set config return value error
7. Fix ampdu age timer memory leak
2021-03-09 20:30:13 +08:00
Michael (XIAO Xufeng)
9ca05c17ae Merge branch 'bugfix/ota_simple_backport_v4.3' into 'release/v4.3'
ota: fix ota with flash encryption(backport v4.3)

See merge request espressif/esp-idf!12639
2021-03-09 09:42:57 +00:00
daiziyan
fd93c475b6 update CN translation based on reviewers' comments 2021-03-09 10:31:33 +11:00
daiziyan
27c72a4105 api-guides: update CN translation for build-system and build-system-legacy,and fix line break in the EN version 2021-03-09 10:30:49 +11:00
Angus Gratton
5c8b1d6ab8 doc: Update the link to an example that embeds a file
Since we have the CA Certificate Store feature, https_request no longer needs to
embed any certs.
2021-03-09 10:30:49 +11:00
Mahavir Jain
c5f8fbea02 Merge branch 'fix/esp_tls_prevent_freeing_global_CA_store_after_each_request_v4.3' into 'release/v4.3'
fix(esp_tls): prevent freeing global CA store after each request (v4.3)

See merge request espressif/esp-idf!12630
2021-03-08 04:59:19 +00:00
Michael (XIAO Xufeng)
cf7891cb93 Merge branch 'feature/touch_element_api_reference_v4.3' into 'release/v4.3'
touch_element: add touch element lib api-reference doc (backport v4.3)

See merge request espressif/esp-idf!12572
2021-03-08 02:58:43 +00:00
baohongde
1e77586120 components/bt: Fix crash in Bluetooth when esp_restart 2021-03-05 20:19:18 +08:00
Cao Sen Miao
1ea548ecb3 ota: fix ota with flash encryption 2021-03-05 18:39:32 +08:00
Aditya Patwardhan
962ea61d53 protocomm: Fixed NULL check of allocated memory
Fixes one part of - https://github.com/espressif/esp-idf/issues/6440
2021-03-05 10:04:45 +05:30
Aditya Patwardhan
d61ee580d5 esp_tls: Fix misplaced paranthesis in esp_tls_mbedtls.c
Fixes one part of -  https://github.com/espressif/esp-idf/issues/6440
2021-03-05 10:04:45 +05:30
Aditya Patwardhan
947e445e02 Fix esp_tls: Prevent freeing of global ca store after each connection
when dynamic ssl buffers are enabled
2021-03-05 09:53:19 +05:30
Kang Zuo Ling
1821fd766b touch_element: fix event callback parameter type, change it into pointer 2021-03-05 11:45:47 +08:00
Michael (XIAO Xufeng)
d508182429 Merge branch 'feature/touch_element_example_v4.3' into 'release/v4.3'
touch_element: add touch element lib examples (backport v4.3)

See merge request espressif/esp-idf!12571
2021-03-05 03:29:43 +00:00
liqigan
58c9a2eaba add API esp_spp_stop_srv_scn to stop a specific server 2021-03-04 15:16:44 +08:00
Mahavir Jain
07b62da0d4 Merge branch 'feature/add_qrcode_in_provisioning_example_v4.3' into 'release/v4.3'
examples: Add QR code support for provisioning examples [backport v4.3]

See merge request espressif/esp-idf!12555
2021-03-03 06:24:56 +00:00
Marius Vikhammer
fb82bdb9da docs: update api-reference chapters for C3
Checked and updated the following chapters:
 * api-reference/network
 * api-reference/protocols
 * api-reference/provisioning
 * api-reference/storage
 * api-reference/peripherals/ds
 * api-reference/peripherals/hmac
 * api-reference/peripherals/secure_element
2021-03-02 15:00:56 +08:00
Roland Dobai
f3be9976b9 tools: Don't count BSS into the total image size 2021-03-01 14:39:32 +01:00
Kang Zuoling
b639514793 touch_element: add touch element api-reference doc 2021-03-01 18:02:53 +08:00
Mahavir Jain
f12b571f82 Merge branch 'bugfix/esp_wifi_deinit_v4.3' into 'release/v4.3'
esp_wifi_deinit: Return ESP_ERR_WIFI_NOT_STOPPED if wifi is not stopped (v4.3)

See merge request espressif/esp-idf!12539
2021-03-01 09:31:13 +00:00
Kang Zuoling
c0f06115d4 touch_element: add touch element lib example 2021-03-01 17:28:04 +08:00
Shubham Kulkarni
20b25a9667 esp_wifi_deinit: Return ESP_ERR_WIFI_NOT_STOPPED if wifi is not stopped
Add test case to test this workflow
2021-03-01 05:33:26 +00:00
Angus Gratton
1d9d444c07 Merge branch 'bugfix/deepsleep_disable_brownout_s2_v4.3' into 'release/v4.3'
deep_sleep: on S2 disable the brown out detector before deep sleeping (v4.3)

See merge request espressif/esp-idf!12499
2021-03-01 03:50:20 +00:00
yuanjm
060a829091 examples: Add QR code support for provisioning examples 2021-03-01 10:51:36 +08:00
Michael (XIAO Xufeng)
78314df2a5 Merge branch 'feature/enable_c3_ut_v4.3' into 'release/v4.3'
CI: run C3 unit test on protected branches

See merge request espressif/esp-idf!12416
2021-03-01 02:10:51 +00:00
Michael (XIAO Xufeng)
8ceb462993 Merge branch 'feature/enable_gpio19_esp32c3_v4.3' into 'release/v4.3'
gpio: enable GPIO19 on ESP32C3 boards (backport v4.3)

See merge request espressif/esp-idf!12542
2021-02-27 05:25:42 +00:00
Michael (XIAO Xufeng)
6accffecea Merge branch 'bugfix/fix_spi_slv_hd_dma_reset_issue_4.3' into 'release/v4.3'
spi_slave_hd: fix spi slv hd dma reset issue (4.3)

See merge request espressif/esp-idf!12513
2021-02-27 04:12:42 +00:00
Michael (XIAO Xufeng)
de79e482c9 Merge branch 'feaature/deep_sleep_wakeup_backport' into 'release/v4.3'
esp_system: support gpio wakeup from deep sleep on esp32c3(backport v4.3)

See merge request espressif/esp-idf!12537
2021-02-26 14:49:19 +00:00
aditi_lonkar
6638b81f8e esp_wifi: Fixes issue of crashing when verbose logs are enabled. 2021-02-26 19:00:55 +05:30
Jiang Jiang Jian
d92b647199 Merge branch 'bugfix/fix_some_wifi_bugs_0226_v4.3' into 'release/v4.3'
esp_wifi: fix some wifi bugs (backport v4.3)

See merge request espressif/esp-idf!12538
2021-02-26 12:52:39 +00:00
Jiang Jiang Jian
965daf977a Merge branch 'bugfix/btdm_fix_spp_acceptor_cancle_pair_crash_4.3' into 'release/v4.3'
fix crash caused by spp pairing cancel (4.3)

See merge request espressif/esp-idf!12544
2021-02-26 12:42:21 +00:00
zwj
aa652adc12 fix crash caused by spp pairing cancel 2021-02-26 19:17:51 +08:00
Omar Chebib
5795075460 gpio: enable GPIO19 on ESP32C3 boards 2021-02-26 17:54:36 +08:00
Cao Sen Miao
198d350fe5 esp_system: support gpio wakeup from deep sleep on esp32c3 2021-02-26 17:08:22 +08:00
Michael (XIAO Xufeng)
24f3341a2d Merge branch 'docs/spi_flash_auto_suspend_v4.3' into 'release/v4.3'
spi_flash: update docs after adding CONFIG_SPI_FLASH_AUTO_SUSPEND (v4.3)

See merge request espressif/esp-idf!12512
2021-02-26 08:53:48 +00:00
zhangyanjiao
5a429f644f esp_wifi: update wifi lib 2021-02-26 16:36:16 +08:00
Xia Xiaotian
9aae8e0ce3 esp_wifi: synchronize Wi-Fi adapter between different chips
Support preferring to allocate Wi-Fi memory from PSRAM on ESP32-S3

Support Wi-Fi TX cache buffer on ESP32-S3
2021-02-26 16:34:23 +08:00
Xia Xiaotian
e5e47ebae6 esp_wifi: store PHY digital registers before disabling PHY and load
them after enabling PHY
2021-02-26 16:34:10 +08:00
ChenJianxing
436c3c289e esp_wifi: optimization wifi rate
1.support disable 11b rate
2.support config espnow rate
3.fix sta negotiate phymode issue
4.update ftm rate
2021-02-26 16:32:09 +08:00
dongyou
2aa6aa8b88 change rom function for esp32c3 to fix eb lldesc size issue 2021-02-26 16:31:12 +08:00
Armando
3e9cd49d32 spi_slv_hd: add hal_trans_finish comments for clarifying risk 2021-02-26 10:39:12 +08:00
Armando
2c1845995b spi_slave_hd: refactor the hal append api to remove the spinlock 2021-02-26 10:39:10 +08:00
Angus Gratton
0c77299c34 Merge branch 'feature/update_efuse_doc_v4.3' into 'release/v4.3'
doc/efuse: Adds efuse doc for ESP32-C3 (v4.3)

See merge request espressif/esp-idf!12516
2021-02-25 23:22:51 +00:00
Angus Gratton
9ac3e7c5d1 Merge branch 'feature/doc_update_security_chapters_v4.3' into 'release/v4.3'
doc/secure features: Updates doc esp32c3 (v4.3)

See merge request espressif/esp-idf!12517
2021-02-25 23:14:12 +00:00
Michael (XIAO Xufeng)
c42ce05941 Merge branch 'feature/apply_gdma_new_channel_api_to_adc_4.3' into 'release/v4.3'
adc: apply gdma new channel api to adc (v4.3)

See merge request espressif/esp-idf!12502
2021-02-25 17:37:17 +00:00
KonstantinKondrashov
ea2eb9d833 doc(esp32c3): Updates secure features doc 2021-02-25 21:08:55 +08:00
KonstantinKondrashov
dec52a93d4 doc/efuse: Adds efuse doc for ESP32-C3 2021-02-25 21:07:27 +08:00
Armando
41bee7831f adc: apply gdma api to adc on esp32c3 2021-02-25 18:53:32 +08:00
Michael (XIAO Xufeng)
bd1b4dbda1 Merge branch 'feature/apply_gdma_new_channel_api_to_spi_4.3' into 'release/v4.3'
spi: apply gdma new channel api to spi (v4.3)

See merge request espressif/esp-idf!12501
2021-02-25 10:36:09 +00:00
Michael (XIAO Xufeng)
1de12526eb spi_flash: update docs after adding CONFIG_SPI_FLASH_AUTO_SUSPEND 2021-02-25 18:08:23 +08:00
Michael (XIAO Xufeng)
f0f2799946 Merge branch 'bugfix/gdma_pair_uninstall_concurrency_issue_v4.3' into 'release/v4.3'
gdma: fix wrong level of {group,pair} reference count (v4.3)

See merge request espressif/esp-idf!12488
2021-02-25 09:11:58 +00:00
Angus Gratton
5aabdd8abf Merge branch 'bugfix/eclipse_make_decode_v4.3' into 'release/v4.3'
tools: Fix Eclipse build: “UnicodeDecodeError: 'ascii' codec can't decode byte” (v4.3)

See merge request espressif/esp-idf!12357
2021-02-25 07:17:28 +00:00
Armando
8a2f91b48a spi: add enum for spi dma channels 2021-02-25 11:03:18 +08:00
Armando
ed6fb33726 spi: remove hard-coded DMA chan in soc_caps.h 2021-02-25 11:03:07 +08:00
Armando
66d10f0eec spi: refactor spi_common dma allocator 2021-02-25 11:01:33 +08:00
Armando
97f248d22c spi: update unit tests to spi gdma allocator 2021-02-25 11:01:27 +08:00
Armando
ffc4ff5a8c spi: apply gdma allocator to SPI 2021-02-25 11:01:16 +08:00
Armando
326d76ebdf spi: add dma channel auto-alloc feature on esp32 2021-02-25 11:01:06 +08:00
Marius Vikhammer
c6ed522d60 deep_sleep: on S2 disable the brown out detector before deep sleeping
On S2 the brown out detector would occasionally trigger erroneously during deep sleep.

Disable it before sleeping to circumvent this issue.

Closes https://github.com/espressif/esp-idf/issues/6179
2021-02-25 10:53:06 +08:00
Angus Gratton
8e187e7157 Merge branch 'bugfix/c3_unit_test_cleanup_v4.3' into 'release/v4.3'
System: C3 shared stack watchpoint & unit test cleanups (v4.3)

See merge request espressif/esp-idf!12418
2021-02-24 22:51:11 +00:00
morris
19f18aaa11 gdma: fix wrong level of {group,pair} ref count 2021-02-24 17:46:23 +08:00
morris
626a861115 async_mcp: clean eof flag when prepare rx descriptors 2021-02-24 17:46:23 +08:00
Angus Gratton
a0fdf4b06c Merge branch 'feature/riscv_get_tickrate_v4.3' into 'release/v4.3'
freertos: add API for getting tick rate on C3 (v4.3)

See merge request espressif/esp-idf!12471
2021-02-24 08:29:59 +00:00
Marius Vikhammer
3d9523724d freertos: add API for getting tick rate on C3 2021-02-23 12:14:11 +08:00
Mahavir Jain
813b6c4ef6 Merge branch 'bugfix/fix_enable_reset_provision_cause_device_crash_v4.3' into 'release/v4.3'
provisioning: Fix enable CONFIG_EXAMPLE_RESET_PROVISIONED will cause device crash [backport v4.3]

See merge request espressif/esp-idf!12353
2021-02-22 06:13:17 +00:00
Michael (XIAO Xufeng)
1b849d59de Merge branch 'bugfix/freemodbus_fix_parity_propagation_issue_v43' into 'release/v4.3'
freemodbus: fix mb controller parity propagation issues (Backport v4.3)

See merge request espressif/esp-idf!12390
2021-02-22 05:23:33 +00:00
yuanjm
87576aba28 provisioning: Fix enable CONFIG_EXAMPLE_RESET_PROVISIONED will cause device crash 2021-02-22 04:33:59 +00:00
Ivan Grokhotkov
57fb076590 Merge branch 'feature/prefer_python3_in_installer_v4.3' into 'release/v4.3'
tools: Prefer python3 during install and export (v4.3)

See merge request espressif/esp-idf!12376
2021-02-19 15:52:32 +00:00
Marius Vikhammer
360e7c4d51 system: enable shared stack watchpoint
Enable shared stack watchpoint for overflow detection

Enable unit tests:
 * "test printf using shared buffer stack" for C3
 * "Test vTaskDelayUntil" for S2
 * "UART can do poll()" for C3
2021-02-19 16:59:29 +08:00
Marius Vikhammer
9083ef97e5 spi_flash: disable mmap into instr space unit test for C3
On C3 the cache is programmatically split between Icache and dcache and with the default setup we dont leave a lot pages
available for additional mmaps into instruction space. Disabling this test for now since any hypothetical use case for this
is no longer supported "out of the box"
2021-02-19 16:58:47 +08:00
Marius Vikhammer
a7a1e4dfba CI: run C3 unit test on protected branches 2021-02-19 16:47:00 +08:00
Angus Gratton
8ad92a92b9 Merge branch 'feature/ulp_c3_not_exists_update_doc_v4.3' into 'release/v4.3'
doc/ulp(esp32c3): Excludes ulp and some RTC features from ESP32C3 doc (v4.3)

See merge request espressif/esp-idf!12386
2021-02-17 03:54:01 +00:00
aleks
321ee21c4c freemodbus: fix mb controller parity propagation issues
Closes https://github.com/espressif/esp-idf/issues/6377
2021-02-16 10:47:43 +01:00
KonstantinKondrashov
33820657c5 doc/ulp(esp32c3): Excludes ulp and some RTC features from ESP32C3 doc 2021-02-16 15:37:26 +08:00
Roland Dobai
33892aadb9 tools: Prefer python3 during install and export
Install and export script should work on systems without "python"
executable.

Closes https://github.com/espressif/esp-idf/pull/6471

Closes https://github.com/espressif/esp-idf/issues/6532

Related to https://github.com/espressif/esp-idf/issues/6421 and
https://github.com/espressif/arduino-esp32/issues/4717
2021-02-14 18:49:21 +01:00
Patryk Krzywdziński
ad669801ae Fix eclipse build: “UnicodeDecodeError: 'ascii' codec can't decode byte”
Closes https://github.com/espressif/esp-idf/pull/6505
2021-02-10 12:48:44 +01:00
10778 changed files with 834365 additions and 1111004 deletions

View File

@@ -19,6 +19,14 @@ trim_trailing_whitespace = false
indent_style = tab
indent_size = 2
[*/freertos/**]
indent_style = tab
indent_size = 4
[{*/freertos/**.S,**/FreeRTOSConfig.h}]
indent_style = space
indent_size = 4
[*.pem]
insert_final_newline = false
@@ -30,8 +38,6 @@ indent_style = space
indent_size = 4
max_line_length = 120
[{*.sh,*.yml,*.yaml}]
indent_size = 2
[*.ini]
[{*.sh,*.yml}]
indent_style = space
indent_size = 2

15
.flake8
View File

@@ -143,22 +143,23 @@ exclude =
components/bootloader/subproject/components/micro-ecc/micro-ecc,
components/bt/host/nimble/nimble,
components/cmock/CMock,
components/esptool_py/esptool,
components/expat/expat,
components/json/cJSON,
components/libsodium/libsodium,
components/mbedtls/mbedtls,
components/openthread/openthread,
components/nghttp/nghttp2,
components/tinyusb,
components/unity/unity,
components/spiffs/spiffs,
examples/build_system/cmake/import_lib/main/lib/tinyxml2,
examples/peripherals/secure_element/atecc608_ecdsa/components/esp-cryptoauthlib,
# autogenerated scripts
components/protocomm/python/constants_pb2.py,
components/protocomm/python/sec0_pb2.py,
components/protocomm/python/sec1_pb2.py,
components/protocomm/python/sec2_pb2.py,
components/protocomm/python/session_pb2.py,
components/wifi_provisioning/python/wifi_scan_pb2.py,
components/wifi_provisioning/python/wifi_config_pb2.py,
components/wifi_provisioning/python/wifi_constants_pb2.py,
components/esp_local_ctrl/python/esp_local_ctrl_pb2.py,
per-file-ignores =
# Sphinx conf.py files use star imports to setup config variables
docs/conf_common.py: F405
examples/provisioning/legacy/custom_config/components/custom_provisioning/python/custom_config_pb2.py,

View File

@@ -24,7 +24,7 @@ If the issue cannot be solved after the steps before, please follow these instru
1. Fill in all the fields under **Environment** marked with [ ] by picking the correct option for you in each case and deleting the others.
2. Describe your problem.
3. Include [debug logs from the "monitor" tool](https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/tools/idf-monitor.html), or [coredumps](https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/core_dump.html).
3. Include [debug logs from the "monitor" tool](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/idf-monitor.html#automatically-decoding-addresses), or [coredumps](https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/core_dump.html).
4. Providing as much information as possible under **Other items if possible** will help us locate and fix the problem.
5. Use [Markdown](https://guides.github.com/features/mastering-markdown/) (see formatting buttons above) and the Preview tab to check what the issue will look like.
6. Delete these instructions from the above to the below marker lines before submitting this issue.

View File

@@ -6,14 +6,14 @@ concurrency:
on:
push:
branches:
- 'master'
- 'release/*'
- "master"
- "release/*"
tags:
- 'v*.*'
- "v*.*"
env:
# Platforms to build the image for
BUILD_PLATFORMS: linux/amd64,linux/arm64
BUILD_PLATFORMS: linux/amd64
DOCKERHUB_REPO: ${{ github.repository_owner }}/idf
jobs:
@@ -73,15 +73,3 @@ jobs:
build-args: |
IDF_CLONE_URL=${{ github.server_url }}/${{ github.repository }}.git
IDF_CLONE_BRANCH_OR_TAG=${{ env.CLONE_BRANCH_OR_TAG }}
- name: Update Docker Hub repository description (master branch)
if: ${{ github.ref_type == 'branch' && github.ref_name == 'master' }}
uses: peter-evans/dockerhub-description@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
# Token based authentication is not supported here:
# https://github.com/peter-evans/dockerhub-description/issues/10
# https://github.com/docker/roadmap/issues/115#issuecomment-891694974
password: ${{ secrets.DOCKERHUB_PASSWORD }}
repository: ${{ env.DOCKERHUB_REPO }}
readme-filepath: ./tools/docker/README.md

View File

@@ -3,16 +3,12 @@ name: Sync issue comments to JIRA
# This workflow will be triggered when new issue comment is created (including PR comments)
on: issue_comment
# Limit to single concurrent run for workflows which can create Jira issues.
# Same concurrency group is used in new_issues.yml
concurrency: jira_issues
jobs:
sync_issue_comments_to_jira:
name: Sync Issue Comments to Jira
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@master
- name: Sync issue comments to JIRA
uses: espressif/github-actions/sync_issues_to_jira@master
env:

View File

@@ -3,16 +3,12 @@ name: Sync issues to Jira
# This workflow will be triggered when a new issue is opened
on: issues
# Limit to single concurrent run for workflows which can create Jira issues.
# Same concurrency group is used in issue_comment.yml
concurrency: jira_issues
jobs:
sync_issues_to_jira:
name: Sync issues to Jira
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@master
- name: Sync GitHub issues to Jira project
uses: espressif/github-actions/sync_issues_to_jira@master
env:

View File

@@ -6,16 +6,12 @@ on:
schedule:
- cron: "0 * * * *"
# Limit to single concurrent run for workflows which can create Jira issues.
# Same concurrency group is used in issue_comment.yml
concurrency: jira_issues
jobs:
sync_prs_to_jira:
name: Sync PRs to Jira
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@master
- name: Sync PRs to Jira project
uses: espressif/github-actions/sync_issues_to_jira@master
with:

View File

@@ -1,23 +0,0 @@
name: Sync approved PRs to internal codebase
on:
pull_request_target:
types: [labeled]
jobs:
sync_prs_to_internal_codebase:
name: GitHub PR to Internal Codebase Sync
runs-on: ubuntu-latest
if: (github.event.label.name == 'PR-Sync-Merge') ||
(github.event.label.name == 'PR-Sync-Rebase') ||
(github.event.label.name == 'PR-Sync-Update')
steps:
- uses: actions/checkout@v2
- name: Sync approved PRs to internal codebase
uses: espressif/github-actions/github_pr_to_internal_pr@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITLAB_URL: ${{ secrets.GITLAB_URL }}
GITLAB_TOKEN: ${{ secrets.GITLAB_TOKEN }}
GIT_CONFIG_NAME: ${{ secrets.GIT_CONFIG_NAME }}
GIT_CONFIG_EMAIL: ${{ secrets.GIT_CONFIG_EMAIL }}
JIRA_PROJECT: IDFGH

View File

@@ -1,37 +0,0 @@
name: Check pre-commit rules
on:
pull_request:
types: [opened, reopened, synchronize]
jobs:
pre_commit_check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Fetch head and base refs
# This is necessary for pre-commit to check the changes in the PR branch
run: |
git fetch origin ${{ github.base_ref }}:base_ref
git fetch origin pull/${{ github.event.pull_request.number }}/head:pr_ref
- name: Set up Python environment
uses: actions/setup-python@master
with:
python-version: v3.7
- name: Install python packages
run: |
pip install pre-commit
pre-commit install-hooks
- name: Run pre-commit and check for any changes
run: |
echo "Commits being checked:"
git log --oneline --no-decorate base_ref..pr_ref
echo ""
if ! pre-commit run --from-ref base_ref --to-ref pr_ref --show-diff-on-failure ; then
echo ""
echo "::notice::It looks like the commits in this PR have been made without having pre-commit hooks installed."
echo "::notice::Please see https://docs.espressif.com/projects/esp-idf/en/latest/esp32/contribute/install-pre-commit-hook.html for instructions."
echo ""
exit 1
fi

33
.github/workflows/python_lint.yml vendored Normal file
View File

@@ -0,0 +1,33 @@
name: Python CI
# This workflow will be triggered when a PR modifies some python relevant files
on:
pull_request:
paths:
- "**.py"
- "requirements.txt"
jobs:
python_lint:
name: python lint
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [2.7, 3.5, 3.6, 3.7, 3.8]
steps:
- name: Checkout
uses: actions/checkout@master
- name: Set up Python environment
uses: actions/setup-python@master
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
export IDF_PATH=${GITHUB_WORKSPACE}
pip install --upgrade pip
pip install -r requirements.txt
- name: Lint with flake8
run: |
pip install flake8
flake8 . --config=.flake8 --benchmark

17
.gitignore vendored
View File

@@ -21,20 +21,15 @@ GPATH
# MacOS directory files
.DS_Store
# cache dir
.cache/
# Components Unit Test Apps files
components/**/build/
components/**/build_*_*/
components/**/build
components/**/sdkconfig
components/**/sdkconfig.old
# Example project files
examples/**/build/
examples/**/build_esp*_*/
examples/**/sdkconfig
examples/**/sdkconfig.old
examples/**/build
# Doc build artifacts
docs/_build/
@@ -48,7 +43,7 @@ docs/_static/NotoSansSC-Regular.otf
tools/unit-test-app/sdkconfig
tools/unit-test-app/sdkconfig.old
tools/unit-test-app/build
tools/unit-test-app/build_*_*/
tools/unit-test-app/builds
tools/unit-test-app/output
tools/unit-test-app/test_configs
@@ -56,8 +51,7 @@ tools/unit-test-app/test_configs
log_ut_cmake
# test application build files
tools/test_apps/**/build/
tools/test_apps/**/build_*_*/
tools/test_apps/**/build
tools/test_apps/**/sdkconfig
tools/test_apps/**/sdkconfig.old
@@ -97,6 +91,3 @@ dependencies.lock
# managed_components for examples
managed_components
# pytest log
pytest_embedded_log/

View File

@@ -1,28 +1,24 @@
stages:
- upload_cache
- pre_check
- build
- assign_test
- build_doc
- target_test
- host_test
- target_test
- test_deploy
- post_check
- deploy
- post_deploy
# pipelines will not be created in such two cases:
# 1. MR push
# 2. push not on "master/release" branches, and not tagged
# This behavior could be changed after the `rules: changes` feature is implemented
workflow:
rules:
# Disable those non-protected push triggered pipelines
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
when: never
- if: '$CI_COMMIT_REF_NAME != "master" && $CI_COMMIT_BRANCH !~ /^release\/v/ && $CI_COMMIT_TAG !~ /^v\d+\.\d+(\.\d+)?($|-)/ && $CI_COMMIT_TAG !~ /^qa-test/ && $CI_PIPELINE_SOURCE == "push"'
when: never
# when running merged result pipelines, it would create a temp commit id. use $CI_MERGE_REQUEST_SOURCE_BRANCH_SHA instead of $CI_COMMIT_SHA.
# Please use PIPELINE_COMMIT_SHA at all places that require a commit sha
- if: $CI_OPEN_MERGE_REQUESTS != null
variables:
PIPELINE_COMMIT_SHA: $CI_MERGE_REQUEST_SOURCE_BRANCH_SHA
- if: $CI_OPEN_MERGE_REQUESTS == null
variables:
PIPELINE_COMMIT_SHA: $CI_COMMIT_SHA
- when: always
variables:
@@ -58,177 +54,103 @@ variables:
# Docker images
BOT_DOCKER_IMAGE_TAG: ":latest"
ESP_ENV_IMAGE: "$CI_DOCKER_REGISTRY/esp-env-v5.0:4"
AFL_FUZZER_TEST_IMAGE: "$CI_DOCKER_REGISTRY/afl-fuzzer-test-v5.0:4-2"
CLANG_STATIC_ANALYSIS_IMAGE: "${CI_DOCKER_REGISTRY}/clang-static-analysis-v5.0:4-2"
ESP_IDF_DOC_ENV_IMAGE: "$CI_DOCKER_REGISTRY/esp-idf-doc-env-v5.0:4-4"
QEMU_IMAGE: "${CI_DOCKER_REGISTRY}/qemu-v5.0:4-20220802"
TARGET_TEST_ENV_IMAGE: "$CI_DOCKER_REGISTRY/target-test-env-v5.0:3"
SONARQUBE_SCANNER_IMAGE: "${CI_DOCKER_REGISTRY}/sonarqube-scanner:3"
PRE_COMMIT_IMAGE: "$CI_DOCKER_REGISTRY/esp-idf-pre-commit:1"
# target test repo parameters
TEST_ENV_CONFIG_REPO: "https://gitlab-ci-token:${BOT_TOKEN}@${CI_SERVER_HOST}:${CI_SERVER_PORT}/qa/ci-test-runner-configs.git"
# cache python dependencies
PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
# Set this variable to the branch of idf-constraints repo in order to test a custom Python constraint file. The
# branch name must be without the remote part ("origin/"). Keep the variable empty in order to use the constraint
# file from https://dl.espressif.com/dl/esp-idf.
CI_PYTHON_CONSTRAINT_BRANCH: ""
# Update the filename for a specific ESP-IDF release. It is used only with CI_PYTHON_CONSTRAINT_BRANCH.
CI_PYTHON_CONSTRAINT_FILE: "espidf.constraints.v5.0.txt"
# Set this variable to repository name of a Python tool you wish to install and test in the context of ESP-IDF CI.
# Keep the variable empty when not used.
CI_PYTHON_TOOL_REPO: ""
# Set this variable to the branch of a Python tool repo specified in CI_PYTHON_TOOL_REPO. The
# branch name must be without the remote part ("origin/"). Keep the variable empty when not used.
# This is used only if CI_PYTHON_TOOL_REPO is not empty.
CI_PYTHON_TOOL_BRANCH: ""
# Set this variable to specify the file name for the known failure cases.
KNOWN_FAILURE_CASES_FILE_NAME: "5.0.txt"
IDF_CI_BUILD: 1
cache:
# pull only for most of the use cases since it's cache dir.
# Only set "push" policy for "upload_cache" stage jobs
- key: pip-cache
paths:
- .cache/pip
policy: pull
- key: submodule-cache
paths:
- .cache/submodule_archives
policy: pull
.common_before_scripts: &common-before_scripts |
source tools/ci/utils.sh
is_based_on_commits $REQUIRED_ANCESTOR_COMMITS
# Versioned esp-idf-doc env image to use for all document building jobs
ESP_IDF_DOC_ENV_IMAGE: "$CI_DOCKER_REGISTRY/esp-idf-doc-env:v10"
.setup_tools_unless_target_test: &setup_tools_unless_target_test |
if [[ -n "$IDF_DONT_USE_MIRRORS" ]]; then
export IDF_MIRROR_PREFIX_MAP=
export IDF_MIRROR_PREFIX_MAP=
fi
if echo "$CI_MERGE_REQUEST_LABELS" | egrep "^([^,\n\r]+,)*include_nightly_run(,[^,\n\r]+)*$"; then
export INCLUDE_NIGHTLY_RUN="1"
fi
# configure cmake related flags
source tools/ci/configure_ci_environment.sh
# add extra python packages
export PYTHONPATH="$IDF_PATH/tools:$IDF_PATH/tools/esp_app_trace:$IDF_PATH/components/partition_table:$IDF_PATH/tools/ci/python_packages:$PYTHONPATH"
.setup_tools_and_idf_python_venv: &setup_tools_and_idf_python_venv |
# Since the version 3.21 CMake passes source files and include dirs to ninja using absolute paths.
$IDF_PATH/tools/idf_tools.py --non-interactive install cmake
# download constraint file for dev
if [[ -n "$CI_PYTHON_CONSTRAINT_BRANCH" ]]; then
wget -O /tmp/constraint.txt --header="Authorization:Bearer ${ESPCI_TOKEN}" ${GITLAB_HTTP_SERVER}/api/v4/projects/2581/repository/files/${CI_PYTHON_CONSTRAINT_FILE}/raw?ref=${CI_PYTHON_CONSTRAINT_BRANCH}
mkdir -p ~/.espressif
mv /tmp/constraint.txt ~/.espressif/${CI_PYTHON_CONSTRAINT_FILE}
fi
# Mirror
if [[ -n "$IDF_DONT_USE_MIRRORS" ]]; then
export IDF_MIRROR_PREFIX_MAP=
fi
# install latest python packages
# target test jobs
if [[ "${CI_JOB_STAGE}" == "target_test" ]]; then
# ttfw jobs
if ! echo "${CI_JOB_NAME}" | egrep ".+_pytest_.+"; then
run_cmd bash install.sh --enable-ci --enable-ttfw
else
run_cmd bash install.sh --enable-ci --enable-pytest
fi
elif [[ "${CI_JOB_STAGE}" == "build_doc" ]]; then
run_cmd bash install.sh --enable-ci --enable-docs
elif [[ "${CI_JOB_STAGE}" == "build" ]]; then
run_cmd bash install.sh --enable-ci --enable-pytest
else
run_cmd bash install.sh --enable-ci
fi
source ./export.sh
# Custom OpenOCD
if [[ ! -z "$OOCD_DISTRO_URL" && "$CI_JOB_STAGE" == "target_test" ]]; then
echo "Using custom OpenOCD from ${OOCD_DISTRO_URL}"
wget $OOCD_DISTRO_URL
ARCH_NAME=$(basename $OOCD_DISTRO_URL)
tar -x -f $ARCH_NAME
export OPENOCD_SCRIPTS=$PWD/openocd-esp32/share/openocd/scripts
export PATH=$PWD/openocd-esp32/bin:$PATH
fi
if [[ -n "$CI_PYTHON_TOOL_REPO" ]]; then
git clone --quiet --depth=1 -b ${CI_PYTHON_TOOL_BRANCH} https://gitlab-ci-token:${ESPCI_TOKEN}@${GITLAB_HTTPS_HOST}/espressif/${CI_PYTHON_TOOL_REPO}.git
pip install ./${CI_PYTHON_TOOL_REPO}
rm -rf ${CI_PYTHON_TOOL_REPO}
if [[ "$SETUP_TOOLS" == "1" || "$CI_JOB_STAGE" != "target_test" ]]; then
tools/idf_tools.py --non-interactive install ${SETUP_TOOLS_LIST:-} && eval "$(tools/idf_tools.py --non-interactive export)" || exit 1
fi
before_script:
- *common-before_scripts
- *setup_tools_and_idf_python_venv
- source tools/ci/utils.sh
- is_based_on_commits $REQUIRED_ANCESTOR_COMMITS
- source tools/ci/setup_python.sh
- apply_bot_filter
- add_gitlab_ssh_keys
- source tools/ci/configure_ci_environment.sh
- *setup_tools_unless_target_test
- fetch_submodules
.before_script_minimal:
# used for check scripts which we want to run unconditionally
.before_script_lesser_nofilter:
before_script:
- *common-before_scripts
- echo "Not setting up GitLab key, not fetching submodules, not applying bot filter"
- source tools/ci/utils.sh
- is_based_on_commits $REQUIRED_ANCESTOR_COMMITS
- source tools/ci/setup_python.sh
- source tools/ci/configure_ci_environment.sh
# used for everything else where we want to do no prep, except for bot filter
.before_script_lesser:
before_script:
- echo "Not setting up GitLab key, not fetching submodules"
- source tools/ci/utils.sh
- is_based_on_commits $REQUIRED_ANCESTOR_COMMITS
- source tools/ci/setup_python.sh
- apply_bot_filter
- source tools/ci/configure_ci_environment.sh
.before_script_slim:
before_script:
- echo "Only load utils.sh inside"
- source tools/ci/utils.sh
- is_based_on_commits $REQUIRED_ANCESTOR_COMMITS
.before_script_macos:
before_script:
# macos is running shell executor, which means it would use
# the system installed /usr/local/bin/python3 by default.
# Ensure pyenv and PYENV_VERSION installed
- eval "$(pyenv init -)"
- *common-before_scripts
# On macOS, these tools need to be installed
- source tools/ci/utils.sh
- is_based_on_commits $REQUIRED_ANCESTOR_COMMITS
- apply_bot_filter
- export IDF_TOOLS_PATH="${HOME}/.espressif_runner_${CI_RUNNER_ID}_${CI_CONCURRENT_ID}"
# Clean up idf-env.json which might not be compatible with one produced by newer ESP-IDF versions
- rm -f ${IDF_TOOLS_PATH}/idf-env.json
- $IDF_PATH/tools/idf_tools.py install-python-env
# On macOS, these tools need to be installed
- $IDF_PATH/tools/idf_tools.py --non-interactive install cmake ninja
# This adds tools (compilers) and the version-specific Python environment to PATH
- *setup_tools_and_idf_python_venv
- *setup_tools_unless_target_test
# Install packages required by CI scripts into IDF Python environment
- pip install -r $IDF_PATH/tools/ci/python_packages/ttfw_idf/requirements.txt
- source tools/ci/configure_ci_environment.sh
# Part of tools/ci/setup_python.sh; we don't use pyenv on macOS, so can't run the rest of the script.
- export PYTHONPATH="$IDF_PATH/tools:$IDF_PATH/tools/ci/python_packages:$PYTHONPATH"
- fetch_submodules
.before_script_build_jobs:
# this is a workaround since CI on 4.3 is using python 3.4 and the real support version is 3.6
# Can't find package versions that match both of them at the same time.
# install the idf-component-manager here instead of in the dockerfile with a fixed version
.before_script_build_cmake:
before_script:
- *common-before_scripts
- *setup_tools_and_idf_python_venv
- source tools/ci/utils.sh
- source tools/ci/setup_python.sh
- apply_bot_filter
- add_gitlab_ssh_keys
- source tools/ci/configure_ci_environment.sh
- *setup_tools_unless_target_test
- fetch_submodules
- export EXTRA_CFLAGS=${PEDANTIC_CFLAGS}
- export EXTRA_CXXFLAGS=${PEDANTIC_CXXFLAGS}
- pip install "idf-component-manager~=1.1"
default:
retry:
max: 2
when:
# In case of a runner failure we could hop to another one, or a network error could go away.
- runner_system_failure
# Job execution timeout may be caused by a network issue.
- job_execution_timeout
# In case of a runner failure we could hop to another one, or a network error could go away.
when: runner_system_failure
include:
- '.gitlab/ci/rules.yml'
- '.gitlab/ci/upload_cache.yml'
- '.gitlab/ci/docs.yml'
- '.gitlab/ci/static-code-analysis.yml'
- '.gitlab/ci/pre_check.yml'
- '.gitlab/ci/build.yml'
- '.gitlab/ci/assign-test.yml'
- '.gitlab/ci/integration_test.yml'
- '.gitlab/ci/host-test.yml'
- '.gitlab/ci/target-test.yml'
- '.gitlab/ci/deploy.yml'
- '/tools/ci/config/rules.yml'
- '/tools/ci/config/pre_check.yml'
- '/tools/ci/config/build.yml'
- '/tools/ci/config/assign-test.yml'
- '/tools/ci/config/integration_test.yml'
- '/tools/ci/config/host-test.yml'
- '/tools/ci/config/target-test.yml'
- '/tools/ci/config/post_check.yml'
- '/tools/ci/config/deploy.yml'
- '/tools/ci/config/post_deploy.yml'

View File

@@ -1,319 +0,0 @@
# IDF CI
- [IDF CI](#idf-ci)
- [General Workflow](#general-workflow)
- [What if Expected Jobs ARE NOT Created?](#what-if-expected-jobs-are-not-created)
- [MR labels for additional jobs](#mr-labels-for-additional-jobs)
- [Supported MR Labels](#supported-mr-labels)
- [How to trigger a `detached` pipeline without pushing new commits?](#how-to-trigger-a-detached-pipeline-without-pushing-new-commits)
- [How to Develop With `rules.yml`?](#how-to-develop-with-rulesyml)
- [General Concepts](#general-concepts)
- [How to Add a New `Job`?](#how-to-add-a-new-job)
- [How to Add a New `Rules` Template?](#how-to-add-a-new-rules-template)
- [How to Add a New `if` Anchor?](#how-to-add-a-new-if-anchor)
- [Naming Rules](#naming-rules)
- [Common Naming Rules](#common-naming-rules)
- [`if` Anchors Naming Rules](#if-anchors-naming-rules)
- [`rules` Template Naming Rules](#rules-template-naming-rules)
- [Reusable Shell Script `tools/ci/utils.sh`](#reusable-shell-script-toolsciutilssh)
- [Functions](#functions)
- [CI Job Related](#ci-job-related)
- [Shell Script Related](#shell-script-related)
- [Manifest File to Control the Build/Test apps](#manifest-file-to-control-the-buildtest-apps)
- [Grammar](#grammar)
## General Workflow
1. Push to a remote branch
2. Create an MR, choose related labels (not required)
3. A `detached` pipeline will be created.
4. if you push a new commit, a new pipeline will be created automatically.
## What if Expected Jobs ARE NOT Created?
1. check the file patterns
If you found a job that is not running as expected with some file changes, a git commit to improve the `pattern` will be appreciated.
2. please add MR labels to run additional tests, currently we have to do this only for `target-test` jobs, please use it as few as possible. Our final goal is to remove all the labels and let the file changes decide everything!
## MR labels for additional jobs
### Supported MR Labels
- `build`
- `build_docs`
- `component_ut[_esp32/esp32s2/...]`
- `custom_test[_esp32/esp32s2/...]`
- `docker`
- `docs`
- `docs_fast`, triggers a fast docs build, not a full build which is the CI default. This skips PDF build as well as doxygen APIs, reducing the build time by 90+%.
- `example_test[_esp32/esp32s2/...]`
- `fuzzer_test`
- `host_test`
- `integration_test`
- `iperf_stress_test`
- `macos`
- `macos_test`
- `nvs_coverage`
- `submodule`
- `unit_test[_esp32/esp32s2/...]`
- `weekend_test`
- `windows`
There are two general labels (not recommended since these two labels will trigger a lot of jobs)
- `target_test`: includes all target for `example_test`, `custom_test`, `component_ut`, `unit_test`, `integration_test`
- `all_test`: includes all test labels
### How to trigger a `detached` pipeline without pushing new commits?
Go to MR web page -> `Pipelines` tab -> click `Run pipeline` button.
In very rare case, this tab will not show up because no merge_request pipeline is created before. Please use web API then.
```shell
curl -X POST --header "PRIVATE-TOKEN: [YOUR PERSONAL ACCESS TOKEN]" [GITLAB_SERVER]/api/v4/projects/103/merge_requests/[MERGE_REQUEST_IID]/pipelines
```
## How to Develop With `rules.yml`?
### General Concepts
- `pattern`: Defined in an array. A GitLab job will be created if the changed files in this MR matched one of the patterns. For example:
```yaml
.patterns-python-files: &patterns-python-files
- "**/*.py"
```
- `label`: Defined in an if clause, similar as the previous bot command. A GitLab job will be created if the pipeline variables contains variables in `BOT_LABEL_xxx` format (DEPRECATED) or included in the MR labels. For example:
```yaml
.if-label-build_docs: &if-label-build_docs
if: '$BOT_LABEL_BUILD_DOCS || $CI_MERGE_REQUEST_LABELS =~ /^(?:[^,\n\r]+,)*build_docs(?:,[^,\n\r]+)*$/i'
```
- `rule`: A combination of various patterns, and labels. It will be used by GitLab YAML `extends` keyword to tell GitLab in what conditions will this job be created. For example:
```yaml
.rules:build:docs:
rules:
- <<: *if-protected
- <<: *if-label-build_docs
- <<: *if-label-docs
- <<: *if-dev-push
changes: *patterns-docs
```
An example for GitLab job on how to use extends:
```yaml
check_docs_lang_sync:
extends:
- .pre_check_template
- .rules:build:docs
script:
- cd docs
- ./check_lang_folder_sync.sh
```
### How to Add a New `Job`?
check if there's a suitable `.rules:<rules-you-need>` template
1. if there is, put this in the job `extends`. All done, now you can close this window. (`extends` could be array or string)
2. if there isn't
1. check [How to Add a New `Rules` Template?](#how-to-add-a-new-rules-template), create a suitable one
2. follow step 1
### How to Add a New `Rules` Template?
check if this rule is related to `labels`, `patterns`
1. if it is, please refer to [dependencies/README.md](./dependencies/README.md) and add new rules by auto-generating
2. if it isn't, please continue reading
check if there's a suitable `.if-<if-anchor-you-need>` anchor
1. if there is, create a rule following [`rules` Template Naming Rules](#rules-template-naming-rules).For detail information, please refer to [GitLab Documentation `rules-if`](https://docs.gitlab.com/ee/ci/yaml/README.html#rulesif). Here's an example.
```yaml
.rules:patterns:python-files:
rules:
- <<: *if-protected
- <<: *if-dev-push
changes: *patterns-python-files
```
2. if there isn't
1. check [How to Add a New `if` Anchor?](#how-to-add-a-new-if-anchor), create a suitable one
2. follow step 1
### How to Add a New `if` Anchor?
Create an `if` anchor following [`if` Anchors Naming Rules](#if-anchors-naming-rules). For detailed information about how to write the condition clause, please refer to [GitLab Documentation `only/except (advanced)](https://docs.gitlab.com/ee/ci/yaml/README.html#onlyexcept-advanced). Here's an example.
```yaml
.if-schedule: &if-schedule:
if: '$CI_PIPELINE_SOURCE == "schedule"'
```
### Naming Rules
#### Common Naming Rules
if a phrase has multi words, use `_` to concatenate them.
> e.g. `regular_test`
if a name has multi phrases, use `-` to concatenate them.
> e.g. `regular_test-example_test`
#### `if` Anchors Naming Rules
- if it's a label: `.if-label-<label_name>`
- if it's a ref: `.if-ref-<ref_name>`
- if it's a branch: `.if-branch-<branch_name>`
- if it's a tag: `.if-tag-<tag_name>`
- if it's multi-type combination: `.if-ref-<release_name>-branch-<branch_name>`
**Common Phrases/Abbreviations**
- `no_label`
`$BOT_TRIGGER_WITH_LABEL == null`
- `protected`
`($CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_BRANCH =~ /^release\/v/ || $CI_COMMIT_TAG =~ /^v\d+\.\d+(\.\d+)?($|-)/)`
- `target_test`
a combination of `example_test`, `custom_test`, `unit_test`, `component_ut`, `integration_test` and all targets
#### `rules` Template Naming Rules
- if it's tag related: `.rules:tag:<tag_1>-<tag_2>`
- if it's label related: `.rules:labels:<label_1>-<label_2>`
- if it's test related: `.rules:test:<test_type>`
- if it's build related: `.rules:build:<build_type>`
- if it's pattern related: `.rules:patterns:<patterns>`
## Reusable Shell Script `tools/ci/utils.sh`
It is used to put all the reusable shell scripts as small functions. If you want to set `before_script: []` for you job, now you can set `extends: .before_script_slim` instead. it will only run `source tools/ci/utils.sh`
If you're developing CI shell scripts, you can use these functions without `source` them. They're already included in all `before_script`
To run these commands in shell script locally, place `source tools/ci/utils.sh` at the very beginning.
### Functions
#### CI Job Related
- `add_gitlab_ssh_keys`
- `add_github_ssh_keys`
- `add_doc_server_ssh_keys`
- `fetch_submodules`
- `get_all_submodules`
#### Shell Script Related
- `error`: log in red color
- `warning`: log in orange color
- `info`: log in green color
- `run_cmd`: run the command with duration seconds info
- `retry_failed`: run the command with duration seconds info, retry when failed
## Manifest File to Control the Build/Test apps
`.build-test-rules.yml` file is a manifest file to control if the CI is running the build and test job or not. The Supported Targets table in `README.md` for apps would be auto-generated by `pre-commit` from the app's `.build-test-rules.yml`.
### Grammar
#### Operands
- Variables start with `SOC_`. The value would be parsed from components/soc/[TARGET]/include/soc/*_caps.h
- `IDF_TARGET`
- `INCLUDE_DEFAULT` (The default value of officially supported targets is 1, otherwise is 0)
- String, must be double-quoted. e.g. `"esp32"`, `"12345"`
- Integer, support decimal and hex. e.g. `1`, `0xAB`
- List with String and Integer inside, the type could be mixed. e.g. `["esp32", 1]`
#### Operators
- `==`, `!=`, `>`, `>=`, `<`, `<=`
- `and`, `or`
- `in`, `not in` with list
- parentheses
#### Limitation:
- all operators are binary operator. For more than two operands, you may use nested parentheses trick. For example,
- `A == 1 or (B == 2 and C in [1,2,3])`
- `(A == 1 and B == 2) or (C not in ["3", "4", 5])`
### How does it work?
By default, we enable build and test jobs for supported targets. In other words, if an app supports all supported targets, it does not need to be added in a manifest file. The manifest files are files that set the violation rules for apps.
three rules (disable rules are calculated after the `enable` rule):
- enable: run CI build/test jobs for targets that match any of the specified conditions only
- disable: will not run CI build/test jobs for targets that match any of the specified conditions
- disable_test: will not run CI test jobs for targets that match any of the specified conditions
Each key is a test folder. Will apply to all folders inside.
If one sub folder is in a special case, you can overwrite the rules for this folder by adding another entry for this folder itself. Each folder's rules are standalone, and will not inherit its parent's rules. (YAML inheritance is too complicated for reading)
For example in the following codeblock, only `disable` rule exists in `examples/foo/bar`. It's unaware of its parent's `enable` rule.
```yaml
examples/foo:
enable:
- if: IDF_TARGET == "esp32"
examples/foo/bar:
disable:
- if: IDF_TARGET == "esp32s2"
```
### Example
```yaml
examples/foo:
enable:
- if IDF_TARGET in ["esp32", 1, 2, 3]
- if IDF_TARGET not in ["4", "5", 6]
# should be run under all targets!
examples/bluetooth:
disable: # disable both build and tests jobs
- if: SOC_BT_SUPPORTED != 1
# reason is optional if there's no `temporary: true`
disable_test:
- if: IDF_TARGET == "esp32"
temporary: true
reason: lack of ci runners # required when `temporary: true`
examples/bluetooth/test_foo:
# each folder's settings are standalone
disable:
- if: IDF_TARGET == "esp32s2"
temporary: true
reason: no idea
# unlike examples/bluetooth, the apps under this folder would not be build nor test for "no idea" under target esp32s2
examples/get-started/hello_world:
enable:
- if: IDF_TARGET == "linux"
reason: this one only supports linux!
examples/get-started/blink:
enable:
- if: INCLUDE_DEFAULT == 1 or IDF_TARGET == "linux"
reason: This one supports all supported targets and linux
```

View File

@@ -1,83 +0,0 @@
.assign_test_template:
image: $TARGET_TEST_ENV_IMAGE
stage: assign_test
tags:
- assign_test
variables:
SUBMODULES_TO_FETCH: "none"
CI_TARGET_TEST_CONFIG_FILE: "$CI_PROJECT_DIR/.gitlab/ci/target-test.yml"
artifacts:
paths:
- ${TEST_DIR}/test_configs/
- artifact_index.json
when: always
expire_in: 1 week
script:
- run_cmd python tools/ci/python_packages/ttfw_idf/IDFAssignTest.py $TEST_TYPE $TEST_DIR -c $CI_TARGET_TEST_CONFIG_FILE -o $TEST_DIR/test_configs
assign_example_test:
extends:
- .assign_test_template
- .rules:build:example_test
needs:
- job: build_examples_cmake_esp32
artifacts: false
optional: true
- job: build_examples_cmake_esp32s2
artifacts: false
optional: true
- job: build_examples_cmake_esp32c2
artifacts: false
optional: true
- job: build_examples_cmake_esp32c3
artifacts: false
optional: true
- job: build_examples_cmake_esp32s3
artifacts: false
optional: true
variables:
TEST_TYPE: example_test
TEST_DIR: examples
assign_custom_test:
extends:
- .assign_test_template
- .rules:build:custom_test
needs:
- job: build_test_apps_esp32
artifacts: false
optional: true
- job: build_test_apps_esp32s2
artifacts: false
optional: true
- job: build_test_apps_esp32c2
artifacts: false
optional: true
- job: build_test_apps_esp32c3
artifacts: false
optional: true
- job: build_test_apps_esp32s3
artifacts: false
optional: true
variables:
TEST_TYPE: custom_test
TEST_DIR: tools/test_apps
assign_unit_test:
extends:
- .assign_test_template
- .rules:build:unit_test
needs:
- job: build_esp_idf_tests_cmake_esp32
optional: true
- job: build_esp_idf_tests_cmake_esp32s2
optional: true
- job: build_esp_idf_tests_cmake_esp32c2
optional: true
- job: build_esp_idf_tests_cmake_esp32c3
optional: true
- job: build_esp_idf_tests_cmake_esp32s3
optional: true
variables:
TEST_TYPE: unit_test
TEST_DIR: components/idf_test/unit_test

View File

@@ -1,562 +0,0 @@
.build_template:
stage: build
image: $ESP_ENV_IMAGE
tags:
- build
variables:
# Enable ccache for all build jobs. See configure_ci_environment.sh for more ccache related settings.
IDF_CCACHE_ENABLE: "1"
after_script:
# Show ccache statistics if enabled globally
- test "$CI_CCACHE_STATS" == 1 && test -n "$(which ccache)" && ccache --show-stats || true
dependencies: []
.build_cmake_template:
extends:
- .build_template
- .before_script_build_jobs
dependencies: # set dependencies to null to avoid missing artifacts issue
needs:
- job: fast_template_app
artifacts: false
tags:
- build
# build only on shiny servers since shiny storage server is at the same location
- shiny
artifacts:
paths:
- "**/build*/size.json"
- "**/build*/build_log.txt"
- "**/build*/*.bin"
# upload to s3 server to save the artifacts size
# - "**/build*/*.map"
# ttfw tests require elf files
- "**/build*/*.elf"
- "**/build*/flasher_args.json"
- "**/build*/flash_project_args"
- "**/build*/config/sdkconfig.json"
# ttfw tests require sdkconfig file
- "**/build*/sdkconfig"
- "**/build*/bootloader/*.bin"
- "**/build*/partition_table/*.bin"
- list_job_*.json
- size_info.txt
# unit test specific
- components/idf_test/unit_test/*.yml
when: always
expire_in: 4 days
after_script:
# Show ccache statistics if enabled globally
- test "$CI_CCACHE_STATS" == 1 && test -n "$(which ccache)" && ccache --show-stats || true
# upload the binary files to s3 server
- echo -e "\e[0Ksection_start:`date +%s`:upload_binaries_to_s3_server[collapsed=true]\r\e[0KUploading binaries to s3 Server"
- shopt -s globstar
# use || true to bypass the no-file error
- zip ${CI_JOB_ID}.zip **/build*/*.bin || true
- zip ${CI_JOB_ID}.zip **/build*/*.elf || true
- zip ${CI_JOB_ID}.zip **/build*/*.map || true
- zip ${CI_JOB_ID}.zip **/build*/flasher_args.json || true
- zip ${CI_JOB_ID}.zip **/build*/flash_project_args || true
- zip ${CI_JOB_ID}.zip **/build*/config/sdkconfig.json || true
- zip ${CI_JOB_ID}.zip **/build*/sdkconfig || true
- zip ${CI_JOB_ID}.zip **/build*/bootloader/*.bin || true
- zip ${CI_JOB_ID}.zip **/build*/partition_table/*.bin || true
- mc alias set shiny-s3 ${SHINY_S3_SERVER} ${SHINY_S3_ACCESS_KEY} ${SHINY_S3_SECRET_KEY}
- mc cp ${CI_JOB_ID}.zip shiny-s3/idf-artifacts/${CI_PIPELINE_ID}/${CI_JOB_ID}.zip
- echo -e "\e[0Ksection_end:`date +%s`:upload_binaries_to_s3_server\r\e[0K"
- echo "Please download the full binary files (including *.elf and *.map files) from the following share link"
# would be clean up after 4 days
- mc share download shiny-s3/idf-artifacts/${CI_PIPELINE_ID}/${CI_JOB_ID}.zip --expire=96h
script:
# CI specific options start from "--collect-size-info xxx". could ignore when running locally
- run_cmd python tools/ci/ci_build_apps.py $TEST_DIR -v
-t $IDF_TARGET
--copy-sdkconfig
--collect-size-info size_info.txt
--collect-app-info list_job_${CI_NODE_INDEX:-1}.json
--parallel-count ${CI_NODE_TOTAL:-1}
--parallel-index ${CI_NODE_INDEX:-1}
--extra-preserve-dirs
examples/bluetooth/esp_ble_mesh/ble_mesh_console
examples/bluetooth/hci/controller_hci_uart_esp32
examples/wifi/iperf
.build_pytest_template:
extends:
- .build_cmake_template
- .before_script_build_jobs
artifacts:
paths:
- "**/build*/size.json"
- "**/build*/build_log.txt"
- "**/build*/*.bin"
# upload to s3 server to save the artifacts size
# - "**/build*/*.map"
# - "**/build*/*.elf"
- "**/build*/flasher_args.json"
- "**/build*/flash_project_args"
- "**/build*/config/sdkconfig.json"
- "**/build*/bootloader/*.bin"
- "**/build*/bootloader/*.elf"
- "**/build*/partition_table/*.bin"
- "**/build*/project_description.json"
- list_job_*.json
- size_info.txt
when: always
expire_in: 4 days
script:
# CI specific options start from "--collect-size-info xxx". could ignore when running locally
- run_cmd python tools/ci/ci_build_apps.py $TEST_DIR -v
-t $IDF_TARGET
--pytest-apps
--collect-size-info size_info.txt
--parallel-count ${CI_NODE_TOTAL:-1}
--parallel-index ${CI_NODE_INDEX:-1}
build_pytest_examples_esp32:
extends:
- .build_pytest_template
- .rules:build:example_test-esp32
parallel: 4
variables:
IDF_TARGET: esp32
TEST_DIR: examples
build_pytest_examples_esp32s2:
extends:
- .build_pytest_template
- .rules:build:example_test-esp32s2
parallel: 3
variables:
IDF_TARGET: esp32s2
TEST_DIR: examples
build_pytest_examples_esp32s3:
extends:
- .build_pytest_template
- .rules:build:example_test-esp32s3
parallel: 4
variables:
IDF_TARGET: esp32s3
TEST_DIR: examples
build_pytest_examples_esp32c3:
extends:
- .build_pytest_template
- .rules:build:example_test-esp32c3
parallel: 3
variables:
IDF_TARGET: esp32c3
TEST_DIR: examples
build_pytest_examples_esp32c2:
extends:
- .build_pytest_template
- .rules:build:example_test-esp32c2
variables:
IDF_TARGET: esp32c2
TEST_DIR: examples
build_pytest_components_esp32:
extends:
- .build_pytest_template
- .rules:build:component_ut-esp32
parallel: 2
variables:
IDF_TARGET: esp32
TEST_DIR: components
build_pytest_components_esp32s2:
extends:
- .build_pytest_template
- .rules:build:component_ut-esp32s2
parallel: 2
variables:
IDF_TARGET: esp32s2
TEST_DIR: components
build_pytest_components_esp32s3:
extends:
- .build_pytest_template
- .rules:build:component_ut-esp32s3
parallel: 2
variables:
IDF_TARGET: esp32s3
TEST_DIR: components
build_pytest_components_esp32c3:
extends:
- .build_pytest_template
- .rules:build:component_ut-esp32c3
parallel: 2
variables:
IDF_TARGET: esp32c3
TEST_DIR: components
build_pytest_components_esp32c2:
extends:
- .build_pytest_template
- .rules:build:component_ut-esp32c2
variables:
IDF_TARGET: esp32c2
TEST_DIR: components
build_non_test_components_apps:
extends:
- .build_cmake_template
- .rules:build:component_ut
script:
- set_component_ut_vars
# CI specific options start from "--collect-size-info xxx". could ignore when running locally
- run_cmd python tools/ci/ci_build_apps.py $COMPONENT_UT_DIRS -v
-t all
--collect-size-info size_info.txt
--collect-app-info list_job_${CI_NODE_INDEX:-1}.json
--parallel-count ${CI_NODE_TOTAL:-1}
--parallel-index ${CI_NODE_INDEX:-1}
.build_pytest_test_apps_template:
extends: .build_pytest_template
artifacts:
paths:
- "**/build*/size.json"
- "**/build*/build_log.txt"
- "**/build*/*.bin"
# upload to s3 server to save the artifacts size
# - "**/build*/*.map"
# pytest test apps requires elf files for coredump tests
- "**/build*/*.elf"
- "**/build*/flasher_args.json"
- "**/build*/flash_project_args"
- "**/build*/config/sdkconfig.json"
- "**/build*/bootloader/*.bin"
- "**/build*/partition_table/*.bin"
- list_job_*.json
- size_info.txt
when: always
expire_in: 4 days
build_pytest_test_apps_esp32:
extends:
- .build_pytest_test_apps_template
- .rules:build:custom_test-esp32
variables:
IDF_TARGET: esp32
TEST_DIR: tools/test_apps
build_pytest_test_apps_esp32s2:
extends:
- .build_pytest_test_apps_template
- .rules:build:custom_test-esp32s2
variables:
IDF_TARGET: esp32s2
TEST_DIR: tools/test_apps
build_pytest_test_apps_esp32s3:
extends:
- .build_pytest_test_apps_template
- .rules:build:custom_test-esp32s3
variables:
IDF_TARGET: esp32s3
TEST_DIR: tools/test_apps
build_pytest_test_apps_esp32c3:
extends:
- .build_pytest_test_apps_template
- .rules:build:custom_test-esp32c3
variables:
IDF_TARGET: esp32c3
TEST_DIR: tools/test_apps
build_pytest_test_apps_esp32c2:
extends:
- .build_pytest_test_apps_template
- .rules:build:custom_test-esp32c2
variables:
IDF_TARGET: esp32c2
TEST_DIR: tools/test_apps
.build_template_app_template:
extends:
- .build_template
- .before_script_build_jobs
variables:
LOG_PATH: "${CI_PROJECT_DIR}/log_template_app"
BUILD_PATH: "${CI_PROJECT_DIR}/build_template_app"
BUILD_DIR: "@t/@w"
BUILD_LOG_CMAKE: "${LOG_PATH}/cmake_@t_@w.txt"
BUILD_COMMAND_ARGS: ""
artifacts:
when: always
paths:
- log_template_app/*
- size_info.txt
- build_template_app/**/size.json
expire_in: 1 week
script:
# Set the variable for 'esp-idf-template' testing
- ESP_IDF_TEMPLATE_GIT=${ESP_IDF_TEMPLATE_GIT:-"https://github.com/espressif/esp-idf-template.git"}
- retry_failed git clone ${ESP_IDF_TEMPLATE_GIT}
# Try to use the same branch name for esp-idf-template that we're
# using on esp-idf. If it doesn't exist then just stick to the default branch
- python $CHECKOUT_REF_SCRIPT esp-idf-template esp-idf-template
- export PATH="$IDF_PATH/tools:$PATH"
# Only do the default cmake build for each target, remaining part are done in the build_template_app job
- tools/ci/build_template_app.sh ${BUILD_COMMAND_ARGS}
# build-related-pre-check-jobs ------------------------------------------------
# Build at least one project for each target at earliest stage to reduce build cost for obvious failing commits
fast_template_app:
extends:
- .build_template_app_template
- .rules:build:target_test
stage: pre_check
variables:
BUILD_COMMAND_ARGS: "-p"
#------------------------------------------------------------------------------
.build_esp_idf_tests_cmake_template:
extends:
- .build_cmake_template
- .before_script_build_jobs
artifacts:
paths:
- "**/build*/size.json"
- "**/build*/build_log.txt"
- "**/build*/*.bin"
# upload to s3 server to save the artifacts size
# - "**/build*/*.map"
# ttfw tests require elf files
- "**/build*/*.elf"
- "**/build*/flasher_args.json"
- "**/build*/flash_project_args"
- "**/build*/config/sdkconfig.json"
- "**/build*/sdkconfig"
- "**/build*/bootloader/*.bin"
- "**/build*/partition_table/*.bin"
- list_job_*.json
- size_info.txt
- components/idf_test/unit_test/*.yml
when: always
expire_in: 4 days
script:
# CI specific options start from "--collect-size-info xxx". could ignore when running locally
- run_cmd python tools/ci/ci_build_apps.py tools/unit-test-app -v
-t $IDF_TARGET
--config "configs/*="
--copy-sdkconfig
--preserve-all
--collect-size-info size_info.txt
--collect-app-info list_job_${CI_NODE_INDEX:-1}.json
--parallel-count ${CI_NODE_TOTAL:-1}
--parallel-index ${CI_NODE_INDEX:-1}
- run_cmd python tools/unit-test-app/tools/UnitTestParser.py tools/unit-test-app ${CI_NODE_INDEX:-1}
build_esp_idf_tests_cmake_esp32:
extends:
- .build_esp_idf_tests_cmake_template
- .rules:build:unit_test-esp32
parallel: 2
variables:
IDF_TARGET: esp32
build_esp_idf_tests_cmake_esp32s2:
extends:
- .build_esp_idf_tests_cmake_template
- .rules:build:unit_test-esp32s2
parallel: 2
variables:
IDF_TARGET: esp32s2
build_esp_idf_tests_cmake_esp32s3:
extends:
- .build_esp_idf_tests_cmake_template
- .rules:build:unit_test-esp32s3
variables:
IDF_TARGET: esp32s3
build_esp_idf_tests_cmake_esp32c2:
extends:
- .build_esp_idf_tests_cmake_template
- .rules:build:unit_test-esp32c2
variables:
IDF_TARGET: esp32c2
build_esp_idf_tests_cmake_esp32c3:
extends:
- .build_esp_idf_tests_cmake_template
- .rules:build:unit_test-esp32c3
variables:
IDF_TARGET: esp32c3
build_examples_cmake_esp32:
extends:
- .build_cmake_template
- .rules:build:example_test-esp32
parallel: 9
variables:
IDF_TARGET: esp32
TEST_DIR: examples
build_examples_cmake_esp32s2:
extends:
- .build_cmake_template
- .rules:build:example_test-esp32s2
parallel: 6
variables:
IDF_TARGET: esp32s2
TEST_DIR: examples
build_examples_cmake_esp32s3:
extends:
- .build_cmake_template
- .rules:build:example_test-esp32s3
parallel: 7
variables:
IDF_TARGET: esp32s3
TEST_DIR: examples
build_examples_cmake_esp32c2:
extends:
- .build_cmake_template
- .rules:build:example_test-esp32c2
parallel: 4
variables:
IDF_TARGET: esp32c2
TEST_DIR: examples
build_examples_cmake_esp32c3:
extends:
- .build_cmake_template
- .rules:build:example_test-esp32c3
parallel: 6
variables:
IDF_TARGET: esp32c3
TEST_DIR: examples
build_test_apps_esp32:
extends:
- .build_cmake_template
- .rules:build:custom_test-esp32
parallel: 2
variables:
IDF_TARGET: esp32
TEST_DIR: tools/test_apps
build_test_apps_esp32s2:
extends:
- .build_cmake_template
- .rules:build:custom_test-esp32s2
parallel: 2
variables:
IDF_TARGET: esp32s2
TEST_DIR: tools/test_apps
build_test_apps_esp32s3:
extends:
- .build_cmake_template
- .rules:build:custom_test-esp32s3
parallel: 2
variables:
IDF_TARGET: esp32s3
TEST_DIR: tools/test_apps
build_test_apps_esp32c3:
extends:
- .build_cmake_template
- .rules:build:custom_test-esp32c3
parallel: 2
variables:
IDF_TARGET: esp32c3
TEST_DIR: tools/test_apps
build_test_apps_esp32c2:
extends:
- .build_cmake_template
- .rules:build:custom_test-esp32c2
variables:
IDF_TARGET: esp32c2
TEST_DIR: tools/test_apps
.test_build_system_template:
stage: host_test
extends:
- .build_template
- .rules:build
needs:
- job: fast_template_app
artifacts: false
optional: true
script:
- ${IDF_PATH}/tools/ci/test_configure_ci_environment.sh
- rm -rf test_build_system
- mkdir test_build_system
- cd test_build_system
- ${IDF_PATH}/tools/ci/${SHELL_TEST_SCRIPT}
test_build_system_cmake:
extends: .test_build_system_template
variables:
SHELL_TEST_SCRIPT: test_build_system_cmake.sh
test_build_system_cmake_macos:
extends:
- .test_build_system_template
- .before_script_macos
- .rules:build:macos
tags:
- macos_shell
variables:
SHELL_TEST_SCRIPT: test_build_system_cmake.sh
PYENV_VERSION: "3.7"
script:
- ${IDF_PATH}/tools/ci/test_configure_ci_environment.sh
- rm -rf test_build_system
- mkdir test_build_system
- cd test_build_system
# copy-paste the script from .test_build_system_template
# since `ESP_IDF_TEMPLATE_GIT` is a group variable and has higher precedence than job variable
# export here to override the group variable
#
# Clone the template app from github for macos runners
- export ESP_IDF_TEMPLATE_GIT="https://github.com/espressif/esp-idf-template.git"
- ${IDF_PATH}/tools/ci/${SHELL_TEST_SCRIPT}
test_build_system_spaces:
extends: .test_build_system_template
variables:
SHELL_TEST_SCRIPT: test_build_system_spaces.py
build_docker:
extends:
- .before_script_minimal
- .rules:build:docker
stage: host_test
needs: []
image: espressif/docker-builder:1
tags:
- build_docker_amd64_brno
variables:
DOCKER_TMP_IMAGE_NAME: "idf_tmp_image"
script:
- export LOCAL_CI_REPOSITORY_URL=$CI_REPOSITORY_URL
- if [ -n "$LOCAL_GITLAB_HTTPS_HOST" ]; then export LOCAL_CI_REPOSITORY_URL="https://gitlab-ci-token:${CI_JOB_TOKEN}@${LOCAL_GITLAB_HTTPS_HOST}/${CI_PROJECT_PATH}"; fi
- if [ -n "$LOCAL_GIT_MIRROR" ]; then export LOCAL_CI_REPOSITORY_URL="${LOCAL_GIT_MIRROR}/${CI_PROJECT_PATH}"; fi
- echo "Using repository at $LOCAL_CI_REPOSITORY_URL"
- export DOCKER_BUILD_ARGS="--build-arg IDF_CLONE_URL=${LOCAL_CI_REPOSITORY_URL} --build-arg IDF_CLONE_BRANCH_OR_TAG=${CI_COMMIT_REF_NAME} --build-arg IDF_CHECKOUT_REF=${CI_COMMIT_TAG:-$PIPELINE_COMMIT_SHA}"
# Build
- docker build --tag ${DOCKER_TMP_IMAGE_NAME} ${DOCKER_BUILD_ARGS} tools/docker/
# We can't mount $PWD/examples/get-started/blink into the container, see https://gitlab.com/gitlab-org/gitlab-ce/issues/41227.
# The workaround mentioned there works, but leaves around directories which need to be cleaned up manually.
# Therefore, build a copy of the example located inside the container.
- docker run --rm --workdir /opt/esp/idf/examples/get-started/blink ${DOCKER_TMP_IMAGE_NAME} idf.py build
# This job builds template app with permutations of targets and optimization levels
build_template_app:
extends:
- .build_template_app_template
- .rules:build
stage: host_test
needs:
- job: fast_template_app
artifacts: false

View File

@@ -1,100 +0,0 @@
# How the `generate_rules.py` works
## Functionalities
This script can do only two things:
1. Auto-generate some labels/rules we need and update them in `rules.yml`
2. Generate a dependency tree graph
## Schema
This file only used basic YAML grammar and has nothing to do with the GitLab version YAML file.
It has five custom keywords:
- `matrix`: An array of sub-arrays, used to replicate rules by formatting strings. You can use the format string everywhere, it will be formatted recursively
- `labels`: An array of `labels`.
- `patterns`: An array of `patterns`. Patterns that not included
- `included_in`: An array of other `rule` names. It indicates the `labels` and `patterns` will be included in all specified `rules` as well
- `deploy`: An array of strings, used to replicate rules by adding postfix `-<item in deploy array>`. It indicates the extra `label` used in `rules`, which will explain later.
## How to use this file to generate `rules.yml`
Let's take a complicated example to help understand the process
```yaml
"test-{0}-{1}":
matrix:
- [a, b]
- [c, d]
labels:
- "{0}-{1}"
patterns:
- "{0}"
- pattern-not-exist
included_in:
- build-{0}
```
1. expand the mapping dicts defined by `matrix`
After this step, it will turn into 4 dicts:
| key | labels | patterns | included_in |
| -------- | ------ | -------- | ----------- |
| test-a-c | a-c | a | build-a |
| test-a-d | a-d | a | build-a |
| test-b-c | b-c | b | build-b |
| test-b-d | b-d | b | build-b |
**Advanced Usage: You can overwrite a mapping by declaring it again later**, For example:
If we concatenate this part to the previous example,
```yaml
# ... The same as the previous example
test-a-c:
labels:
- overwrite
```
`rule` `test-a-c` will be turned into:
| key | labels |
| -------- | --------- |
| test-a-c | overwrite |
**Mappings with the keyword `deploy` will also replicate by adding a postfix `-<item in deploy array>` to the mapping key**
2. create rules by `included_in`
After this step, it will turn into 6 mapping dicts:
| key | labels | patterns |
| -------- | -------- | -------- |
| test-a-c | a-c | a |
| test-a-d | a-d | a |
| test-b-c | b-c | b |
| test-b-d | b-d | b |
| build-a | a-c, a-d | a |
| build-b | b-c, b-d | b |
3. replace the auto-generated region in `rules.yml` with `labels`, and `rules`. Each mapping will generate a `rule` and all the required labels. `patterns` are pre-defined in `rules.yml` and could not be generated automatically. If a mapping is using a `pattern` undefined, the `pattern` will be ignored.
- If a mapping key has postfix `-preview`, no `if-protected-xxx` clause will be added
- else if a mapping key has postfix `-production`, an `if-protected-no_label` clause will be added
- else, an `if-protected` clause will be added
## Graph
All `label` nodes are in green, `pattern` nodes are in cyan, `rule` nodes are in blue
### Requirements
There are a few extra dependencies while generating the dependency tree graph, please refer to [pygraphviz](https://github.com/pygraphviz/pygraphviz/blob/master/INSTALL.txt) documentation to install both `graphviz` and `pygraphviz`
### CLI usage
`python generate_rules.py --graph OUTPUT_PATH`

View File

@@ -1,197 +0,0 @@
.all_targets: &all_targets
- esp32
- esp32s2
- esp32s3
- esp32c3
- esp32h2
- esp32c2
.target_test: &target_test
- example_test
- custom_test
- unit_test
- component_ut
##############
# Build Jobs #
##############
"build":
labels:
- build
patterns:
- build_components
- build_system
included_in:
- build:target_test
# -------------------
# Specific Build Jobs
# -------------------
"build:docker":
labels:
- build
- docker
patterns:
- docker
"build:windows":
labels:
- build
- windows
patterns:
- build_system
- windows
"build:macos":
labels:
- build
- macos
- macos_test # for backward compatibility
patterns:
- build_system
- macos
# ---------------
# Build Test Jobs
# ---------------
"build:{0}-{1}":
matrix:
- *target_test
- *all_targets
labels:
- build
patterns:
- build_components
- build_system
- build_target_test
included_in:
- "build:{0}"
- build:target_test
####################
# Target Test Jobs #
####################
"test:{0}-{1}":
matrix:
- *target_test
- *all_targets
labels: # For each rule, use labels <test_type> and <test_type>-<target>
- "{0}"
- "{0}_{1}"
- target_test
patterns: # For each rule, use patterns <test_type> and build-<test_type>
- "{0}"
- "build-{0}"
included_in: # Parent rules
- "build:{0}"
- "build:{0}-{1}"
- build:target_test
# -------------
# Special Cases
# -------------
"test:component_ut-{0}": # component_ut will trigger by unit_test as well, since now we have 2 kinds of UT
matrix:
- *all_targets
labels:
- component_ut
- "component_ut_{0}"
- unit_test
- "unit_test_{0}"
- target_test
patterns:
- component_ut
- "build-component_ut-{0}"
included_in:
- build:component_ut
- "build:component_ut-{0}"
- build:target_test
# To reduce the specific runners' usage.
# Do not create these jobs by default patterns on development branches
# Can be triggered by labels or related changes
"test:{0}-{1}-{2}":
matrix:
- *target_test
- *all_targets
- - bt # example_test_005
- wifi # example_test_002, example_test*wifi*
- ethernet # example_test*ethernet*
- sdio # UT_044, UT_045
- usb # USB Device & Host tests
- adc # component_ut_pytest_esp32x_adc
patterns:
- "{0}-{1}-{2}"
- "{0}-{2}"
- "target_test-{2}"
labels:
- "{0}_{1}"
- "{0}"
- target_test
included_in:
- "build:{0}-{1}"
- "build:{0}"
- build:target_test
# For example_test*flash_encryption_wifi_high_traffic jobs
# set `INCLUDE_NIGHTLY_RUN` variable when triggered on development branches
"test:example_test-{0}-include_nightly_run-rule":
matrix:
- - esp32
- esp32c3
specific_rules:
- "if-example_test-ota-include_nightly_run-rule"
included_in:
- "build:example_test-{0}"
- "build:example_test"
- build:target_test
"test:host_test":
labels:
- host_test
patterns:
- host_test
"test:submodule":
labels:
- submodule
patterns:
- submodule
#################################
# Triggered Only By Labels Jobs #
#################################
"labels:iperf_stress_test": # example_test
labels:
- iperf_stress_test
included_in:
- build:example_test
- build:example_test-esp32
- build:target_test
"labels:weekend_test": # custom test
labels:
- weekend_test
included_in:
- build:custom_test
- build:custom_test-esp32
- build:target_test
"labels:nvs_coverage": # host_test
labels:
- nvs_coverage
"labels:fuzzer_test-weekend_test": # host test
labels:
- fuzzer_test
- weekend_test
"labels-protected:lan8720": # UT # FIXME: IDFCI-1176 temporary run this on master/release or with label
labels:
- lan8720
included_in:
- build:unit_test
- build:unit_test-esp32
- build:target_test
- build:component_ut
- build:component_ut-esp32

View File

@@ -1,304 +0,0 @@
#!/usr/bin/env python
#
# SPDX-FileCopyrightText: 2021-2022 Espressif Systems (Shanghai) CO LTD
# SPDX-License-Identifier: Apache-2.0
import argparse
import inspect
import os
import sys
from collections import defaultdict
from itertools import product
import yaml
try:
import pygraphviz as pgv
except ImportError: # used when pre-commit, skip generating image
pass
try:
from typing import Union
except ImportError: # used for type hint
pass
IDF_PATH = os.path.abspath(os.getenv('IDF_PATH', os.path.join(os.path.dirname(__file__), '..', '..', '..')))
def _list(str_or_list): # type: (Union[str, list]) -> list
if isinstance(str_or_list, str):
return [str_or_list]
elif isinstance(str_or_list, list):
return str_or_list
else:
raise ValueError('Wrong type: {}. Only supports str or list.'.format(type(str_or_list)))
def _format_nested_dict(_dict, f_tuple): # type: (dict[str, dict], tuple[str, ...]) -> dict[str, dict]
res = {}
for k, v in _dict.items():
k = k.split('__')[0]
if isinstance(v, dict):
v = _format_nested_dict(v, f_tuple)
elif isinstance(v, list):
v = _format_nested_list(v, f_tuple)
elif isinstance(v, str):
v = v.format(*f_tuple)
res[k.format(*f_tuple)] = v
return res
def _format_nested_list(_list, f_tuple): # type: (list[str], tuple[str, ...]) -> list[str]
res = []
for item in _list:
if isinstance(item, list):
item = _format_nested_list(item, f_tuple)
elif isinstance(item, dict):
item = _format_nested_dict(item, f_tuple)
elif isinstance(item, str):
item = item.format(*f_tuple)
res.append(item)
return res
class RulesWriter:
AUTO_GENERATE_MARKER = inspect.cleandoc(r'''
##################
# Auto Generated #
##################
''')
LABEL_TEMPLATE = inspect.cleandoc(r'''
.if-label-{0}: &if-label-{0}
if: '$BOT_LABEL_{1} || $CI_MERGE_REQUEST_LABELS =~ /^(?:[^,\n\r]+,)*{0}(?:,[^,\n\r]+)*$/i'
''')
RULE_PROTECTED = ' - <<: *if-protected'
RULE_PROTECTED_NO_LABEL = ' - <<: *if-protected-no_label'
RULE_BUILD_ONLY = ' - <<: *if-label-build-only\n' \
' when: never'
RULE_REVERT_BRANCH = ' - <<: *if-revert-branch\n' \
' when: never'
RULE_LABEL_TEMPLATE = ' - <<: *if-label-{0}'
RULE_PATTERN_TEMPLATE = ' - <<: *if-dev-push\n' \
' changes: *patterns-{0}'
SPECIFIC_RULE_TEMPLATE = ' - <<: *{0}'
RULES_TEMPLATE = inspect.cleandoc(r"""
.rules:{0}:
rules:
{1}
""")
KEYWORDS = ['labels', 'patterns']
def __init__(self, rules_yml, depend_yml): # type: (str, str) -> None
self.rules_yml = rules_yml
self.rules_cfg = yaml.load(open(rules_yml), Loader=yaml.FullLoader)
self.full_cfg = yaml.load(open(depend_yml), Loader=yaml.FullLoader)
self.cfg = {k: v for k, v in self.full_cfg.items() if not k.startswith('.')}
self.cfg = self.expand_matrices()
self.rules = self.expand_rules()
self.graph = None
def expand_matrices(self): # type: () -> dict
"""
Expand the matrix into different rules
"""
res = {}
for k, v in self.cfg.items():
res.update(self._expand_matrix(k, v))
for k, v in self.cfg.items():
if not v:
continue
deploy = v.get('deploy')
if deploy:
for item in _list(deploy):
res['{}-{}'.format(k, item)] = v
return res
@staticmethod
def _expand_matrix(name, cfg): # type: (str, dict) -> dict
"""
Expand matrix into multi keys
:param cfg: single rule dict
:return:
"""
default = {name: cfg}
if not cfg:
return default
matrices = cfg.pop('matrix', None)
if not matrices:
return default
res = {}
for comb in product(*_list(matrices)):
res.update(_format_nested_dict(default, comb))
return res
def expand_rules(self): # type: () -> dict[str, dict[str, list]]
res = defaultdict(lambda: defaultdict(set)) # type: dict[str, dict[str, set]]
for k, v in self.cfg.items():
if not v:
continue
for vk, vv in v.items():
if vk in self.KEYWORDS:
res[k][vk] = set(_list(vv))
else:
res[k][vk] = vv
for key in self.KEYWORDS: # provide empty set for missing field
if key not in res[k]:
res[k][key] = set()
for k, v in self.cfg.items():
if not v:
continue
if 'included_in' in v:
for item in _list(v['included_in']):
if 'specific_rules' in v:
res[item]['specific_rules'].update(_list(v['specific_rules']))
if 'labels' in v:
res[item]['labels'].update(_list(v['labels']))
if 'patterns' in v:
for _pat in _list(v['patterns']):
# Patterns must be pre-defined
if '.patterns-{}'.format(_pat) not in self.rules_cfg:
print('WARNING: pattern {} not exists'.format(_pat))
continue
res[item]['patterns'].add(_pat)
sorted_res = defaultdict(lambda: defaultdict(list)) # type: dict[str, dict[str, list]]
for k, v in res.items():
for vk, vv in v.items():
sorted_res[k][vk] = sorted(vv)
return sorted_res
def new_labels_str(self): # type: () -> str
_labels = set([])
for k, v in self.cfg.items():
if not v:
continue # shouldn't be possible
labels = v.get('labels')
if not labels:
continue
_labels.update(_list(labels))
labels = sorted(_labels)
res = ''
res += '\n\n'.join([self._format_label(_label) for _label in labels])
return res
@classmethod
def _format_label(cls, label): # type: (str) -> str
return cls.LABEL_TEMPLATE.format(label, cls.bot_label_str(label))
@staticmethod
def bot_label_str(label): # type: (str) -> str
return label.upper().replace('-', '_')
def new_rules_str(self): # type: () -> str
res = []
for k, v in sorted(self.rules.items()):
res.append(self.RULES_TEMPLATE.format(k, self._format_rule(k, v)))
return '\n\n'.join(res)
def _format_rule(self, name, cfg): # type: (str, dict) -> str
_rules = [self.RULE_REVERT_BRANCH]
if name.endswith('-production'):
_rules.append(self.RULE_PROTECTED_NO_LABEL)
else:
if not (name.endswith('-preview') or name.startswith('labels:')):
_rules.append(self.RULE_PROTECTED)
if name.startswith('test:'):
_rules.append(self.RULE_BUILD_ONLY)
for specific_rule in cfg['specific_rules']:
if f'.{specific_rule}' in self.rules_cfg:
_rules.append(self.SPECIFIC_RULE_TEMPLATE.format(specific_rule))
else:
print('WARNING: specific_rule {} not exists'.format(specific_rule))
for label in cfg['labels']:
_rules.append(self.RULE_LABEL_TEMPLATE.format(label))
for pattern in cfg['patterns']:
if '.patterns-{}'.format(pattern) in self.rules_cfg:
_rules.append(self.RULE_PATTERN_TEMPLATE.format(pattern))
else:
print('WARNING: pattern {} not exists'.format(pattern))
return '\n'.join(_rules)
def update_rules_yml(self): # type: () -> bool
with open(self.rules_yml) as fr:
file_str = fr.read()
auto_generate_str = '\n{}\n\n{}\n'.format(self.new_labels_str(), self.new_rules_str())
rest, marker, old = file_str.partition(self.AUTO_GENERATE_MARKER)
if old == auto_generate_str:
return False
else:
print(self.rules_yml, 'has been modified. Please check')
with open(self.rules_yml, 'w') as fw:
fw.write(rest + marker + auto_generate_str)
return True
LABEL_COLOR = 'green'
PATTERN_COLOR = 'cyan'
RULE_COLOR = 'blue'
def build_graph(rules_dict): # type: (dict[str, dict[str, list]]) -> pgv.AGraph
graph = pgv.AGraph(directed=True, rankdir='LR', concentrate=True)
for k, v in rules_dict.items():
if not v:
continue
included_in = v.get('included_in')
if included_in:
for item in _list(included_in):
graph.add_node(k, color=RULE_COLOR)
graph.add_node(item, color=RULE_COLOR)
graph.add_edge(k, item, color=RULE_COLOR)
labels = v.get('labels')
if labels:
for _label in labels:
graph.add_node('label:{}'.format(_label), color=LABEL_COLOR)
graph.add_edge('label:{}'.format(_label), k, color=LABEL_COLOR)
patterns = v.get('patterns')
if patterns:
for _pat in patterns:
graph.add_node('pattern:{}'.format(_pat), color=PATTERN_COLOR)
graph.add_edge('pattern:{}'.format(_pat), k, color=PATTERN_COLOR)
return graph
def output_graph(graph, output_path='output.png'): # type: (pgv.AGraph, str) -> None
graph.layout('dot')
if output_path.endswith('.png'):
img_path = output_path
else:
img_path = os.path.join(output_path, 'output.png')
graph.draw(img_path)
if __name__ == '__main__':
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument('rules_yml', nargs='?', default=os.path.join(IDF_PATH, '.gitlab', 'ci', 'rules.yml'),
help='rules.yml file path')
parser.add_argument('dependencies_yml', nargs='?', default=os.path.join(IDF_PATH, '.gitlab', 'ci', 'dependencies',
'dependencies.yml'),
help='dependencies.yml file path')
parser.add_argument('--graph',
help='Specify PNG image output path. Use this argument to generate dependency graph')
args = parser.parse_args()
writer = RulesWriter(args.rules_yml, args.dependencies_yml)
file_modified = writer.update_rules_yml()
if args.graph:
dep_tree_graph = build_graph(writer.rules)
output_graph(dep_tree_graph)
sys.exit(file_modified)

View File

@@ -1,42 +0,0 @@
.deploy_job_template:
stage: deploy
image: $ESP_ENV_IMAGE
tags:
- deploy
# Check this before push_to_github
check_submodule_sync:
extends:
- .deploy_job_template
- .rules:test:submodule
stage: test_deploy
tags:
- github_sync
retry: 2
variables:
GIT_STRATEGY: clone
SUBMODULES_TO_FETCH: "none"
PUBLIC_IDF_URL: "https://github.com/espressif/esp-idf.git"
dependencies: []
script:
- git submodule deinit --force .
# setting the default remote URL to the public one, to resolve relative location URLs
- git config remote.origin.url ${PUBLIC_IDF_URL}
# check if all submodules are correctly synced to public repository
- git submodule init
- git config --get-regexp '^submodule\..*\.url$' || true
- git submodule update --recursive
- echo "IDF was cloned from ${PUBLIC_IDF_URL} completely"
push_to_github:
extends:
- .deploy_job_template
- .before_script_minimal
- .rules:push_to_github
needs:
- check_submodule_sync
script:
- add_github_ssh_keys
- git remote remove github &>/dev/null || true
- git remote add github git@github.com:espressif/esp-idf.git
- tools/ci/push_to_github.sh

View File

@@ -1,230 +0,0 @@
.patterns-docs: &patterns-docs
- ".gitlab/ci/docs.yml"
- "docs/**/*"
- "components/**/*.h"
- "components/**/Kconfig*"
- "components/**/CMakeList.txt"
- "components/**/sdkconfig*"
- "tools/kconfig_new/**/*"
- "CONTRIBUTING.rst"
.patterns-docs-preview: &patterns-docs-preview
- "docs/**/*"
.if-protected: &if-protected
if: '($CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_BRANCH =~ /^release\/v/ || $CI_COMMIT_TAG =~ /^v\d+\.\d+(\.\d+)?($|-)/)'
.if-protected-no_label: &if-protected-no_label
if: '($CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_BRANCH =~ /^release\/v/ || $CI_COMMIT_TAG =~ /^v\d+\.\d+(\.\d+)?($|-)/) && $BOT_TRIGGER_WITH_LABEL == null'
.if-qa-test-tag: &if-qa-test-tag
if: '$CI_COMMIT_TAG =~ /^qa-test/'
.if-label-build_docs: &if-label-build_docs
if: '$BOT_LABEL_BUILD_DOCS || $CI_MERGE_REQUEST_LABELS =~ /^(?:[^,\n\r]+,)*build_docs(?:,[^,\n\r]+)*$/i'
.if-label-docs: &if-label-docs
if: '$BOT_LABEL_DOCS || $CI_MERGE_REQUEST_LABELS =~ /^(?:[^,\n\r]+,)*docs(?:,[^,\n\r]+)*$/i'
.if-label-docs_fast: &if-label-docs_fast
if: '$BOT_LABEL_DOCS_FAST || $CI_MERGE_REQUEST_LABELS =~ /^(?:[^,\n\r]+,)*docs_fast(?:,[^,\n\r]+)*$/i'
.if-dev-push: &if-dev-push
if: '$CI_COMMIT_REF_NAME != "master" && $CI_COMMIT_BRANCH !~ /^release\/v/ && $CI_COMMIT_TAG !~ /^v\d+\.\d+(\.\d+)?($|-)/ && $CI_COMMIT_TAG !~ /^qa-test/ && ($CI_PIPELINE_SOURCE == "push" || $CI_PIPELINE_SOURCE == "merge_request_event")'
.doc-rules:build:docs:
rules:
- <<: *if-qa-test-tag
when: never
- <<: *if-protected
- <<: *if-label-build_docs
- <<: *if-label-docs
- <<: *if-label-docs_fast
- <<: *if-dev-push
changes: *patterns-docs
# stage: pre_check
check_readme_links:
extends:
- .pre_check_template
tags: ["build", "amd64", "internet"]
allow_failure: true
script:
- python ${IDF_PATH}/tools/ci/check_readme_links.py
check_docs_lang_sync:
extends:
- .pre_check_template
- .doc-rules:build:docs
script:
- cd docs
- ./check_lang_folder_sync.sh
.build_docs_template:
image: $ESP_IDF_DOC_ENV_IMAGE
tags:
- build_docs
dependencies: []
script:
- cd docs
- build-docs -t $DOCTGT -bs $DOC_BUILDERS -l $DOCLANG build
parallel:
matrix:
- DOCLANG: ["en", "zh_CN"]
DOCTGT: ["esp32", "esp32s2", "esp32s3", "esp32c3", "esp32c2"]
check_docs_gh_links:
image: $ESP_IDF_DOC_ENV_IMAGE
extends:
- .pre_check_template
- .doc-rules:build:docs
script:
- cd docs
- build-docs gh-linkcheck
# stage: build_doc
# Add this stage to let the build_docs job run in parallel with build
.build_docs_build_stage_template:
extends:
- .build_docs_template
stage: build_doc
needs:
- job: check_docs_lang_sync
artifacts: false
- job: check_docs_gh_links
artifacts: false
# Doc jobs have a lot of special cases, we specify rules here directly instead
# in dependencies.yml to simplify things
build_docs_html_full:
extends:
- .build_docs_build_stage_template
rules:
- <<: *if-label-docs_fast
when: never
- <<: *if-protected
- <<: *if-label-build_docs
- <<: *if-label-docs
- <<: *if-dev-push
changes: *patterns-docs
artifacts:
when: always
paths:
- docs/_build/*/*/*.txt
- docs/_build/*/*/html/*
expire_in: 4 days
variables:
DOC_BUILDERS: "html"
build_docs_html_fast:
extends:
- .build_docs_build_stage_template
rules:
- <<: *if-label-docs_fast
artifacts:
when: always
paths:
- docs/_build/*/*/*.txt
- docs/_build/*/*/html/*
expire_in: 4 days
variables:
DOC_BUILDERS: "html"
DOCS_FAST_BUILD: "yes"
build_docs_pdf:
extends:
- .build_docs_build_stage_template
rules:
- <<: *if-label-docs_fast
when: never
- <<: *if-protected
- <<: *if-label-build_docs
- <<: *if-label-docs
- <<: *if-dev-push
changes: *patterns-docs
artifacts:
when: always
paths:
- docs/_build/*/*/latex/*
expire_in: 4 days
variables:
DOC_BUILDERS: "latex"
.deploy_docs_template:
image: $ESP_IDF_DOC_ENV_IMAGE
variables:
DOCS_BUILD_DIR: "${IDF_PATH}/docs/_build/"
PYTHONUNBUFFERED: 1
stage: test_deploy
tags:
- deploy
- shiny
script:
- add_doc_server_ssh_keys $DOCS_DEPLOY_PRIVATEKEY $DOCS_DEPLOY_SERVER $DOCS_DEPLOY_SERVER_USER
- export GIT_VER=$(git describe --always ${PIPELINE_COMMIT_SHA} --)
- deploy-docs
# stage: test_deploy
deploy_docs_preview:
extends:
- .deploy_docs_template
rules:
- <<: *if-label-build_docs
- <<: *if-label-docs
- <<: *if-dev-push
changes: *patterns-docs-preview
needs:
- job: build_docs_html_fast
optional: true
- job: build_docs_html_full
optional: true
- job: build_docs_pdf
optional: true
variables:
TYPE: "preview"
# older branches use DOCS_DEPLOY_KEY, DOCS_SERVER, DOCS_SERVER_USER, DOCS_PATH for preview server so we keep these names for 'preview'
DOCS_DEPLOY_PRIVATEKEY: "$DOCS_DEPLOY_KEY"
DOCS_DEPLOY_SERVER: "$DOCS_SERVER"
DOCS_DEPLOY_SERVER_USER: "$DOCS_SERVER_USER"
DOCS_DEPLOY_PATH: "$DOCS_PATH"
DOCS_DEPLOY_URL_BASE: "https://$DOCS_PREVIEW_SERVER_URL/docs/esp-idf"
# stage: post_deploy
deploy_docs_production:
# The DOCS_PROD_* variables used by this job are "Protected" so these branches must all be marked "Protected" in Gitlab settings
extends:
- .deploy_docs_template
rules:
- <<: *if-protected-no_label
stage: post_deploy
dependencies: # set dependencies to null to avoid missing artifacts issue
needs: # ensure runs after push_to_github succeeded
- build_docs_html_full
- build_docs_pdf
- job: push_to_github
artifacts: false
variables:
TYPE: "preview"
DOCS_DEPLOY_PRIVATEKEY: "$DOCS_PROD_DEPLOY_KEY"
DOCS_DEPLOY_SERVER: "$DOCS_PROD_SERVER"
DOCS_DEPLOY_SERVER_USER: "$DOCS_PROD_SERVER_USER"
DOCS_DEPLOY_PATH: "$DOCS_PROD_PATH"
DOCS_DEPLOY_URL_BASE: "https://docs.espressif.com/projects/esp-idf"
DEPLOY_STABLE: 1
check_doc_links:
extends:
- .build_docs_template
- .rules:protected
stage: post_deploy
tags: ["build", "amd64", "internet"]
artifacts:
when: always
paths:
- docs/_build/*/*/*.txt
- docs/_build/*/*/linkcheck/*.txt
expire_in: 1 week
allow_failure: true
script:
- cd docs
- build-docs -t $DOCTGT -l $DOCLANG linkcheck

View File

@@ -1,410 +0,0 @@
.host_test_template:
extends: .rules:test:host_test
stage: host_test
image: $ESP_ENV_IMAGE
tags:
- host_test
dependencies: []
# run host_test jobs immediately, only after upload cache
needs:
- job: upload-pip-cache
optional: true
artifacts: false
- job: upload-submodules-cache
optional: true
artifacts: false
test_nvs_on_host:
extends: .host_test_template
script:
- cd components/nvs_flash/test_nvs_host
- make test
test_nvs_coverage:
extends:
- .host_test_template
- .rules:labels:nvs_coverage
artifacts:
paths:
- components/nvs_flash/test_nvs_host/coverage_report
expire_in: 1 week
script:
- cd components/nvs_flash/test_nvs_host
- make coverage_report
# the 'long' host tests take approx 11 hours on our current runners. Adding some margin here for possible CPU contention
timeout: 18 hours
test_partition_table_on_host:
extends: .host_test_template
tags:
- build
script:
- cd components/partition_table/test_gen_esp32part_host
- ./gen_esp32part_tests.py
test_wl_on_host:
extends: .host_test_template
artifacts:
paths:
- components/wear_levelling/test_wl_host/coverage_report.zip
expire_in: 1 week
script:
- cd components/wear_levelling/test_wl_host
- make test
test_fatfs_on_host:
extends: .host_test_template
script:
- cd components/fatfs/test_fatfs_host/
- make test
test_ldgen_on_host:
extends: .host_test_template
script:
- cd tools/ldgen/test
- export PYTHONPATH=$PYTHONPATH:..
- python -m unittest
variables:
LC_ALL: C.UTF-8
test_reproducible_build:
extends: .host_test_template
script:
- ./tools/ci/test_reproducible_build.sh
artifacts:
when: on_failure
paths:
- "**/sdkconfig"
- "**/build*/*.bin"
- "**/build*/*.elf"
- "**/build*/*.map"
- "**/build*/flasher_args.json"
- "**/build*/*.bin"
- "**/build*/bootloader/*.bin"
- "**/build*/partition_table/*.bin"
expire_in: 1 week
.host_fuzzer_test_template:
extends:
- .host_test_template
- .rules:labels:fuzzer_test-weekend_test
image: $AFL_FUZZER_TEST_IMAGE
artifacts:
when: always
paths:
- ${FUZZER_TEST_DIR}/out/crashes
- ${FUZZER_TEST_DIR}/fuzz_output.log
expire_in: 1 week
script:
- export AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES=1 && export AFL_SKIP_CPUFREQ=1
- cd ${FUZZER_TEST_DIR}
# run AFL fuzzer for one hour
- ( ( make ${FUZZER_PARAMS} fuzz | tee fuzz_output.log | grep -v '\(Fuzzing test case\|Entering queue cycle\)' ) || pkill sleep ) &
- ( sleep 3600 || mkdir -p out/crashes/env_failed ) && pkill afl-fuz
# check no crashes found
- test -z "$(ls out/crashes/)" || exit 1
test_lwip_dns_fuzzer_on_host:
extends: .host_fuzzer_test_template
variables:
FUZZER_TEST_DIR: components/lwip/test_afl_host
FUZZER_PARAMS: MODE=dns
test_lwip_dhcp_fuzzer_on_host:
extends: .host_fuzzer_test_template
variables:
FUZZER_TEST_DIR: components/lwip/test_afl_host
FUZZER_PARAMS: MODE=dhcp_client
test_lwip_dhcps_fuzzer_on_host:
extends: .host_fuzzer_test_template
variables:
FUZZER_TEST_DIR: components/lwip/test_afl_host
FUZZER_PARAMS: MODE=dhcp_server
test_spiffs_on_host:
extends: .host_test_template
script:
- cd components/spiffs/test_spiffs_host/
- make test
- cd ../test_spiffsgen
- ./test_spiffsgen.py
test_fatfsgen_on_host:
extends: .host_test_template
script:
- cd components/fatfs/test_fatfsgen/
- ./test_fatfsgen.py
- ./test_wl_fatfsgen.py
- ./test_fatfsparse.py
test_multi_heap_on_host:
extends: .host_test_template
script:
- cd components/heap/test_multi_heap_host
- ./test_all_configs.sh
test_certificate_bundle_on_host:
extends: .host_test_template
tags:
- build
script:
- cd components/mbedtls/esp_crt_bundle/test_gen_crt_bundle/
- ./test_gen_crt_bundle.py
test_confserver:
extends: .host_test_template
script:
- cd tools/kconfig_new/test/confserver
- ./test_confserver.py
test_gen_kconfig_doc:
extends: .host_test_template
script:
- cd tools/kconfig_new/test/gen_kconfig_doc/
- ./test_target_visibility.py
- ./test_kconfig_out.py
test_confgen:
extends: .host_test_template
script:
- cd tools/kconfig_new/test/confgen/
- ./test_confgen.py
test_idf_monitor:
extends: .host_test_template
artifacts:
# save artifacts always in order to access results which were retried without consequent failure
when: always
paths:
- tools/test_idf_monitor/outputs/*
expire_in: 1 week
script:
- eval $($IDF_PATH/tools/idf_tools.py export)
- cd ${IDF_PATH}/tools/test_idf_monitor
- ./run_test_idf_monitor.py
test_idf_size:
extends: .host_test_template
artifacts:
when: on_failure
paths:
- tools/test_idf_size/output
- tools/test_idf_size/.coverage
expire_in: 1 week
script:
- cd ${IDF_PATH}/tools/test_idf_size
- ./test.sh
test_idf_py:
extends: .host_test_template
variables:
LC_ALL: C.UTF-8
script:
- cd ${IDF_PATH}/tools/test_idf_py
- ./test_idf_py.py
# Test for create virtualenv. It must be invoked from Python, not from virtualenv.
# Use docker image system python without any extra dependencies
test_idf_tools:
extends:
- .host_test_template
- .before_script_minimal
artifacts:
when: on_failure
paths:
- tools/tools.new.json
expire_in: 1 week
image:
name: $ESP_ENV_IMAGE
entrypoint: [""] # use system python3. no extra pip package installed
script:
# Tools must be downloaded for testing
- python3 ${IDF_PATH}/tools/idf_tools.py download
- cd ${IDF_PATH}/tools/test_idf_tools
- python3 -m pip install jsonschema
- python3 ./test_idf_tools.py
- python3 ./test_idf_tools_python_env.py
.test_efuse_table_on_host_template:
extends: .host_test_template
variables:
IDF_TARGET: "esp32"
artifacts:
when: on_failure
paths:
- components/efuse/${IDF_TARGET}/esp_efuse_table.c
expire_in: 1 week
script:
- cd ${IDF_PATH}/components/efuse/
- ./efuse_table_gen.py -t "${IDF_TARGET}" ${IDF_PATH}/components/efuse/${IDF_TARGET}/esp_efuse_table.csv
- git diff --exit-code -- ${IDF_TARGET}/esp_efuse_table.c || { echo 'Differences found for ${IDF_TARGET} target. Please run make efuse_common_table or idf.py efuse-common-table and commit the changes.'; exit 1; }
- cd ${IDF_PATH}/components/efuse/test_efuse_host
- ./efuse_tests.py
test_efuse_table_on_host_esp32:
extends: .test_efuse_table_on_host_template
test_efuse_table_on_host_esp32s2:
extends: .test_efuse_table_on_host_template
variables:
IDF_TARGET: esp32s2
test_efuse_table_on_host_esp32s3:
extends: .test_efuse_table_on_host_template
variables:
IDF_TARGET: esp32s3
test_efuse_table_on_host_esp32c3:
extends: .test_efuse_table_on_host_template
variables:
IDF_TARGET: esp32c3
test_efuse_table_on_host_esp32h2:
extends: .test_efuse_table_on_host_template
variables:
IDF_TARGET: esp32h2
test_logtrace_proc:
extends: .host_test_template
artifacts:
when: on_failure
paths:
- tools/esp_app_trace/test/logtrace/output
- tools/esp_app_trace/test/logtrace/.coverage
expire_in: 1 week
script:
- cd ${IDF_PATH}/tools/esp_app_trace/test/logtrace
- ./test.sh
test_sysviewtrace_proc:
extends: .host_test_template
artifacts:
when: on_failure
paths:
- tools/esp_app_trace/test/sysview/output
- tools/esp_app_trace/test/sysview/.coverage
expire_in: 1 week
script:
- cd ${IDF_PATH}/tools/esp_app_trace/test/sysview
- ./test.sh
test_mkdfu:
extends: .host_test_template
variables:
LC_ALL: C.UTF-8
script:
- cd ${IDF_PATH}/tools/test_mkdfu
- ./test_mkdfu.py
test_mkuf2:
extends: .host_test_template
script:
- cd ${IDF_PATH}/tools/test_mkuf2
- ./test_mkuf2.py
test_autocomplete:
extends:
- .host_test_template
artifacts:
when: on_failure
paths:
- ${IDF_PATH}/*.out
expire_in: 1 week
script:
- ${IDF_PATH}/tools/ci/test_autocomplete.py
test_detect_python:
extends:
- .host_test_template
script:
- cd ${IDF_PATH}
- shellcheck -s sh tools/detect_python.sh
- shellcheck -s bash tools/detect_python.sh
- shellcheck -s dash tools/detect_python.sh
- "bash -c '. tools/detect_python.sh && echo Our Python: ${ESP_PYTHON?Python is not set}'"
- "dash -c '. tools/detect_python.sh && echo Our Python: ${ESP_PYTHON?Python is not set}'"
- "zsh -c '. tools/detect_python.sh && echo Our Python: ${ESP_PYTHON?Python is not set}'"
- "fish -c 'source tools/detect_python.fish && echo Our Python: $ESP_PYTHON'"
test_split_path_by_spaces:
extends: .host_test_template
script:
- cd ${IDF_PATH}/tools
- python -m unittest split_paths_by_spaces.py
test_nvs_page:
extends: .host_test_template
script:
- cd ${IDF_PATH}/components/nvs_flash/host_test/nvs_page_test
- idf.py build
- build/test_nvs_page_host.elf
test_mqtt_on_host:
extends: .host_test_template
script:
- cd ${IDF_PATH}/components/mqtt/host_test
- idf.py build
- LSAN_OPTIONS=verbosity=1:log_threads=1 build/host_mqtt_client_test.elf
test_log:
extends: .host_test_template
script:
- cd ${IDF_PATH}/components/log/host_test/log_test
- idf.py build
- build/test_log_host.elf
test_esp_event:
extends: .host_test_template
script:
- cd ${IDF_PATH}/components/esp_event/host_test/esp_event_unit_test
- idf.py build
- build/test_esp_event_host.elf
test_eh_frame_parser:
extends: .host_test_template
script:
- cd ${IDF_PATH}/components/esp_system/test_eh_frame_parser
- make
- ./eh_frame_test
test_rom_on_linux_works:
extends: .host_test_template
script:
- cd ${IDF_PATH}/components/esp_rom/host_test/rom_test
- idf.py build
- build/test_rom_host.elf
test_linux_example:
extends: .host_test_template
script:
- cd ${IDF_PATH}/examples/build_system/cmake/linux_host_app
- idf.py build
- timeout 5 ./build/linux_host_app.elf >test.log || true
- grep "Restarting" test.log
test_partition_api_host:
extends: .host_test_template
script:
- cd ${IDF_PATH}/components/esp_partition/host_test/partition_api_test
- idf.py build
- timeout 5 ./build/partition_api_test.elf >test.log
- grep " 0 Failures" test.log
test_gen_soc_caps_kconfig:
extends: .host_test_template
script:
- cd ${IDF_PATH}/tools/gen_soc_caps_kconfig/
- ./test/test_gen_soc_caps_kconfig.py
test_pytest_qemu:
extends:
- .host_test_template
- .before_script_build_jobs
image: $QEMU_IMAGE
script:
- run_cmd python tools/ci/ci_build_apps.py . -vv
--target esp32
--pytest-apps
-m qemu
- pytest --target esp32 -m qemu --embedded-services idf,qemu

View File

@@ -1,69 +0,0 @@
# generate dynamic integration pipeline by `idf-integration-ci` project
.patterns-integration_test: &patterns-integration_test
# add all possible patterns to make sure `gen_integration_pipeline` can be triggered.
# fine-grained control will be done while generating the pipeline
# find `patterns` in `idf-integration-ci` project
- "components/**/*"
- "tools/**/*"
- ".gitlab-ci.yml"
- ".gitlab/ci/common.yml"
- ".gitlab/ci/integration_test.yml"
- ".gitmodules"
- "CMakeLists.txt"
- "install.sh"
- "export.sh"
- "Kconfig"
- "sdkconfig.rename"
# Simplify the rules
.integration_test_rules:
rules:
- if: '$CI_PIPELINE_SOURCE != "merge_request_event"'
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
changes: *patterns-integration_test
# support trigger by ci labels
- if: '$CI_MERGE_REQUEST_LABELS =~ /^(?:[^,\n\r]+,)*target_test(?:,[^,\n\r]+)*$/i'
- if: '$CI_MERGE_REQUEST_LABELS =~ /^(?:[^,\n\r]+,)*integration_test(?:,[^,\n\r]+)*$/i'
- if: '$CI_MERGE_REQUEST_LABELS =~ /^(?:[^,\n\r]+,)*build(?:,[^,\n\r]+)*$/i'
gen_integration_pipeline:
extends:
- .before_script_minimal
- .integration_test_rules
image: ${CI_INTEGRATION_ASSIGN_ENV}
stage: assign_test
cache: []
tags:
- assign_test
variables:
SUBMODULES_TO_FETCH: "none"
GIT_LFS_SKIP_SMUDGE: 1
needs:
- job: fast_template_app
artifacts: false
optional: true
artifacts:
paths:
- idf-integration-ci/child_pipeline/
expire_in: 2 weeks
script:
- add_gitlab_ssh_keys
- retry_failed git clone ${CI_GEN_INTEGRATION_PIPELINE_REPO} idf-integration-ci
- python $CHECKOUT_REF_SCRIPT idf-integration-ci idf-integration-ci
- cd idf-integration-ci
- python tools/generate_child_pipeline.py -o child_pipeline/
child_integration_test_pipeline:
extends:
- .integration_test_rules
stage: assign_test
needs:
- gen_integration_pipeline
trigger:
include:
- artifact: idf-integration-ci/child_pipeline/pipeline.yml
job: gen_integration_pipeline
forward:
yaml_variables: false
strategy: depend

View File

@@ -1,171 +0,0 @@
.pre_check_template:
stage: pre_check
image: $ESP_ENV_IMAGE
tags:
- host_test
dependencies: []
.check_pre_commit_template:
extends:
- .pre_check_template
- .before_script_minimal
image: $PRE_COMMIT_IMAGE
check_pre_commit_master_release:
extends:
- .check_pre_commit_template
- .rules:protected
script:
- git diff-tree --no-commit-id --name-only -r $PIPELINE_COMMIT_SHA | xargs pre-commit run --files
- pre-commit run --hook-stage post-commit validate-sbom-manifest
check_pre_commit_MR:
extends:
- .check_pre_commit_template
- .rules:mr
script:
- python ${CI_PROJECT_DIR}/tools/ci/ci_get_mr_info.py files ${CI_MERGE_REQUEST_SOURCE_BRANCH_NAME} | xargs pre-commit run --files
- pre-commit run --hook-stage post-commit validate-sbom-manifest
check_version:
# Don't run this for feature/bugfix branches, so that it is possible to modify
# esp_idf_version.h in a branch before tagging the next version.
extends:
- .pre_check_template
- .rules:protected
script:
- export IDF_PATH=$PWD
- tools/ci/check_idf_version.sh
check_rom_api_header:
extends: .pre_check_template
script:
- tools/ci/check_examples_rom_header.sh
- tools/ci/check_api_violation.sh
test_check_kconfigs:
extends: .pre_check_template
artifacts:
when: on_failure
paths:
- components/*/Kconfig*.new
- examples/*/*/*/Kconfig*.new
- examples/*/*/*/*/Kconfig*.new
- tools/*/Kconfig*.new
- tools/*/*/Kconfig*.new
- tools/*/*/*/Kconfig*.new
expire_in: 1 week
script:
- python ${IDF_PATH}/tools/ci/test_check_kconfigs.py
check_blobs:
extends: .pre_check_template
tags:
- build
variables:
SUBMODULES_TO_FETCH: "components/esp_wifi/lib;components/esp_phy/lib"
script:
# Check if Wi-Fi library header files match between IDF and the version used when compiling the libraries
- IDF_TARGET=esp32 $IDF_PATH/components/esp_wifi/test_md5/test_md5.sh
- IDF_TARGET=esp32s2 $IDF_PATH/components/esp_wifi/test_md5/test_md5.sh
- IDF_TARGET=esp32s3 $IDF_PATH/components/esp_wifi/test_md5/test_md5.sh
- IDF_TARGET=esp32c3 $IDF_PATH/components/esp_wifi/test_md5/test_md5.sh
- IDF_TARGET=esp32c2 $IDF_PATH/components/esp_wifi/test_md5/test_md5.sh
# Check if Wi-Fi, PHY, BT blobs contain references to specific symbols
- bash $IDF_PATH/tools/ci/check_blobs.sh
check_fuzzer_compilation:
extends: .pre_check_template
image: $AFL_FUZZER_TEST_IMAGE
script:
- cd ${IDF_PATH}/components/lwip/test_afl_host
- make MODE=dhcp_server
- make MODE=dhcp_client
- make MODE=dns
check_public_headers:
extends:
- .pre_check_template
- .rules:build
tags:
- build
script:
- IDF_TARGET=esp32 python tools/ci/check_public_headers.py --jobs 4 --prefix xtensa-esp32-elf-
- IDF_TARGET=esp32s2 python tools/ci/check_public_headers.py --jobs 4 --prefix xtensa-esp32s2-elf-
- IDF_TARGET=esp32s3 python tools/ci/check_public_headers.py --jobs 4 --prefix xtensa-esp32s3-elf-
- IDF_TARGET=esp32c3 python tools/ci/check_public_headers.py --jobs 4 --prefix riscv32-esp-elf-
- IDF_TARGET=esp32c2 python tools/ci/check_public_headers.py --jobs 4 --prefix riscv32-esp-elf-
check_chip_support_components:
extends:
- .pre_check_template
- .rules:build
tags:
- build
artifacts:
when: on_failure
paths:
- esp_hw_support_part.h
- bootloader_support_part.h
expire_in: 1 week
script:
- python tools/ci/check_soc_headers_leak.py
- find ${IDF_PATH}/components/soc/*/include/soc/ -name "*_struct.h" -print0 | xargs -0 -n1 ./tools/ci/check_soc_struct_headers.py
- tools/ci/check_esp_memory_utils_headers.sh
check_esp_err_to_name:
extends:
- .pre_check_template
- .rules:build
tags:
- build
artifacts:
when: on_failure
paths:
- components/esp_common/esp_err_to_name.c
expire_in: 1 week
script:
- cd ${IDF_PATH}/tools/
- ./gen_esp_err_to_name.py
- git diff --exit-code -- ../components/esp_common/src/esp_err_to_name.c || { echo 'Differences found. Please run gen_esp_err_to_name.py and commit the changes.'; exit 1; }
check_esp_system:
extends:
- .pre_check_template
- .rules:build
tags:
- build
script:
- python components/esp_system/check_system_init_priorities.py
# For release tag pipelines only, make sure the tag was created with 'git tag -a' so it will update
# the version returned by 'git describe'
check_version_tag:
extends:
- .pre_check_template
- .rules:tag:release
script:
- (git cat-file -t $CI_COMMIT_REF_NAME | grep tag) || (echo "ESP-IDF versions must be annotated tags." && exit 1)
check_artifacts_expire_time:
extends: .pre_check_template
script:
# check if we have set expire time for all artifacts
- python tools/ci/check_artifacts_expire_time.py
check_commit_msg:
extends: .pre_check_template
script:
- git status
- git log -n10 --oneline ${PIPELINE_COMMIT_SHA}
# commit start with "WIP: " need to be squashed before merge
- 'git log --pretty=%s origin/master..${PIPELINE_COMMIT_SHA} -- | grep -i "^WIP:" && exit 1 || exit 0'
check_test_scripts_build_test_rules:
extends:
- .pre_check_template
- .before_script_build_jobs
script:
# required pytest related packages
- run_cmd bash install.sh --enable-pytest
- python tools/ci/check_build_test_rules.py check-test-scripts examples/ tools/test_apps components

File diff suppressed because it is too large Load Diff

View File

@@ -1,40 +0,0 @@
# pre_check stage
clang_tidy_check:
extends:
- .pre_check_template
- .rules:patterns:clang_tidy
image: ${CLANG_STATIC_ANALYSIS_IMAGE}
artifacts:
paths:
- clang_tidy_reports/
when: always
expire_in: 1 day
variables:
IDF_TOOLCHAIN: clang
script:
- run_cmd idf_clang_tidy $(cat tools/ci/clang_tidy_dirs.txt | xargs)
--output-path clang_tidy_reports
--limit-file tools/ci/static-analysis-rules.yml
--xtensa-include-dir
--run-clang-tidy-py ${RUN_CLANG_TIDY_PY}
check_pylint:
extends:
- .pre_check_template
- .rules:patterns:python-files
- .before_script_minimal
image: $SONARQUBE_SCANNER_IMAGE
artifacts:
when: always
paths:
- pylint-report.txt
expire_in: 1 week
script:
- export PYTHONPATH="$IDF_PATH/tools:$IDF_PATH/tools/ci/python_packages:$PYTHONPATH"
- |
if [ -n "$CI_MERGE_REQUEST_IID" ]; then
export files=$(python ${CI_PROJECT_DIR}/tools/ci/ci_get_mr_info.py files ${CI_MERGE_REQUEST_SOURCE_BRANCH_NAME} | grep ".py");
else
export files=$(find . -iname "*.py" -print);
fi
- pylint --rcfile=.pylintrc $files -r n --output-format=parseable > pylint-report.txt || exit 0

File diff suppressed because it is too large Load Diff

View File

@@ -1,50 +0,0 @@
# pull only for most of the use cases for cache
# only set "push" policy for the jobs under this file.
# The cache would be updated when files matched specified patterns changes.
.upload_cache_template:
stage: upload_cache
image: $ESP_ENV_IMAGE
upload-pip-cache:
extends:
- .upload_cache_template
- .before_script_minimal
- .rules:patterns:python-cache
tags:
- $GEO
- cache
cache:
key: pip-cache
paths:
- .cache/pip
policy: push
script:
- rm -rf .cache/pip # clear old packages
- bash install.sh --enable-ci --enable-pytest
parallel:
matrix:
- GEO: [ 'shiny', 'brew' ]
upload-submodules-cache:
extends:
- .upload_cache_template
- .before_script_minimal
- .rules:patterns:submodule
tags:
- $GEO
- cache
cache:
key: submodule-cache
paths:
- .cache/submodule_archives
policy: push
script:
# use the default gitlab server
- unset LOCAL_GITLAB_HTTPS_HOST
- rm -rf .cache/submodule_archives # clear old submodule archives
- add_gitlab_ssh_keys
- fetch_submodules
parallel:
matrix:
- GEO: [ 'shiny', 'brew' ]

View File

@@ -1,15 +0,0 @@
<!-- This Template states the absolute minimum for an MR.
If you want to have a more elaborate template or know why we have this structure,
please use the "Mixed Template" or consult the Wiki. -->
<!-- Add the CI labels to trigger the appropriate tests (e.g. "unit_test_esp32") --><!-- Mandatory -->
<!-- Make sure the commit message follows the Wiki about "Commit Messages" --><!-- Mandatory -->
<!-- Add description of the change here --><!-- Mandatory -->
## Related <!-- Optional -->
<!-- Related Jira issues and Github issues -->
## Release notes <!-- Mandatory -->
<!-- Either state release notes or write "No release notes" -->
<!-- ## Breaking change notes --><!-- Optional -->

View File

@@ -17,6 +17,7 @@ _This entire section can be deleted if all items are checked._
* [ ] Release note entry if this is a new public feature, or a fix for an issue introduced in the previous release.
* [ ] The commit log is clean and ready to merge.
* [ ] All relevant CI jobs have been run, i.e. jobs which cover the code changed by the MR.
* [ ] Pipeline with Python 3 has been successfully run, i.e. `@bot ...; with Python3`, if the MR adds or changes Python code.
---

81
.gitmodules vendored
View File

@@ -23,6 +23,10 @@
# This is checked by CI. Also please don't forget to update the submodule version
# if you are changing the sbom-hash. This is important for SBOM generation.
[submodule "components/esptool_py/esptool"]
path = components/esptool_py/esptool
url = ../../espressif/esptool.git
[submodule "components/bt/controller/lib_esp32"]
path = components/bt/controller/lib_esp32
url = ../../espressif/esp32-bt-lib.git
@@ -30,37 +34,56 @@
[submodule "components/bootloader/subproject/components/micro-ecc/micro-ecc"]
path = components/bootloader/subproject/components/micro-ecc/micro-ecc
url = ../../kmackay/micro-ecc.git
sbom-version = 1.1
sbom-version = 1.0
sbom-cpe = cpe:2.3:a:micro-ecc_project:micro-ecc:{}:*:*:*:*:*:*:*
sbom-supplier = Person: Ken MacKay
sbom-url = https://github.com/kmackay/micro-ecc
sbom-description = A small and fast ECDH and ECDSA implementation for 8-bit, 32-bit, and 64-bit processors
sbom-hash = 24c60e243580c7868f4334a1ba3123481fe1aa48
sbom-hash = d037ec89546fad14b5c4d5456c2e23a71e554966
[submodule "components/coap/libcoap"]
path = components/coap/libcoap
url = ../../obgm/libcoap.git
[submodule "components/nghttp/nghttp2"]
path = components/nghttp/nghttp2
url = ../../nghttp2/nghttp2.git
[submodule "components/libsodium/libsodium"]
path = components/libsodium/libsodium
url = ../../jedisct1/libsodium.git
[submodule "components/spiffs/spiffs"]
path = components/spiffs/spiffs
url = ../../pellepl/spiffs.git
sbom-version = 0.2-255-g0dbb3f71c5f6
sbom-version = 0.2-221-gf5e26c4e9331
sbom-supplier = Person: Peter Andersson
sbom-url = https://github.com/pellepl/spiffs
sbom-description = Wear-leveled SPI flash file system for embedded devices
sbom-hash = 0dbb3f71c5f6fae3747a9d935372773762baf852
sbom-hash = f5e26c4e933189593a71c6b82cda381a7b21e41c
[submodule "components/json/cJSON"]
path = components/json/cJSON
url = ../../DaveGamble/cJSON.git
sbom-version = 1.7.18
sbom-version = 1.7.15
sbom-cpe = cpe:2.3:a:cjson_project:cjson:{}:*:*:*:*:*:*:*
sbom-supplier = Person: Dave Gamble
sbom-url = https://github.com/DaveGamble/cJSON
sbom-description = Ultralightweight JSON parser in ANSI C
sbom-hash = acc76239bee01d8e9c858ae2cab296704e52d916
sbom-cve-exclude-list = CVE-2024-31755 Resolved in v1.7.18
sbom-hash = d348621ca93571343a56862df7de4ff3bc9b5667
[submodule "components/mbedtls/mbedtls"]
path = components/mbedtls/mbedtls
url = ../../espressif/mbedtls.git
[submodule "components/asio/asio"]
path = components/asio/asio
url = ../../espressif/asio.git
[submodule "components/expat/expat"]
path = components/expat/expat
url = ../../libexpat/libexpat.git
[submodule "components/lwip/lwip"]
path = components/lwip/lwip
url = ../../espressif/esp-lwip.git
@@ -88,14 +111,30 @@
sbom-description = Simple Unit Testing for C
sbom-hash = 7d2bf62b7e6afaf38153041a9d53c21aeeca9a25
[submodule "examples/build_system/cmake/import_lib/main/lib/tinyxml2"]
path = examples/build_system/cmake/import_lib/main/lib/tinyxml2
url = ../../leethomason/tinyxml2.git
[submodule "components/bt/host/nimble/nimble"]
path = components/bt/host/nimble/nimble
url = ../../espressif/esp-nimble.git
[submodule "components/cbor/tinycbor"]
path = components/cbor/tinycbor
url = ../../intel/tinycbor.git
[submodule "components/esp_wifi/lib"]
path = components/esp_wifi/lib
url = ../../espressif/esp32-wifi-lib.git
[submodule "components/tinyusb/tinyusb"]
path = components/tinyusb/tinyusb
url = ../../espressif/tinyusb.git
[submodule "examples/peripherals/secure_element/atecc608_ecdsa/components/esp-cryptoauthlib"]
path = examples/peripherals/secure_element/atecc608_ecdsa/components/esp-cryptoauthlib
url = ../../espressif/esp-cryptoauthlib.git
[submodule "components/cmock/CMock"]
path = components/cmock/CMock
url = ../../ThrowTheSwitch/CMock.git
@@ -105,34 +144,6 @@
sbom-description = CMock - Mock/stub generator for C
sbom-hash = eeecc49ce8af123cf8ad40efdb9673e37b56230f
[submodule "components/openthread/openthread"]
path = components/openthread/openthread
url = ../../espressif/openthread.git
[submodule "components/bt/controller/lib_esp32c3_family"]
path = components/bt/controller/lib_esp32c3_family
url = ../../espressif/esp32c3-bt-lib.git
[submodule "components/esp_phy/lib"]
path = components/esp_phy/lib
url = ../../espressif/esp-phy-lib.git
[submodule "components/openthread/lib"]
path = components/openthread/lib
url = ../../espressif/esp-thread-lib.git
[submodule "components/ieee802154/lib"]
path = components/ieee802154/lib
url = ../../espressif/esp-ieee802154-lib.git
[submodule "components/bt/controller/lib_esp32h2/esp32h2-bt-lib"]
path = components/bt/controller/lib_esp32h2/esp32h2-bt-lib
url = ../../espressif/esp32h2-bt-lib.git
[submodule "components/bt/controller/lib_esp32c2/esp32c2-bt-lib"]
path = components/bt/controller/lib_esp32c2/esp32c2-bt-lib
url = ../../espressif/esp32c2-bt-lib.git
[submodule "components/heap/tlsf"]
path = components/heap/tlsf
url = ../../espressif/tlsf.git

View File

@@ -1,26 +0,0 @@
[mypy]
# Specifies the Python version used to parse and check the target program
python_version = 3.9
# Disallows defining functions without type annotations or with incomplete type annotations
# True => enforce type annotation in all function definitions
disallow_untyped_defs = True
# Shows a warning when returning a value with type Any from a function declared with a non- Any return type
warn_return_any = True
# Shows errors for missing return statements on some execution paths
warn_no_return = True
# Suppress error messages about imports that cannot be resolved
# True => ignore all import errors
ignore_missing_imports = True
# Disallows defining functions with incomplete type annotations
disallow_incomplete_defs = False
# Directs what to do with imports when the imported module is found as a .py file and not part of the files,
# modules and packages provided on the command line.
# SKIP -> mypy checks only single file, not included imports
follow_imports = skip

View File

@@ -1,11 +1,9 @@
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
default_stages: [commit]
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0
rev: v3.4.0
hooks:
- id: trailing-whitespace
# note: whitespace exclusions use multiline regex, see https://pre-commit.com/#regular-expressions
@@ -14,18 +12,13 @@ repos:
# 2 - any file matching *test*/*expected* (for host tests, if possible use this naming pattern always)
# 3 - any directory named 'testdata'
# 4 - IDF monitor test data
# 5 - protobuf auto-generated files
exclude: &whitespace_excludes |
(?x)^(
.+\.(md|rst|map|bin)|
.+test.*\/.*expected.*|
.+\/testdata\/.+|
.+test_idf_monitor\/tests\/.+|
.*_pb2.py|
.*.pb-c.h|
.*.pb-c.c|
.*.yuv
)$
(?x)^(
.+\.(md|rst|map|bin)|
.+test.*\/.*expected.*|
.+\/testdata\/.+|
.+test_idf_monitor\/tests\/.+
)$
- id: end-of-file-fixer
exclude: *whitespace_excludes
- id: check-executables-have-shebangs
@@ -33,20 +26,15 @@ repos:
args: ['-f=lf']
- id: double-quote-string-fixer
- repo: https://github.com/PyCQA/flake8
rev: 5.0.4
rev: 3.8.4
hooks:
- id: flake8
args: ['--config=.flake8', '--tee', '--benchmark']
- repo: https://github.com/asottile/reorder-python-imports
rev: v3.12.0
- repo: https://github.com/pycqa/isort
rev: 5.11.5 # python 3.7 compatible
hooks:
- id: reorder-python-imports
name: Reorder Python imports
args: [--py37-plus]
exclude: >
(?x)^(
.*_pb2.py
)$
- id: isort
name: isort (python)
- repo: local
hooks:
- id: check-executables
@@ -83,90 +71,10 @@ repos:
name: Validate Codeowner File
entry: tools/ci/check_codeowners.py ci-check
language: python
always_run: true
files: '\.gitlab/CODEOWNERS'
pass_filenames: false
- id: check-rules-yml
name: Check rules.yml all rules have at lease one job applied, all rules needed exist
entry: tools/ci/check_rules_yml.py
language: python
files: '\.gitlab/ci/.+\.yml|\.gitlab-ci.yml'
pass_filenames: false
additional_dependencies:
- PyYAML == 5.3.1
- id: check-generated-rules
name: Check rules are generated (based on .gitlab/ci/dependencies/dependencies.yml)
entry: .gitlab/ci/dependencies/generate_rules.py
language: python
files: '\.gitlab/ci/dependencies/.+|\.gitlab/ci/rules\.yml'
pass_filenames: false
additional_dependencies:
- PyYAML == 5.3.1
- id: mypy-check
name: Check type annotations in python files
entry: tools/ci/check_type_comments.py
additional_dependencies:
- 'mypy==0.940'
- 'mypy-extensions==0.4.3'
- 'types-setuptools==57.4.14'
- 'types-PyYAML==0.1.9'
exclude: >
(?x)^(
.*_pb2.py
)$
language: python
types: [python]
- id: check-requirement-files
name: Check requirement files
entry: tools/ci/check_requirement_files.py
additional_dependencies:
- 'jsonschema'
language: python
files: 'tools/requirements.+|tools/requirements/.+'
pass_filenames: false
- id: check-tools-files-patterns
name: Check tools dir files patterns
entry: tools/ci/check_tools_files_patterns.py
language: python
files: '^tools/.+'
additional_dependencies:
- PyYAML == 5.3.1
pass_filenames: false
- id: check-generated-soc-caps-kconfig
name: Check soc caps kconfig files are generated (based on components/soc/IDF_TARGET/include/soc/soc_caps.h)
entry: tools/gen_soc_caps_kconfig/gen_soc_caps_kconfig.py -d 'components/soc/*/include/soc/' 'components/esp_rom/*/'
language: python
files: 'components/soc/.+/include/soc/.+_caps\.h|components/esp_rom/.+/.+_caps\.h|kconfig\.soc_caps.in'
pass_filenames: false
additional_dependencies:
- pyparsing
- id: check-all-apps-readmes
name: Check if all apps readme files match given .build-test-rules.yml files. Modify the supported target tables
entry: tools/ci/check_build_test_rules.py check-readmes
language: python
require_serial: true
files: 'tools/test_apps/.+|examples/.+|components/.+'
additional_dependencies:
- idf_build_apps~=1.0
- id: sort-build-test-rules-ymls
name: sort .build-test-rules.yml files
entry: tools/ci/check_build_test_rules.py sort-yaml
language: python
files: '\.build-test-rules\.yml'
additional_dependencies:
- ruamel.yaml
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.0.1
rev: v3.4.0
hooks:
- id: file-contents-sorter
files: 'tools\/ci\/(executable-list\.txt|mypy_ignore_list\.txt|check_copyright_ignore\.txt)'
- repo: https://github.com/espressif/check-copyright/
rev: v1.0.3
hooks:
- id: check-copyright
args: ['--ignore', 'tools/ci/check_copyright_ignore.txt', '--config', 'tools/ci/check_copyright_config.yaml']
- repo: https://github.com/espressif/esp-idf-sbom.git
rev: v0.13.0
hooks:
- id: validate-sbom-manifest
stages: [post-commit]
files: 'tools/ci/executable-list.txt'

View File

@@ -147,12 +147,6 @@ disable=print-statement,
too-few-public-methods,
too-many-locals,
bad-super-call, # since we still haven't drop python2 support
too-many-nested-blocks,
too-many-branches,
too-many-statements,
ungrouped-imports, # since we have isort in pre-commit
no-name-in-module, # since we have flake8 to check this
too-many-instance-attributes,
# Enable the message, report, category or checker with the given id(s). You can
# either give multiple identifier separated by comma (,) or put this option
@@ -250,7 +244,7 @@ missing-member-hint-distance=1
missing-member-max-choices=1
# List of decorators that change the signature of a decorated function.
signature-mutators=ttfw_idf.idf_example_test,ttfw_idf.idf_unit_test,ttfw_idf.idf_custom_test,ttfw_idf.idf_component_unit_test
signature-mutators=
[SPELLING]

View File

@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.16)
cmake_minimum_required(VERSION 3.5)
project(esp-idf C CXX ASM)
if(CMAKE_CURRENT_LIST_DIR STREQUAL CMAKE_SOURCE_DIR)
@@ -7,8 +7,11 @@ if(CMAKE_CURRENT_LIST_DIR STREQUAL CMAKE_SOURCE_DIR)
"again.")
endif()
# Variables compile_options, c_compile_options, cxx_compile_options, compile_definitions, link_options shall
# not be unset as they may already contain flags, set by toolchain-TARGET.cmake files.
unset(compile_options)
unset(c_compile_options)
unset(cxx_compile_options)
unset(compile_definitions)
unset(link_options)
# Add the following build specifications here, since these seem to be dependent
# on config values on the root Kconfig.
@@ -17,9 +20,7 @@ if(NOT BOOTLOADER_BUILD)
if(CONFIG_COMPILER_OPTIMIZATION_SIZE)
list(APPEND compile_options "-Os")
if(CMAKE_C_COMPILER_ID MATCHES "GNU")
list(APPEND compile_options "-freorder-blocks")
endif()
list(APPEND compile_options "-freorder-blocks")
elseif(CONFIG_COMPILER_OPTIMIZATION_DEFAULT)
list(APPEND compile_options "-Og")
elseif(CONFIG_COMPILER_OPTIMIZATION_NONE)
@@ -32,9 +33,7 @@ else() # BOOTLOADER_BUILD
if(CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE)
list(APPEND compile_options "-Os")
if(CMAKE_C_COMPILER_ID MATCHES "GNU")
list(APPEND compile_options "-freorder-blocks")
endif()
list(APPEND compile_options "-freorder-blocks")
elseif(CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG)
list(APPEND compile_options "-Og")
elseif(CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_NONE)
@@ -58,55 +57,23 @@ else()
list(APPEND link_options "-fno-rtti") # used to invoke correct multilib variant (no-rtti) during linking
endif()
if(CONFIG_COMPILER_SAVE_RESTORE_LIBCALLS)
list(APPEND compile_options "-msave-restore")
endif()
if(CONFIG_COMPILER_DISABLE_GCC8_WARNINGS)
list(APPEND compile_options "-Wno-parentheses"
"-Wno-sizeof-pointer-memaccess"
"-Wno-clobbered")
if(CMAKE_C_COMPILER_ID MATCHES "GNU")
list(APPEND c_compile_options "-Wno-old-style-declaration")
list(APPEND compile_options "-Wno-format-overflow"
"-Wno-stringop-truncation"
"-Wno-misleading-indentation"
"-Wno-cast-function-type"
"-Wno-implicit-fallthrough"
"-Wno-unused-const-variable"
"-Wno-switch-unreachable"
"-Wno-format-truncation"
"-Wno-memset-elt-size"
"-Wno-int-in-bool-context")
endif()
# Clang finds some warnings in IDF code which GCC doesn't.
# All these warnings should be fixed before Clang is presented
# as a toolchain choice for users.
if(CMAKE_C_COMPILER_ID MATCHES "Clang")
# Clang checks Doxygen comments for being in sync with function prototype.
# There are some inconsistencies, especially in ROM headers.
list(APPEND compile_options "-Wno-documentation")
# GCC allows repeated typedefs when the source and target types are the same.
# Clang doesn't allow this. This occurs in many components due to forward
# declarations.
list(APPEND compile_options "-Wno-typedef-redefinition")
# This issue is seemingly related to newlib's char type functions.
# Fix is not clear yet.
list(APPEND compile_options "-Wno-char-subscripts")
# Clang seems to notice format string issues which GCC doesn't.
list(APPEND compile_options "-Wno-format-security")
# Logic bug in essl component
list(APPEND compile_options "-Wno-tautological-overlap-compare")
# Some pointer checks in mDNS component check addresses which can't be NULL
list(APPEND compile_options "-Wno-tautological-pointer-compare")
# Similar to the above, in tcp_transport
list(APPEND compile_options "-Wno-pointer-bool-conversion")
# mbedTLS md5.c triggers this warning in md5_test_buf (false positive)
list(APPEND compile_options "-Wno-string-concatenation")
# multiple cases of implict convertions between unrelated enum types
list(APPEND compile_options "-Wno-enum-conversion")
# When IRAM_ATTR is specified both in function declaration and definition,
# it produces different section names, since section names include __COUNTER__.
# Occurs in multiple places.
list(APPEND compile_options "-Wno-section")
# Multiple cases of attributes unknown to clang, for example
# __attribute__((optimize("-O3")))
list(APPEND compile_options "-Wno-unknown-attributes")
# Disable Clang warnings for atomic operations with access size
# more then 4 bytes
list(APPEND compile_options "-Wno-atomic-alignment")
# Clang also produces many -Wunused-function warnings which GCC doesn't.
# However these aren't treated as errors.
endif()
# More warnings may exist in unit tests and example projects.
if(CONFIG_COMPILER_WARN_WRITE_STRINGS)
list(APPEND compile_options "-Wwrite-strings")
endif()
@@ -130,41 +97,7 @@ endif()
if(NOT ${CMAKE_C_COMPILER_VERSION} VERSION_LESS 8.0.0)
if(CONFIG_COMPILER_HIDE_PATHS_MACROS)
list(APPEND compile_options "-fmacro-prefix-map=${CMAKE_SOURCE_DIR}=.")
list(APPEND compile_options "-fmacro-prefix-map=${IDF_PATH}=/IDF")
endif()
if(CONFIG_APP_REPRODUCIBLE_BUILD)
idf_build_set_property(DEBUG_PREFIX_MAP_GDBINIT "${BUILD_DIR}/prefix_map_gdbinit")
list(APPEND compile_options "-fdebug-prefix-map=${IDF_PATH}=/IDF")
list(APPEND compile_options "-fdebug-prefix-map=${PROJECT_DIR}=/IDF_PROJECT")
list(APPEND compile_options "-fdebug-prefix-map=${BUILD_DIR}=/IDF_BUILD")
# component dirs
idf_build_get_property(python PYTHON)
idf_build_get_property(idf_path IDF_PATH)
idf_build_get_property(component_dirs BUILD_COMPONENT_DIRS)
execute_process(
COMMAND ${python}
"${idf_path}/tools/generate_debug_prefix_map.py"
"${BUILD_DIR}"
"${component_dirs}"
OUTPUT_VARIABLE result
RESULT_VARIABLE ret
)
if(NOT ret EQUAL 0)
message(FATAL_ERROR "This is a bug. Please report to https://github.com/espressif/esp-idf/issues")
endif()
spaces2list(result)
list(LENGTH component_dirs length)
math(EXPR max_index "${length} - 1")
foreach(index RANGE ${max_index})
list(GET component_dirs ${index} folder)
list(GET result ${index} after)
list(APPEND compile_options "-fdebug-prefix-map=${folder}=${after}")
endforeach()
list(APPEND compile_options "-fmacro-prefix-map=${IDF_PATH}=IDF")
endif()
endif()
@@ -175,81 +108,11 @@ if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
)
endif()
if(CONFIG_ESP_SYSTEM_USE_EH_FRAME)
list(APPEND compile_options "-fasynchronous-unwind-tables")
list(APPEND link_options "-Wl,--eh-frame-hdr")
endif()
list(APPEND link_options "-fno-lto")
if(CONFIG_IDF_TARGET_LINUX AND CMAKE_HOST_SYSTEM_NAME STREQUAL "Darwin")
# Not all versions of the MacOS linker support the -warn_commons flag.
# ld version 1053.12 (and above) have been tested to support it.
# Hence, we extract the version string from the linker output
# before including the flag.
# Get the ld version, capturing both stdout and stderr
execute_process(
COMMAND ${CMAKE_LINKER} -v
OUTPUT_VARIABLE LD_VERSION_OUTPUT
ERROR_VARIABLE LD_VERSION_ERROR
OUTPUT_STRIP_TRAILING_WHITESPACE
ERROR_STRIP_TRAILING_WHITESPACE
)
# Combine stdout and stderr
set(LD_VERSION_OUTPUT "${LD_VERSION_OUTPUT}\n${LD_VERSION_ERROR}")
# Extract the version string
string(REGEX MATCH "PROJECT:(ld|dyld)-([0-9]+)\\.([0-9]+)" LD_VERSION_MATCH "${LD_VERSION_OUTPUT}")
set(LD_VERSION_MAJOR_MINOR "${CMAKE_MATCH_2}.${CMAKE_MATCH_3}")
message(STATUS "Linker Version: ${LD_VERSION_MAJOR_MINOR}")
# Compare the version with 1053.12
if(LD_VERSION_MAJOR_MINOR VERSION_GREATER_EQUAL "1053.12")
list(APPEND link_options "-Wl,-warn_commons")
endif()
list(APPEND link_options "-Wl,-dead_strip")
else()
list(APPEND link_options "-Wl,--gc-sections")
list(APPEND link_options "-Wl,--warn-common")
endif()
# SMP FreeRTOS user provided minimal idle hook. This allows the user to provide
# their own copy of vApplicationMinimalIdleHook()
if(CONFIG_FREERTOS_USE_MINIMAL_IDLE_HOOK)
list(APPEND link_options "-Wl,--wrap=vApplicationMinimalIdleHook")
endif()
# Placing jump tables in flash would cause issues with code that required
# to be placed in IRAM
list(APPEND compile_options "-fno-jump-tables")
if(CMAKE_C_COMPILER_ID MATCHES "GNU")
# This flag is GCC-specific.
# Not clear yet if some other flag should be used for Clang.
list(APPEND compile_options "-fno-tree-switch-conversion")
endif()
if(CMAKE_C_COMPILER_ID MATCHES "LLVM")
list(APPEND compile_options "-fno-use-cxa-atexit")
endif()
# For the transition period from 32-bit time_t to 64-bit time_t,
# auto-detect the size of this type and set corresponding variable.
include(CheckTypeSize)
check_type_size("time_t" TIME_T_SIZE)
if(TIME_T_SIZE)
idf_build_set_property(TIME_T_SIZE ${TIME_T_SIZE})
else()
message(FATAL_ERROR "Failed to determine sizeof(time_t)")
endif()
idf_build_set_property(COMPILE_OPTIONS "${compile_options}" APPEND)
idf_build_set_property(C_COMPILE_OPTIONS "${c_compile_options}" APPEND)
idf_build_set_property(CXX_COMPILE_OPTIONS "${cxx_compile_options}" APPEND)
idf_build_set_property(ASM_COMPILE_OPTIONS "${asm_compile_options}" APPEND)
idf_build_set_property(COMPILE_DEFINITIONS "${compile_definitions}" APPEND)
idf_build_set_property(LINK_OPTIONS "${link_options}" APPEND)

View File

@@ -1,6 +0,0 @@
# Contributing to ESP-IDF
Contributions to ESP-IDF - fixing bugs, adding features, adding documentation - are welcome! We accept contributions via Github Pull Requests.
Please see the [Contributions Guide](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/contribute/index.html) for more information.

62
CONTRIBUTING.rst Normal file
View File

@@ -0,0 +1,62 @@
Contributions Guide
===================
We welcome contributions to the esp-idf project!
How to Contribute
-----------------
Contributions to esp-idf - fixing bugs, adding features, adding documentation - are welcome. We accept contributions via `Github Pull Requests <https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests>`_.
Before Contributing
-------------------
Before sending us a Pull Request, please consider this list of points:
* Is the contribution entirely your own work, or already licensed under an Apache License 2.0 compatible Open Source License? If not then we unfortunately cannot accept it.
* Does any new code conform to the esp-idf :doc:`Style Guide <style-guide>`?
* Have you installed the :doc:`pre-commit hook <install-pre-commit-hook>` for esp-idf project?
* Does the code documentation follow requirements in :doc:`documenting-code`?
* Is the code adequately commented for people to understand how it is structured?
* Is there documentation or examples that go with code contributions? There are additional suggestions for writing good examples in :idf:`examples` readme.
* Are comments and documentation written in clear English, with no spelling or grammar errors?
* Example contributions are also welcome. Please check the :doc:`creating-examples` guide for these.
* If the contribution contains multiple commits, are they grouped together into logical changes (one major change per pull request)? Are any commits with names like "fixed typo" `squashed into previous commits <https://eli.thegreenplace.net/2014/02/19/squashing-github-pull-requests-into-a-single-commit/>`_?
* If you're unsure about any of these points, please open the Pull Request anyhow and then ask us for feedback.
Pull Request Process
--------------------
After you open the Pull Request, there will probably be some discussion in the comments field of the request itself.
Once the Pull Request is ready to merge, it will first be merged into our internal git system for in-house automated testing.
If this process passes, it will be merged onto the public github repository.
Legal Part
----------
Before a contribution can be accepted, you will need to sign our :doc:`contributor-agreement`. You will be prompted for this automatically as part of the Pull Request process.
Related Documents
-----------------
.. toctree::
:maxdepth: 1
style-guide
install-pre-commit-hook
documenting-code
add-ons-reference
creating-examples
../api-reference/template
contributor-agreement

268
Kconfig
View File

@@ -1,24 +1,18 @@
#
# Please run the following command for opening a page with more information about this configuration file:
# idf.py docs -sp api-reference/kconfig.html
# For a description of the syntax of this configuration file,
# see kconfig/kconfig-language.txt.
#
mainmenu "Espressif IoT Development Framework Configuration"
orsource "./components/soc/$IDF_TARGET/include/soc/Kconfig.soc_caps.in"
config IDF_CMAKE
bool
default "y"
option env="IDF_CMAKE"
config IDF_ENV_FPGA
# This option is for internal use only
bool
option env="IDF_ENV_FPGA"
config IDF_CI_BUILD
bool
default y if "$(IDF_CI_BUILD)" = "y" || "$(IDF_CI_BUILD)" = 1
config IDF_TARGET_ARCH_RISCV
bool
default "n"
@@ -27,11 +21,6 @@ mainmenu "Espressif IoT Development Framework Configuration"
bool
default "n"
config IDF_TARGET_ARCH
string
default "riscv" if IDF_TARGET_ARCH_RISCV
default "xtensa" if IDF_TARGET_ARCH_XTENSA
config IDF_TARGET
# This option records the IDF target when sdkconfig is generated the first time.
# It is not updated if environment variable $IDF_TARGET changes later, and
@@ -40,10 +29,6 @@ mainmenu "Espressif IoT Development Framework Configuration"
string
default "$IDF_TARGET"
config IDF_TARGET_LINUX
bool
default "y" if IDF_TARGET="linux"
config IDF_TARGET_ESP32
bool
default "y" if IDF_TARGET="esp32"
@@ -60,55 +45,85 @@ mainmenu "Espressif IoT Development Framework Configuration"
default "y" if IDF_TARGET="esp32s3"
select IDF_TARGET_ARCH_XTENSA
choice IDF_TARGET_ESP32S3_BETA_VERSION
prompt "ESP32-S3 beta version"
depends on IDF_TARGET_ESP32S3
default IDF_TARGET_ESP32S3_BETA_VERSION_2
help
Currently ESP32-S3 has several beta versions for internal use only.
Select the one that matches your chip model.
config IDF_TARGET_ESP32S3_BETA_VERSION_2
bool
prompt "ESP32-S3 beta2"
endchoice
config IDF_TARGET_ESP32C3
bool
default "y" if IDF_TARGET="esp32c3"
select FREERTOS_UNICORE
select IDF_TARGET_ARCH_RISCV
config IDF_TARGET_ESP32H2
bool
default "y" if IDF_TARGET="esp32h2"
select FREERTOS_UNICORE
select IDF_TARGET_ARCH_RISCV
choice IDF_TARGET_ESP32H2_BETA_VERSION
prompt "ESP32-H2 beta version"
depends on IDF_TARGET_ESP32H2
default IDF_TARGET_ESP32H2_BETA_VERSION_2
help
Currently ESP32-H2 has several beta versions for internal use only.
Select the one that matches your chip model.
config IDF_TARGET_ESP32H2_BETA_VERSION_1
bool
prompt "ESP32-H2 beta1"
config IDF_TARGET_ESP32H2_BETA_VERSION_2
bool
prompt "ESP32-H2 beta2"
endchoice
config IDF_TARGET_ESP32C2
bool
default "y" if IDF_TARGET="esp32c2"
select FREERTOS_UNICORE
select IDF_TARGET_ARCH_RISCV
config IDF_TARGET_LINUX
bool
default "y" if IDF_TARGET="linux"
config IDF_FIRMWARE_CHIP_ID
hex
default 0x0000 if IDF_TARGET_ESP32
default 0x0002 if IDF_TARGET_ESP32S2
default 0x0004 if IDF_TARGET_ESP32S3
default 0x0005 if IDF_TARGET_ESP32C3
default 0x0009 if IDF_TARGET_ESP32S3
default 0x000C if IDF_TARGET_ESP32C2
default 0x000A if IDF_TARGET_ESP32H2_BETA_VERSION_1
default 0x000E if IDF_TARGET_ESP32H2_BETA_VERSION_2 # ESP32H2-TODO: IDF-3475
default 0xFFFF
menu "SDK tool configuration"
config SDK_TOOLPREFIX
string "Compiler toolchain path/prefix"
default "xtensa-esp32-elf-" if IDF_TARGET_ESP32
default "xtensa-esp32s2-elf-" if IDF_TARGET_ESP32S2
default "xtensa-esp32s3-elf-" if IDF_TARGET_ESP32S3
default "riscv32-esp-elf-" if IDF_TARGET_ESP32C3
help
The prefix/path that is used to call the toolchain. The default setting assumes
a crosstool-ng gcc setup that is in your PATH.
config SDK_PYTHON
string "Python interpreter"
depends on !IDF_CMAKE
default "python"
help
The executable name/path that is used to run python.
(Note: This option is used with the legacy GNU Make build system only.)
config SDK_MAKE_WARN_UNDEFINED_VARIABLES
bool "'make' warns on undefined variables"
depends on !IDF_CMAKE
default "y"
help
Adds --warn-undefined-variables to MAKEFLAGS. This causes make to
print a warning any time an undefined variable is referenced.
This option helps find places where a variable reference is misspelled
or otherwise missing, but it can be unwanted if you have Makefiles which
depend on undefined variables expanding to an empty string.
(Note: this option is used with the legacy GNU Make build system only.)
config SDK_TOOLCHAIN_SUPPORTS_TIME_WIDE_64_BITS
bool "Toolchain supports time_t wide 64-bits"
default n
help
Enable this option in case you have a custom toolchain which supports time_t wide 64-bits.
This option checks time_t is 64-bits and disables ROM time functions
to use the time functions from the toolchain instead.
This option allows resolving the Y2K38 problem.
See "Setup Linux Toolchain from Scratch" to build
a custom toolchain which supports 64-bits time_t.
Note: ESP-IDF does not currently come with any pre-compiled toolchain
that supports 64-bit wide time_t.
This will change in a future major release,
but currently 64-bit time_t requires a custom built toolchain.
endmenu # SDK tool configuration
menu "Build type"
@@ -168,7 +183,6 @@ mainmenu "Espressif IoT Development Framework Configuration"
config APP_BUILD_TYPE_APP_2NDBOOT
bool
prompt "Default (binary application + 2nd stage bootloader)"
depends on !IDF_TARGET_LINUX
select APP_BUILD_GENERATE_BINARIES
select APP_BUILD_BOOTLOADER
select APP_BUILD_USE_FLASH_SECTIONS
@@ -188,63 +202,6 @@ mainmenu "Espressif IoT Development Framework Configuration"
config APP_BUILD_USE_FLASH_SECTIONS
bool # Whether to place code/data into memory-mapped flash sections
config APP_REPRODUCIBLE_BUILD
bool "Enable reproducible build"
default n
select COMPILER_HIDE_PATHS_MACROS
help
If enabled, all date, time, and path information would be eliminated. A .gdbinit file would be create
automatically. (or will be append if you have one already)
config APP_NO_BLOBS
bool "No Binary Blobs"
default n
help
If enabled, this disables the linking of binary libraries in the application build. Note
that after enabling this Wi-Fi/Bluetooth will not work.
config APP_COMPATIBLE_PRE_V2_1_BOOTLOADERS
bool "App compatible with bootloaders before ESP-IDF v2.1"
select APP_COMPATIBLE_PRE_V3_1_BOOTLOADERS
depends on IDF_TARGET_ESP32
default n
help
Bootloaders before ESP-IDF v2.1 did less initialisation of the
system clock. This setting needs to be enabled to build an app
which can be booted by these older bootloaders.
If this setting is enabled, the app can be booted by any bootloader
from IDF v1.0 up to the current version.
If this setting is disabled, the app can only be booted by bootloaders
from IDF v2.1 or newer.
Enabling this setting adds approximately 1KB to the app's IRAM usage.
config APP_COMPATIBLE_PRE_V3_1_BOOTLOADERS
bool "App compatible with bootloader and partition table before ESP-IDF v3.1"
depends on IDF_TARGET_ESP32
default n
help
Partition tables before ESP-IDF V3.1 do not contain an MD5 checksum
field, and the bootloader before ESP-IDF v3.1 cannot read a partition
table that contains an MD5 checksum field.
Enable this option only if your app needs to boot on a bootloader and/or
partition table that was generated from a version *before* ESP-IDF v3.1.
If this option and Flash Encryption are enabled at the same time, and any
data partitions in the partition table are marked Encrypted, then the
partition encrypted flag should be manually verified in the app before accessing
the partition (see CVE-2021-27926).
config APP_INIT_CLK
bool
depends on IDF_TARGET_ESP32
default y if APP_COMPATIBLE_PRE_V2_1_BOOTLOADERS
default y if APP_BUILD_TYPE_ELF_RAM
endmenu # Build type
source "$COMPONENT_KCONFIGS_PROJBUILD_SOURCE_FILE"
@@ -322,57 +279,6 @@ mainmenu "Espressif IoT Development Framework Configuration"
endchoice # assertions
choice COMPILER_FLOAT_LIB_FROM
prompt "Compiler float lib source"
default COMPILER_FLOAT_LIB_FROM_RVFPLIB if ESP_ROM_HAS_RVFPLIB
default COMPILER_FLOAT_LIB_FROM_GCCLIB
help
In the soft-fp part of libgcc, riscv version is written in C,
and handles all edge cases in IEEE754, which makes it larger
and performance is slow.
RVfplib is an optimized RISC-V library for FP arithmetic on 32-bit
integer processors, for single and double-precision FP.
RVfplib is "fast", but it has a few exceptions from IEEE 754 compliance.
config COMPILER_FLOAT_LIB_FROM_GCCLIB
bool "libgcc"
config COMPILER_FLOAT_LIB_FROM_RVFPLIB
depends on ESP_ROM_HAS_RVFPLIB
bool "librvfp"
endchoice # COMPILER_FLOAT_LIB_FROM
config COMPILER_OPTIMIZATION_ASSERTION_LEVEL
int
default 0 if COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE
default 1 if COMPILER_OPTIMIZATION_ASSERTIONS_SILENT
default 2 if COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE
config COMPILER_OPTIMIZATION_CHECKS_SILENT
bool "Disable messages in ESP_RETURN_ON_* and ESP_EXIT_ON_* macros"
default n
help
If enabled, the error messages will be discarded in following check macros:
- ESP_RETURN_ON_ERROR
- ESP_EXIT_ON_ERROR
- ESP_RETURN_ON_FALSE
- ESP_EXIT_ON_FALSE
menuconfig COMPILER_HIDE_PATHS_MACROS
bool "Replace ESP-IDF and project paths in binaries"
default y
help
When expanding the __FILE__ and __BASE_FILE__ macros, replace paths inside ESP-IDF
with paths relative to the placeholder string "IDF", and convert paths inside the
project directory to relative paths.
This allows building the project with assertions or other code that embeds file paths,
without the binary containing the exact path to the IDF or project directories.
This option passes -fmacro-prefix-map options to the GCC command line. To replace additional
paths in your binaries, modify the project CMakeLists.txt file to pass custom -fmacro-prefix-map or
-ffile-prefix-map arguments.
menuconfig COMPILER_CXX_EXCEPTIONS
bool "Enable C++ exceptions"
default n
@@ -425,7 +331,6 @@ mainmenu "Espressif IoT Development Framework Configuration"
- coverage: NORMAL < STRONG < OVERALL
The performance impact includes increasing the amount of stack memory required for each task.
config COMPILER_STACK_CHECK_MODE_NONE
bool "None"
@@ -457,17 +362,12 @@ mainmenu "Espressif IoT Development Framework Configuration"
For C++, this warns about the deprecated conversion from string
literals to ``char *``.
config COMPILER_SAVE_RESTORE_LIBCALLS
bool "Enable -msave-restore flag to reduce code size"
depends on IDF_TARGET_ARCH_RISCV
config COMPILER_DISABLE_GCC8_WARNINGS
bool "Disable new warnings introduced in GCC 6 - 8"
default "n"
help
Adds -msave-restore to C/C++ compilation flags.
When this flag is enabled, compiler will call library functions to
save/restore registers in function prologues/epilogues. This results
in lower overall code size, at the expense of slightly reduced performance.
This option can be enabled for RISC-V targets only.
Enable this option if using GCC 6 or newer, and wanting to disable warnings which don't appear with
GCC 5.
config COMPILER_DUMP_RTL_FILES
bool "Dump RTL files during compilation"
@@ -475,8 +375,28 @@ mainmenu "Espressif IoT Development Framework Configuration"
If enabled, RTL files will be produced during compilation. These files
can be used by other tools, for example to calculate call graphs.
endmenu # Compiler Options
menu "Component config"
source "$COMPONENT_KCONFIGS_SOURCE_FILE"
endmenu
menu "Compatibility options"
config LEGACY_INCLUDE_COMMON_HEADERS
bool "Include headers across components as before IDF v4.0"
default n
help
Soc, esp32, and driver components, the most common
components. Some header of these components are included
implicitly by headers of other components before IDF v4.0.
It's not required for high-level components, but still
included through long header chain everywhere.
This is harmful to the modularity. So it's changed in IDF
v4.0.
You can still include these headers in a legacy way until it
is totally deprecated by enable this option.
endmenu #Compatibility options

View File

@@ -2,32 +2,7 @@
* [中文版](./README_CN.md)
ESP-IDF is the development framework for Espressif SoCs supported on Windows, Linux and macOS.
# ESP-IDF Release Support Schedule
![Support Schedule](https://dl.espressif.com/dl/esp-idf/support-periods.svg)
- Please read [the support policy](SUPPORT_POLICY.md) and [the documentation](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/versions.html) for more information about ESP-IDF versions.
- Please see the [End-of-Life Advisories](https://www.espressif.com/en/support/documents/advisories?keys=&field_type_of_advisory_tid%5B%5D=817) for information about ESP-IDF releases with discontinued support.
# ESP-IDF Release and SoC Compatibility
The following table shows ESP-IDF support of Espressif SoCs where ![alt text][preview] and ![alt text][supported] denote preview status and support, respectively. The preview support is usually limited in time and intended for beta versions of chips. Please use an ESP-IDF release where the desired SoC is already supported.
|Chip | v4.1 | v4.2 | v4.3 | v4.4 | v5.0 | |
|:----------- |:---------------------:| :---------------------:| :---------------------:| :---------------------:| :---------------------:|:------------------------------------------------------------------------------------ |
|ESP32 |![alt text][supported] | ![alt text][supported] | ![alt text][supported] | ![alt text][supported] | ![alt text][supported] | |
|ESP32-S2 | | ![alt text][supported] | ![alt text][supported] | ![alt text][supported] | ![alt text][supported] | |
|ESP32-C3 | | | ![alt text][supported] | ![alt text][supported] | ![alt text][supported] | |
|ESP32-S3 | | | | ![alt text][supported] | ![alt text][supported] | [Announcement](https://www.espressif.com/en/news/ESP32_S3) |
|ESP32-C2 | | | | | ![alt text][supported] | [Announcement](https://blog.espressif.com/esp32-c2-and-why-it-matter-s-bcf4d7d0b2c6) |
|ESP32-H2 | | | | ![alt text][preview] | ![alt text][preview] | [Announcement](https://www.espressif.com/en/news/ESP32_H2) |
[supported]: https://img.shields.io/badge/-supported-green "supported"
[preview]: https://img.shields.io/badge/-preview-orange "preview"
Espressif SoCs released before 2016 (ESP8266 and ESP8285) are supported by [RTOS SDK](https://github.com/espressif/ESP8266_RTOS_SDK) instead.
ESP-IDF is the development framework for Espressif SoCs (released after 2016<sup>[1](#fn1)</sup>) provided for Windows, Linux and macOS.
# Developing With ESP-IDF
@@ -39,9 +14,11 @@ See https://idf.espressif.com/ for links to detailed instructions on how to set
### Non-GitHub forks
ESP-IDF uses relative locations as its submodules URLs ([.gitmodules](.gitmodules)). So they link to GitHub. If ESP-IDF is forked to a Git repository which is not on GitHub, you will need to run the script [tools/set-submodules-to-github.sh](tools/set-submodules-to-github.sh) after git clone.
The script sets absolute URLs for all submodules, allowing `git submodule update --init --recursive` to complete. If cloning ESP-IDF from GitHub, this step is not needed.
ESP-IDF uses relative locations as its submodules URLs ([.gitmodules](.gitmodules)). So they link to GitHub.
If ESP-IDF is forked to a Git repository which is not on GitHub, you will need to run the script
[tools/set-submodules-to-github.sh](tools/set-submodules-to-github.sh) after git clone.
The script sets absolute URLs for all submodules, allowing `git submodule update --init --recursive` to complete.
If cloning ESP-IDF from GitHub, this step is not needed.
## Finding a Project
@@ -109,9 +86,9 @@ After the initial flash, you may just want to build and flash just your app, not
## Erasing Flash
The `idf.py flash` target does not erase the entire flash contents. However it is sometimes useful to set the device back to a totally erased state, particularly when making partition table changes or OTA app updates. To erase the entire flash, run `idf.py erase-flash`.
The `idf.py flash` target does not erase the entire flash contents. However it is sometimes useful to set the device back to a totally erased state, particularly when making partition table changes or OTA app updates. To erase the entire flash, run `idf.py erase_flash`.
This can be combined with other targets, ie `idf.py -p PORT erase-flash flash` will erase everything and then re-flash the new app, bootloader and partition table.
This can be combined with other targets, ie `idf.py -p PORT erase_flash flash` will erase everything and then re-flash the new app, bootloader and partition table.
# Resources
@@ -122,3 +99,8 @@ This can be combined with other targets, ie `idf.py -p PORT erase-flash flash` w
* [Check the Issues section on github](https://github.com/espressif/esp-idf/issues) if you find a bug or have a feature request. Please check existing Issues before opening a new one.
* If you're interested in contributing to ESP-IDF, please check the [Contributions Guide](https://docs.espressif.com/projects/esp-idf/en/latest/contribute/index.html).
________
<a name="fn1">1</a>: ESP8266 and ESP8285 are not supported in ESP-IDF. See [RTOS SDK](https://github.com/espressif/ESP8266_RTOS_SDK) instead.

View File

@@ -2,46 +2,23 @@
* [English Version](./README.md)
ESP-IDF 是乐鑫官方推出的物联网开发框架,支持 Windows、Linux 和 macOS 操作系统。
# ESP-IDF 版本支持期限
![支持期限](https://dl.espressif.com/dl/esp-idf/support-periods.svg)
- 请参考 [ESP-IDF 支持政策](SUPPORT_POLICY_CN.md) 以及 [相关文档](https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/versions.html) 了解更多关于 ESP-IDF 版本的信息。
- 请参考 [ESP-IDF 版本停止维护 (EOL) 公告](https://www.espressif.com/zh-hans/support/documents/advisories?keys=&field_type_of_advisory_tid%5B%5D=817)。
# ESP-IDF 与乐鑫芯片
下表总结了乐鑫芯片在 ESP-IDF 各版本中的支持状态,其中 ![alt text][supported] 代表已支持,![alt text][preview] 代表目前处于预览支持状态。预览支持状态通常有时间限制,而且仅适用于测试版芯片。请确保使用与芯片相匹配的 ESP-IDF 版本。
|芯片 | v4.1 | v4.2 | v4.3 | v4.4 | v5.0 | |
|:----------- |:---------------------:| :---------------------:| :---------------------:| :---------------------:| :---------------------:|:------------------------------------------------------------------------------------ |
|ESP32 |![alt text][supported] | ![alt text][supported] | ![alt text][supported] | ![alt text][supported] | ![alt text][supported] | |
|ESP32-S2 | | ![alt text][supported] | ![alt text][supported] | ![alt text][supported] | ![alt text][supported] | |
|ESP32-C3 | | | ![alt text][supported] | ![alt text][supported] | ![alt text][supported] | |
|ESP32-S3 | | | | ![alt text][supported] | ![alt text][supported] | [芯片发布公告](https://www.espressif.com/en/news/ESP32_S3) |
|ESP32-C2 | | | | | ![alt text][supported] | [芯片发布公告](https://blog.espressif.com/esp32-c2-and-why-it-matter-s-bcf4d7d0b2c6) |
|ESP32-H2 | | | | ![alt text][preview] | ![alt text][preview] | [芯片发布公告](https://www.espressif.com/en/news/ESP32_H2) |
[supported]: https://img.shields.io/badge/-%E6%94%AF%E6%8C%81-green "supported"
[preview]: https://img.shields.io/badge/-%E9%A2%84%E8%A7%88-orange "preview"
对于 2016 年之前发布的乐鑫芯片(包括 ESP8266 和 ESP8285请参考 [RTOS SDK](https://github.com/espressif/ESP8266_RTOS_SDK)。
ESP-IDF 是乐鑫官方针对乐鑫各系列芯片产品(发布于 2016 年后<sup>[1](#fn1)</sup>推出的开发框架,支持 Windows、Linux 和 macOS 操作系统。
# 使用 ESP-IDF 进行开发
## 搭建 ESP-IDF 开发环境
关于不同芯片如何搭建 ESP-IDF 的开发环境,请参考 https://idf.espressif.com/
关于不同芯片如何搭建 ESP-IDF 的开发环境,请参考 https://idf.espressif.com/。
**注意:** 不同系列芯片和不同 ESP-IDF 版本都有其对应的文档。请参阅[版本](https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/versions.html)部分,获得关于如何查找文档以及如何检出 ESP-IDF 的特定发行版的详细信息。
### 非 GitHub 分叉的 ESP-IDF 项目
ESP-IDF 中的子模块采用相对路径([详见 .gitmodules 文件](.gitmodules)),所以它们会指向 GitHub。 如果 ESP-IDF 被分叉到的仓库不在 GitHub 上,那么你需要在克隆结束后运行该脚本 [tools/set-submodules-to-github.sh](tools/set-submodules-to-github.sh)。
ESP-IDF 中的子模块采用相对路径([详见 .gitmodules 文件](.gitmodules)),所以它们会指向 GitHub。
如果 ESP-IDF 被分叉到的仓库不在 GitHub 上,那么你需要在克隆结束后运行该脚本 [tools/set-submodules-to-github.sh](tools/set-submodules-to-github.sh)。
这个脚本会为所有的子模块设置绝对路径,接着可以通过 `git submodule update --init --recursive` 完成子模块的更新。如果 ESP-IDF 是从 GitHub 上克隆得到,则不需要此步骤。
这个脚本会为所有的子模块设置绝对路径,接着可以通过 `git submodule update --init --recursive` 完成子模块的更新。
如果 ESP-IDF 是从 GitHub 上克隆得到,则不需要此步骤。
## 寻找项目
@@ -62,7 +39,7 @@ ESP-IDF 中的子模块采用相对路径([详见 .gitmodules 文件](.gitmodu
* 在主机中安装入门指南中提到的构建所依赖的工具。
* 运行安装脚本来设置构建环境。可为 Windows shell 选择 `install.bat``install.ps1`,为 Unix shell 选择 `install.sh``install.fish`
* 在使用 ESP-IDF 之前,需要在 shell 中运行导出脚本。Windows 下可运行 `export.bat`Unix 下可运行 `source export.sh`
## 配置项目
* `idf.py set-target <chip_name>` 可将项目的目标芯片设置为 `<chip_name>`。运行 `idf.py set-target`,不用带任何参数,可查看所有支持的目标芯片列表。
@@ -109,16 +86,21 @@ ESP-IDF 中的子模块采用相对路径([详见 .gitmodules 文件](.gitmodu
## 擦除 Flash
`idf.py flash` 并不会擦除 flash 上所有的内容,但是有时候我们需要设备恢复到完全擦除的状态,尤其是分区表发生了变化或者 OTA 应用升级时。要擦除整块 flash 请运行 `idf.py erase-flash`
`idf.py flash` 并不会擦除 flash 上所有的内容,但是有时候我们需要设备恢复到完全擦除的状态,尤其是分区表发生了变化或者 OTA 应用升级时。要擦除整块 flash 请运行 `idf.py erase_flash`
这条命令还可以和其余命令整合在一起,`idf.py -p PORT erase-flash flash` 会擦除一切然后重新烧写新的应用程序、引导程序和分区表。
这条命令还可以和其余命令整合在一起,`idf.py -p PORT erase_flash flash` 会擦除一切然后重新烧写新的应用程序、引导程序和分区表。
# 其它参考资源
* 最新版的文档https://docs.espressif.com/projects/esp-idf/ ,该文档是由本仓库 [docs 目录](docs) 构建得到。
* 最新版的文档https://docs.espressif.com/projects/esp-idf/,该文档是由本仓库 [docs 目录](docs) 构建得到。
* 可以前往 [esp32.com 论坛](https://esp32.com/) 提问,挖掘社区资源。
* 如果你在使用中发现了错误或者需要新的功能,请先[查看 GitHub Issues](https://github.com/espressif/esp-idf/issues),确保该问题没有重复提交。
* 如果你有兴趣为 ESP-IDF 作贡献,请先阅读[贡献指南](https://docs.espressif.com/projects/esp-idf/en/latest/contribute/index.html)。
__________
<a name="fn1">1</a>: ESP-IDF 不支持 ESP8266 和 ESP8285。如有需要请参考 [RTOS SDK](https://github.com/espressif/ESP8266_RTOS_SDK)。

View File

@@ -1,9 +0,0 @@
# Security Policy
## Supported Versions
Please refer to https://docs.espressif.com/projects/esp-idf/en/latest/esp32/versions.html#support-periods for more details on ESP-IDF supported versions and support period policy.
## Reporting a Vulnerability
If you think you have found a security vulnerability in Espressif solutions (including ESP-IDF), then please send an email to our Bug Bounty team at bugbounty@espressif.com. Please do **NOT** create a public GitHub issue.

View File

@@ -5,9 +5,12 @@ Support Period Policy
* [中文版](./SUPPORT_POLICY_CN.md)
Each ESP-IDF major and minor release (V4.1, V4.2, etc) is supported for 30 months after the initial stable release date.
Each ESP-IDF major and minor release (V4.1, V4.2, etc) is supported for
30 months after the initial stable release date.
Supported means that the ESP-IDF team will continue to apply bug fixes, security fixes, etc to the release branch on GitHub, and periodically make new bugfix releases as needed.
Supported means that the ESP-IDF team will continue to apply bug fixes,
security fixes, etc to the release branch on GitHub, and periodically
make new bugfix releases as needed.
Support period is divided into "Service" and "Maintenance" period:
@@ -16,43 +19,65 @@ Support period is divided into "Service" and "Maintenance" period:
| Service | 12 months | Yes |
| Maintenance | 18 months | No |
During the Service period, bugfixes releases are more frequent. In some cases, support for new features may be added during the Service period (this is reserved for features which are needed to meet particular regulatory requirements or standards for new products, and which carry a very low risk of introducing regressions.)
During the Service period, bugfixes releases are more frequent. In some cases,
support for new features may be added during the Service period (this is
reserved for features which are needed to meet particular regulatory
requirements or standards for new products, and which carry a very low risk of
introducing regressions.)
During the Maintenance period, the version is still supported but only bugfixes for high severity issues or security issues will be applied.
During the Maintenance period, the version is still supported but only bugfixes
for high severity issues or security issues will be applied.
Using an “In Service” version is recommended when starting a new project.
Users are encouraged to upgrade all projects to a newer ESP-IDF release before the support period finishes and the release becomes End of Life (EOL). It is our policy to not continue fixing bugs in End of Life releases.
Users are encouraged to upgrade all projects to a newer ESP-IDF release before
the support period finishes and the release becomes End of Life (EOL). It is our
policy to not continue fixing bugs in End of Life releases.
Pre-release versions (betas, previews, `-rc` and `-dev` versions, etc) are not covered by any support period. Sometimes a particular feature is marked as "Preview" in a release, which means it is also not covered by the support period.
Pre-release versions (betas, previews, `-rc` and `-dev` versions, etc)
are not covered by any support period. Sometimes a particular feature is
marked as "Preview" in a release, which means it is also not covered
by the support period.
ESP-IDF should be used in an up-to-date software environment. The operating system and other third-party tools should be supported by their maintainers. ESP-IDF cannot keep compatibility with unsupported third-party tools.
The ESP-IDF Programming Guide has information about the [different versions of ESP-IDF](https://docs.espressif.com/projects/esp-idf/en/latest/versions.html) (major, minor, bugfix, etc).
The ESP-IDF Programming Guide has information about the
[different versions of ESP-IDF](https://docs.espressif.com/projects/esp-idf/en/latest/versions.html)
(major, minor, bugfix, etc).
Example
-------
ESP-IDF V3.3 was released in September 2019. It was supported for 30 months until February 2022.
ESP-IDF V3.3 was released in September 2019. It will be supported for 30 months
until February 2022.
- The first V3.3 release was `v3.3` in September 2019.
- The ESP-IDF team continues to backport bug fixes, security fixes, etc to the release branch `release/v3.3`.
- Periodically stable bugfix releases are created from the release branch. For example `v3.3.1`, `v3.3.2`, etc. Users are encouraged to always update to the latest bugfix release.
- V3.3 bugfix releases continue until February 2022, when all V3.3.x releases become End of Life.
- The ESP-IDF team continues to backport bug fixes, security fixes,
etc to the release branch `release/v3.3`.
- Periodically stable bugfix releases are created from the release
branch. For example `v3.3.1`, `v3.3.2`, etc. Users are encouraged to
always update to the latest bugfix release.
- V3.3 bugfix releases continue until February 2022, when all V3.3.x
releases become End of Life.
Existing Releases
-----------------
ESP-IDF release V4.1 and all newer releases will follow this support period policy. The support period for each release will be announced when the release is made.
ESP-IDF release V4.1 and all newer releases will follow this support period
policy. The support period for each release will be announced when the release
is made.
For releases made before the current support period policy was announced, the original support periods apply:
For releases made before the current support period policy was announced, the
original support periods apply:
* ESP-IDF V4.0.x will be supported until October 2021
* ESP-IDF V3.3.x will be supported until February 2022
* ESP-IDF versions before V3.3 are already End of Life.
* ESP-IDF V3.1.x and V3.2.x will both be supported until October 2020.
* ESP-IDF versions before V3.1 are already End of Life.
Policy History
--------------
* September 2019. This policy splits ESP-IDF releases into Standard and Long Term Support.
* July 2020. All releases from now will have the same support period, which is equal to the previous Long Term Support period. Added “In Service” period, during which versions will receive more updates.
* September 2019. This policy split ESP-IDF releases into Standard and Long Term
Support.
* July 2020. All releases from now will have the same support period, which is
equal to the previous Long Term Support period. Added “In Service” period,
during which versions will receive more updates.

View File

@@ -3,8 +3,6 @@
支持期限政策
=====================
* [英文版](./SUPPORT_POLICY.md)
ESP-IDF 的每个主要版本和次要版本(如 V4.1、V4.2 等)自其首次稳定版本发布之日起将支持 30 个月。
支持意味着 ESP-IDF 团队将会对 GitHub 上的发布分支继续进行 bug 修复、安全修补等,并根据需求定期发布新的 bugfix 版本。
@@ -20,14 +18,12 @@ ESP-IDF 的每个主要版本和次要版本(如 V4.1、V4.2 等)自其首
在版本的维护周期内,版本仍然会继续支持,但仅会对严重问题或安全问题进行 bug 修复。
建议在开始新项目的时候使用处于服务周期的版本。
建议在开始新项目的时候使用处于服务周期的版本。
在某一版本支持期限结束,停止更新维护 (EOL) 前,建议用户升级所有项目至较新的 ESP-IDF 版本。根据《支持期限政策》,我们将停止对 EOL 版本进行 bug 修复。
《支持期限政策》不适用于预发布版本(包括 beta、preview、-rc 和 -dev 版本等)。有时,在发布的版本中存在被标记为 "Preview" 的特定功能,则该功能也不在支持期限内。
请确保在最新的软件环境中使用 ESP-IDF。操作系统和其他第三方工具应得到其维护者的支持。ESP-IDF 无法兼容不受支持的第三方工具。
有关 [ESP-IDF 不同版本](https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/versions.html)主要版本、次要版本、bugfix 版本等信息可参阅《ESP-IDF 编程指南》。
示例
@@ -49,10 +45,11 @@ ESP-IDF V4.1 及所有后续更新版本都将遵守该《支持期限政策》
* ESP-IDF V4.0.x 将支持至 2021 年 10 月。
* ESP-IDF V3.3.x 将支持至 2022 年 2 月。
* ESP-IDF v3.3 之前的版本已经停止支持。
* ESP-IDF V3.1.x 和 V3.2.x 都将在 2020 年 10 月停止支持。
* ESP-IDF v3.1.x 之前的版本已经停止支持。
政策历史
--------------
* 2019 年 9 月。该政策将 ESP-IDF 版本发布分为标准支持版本和长期支持版本。
* 2020 年 7 月。从现在开始,所有发布的版本都将有相同的支持周期,之前的长期支持周期。新增了”服务周期“,期间版本的更新将较为频繁。
* 2019 年 9 月。该政策将 ESP-IDF 版本发布分为标准支持版本和长期支持版本。
* 2020 年 7 月。从现在开始,所有发布的版本都将有相同的支持周期,等同于之前的长期支持周期。新增了”服务周期“,期间版本的更新将较为频繁。

View File

@@ -1,159 +0,0 @@
# Core Components
## Overview
This document contains details about what the core components are, what they contain, and how they are organized.
## Organization
The core components are organized into two groups.
The first group (referred to as `G0` from now on) contains `hal`, `xtensa` and `riscv` (referred to as `arch` components from now on), `esp_rom`, `esp_common`, and `soc`. This
group contain information about and low-level access to underlying hardware; or in the case of `esp_common`, hardware-agnostic code and utilities.
These components can depend on each other, but as much as possible have no dependencies outside the group. The reason for this is that, due to the
nature of what these components contain, the likelihood is high that a lot of other components will require these. Ideally, then, the dependency
relationship only goes one way. This makes it easier for these components, as a group, to be usable in another project. One can conceivably implement
a competing SDK to ESP-IDF on top of these components.
The second group (referred to as `G1` from now on) sits at a higher level than the first group. This group contains the components `esp_hw_support`, `esp_system`, `newlib`, `spi_flash`,
`freertos`, `log`, and `heap`. Like the first group, circular dependencies within the group are allowed; and being at a higher level, dependency on the first group
is allowed. These components represent software mechanisms essential to building other components.
## Descriptions
The following is a short description of the components mentioned above.
### `G0` Components
#### `hal`
Contains the hardware abstraction layer and low-level operation implementations for the various peripherals. The low-level functions assign meaningful names to register-level manipulations; the hardware abstraction provide operations one level above this, grouping these low-level functions
into routines that achieve a meaningful action or state of the peripheral.
Example:
- `spi_flash_ll_set_address` is a low-level function part of the hardware abstraction `spi_flash_hal_read_block`
#### `arch`
Contains low-level architecture operations and definitions, including those for customizations (can be thought of on the same level as the low-level functions of `hal`).
This can also contain files provided by the architecture vendor.
Example:
- `xt_set_exception_handler`
- `rv_utils_intr_enable`
- `ERI_PERFMON_MAX`
#### `esp_common`
Contains hardware-agnostic definitions, constants, macros, utilities, 'pure' and/or algorithmic functions that is useable by all other components (that is, barring there being a more appropriate component to put them in).
Example:
- `BIT(nr)` and other bit manipulation utilities in the future
- `IDF_DEPRECATED(REASON)`
- `ESP_IDF_VERSION_MAJOR`
#### `soc`
Contains description of the underlying hardware: register structure, addresses, pins, capabilities, etc.
Example:
- `DR_REG_DPORT_BASE`
- `SOC_MCPWM_SUPPORTED`
- `uart_dev_s`
#### `esp_rom`
Contains headers, linker scripts, abstraction layer, patches, and other related files to ROM functions.
Example:
- `esp32.rom.eco3.ld`
- `rom/aes.h`
### `G1` Components
#### `spi_flash`
SPI flash device access implementation.
#### `freertos`
FreeRTOS port to targets supported by ESP-IDF.
#### `log`
Logging library.
#### `heap`
Heap implementation.
#### `newlib`
Some functions n the standard library are implemented here, especially those needing other `G1` components.
Example:
- `malloc` is implemented in terms of the component `heap`'s functions
- `gettimeofday` is implemented in terms of system time in `esp_system`
#### `esp_system`
Contains implementation of system services and controls system behavior. The implementations
here may take hardware resources and/or decide on a hardware state needed for support of a system service/feature/mechanism.
Currently, this encompasses the following, but not limited to:
- Startup and initialization
- Panic and debug
- Reset and reset reason
- Task and interrupt watchdogs
#### `esp_hw_support`
Contains implementations that provide hardware operations, arbitration, or resource sharing, especially those that
is used in the system. Unlike `esp_system`, implementations here do not decide on a hardware state or takes hardware resource, acting
merely as facilitator to hardware access. Currently, this encompasses the following, but not limited to:
- Interrupt allocation
- Sleep functions
- Memory functions (external SPIRAM, async memory, etc.)
- Clock and clock control
- Random generation
- CPU utilities
- MAC settings
### `esp_hw_support` vs `esp_system`
This section details list some implementations and the reason for placing it in either `esp_hw_support` or `esp_system`.
#### `task_wdt.c` (`esp_system`) vs `intr_alloc.c` (`esp_hw_support`)
The task watchdog fits the definition of taking and configuring hardware resources (wdt, interrupt) for implementation of a system service/mechanism.
This is in contrast with interrupt allocation that merely facilitates access to the underlying hardware for other implementations -
drivers, user code, and even the task watchdog mentioned previously!
#### `crosscore_int.c` (`esp_system`)
The current implementation of crosscore interrupts is tightly coupled with a number of interrupt reasons
associated with system services/mechanisms: REASON_YIELD (scheduler), REASON_FREQ_SWITCH (power management)
REASON_PRINT_BACKTRACE (panic and debug).
However, if an implementation exists that makes it possible to register an arbitrary interrupt reason - a
lower level inter-processor call if you will, then this implementation is a good candidate for `esp_hw_support`.
The current implementation in `esp_system` can then just register the interrupt reasons mentioned above.
#### `esp_mac.h`, `esp_chip_info.h`, `esp_random.h` (`esp_hw_support`)
The functions in these headers used to be in `esp_system.h`, but have been split-off.
The remaining functions in `esp_system.h` are those that deal with system behavior, such
as `esp_register_shutdown_handler`, or are proxy for other system components's APIs such as
`esp_get_free_heap_size`.
The functions split-off from `esp_system.h` are much more hardware manipulation oriented such as:
`esp_read_mac`, `esp_random` and `esp_chip_info`.

View File

@@ -21,8 +21,6 @@ if(CONFIG_APPTRACE_MEMBUFS_APPTRACE_PROTO_ENABLE)
"port/riscv/port.c")
endif()
endif()
list(APPEND srcs
"port/port_uart.c")
if(CONFIG_APPTRACE_SV_ENABLE)
list(APPEND include_dirs
@@ -49,30 +47,17 @@ endif()
idf_component_register(SRCS "${srcs}"
INCLUDE_DIRS "${include_dirs}"
PRIV_INCLUDE_DIRS "${priv_include_dirs}"
# Requires "driver" for GPTimer in "SEGGER_SYSVIEW_Config_FreeRTOS.c"
PRIV_REQUIRES soc driver
REQUIRES esp_timer
PRIV_REQUIRES soc
LDFRAGMENTS linker.lf)
if(CONFIG_APPTRACE_GCOV_ENABLE)
# disable --coverage for this component, as it is used as transport
# for gcov
target_compile_options(${COMPONENT_LIB} PRIVATE "-fno-profile-arcs" "-fno-test-coverage")
# Force app_trace to also appear later than gcov in link line
idf_component_get_property(app_trace app_trace COMPONENT_LIB)
target_link_libraries(${COMPONENT_LIB} INTERFACE
"-Wl,--undefined=gcov_rtio_atexit" $<TARGET_FILE:${app_trace}> gcov $<TARGET_FILE:${app_trace}> c)
endif()
# This function adds a dependency on the given component if the component is included into the build.
function(maybe_add_component component_name)
idf_build_get_property(components BUILD_COMPONENTS)
if(${component_name} IN_LIST components)
idf_component_get_property(lib_name ${component_name} COMPONENT_LIB)
target_link_libraries(${COMPONENT_LIB} PUBLIC ${lib_name})
endif()
endfunction()
if(CONFIG_APPTRACE_DEST_UART0 OR CONFIG_APPTRACE_DEST_UART1 OR CONFIG_APPTRACE_DEST_UART2)
maybe_add_component(driver)
endif()

View File

@@ -1,7 +1,7 @@
menu "Application Level Tracing"
choice APPTRACE_DESTINATION1
prompt "Data Destination 1"
choice APPTRACE_DESTINATION
prompt "Data Destination"
default APPTRACE_DEST_NONE
help
Select destination for application trace: JTAG or none (to disable).
@@ -16,133 +16,13 @@ menu "Application Level Tracing"
bool "None"
endchoice
config APPTRACE_DEST_UART
bool
config APPTRACE_DEST_UART_NOUSB
bool
choice APPTRACE_DESTINATION2
prompt "Data Destination 2"
default APPTRACE_DEST_UART_NONE
help
Select destination for application trace: UART(XX) or none (to disable).
config APPTRACE_DEST_UART0
bool "UART0"
select APPTRACE_ENABLE
select APPTRACE_DEST_UART
select APPTRACE_DEST_UART_NOUSB
depends on (ESP_CONSOLE_UART_NUM !=0)
config APPTRACE_DEST_UART1
bool "UART1"
select APPTRACE_ENABLE
select APPTRACE_DEST_UART
select APPTRACE_DEST_UART_NOUSB
depends on (ESP_CONSOLE_UART_NUM !=1)
config APPTRACE_DEST_UART2
bool "UART2"
select APPTRACE_ENABLE
select APPTRACE_DEST_UART
select APPTRACE_DEST_UART_NOUSB
depends on (ESP_CONSOLE_UART_NUM !=2) && !IDF_TARGET_ESP32C3 && !IDF_TARGET_ESP32S2 && !IDF_TARGET_ESP32H2
config APPTRACE_DEST_USB_CDC
bool "USB_CDC"
select APPTRACE_ENABLE
select APPTRACE_DEST_UART
depends on !ESP_CONSOLE_USB_CDC && (IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3) && !USB_ENABLED
config APPTRACE_DEST_UART_NONE
bool "None"
endchoice
config APPTRACE_UART_TX_GPIO
int "UART TX on GPIO#"
depends on APPTRACE_DEST_UART_NOUSB
range 0 46
default 12 if IDF_TARGET_ESP32
default 12 if IDF_TARGET_ESP32C3
default 12
help
This GPIO is used for UART TX pin.
config APPTRACE_UART_RX_GPIO
int "UART RX on GPIO#"
depends on APPTRACE_DEST_UART_NOUSB
range 0 46
default 13 if IDF_TARGET_ESP32
default 13 if IDF_TARGET_ESP32C3
default 13
help
This GPIO is used for UART RX pin.
config APPTRACE_UART_BAUDRATE
int
prompt "UART baud rate" if APPTRACE_DEST_UART
depends on APPTRACE_DEST_UART
default 1000000
range 1200 8000000
range 1200 1000000
help
This baud rate is used for UART.
The app's maximum baud rate depends on the UART clock source. If Power Management is disabled,
the UART clock source is the APB clock and all baud rates in the available range will be sufficiently
accurate. If Power Management is enabled, REF_TICK clock source is used so the baud rate is divided
from 1MHz. Baud rates above 1Mbps are not possible and values between 500Kbps and 1Mbps may not be
accurate.
config APPTRACE_UART_RX_BUFF_SIZE
int
prompt "UART RX ring buffer size" if APPTRACE_DEST_UART
depends on APPTRACE_DEST_UART
default 128
range 64 32768
help
Size of the UART input ring buffer.
This size related to the baudrate, system tick frequency and amount of data to transfer.
The data placed to this buffer before sent out to the interface.
config APPTRACE_UART_TX_BUFF_SIZE
int
prompt "UART TX ring buffer size" if APPTRACE_DEST_UART
depends on APPTRACE_DEST_UART
default 4096
range 2048 32768
help
Size of the UART output ring buffer.
This size related to the baudrate, system tick frequency and amount of data to transfer.
config APPTRACE_UART_TX_MSG_SIZE
int
prompt "UART TX message size" if APPTRACE_DEST_UART
depends on APPTRACE_DEST_UART
default 128
range 64 32768
help
Maximum size of the single message to transfer.
config APPTRACE_UART_TASK_PRIO
int
prompt "UART Task Priority" if APPTRACE_DEST_UART
default 1
range 1 32
help
UART task priority. In case of high events rate,
this parameter could be changed up to (configMAX_PRIORITIES-1).
config APPTRACE_DEST_TRAX
bool
depends on IDF_TARGET_ARCH_XTENSA && !ESP32_TRAX && !ESP32S2_TRAX && !ESP32S3_TRAX
depends on IDF_TARGET_ARCH_XTENSA && !ESP32_TRAX && !ESP32S2_TRAX
select ESP32_MEMMAP_TRACEMEM
select ESP32S2_MEMMAP_TRACEMEM
select ESP32S3_MEMMAP_TRACEMEM
select ESP32_MEMMAP_TRACEMEM_TWOBANKS
select ESP32S2_MEMMAP_TRACEMEM_TWOBANKS
select ESP32S3_MEMMAP_TRACEMEM_TWOBANKS
default n
help
Enables/disable TRAX tracing HW.
@@ -208,52 +88,11 @@ menu "Application Level Tracing"
help
Enables supporrt for SEGGER SystemView tracing functionality.
choice APPTRACE_SV_DEST
prompt "SystemView destination"
depends on APPTRACE_SV_ENABLE
default APPTRACE_SV_DEST_JTAG
help
SystemView witt transfer data trough defined interface.
config APPTRACE_SV_DEST_JTAG
bool "Data destination JTAG"
depends on !PM_ENABLE && !APPTRACE_DEST_NONE
help
Send SEGGER SystemView events through JTAG interface.
config APPTRACE_SV_DEST_UART
bool "Data destination UART"
depends on APPTRACE_DEST_UART
help
Send SEGGER SystemView events through UART interface.
endchoice
choice APPTRACE_SV_CPU
prompt "CPU to trace"
depends on APPTRACE_SV_DEST_UART && !FREERTOS_UNICORE
default APPTRACE_SV_DEST_CPU_0
help
Define the CPU to trace by SystemView.
config APPTRACE_SV_DEST_CPU_0
bool "CPU0"
help
Send SEGGER SystemView events for Pro CPU.
config APPTRACE_SV_DEST_CPU_1
bool "CPU1"
help
Send SEGGER SystemView events for App CPU.
endchoice
choice APPTRACE_SV_TS_SOURCE
prompt "Timer to use as timestamp source"
depends on APPTRACE_SV_ENABLE
default APPTRACE_SV_TS_SOURCE_CCOUNT if FREERTOS_UNICORE && !PM_ENABLE && !IDF_TARGET_ESP32C3
default APPTRACE_SV_TS_SOURCE_GPTIMER if !FREERTOS_UNICORE && !PM_ENABLE && !IDF_TARGET_ESP32C3
default APPTRACE_SV_TS_SOURCE_TIMER_00 if !FREERTOS_UNICORE && !PM_ENABLE && !IDF_TARGET_ESP32C3
default APPTRACE_SV_TS_SOURCE_ESP_TIMER if PM_ENABLE || IDF_TARGET_ESP32C3
help
SystemView needs to use a hardware timer as the source of timestamps
@@ -263,8 +102,20 @@ menu "Application Level Tracing"
bool "CPU cycle counter (CCOUNT)"
depends on FREERTOS_UNICORE && !PM_ENABLE && !IDF_TARGET_ESP32C3
config APPTRACE_SV_TS_SOURCE_GPTIMER
bool "General Purpose Timer (Timer Group)"
config APPTRACE_SV_TS_SOURCE_TIMER_00
bool "Timer 0, Group 0"
depends on !PM_ENABLE && !IDF_TARGET_ESP32C3
config APPTRACE_SV_TS_SOURCE_TIMER_01
bool "Timer 1, Group 0"
depends on !PM_ENABLE && !IDF_TARGET_ESP32C3
config APPTRACE_SV_TS_SOURCE_TIMER_10
bool "Timer 0, Group 1"
depends on !PM_ENABLE && !IDF_TARGET_ESP32C3
config APPTRACE_SV_TS_SOURCE_TIMER_11
bool "Timer 1, Group 1"
depends on !PM_ENABLE && !IDF_TARGET_ESP32C3
config APPTRACE_SV_TS_SOURCE_ESP_TIMER
@@ -389,11 +240,4 @@ menu "Application Level Tracing"
help
Enables support for GCOV data transfer to host.
config APPTRACE_GCOV_DUMP_TASK_STACK_SIZE
int "Gcov dump task stack size"
depends on APPTRACE_GCOV_ENABLE
default 2048
help
Configures stack size of Gcov dump task
endmenu

View File

@@ -5,38 +5,24 @@
*/
#include <string.h>
#include "esp_cpu.h"
#include "esp_log.h"
#include "esp_app_trace.h"
#include "esp_app_trace_port.h"
#include "esp_private/startup_internal.h"
#ifdef CONFIG_APPTRACE_DEST_UART0
#define ESP_APPTRACE_DEST_UART_NUM 0
#elif CONFIG_APPTRACE_DEST_UART1
#define ESP_APPTRACE_DEST_UART_NUM 1
#elif CONFIG_APPTRACE_DEST_UART2
#define ESP_APPTRACE_DEST_UART_NUM 2
#elif CONFIG_APPTRACE_DEST_USB_CDC
#define ESP_APPTRACE_DEST_UART_NUM 10
#else
#define ESP_APPTRACE_DEST_UART_NUM 0
#endif
#define ESP_APPTRACE_MAX_VPRINTF_ARGS 256
#define ESP_APPTRACE_HOST_BUF_SIZE 256
#define ESP_APPTRACE_MAX_VPRINTF_ARGS 256
#define ESP_APPTRACE_HOST_BUF_SIZE 256
#define ESP_APPTRACE_PRINT_LOCK 0
#define ESP_APPTRACE_PRINT_LOCK 0
const static char *TAG = "esp_apptrace";
/** tracing module internal data */
typedef struct {
esp_apptrace_hw_t *hw;
void *hw_data;
esp_apptrace_hw_t * hw;
void * hw_data;
} esp_apptrace_channel_t;
static esp_apptrace_channel_t s_trace_channels[ESP_APPTRACE_DEST_MAX];
static esp_apptrace_channel_t s_trace_channels[ESP_APPTRACE_DEST_NUM];
static bool s_inited;
esp_err_t esp_apptrace_init(void)
@@ -46,7 +32,7 @@ esp_err_t esp_apptrace_init(void)
void *hw_data = NULL;
// 'esp_apptrace_init()' is called on every core, so ensure to do main initialization only once
if (esp_cpu_get_core_id() == 0) {
if (cpu_hal_get_core_id() == 0) {
memset(&s_trace_channels, 0, sizeof(s_trace_channels));
hw = esp_apptrace_jtag_hw_get(&hw_data);
ESP_APPTRACE_LOGD("HW interface %p", hw);
@@ -54,16 +40,16 @@ esp_err_t esp_apptrace_init(void)
s_trace_channels[ESP_APPTRACE_DEST_JTAG].hw = hw;
s_trace_channels[ESP_APPTRACE_DEST_JTAG].hw_data = hw_data;
}
hw = esp_apptrace_uart_hw_get(ESP_APPTRACE_DEST_UART_NUM, &hw_data);
hw = esp_apptrace_uart_hw_get(0, &hw_data);
if (hw != NULL) {
s_trace_channels[ESP_APPTRACE_DEST_UART].hw = hw;
s_trace_channels[ESP_APPTRACE_DEST_UART].hw_data = hw_data;
s_trace_channels[ESP_APPTRACE_DEST_UART0].hw = hw;
s_trace_channels[ESP_APPTRACE_DEST_UART0].hw_data = hw_data;
}
s_inited = true;
}
// esp_apptrace_init() is called on every core, so initialize trace channel on every core
for (int i = 0; i < sizeof(s_trace_channels) / sizeof(s_trace_channels[0]); i++) {
for (int i = 0; i < sizeof(s_trace_channels)/sizeof(s_trace_channels[0]); i++) {
esp_apptrace_channel_t *ch = &s_trace_channels[i];
if (ch->hw) {
res = ch->hw->init(ch->hw_data);
@@ -77,11 +63,6 @@ esp_err_t esp_apptrace_init(void)
return ESP_OK;
}
ESP_SYSTEM_INIT_FN(esp_apptrace_init, ESP_SYSTEM_INIT_ALL_CORES, 115)
{
return esp_apptrace_init();
}
void esp_apptrace_down_buffer_config(uint8_t *buf, uint32_t size)
{
esp_apptrace_channel_t *ch;
@@ -92,21 +73,15 @@ void esp_apptrace_down_buffer_config(uint8_t *buf, uint32_t size)
// currently down buffer is supported for JTAG interface only
// TODO: one more argument should be added to this function to specify HW inteface: JTAG, UART0 etc
ch = &s_trace_channels[ESP_APPTRACE_DEST_JTAG];
if (ch->hw != NULL) {
if (ch->hw->down_buffer_config != NULL) {
ch->hw->down_buffer_config(ch->hw_data, buf, size);
}
} else {
ESP_APPTRACE_LOGD("Trace destination for JTAG not supported!");
if (ch->hw == NULL) {
ESP_APPTRACE_LOGE("Trace destination not supported!");
return;
}
ch = &s_trace_channels[ESP_APPTRACE_DEST_UART];
if (ch->hw != NULL) {
if (ch->hw->down_buffer_config != NULL) {
ch->hw->down_buffer_config(ch->hw_data, buf, size);
}
} else {
ESP_APPTRACE_LOGD("Trace destination for UART not supported!");
if (ch->hw->down_buffer_config == NULL) {
return;
}
ch->hw->down_buffer_config(ch->hw_data, buf, size);
}
uint8_t *esp_apptrace_down_buffer_get(esp_apptrace_dest_t dest, uint32_t *size, uint32_t user_tmo)
@@ -194,7 +169,7 @@ esp_err_t esp_apptrace_read(esp_apptrace_dest_t dest, void *buf, uint32_t *size,
esp_apptrace_tmo_init(&tmo, user_tmo);
uint32_t act_sz = *size;
*size = 0;
uint8_t *ptr = ch->hw->get_down_buffer(ch->hw_data, &act_sz, &tmo);
uint8_t * ptr = ch->hw->get_down_buffer(ch->hw_data, &act_sz, &tmo);
if (ptr && act_sz > 0) {
ESP_APPTRACE_LOGD("Read %d bytes from host", act_sz);
memcpy(buf, ptr, act_sz);
@@ -444,10 +419,3 @@ bool esp_apptrace_host_is_connected(esp_apptrace_dest_t dest)
return ch->hw->host_is_connected(ch->hw_data);
}
#if !CONFIG_APPTRACE_DEST_JTAG
esp_apptrace_hw_t *esp_apptrace_jtag_hw_get(void **data)
{
return NULL;
}
#endif

View File

@@ -1,14 +1,7 @@
/*
* SPDX-FileCopyrightText: 2021-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <sys/param.h>
#include <string.h>
#include "sdkconfig.h"
#include "esp_log.h"
#include "esp_cpu.h"
#include "esp_app_trace_membufs_proto.h"
/** Trace data header. Every user data chunk is prepended with this header.
@@ -100,8 +93,7 @@ static esp_err_t esp_apptrace_membufs_swap(esp_apptrace_membufs_proto_data_t *pr
if (proto->hw->host_data_pending() && hdr->block_sz > 0) {
// TODO: add support for multiple blocks from host, currently there is no need for that
uint8_t *p = proto->blocks[new_block_num].start + proto->blocks[new_block_num].sz;
ESP_APPTRACE_LOGD("Recvd %d bytes from host (@ 0x%x) [%x %x %x %x %x %x %x %x .. %x %x %x %x %x %x %x %x]",
hdr->block_sz, proto->blocks[new_block_num].start,
ESP_APPTRACE_LOGD("Recvd %d bytes from host [%x %x %x %x %x %x %x %x .. %x %x %x %x %x %x %x %x]", hdr->block_sz,
*(proto->blocks[new_block_num].start+0), *(proto->blocks[new_block_num].start+1),
*(proto->blocks[new_block_num].start+2), *(proto->blocks[new_block_num].start+3),
*(proto->blocks[new_block_num].start+4), *(proto->blocks[new_block_num].start+5),
@@ -260,8 +252,8 @@ static inline uint8_t *esp_apptrace_membufs_wait4buf(esp_apptrace_membufs_proto_
static inline uint8_t *esp_apptrace_membufs_pkt_start(uint8_t *ptr, uint16_t size)
{
// it is safe to use esp_cpu_get_core_id() in macro call because arg is used only once inside it
((esp_tracedata_hdr_t *)ptr)->block_sz = ESP_APPTRACE_USR_BLOCK_CORE(esp_cpu_get_core_id()) | size;
// it is safe to use cpu_hal_get_core_id() in macro call because arg is used only once inside it
((esp_tracedata_hdr_t *)ptr)->block_sz = ESP_APPTRACE_USR_BLOCK_CORE(cpu_hal_get_core_id()) | size;
((esp_tracedata_hdr_t *)ptr)->wr_sz = 0;
return ptr + sizeof(esp_tracedata_hdr_t);
}

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2017 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
@@ -60,24 +68,22 @@ esp_err_t esp_apptrace_lock_take(esp_apptrace_lock_t *lock, esp_apptrace_tmo_t *
int res;
while (1) {
//Todo: Replace the current locking mechanism and int_state with portTRY_ENTER_CRITICAL() instead.
// do not overwrite lock->int_state before we actually acquired the mux
#if CONFIG_FREERTOS_SMP
unsigned int_state = portDISABLE_INTERRUPTS();
unsigned int_state = portENTER_CRITICAL_NESTED();
// FIXME: if mux is busy it is not good idea to loop during the whole tmo with disabled IRQs.
// So we check mux state using zero tmo, restore IRQs and let others tasks/IRQs to run on this CPU
// while we are doing our own tmo check.
#ifdef CONFIG_FREERTOS_PORTMUX_DEBUG
bool success = vPortCPUAcquireMutexTimeout(&lock->mux, 0, __FUNCTION__, __LINE__);
#else
unsigned int_state = portSET_INTERRUPT_MASK_FROM_ISR();
bool success = vPortCPUAcquireMutexTimeout(&lock->mux, 0);
#endif
bool success = spinlock_acquire(&lock->mux, 0);
if (success) {
lock->int_state = int_state;
return ESP_OK;
}
#if CONFIG_FREERTOS_SMP
portRESTORE_INTERRUPTS(int_state);
#else
portCLEAR_INTERRUPT_MASK_FROM_ISR(int_state);
#endif
// we can be preempted from this place till the next call (above) to portSET_INTERRUPT_MASK_FROM_ISR()
portEXIT_CRITICAL_NESTED(int_state);
// we can be preempted from this place till the next call (above) to portENTER_CRITICAL_NESTED()
res = esp_apptrace_tmo_check(tmo);
if (res != ESP_OK) {
break;
@@ -92,12 +98,12 @@ esp_err_t esp_apptrace_lock_give(esp_apptrace_lock_t *lock)
unsigned int_state = lock->int_state;
// after call to the following func we can not be sure that lock->int_state
// is not overwritten by other CPU who has acquired the mux just after we released it. See esp_apptrace_lock_take().
spinlock_release(&lock->mux);
#if CONFIG_FREERTOS_SMP
portRESTORE_INTERRUPTS(int_state);
#ifdef CONFIG_FREERTOS_PORTMUX_DEBUG
vPortCPUReleaseMutex(&lock->mux, __FUNCTION__, __LINE__);
#else
portCLEAR_INTERRUPT_MASK_FROM_ISR(int_state);
vPortCPUReleaseMutex(&lock->mux);
#endif
portEXIT_CRITICAL_NESTED(int_state);
return ESP_OK;
}

View File

@@ -0,0 +1,41 @@
#
# Component Makefile
#
COMPONENT_SRCDIRS := .
ifdef CONFIG_APPTRACE_MEMBUFS_APPTRACE_PROTO_ENABLE
COMPONENT_SRCDIRS += port/xtensa
endif
COMPONENT_ADD_INCLUDEDIRS = include
COMPONENT_PRIV_INCLUDEDIRS = private_include \
port/include
COMPONENT_ADD_LDFLAGS = -lapp_trace
ifdef CONFIG_APPTRACE_SV_ENABLE
COMPONENT_ADD_INCLUDEDIRS += \
sys_view/Config \
sys_view/SEGGER \
sys_view/Sample/OS
COMPONENT_SRCDIRS += \
gcov \
sys_view/SEGGER \
sys_view/Sample/OS \
sys_view/Sample/Config \
sys_view/esp \
sys_view/ext
else
ifdef CONFIG_APPTRACE_GCOV_ENABLE
# do not produce gcov info for this module, it is used as transport for gcov
CFLAGS := $(subst --coverage,,$(CFLAGS))
COMPONENT_ADD_LDFLAGS += -Wl,--undefined=gcov_rtio_atexit
COMPONENT_SRCDIRS += gcov
endif
endif
COMPONENT_ADD_LDFRAGMENTS += linker.lf

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2017 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// This module implements runtime file I/O API for GCOV.
@@ -11,12 +19,12 @@
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "freertos/semphr.h"
#include "soc/cpu.h"
#include "soc/timer_periph.h"
#include "esp_app_trace.h"
#include "esp_freertos_hooks.h"
#include "esp_private/dbg_stubs.h"
#include "esp_private/esp_ipc.h"
#include "esp_attr.h"
#include "esp_ipc.h"
#include "hal/wdt_hal.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/libc_stubs.h"
@@ -28,6 +36,7 @@
#define ESP_GCOV_DOWN_BUF_SIZE 4200
#define LOG_LOCAL_LEVEL CONFIG_LOG_DEFAULT_LEVEL
#include "esp_log.h"
const static char *TAG = "esp_gcov_rtio";
static volatile bool s_create_gcov_task = false;
@@ -52,11 +61,18 @@ void gcov_dump_task(void *pvParameter)
}
ESP_EARLY_LOGV(TAG, "Config apptrace down buf");
esp_apptrace_down_buffer_config(down_buf, ESP_GCOV_DOWN_BUF_SIZE);
/* we are directing the std outputs to the fake ones in order to reduce stack usage */
FILE *old_stderr = stderr;
FILE *old_stdout = stdout;
stderr = (FILE *) &__sf_fake_stderr;
stdout = (FILE *) &__sf_fake_stdout;
ESP_EARLY_LOGV(TAG, "Dump data...");
__gcov_dump();
// reset dump status to allow incremental data accumulation
__gcov_reset();
free(down_buf);
stderr = old_stderr;
stdout = old_stdout;
ESP_EARLY_LOGV(TAG, "Finish file transfer session");
dump_result = esp_apptrace_fstop(ESP_APPTRACE_DEST_TRAX);
if (dump_result != ESP_OK) {
@@ -77,15 +93,14 @@ gcov_exit:
void gcov_create_task(void *arg)
{
ESP_EARLY_LOGV(TAG, "%s", __FUNCTION__);
xTaskCreatePinnedToCore(&gcov_dump_task, "gcov_dump_task", CONFIG_APPTRACE_GCOV_DUMP_TASK_STACK_SIZE,
(void *)&s_gcov_task_running, configMAX_PRIORITIES - 1, NULL, 0);
xTaskCreatePinnedToCore(&gcov_dump_task, "gcov_dump_task", 2048, (void *)&s_gcov_task_running, configMAX_PRIORITIES - 1, NULL, 0);
}
static IRAM_ATTR
void gcov_create_task_tick_hook(void)
{
extern esp_err_t esp_ipc_start_gcov_from_isr(uint32_t cpu_id, esp_ipc_func_t func, void* arg);
if (s_create_gcov_task) {
if (esp_ipc_call_nonblocking(xPortGetCoreID(), &gcov_create_task, NULL) == ESP_OK) {
if (esp_ipc_start_gcov_from_isr(xPortGetCoreID(), &gcov_create_task, NULL) == ESP_OK) {
s_create_gcov_task = false;
}
}

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2018-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2018 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include <sdkconfig.h>
#define HEAP_TRACE_SRCFILE /* don't warn on inclusion here */

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2017 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// Hot It Works
// ************
@@ -19,6 +27,7 @@
#if CONFIG_APPTRACE_ENABLE
#define LOG_LOCAL_LEVEL CONFIG_LOG_DEFAULT_LEVEL
#include "esp_log.h"
const static char *TAG = "esp_host_file_io";

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2017 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef ESP_APP_TRACE_H_
#define ESP_APP_TRACE_H_
@@ -20,8 +28,8 @@ extern "C" {
typedef enum {
ESP_APPTRACE_DEST_JTAG = 1, ///< JTAG destination
ESP_APPTRACE_DEST_TRAX = ESP_APPTRACE_DEST_JTAG, ///< xxx_TRAX name is obsolete, use more common xxx_JTAG
ESP_APPTRACE_DEST_UART, ///< UART destination
ESP_APPTRACE_DEST_MAX = ESP_APPTRACE_DEST_UART+1,
ESP_APPTRACE_DEST_UART0, ///< UART0 destination
ESP_APPTRACE_DEST_MAX = ESP_APPTRACE_DEST_UART0,
ESP_APPTRACE_DEST_NUM
} esp_apptrace_dest_t;
@@ -36,7 +44,7 @@ esp_err_t esp_apptrace_init(void);
/**
* @brief Configures down buffer.
* @note Needs to be called before attempting to receive any data using esp_apptrace_down_buffer_get and esp_apptrace_read.
* @note Needs to be called before initiating any data transfer using esp_apptrace_buffer_get and esp_apptrace_write.
* This function does not protect internal data by lock.
*
* @param buf Address of buffer to use for down channel (host to target) data.
@@ -46,7 +54,7 @@ void esp_apptrace_down_buffer_config(uint8_t *buf, uint32_t size);
/**
* @brief Allocates buffer for trace data.
* Once the data in the buffer is ready to be sent, esp_apptrace_buffer_put must be called to indicate it.
* After data in buffer are ready to be sent off esp_apptrace_buffer_put must be called to indicate it.
*
* @param dest Indicates HW interface to send data.
* @param size Size of data to write to trace buffer.
@@ -57,8 +65,8 @@ void esp_apptrace_down_buffer_config(uint8_t *buf, uint32_t size);
uint8_t *esp_apptrace_buffer_get(esp_apptrace_dest_t dest, uint32_t size, uint32_t tmo);
/**
* @brief Indicates that the data in the buffer is ready to be sent.
* This function is a counterpart of and must be preceded by esp_apptrace_buffer_get.
* @brief Indicates that the data in buffer are ready to be sent off.
* This function is a counterpart of and must be preceeded by esp_apptrace_buffer_get.
*
* @param dest Indicates HW interface to send data. Should be identical to the same parameter in call to esp_apptrace_buffer_get.
* @param ptr Address of trace buffer to release. Should be the value returned by call to esp_apptrace_buffer_get.
@@ -81,7 +89,7 @@ esp_err_t esp_apptrace_buffer_put(esp_apptrace_dest_t dest, uint8_t *ptr, uint32
esp_err_t esp_apptrace_write(esp_apptrace_dest_t dest, const void *data, uint32_t size, uint32_t tmo);
/**
* @brief vprintf-like function to send log messages to host via specified HW interface.
* @brief vprintf-like function to sent log messages to host via specified HW interface.
*
* @param dest Indicates HW interface to send data.
* @param tmo Timeout for operation (in us). Use ESP_APPTRACE_TMO_INFINITE to wait indefinitely.
@@ -93,7 +101,7 @@ esp_err_t esp_apptrace_write(esp_apptrace_dest_t dest, const void *data, uint32_
int esp_apptrace_vprintf_to(esp_apptrace_dest_t dest, uint32_t tmo, const char *fmt, va_list ap);
/**
* @brief vprintf-like function to send log messages to host.
* @brief vprintf-like function to sent log messages to host.
*
* @param fmt Address of format string.
* @param ap List of arguments.
@@ -114,7 +122,7 @@ esp_err_t esp_apptrace_flush(esp_apptrace_dest_t dest, uint32_t tmo);
/**
* @brief Flushes remaining data in trace buffer to host without locking internal data.
* This is a special version of esp_apptrace_flush which should be called from panic handler.
* This is special version of esp_apptrace_flush which should be called from panic handler.
*
* @param dest Indicates HW interface to flush data on.
* @param min_sz Threshold for flushing data. If current filling level is above this value, data will be flushed. TRAX destinations only.
@@ -138,7 +146,7 @@ esp_err_t esp_apptrace_read(esp_apptrace_dest_t dest, void *data, uint32_t *size
/**
* @brief Retrieves incoming data buffer if any.
* Once data in the buffer is processed, esp_apptrace_down_buffer_put must be called to indicate it.
* After data in buffer are processed esp_apptrace_down_buffer_put must be called to indicate it.
*
* @param dest Indicates HW interface to receive data.
* @param size Address to store size of available data in down buffer. Must be initialized with requested value.
@@ -149,8 +157,8 @@ esp_err_t esp_apptrace_read(esp_apptrace_dest_t dest, void *data, uint32_t *size
uint8_t *esp_apptrace_down_buffer_get(esp_apptrace_dest_t dest, uint32_t *size, uint32_t tmo);
/**
* @brief Indicates that the data in the down buffer is processed.
* This function is a counterpart of and must be preceded by esp_apptrace_down_buffer_get.
* @brief Indicates that the data in down buffer are processed.
* This function is a counterpart of and must be preceeded by esp_apptrace_down_buffer_get.
*
* @param dest Indicates HW interface to receive data. Should be identical to the same parameter in call to esp_apptrace_down_buffer_get.
* @param ptr Address of trace buffer to release. Should be the value returned by call to esp_apptrace_down_buffer_get.
@@ -245,7 +253,7 @@ int esp_apptrace_fseek(esp_apptrace_dest_t dest, void *stream, long offset, int
int esp_apptrace_ftell(esp_apptrace_dest_t dest, void *stream);
/**
* @brief Indicates to the host that all file operations are complete.
* @brief Indicates to the host that all file operations are completed.
* This function should be called after all file operations are finished and
* indicate to the host that it can perform cleanup operations (close open files etc.).
*

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2017 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef ESP_APP_TRACE_UTIL_H_
#define ESP_APP_TRACE_UTIL_H_
@@ -57,7 +65,7 @@ static inline uint32_t esp_apptrace_tmo_remaining_us(esp_apptrace_tmo_t *tmo)
/** Tracing module synchronization lock */
typedef struct {
spinlock_t mux;
portMUX_TYPE mux;
unsigned int_state;
} esp_apptrace_lock_t;
@@ -68,7 +76,7 @@ typedef struct {
*/
static inline void esp_apptrace_lock_init(esp_apptrace_lock_t *lock)
{
portMUX_INITIALIZE(&lock->mux);
vPortCPUInitializeMutex(&lock->mux);
lock->int_state = 0;
}

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2018-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2018 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef ESP_SYSVIEW_TRACE_H_
#define ESP_SYSVIEW_TRACE_H_

View File

@@ -2,7 +2,6 @@
archive: libapp_trace.a
entries:
app_trace (noflash)
port_uart (noflash)
app_trace_util (noflash)
if APPTRACE_MEMBUFS_APPTRACE_PROTO_ENABLE:
app_trace_membufs_proto (noflash)
@@ -17,7 +16,8 @@ entries:
[mapping:app_trace_driver]
archive: libdriver.a
entries:
if APPTRACE_SV_TS_SOURCE_GPTIMER = y:
gptimer (noflash)
if APPTRACE_SV_TS_SOURCE_TIMER_00 = y || APPTRACE_SV_TS_SOURCE_TIMER_01 = y
|| APPTRACE_SV_TS_SOURCE_TIMER_10 = y || APPTRACE_SV_TS_SOURCE_TIMER_11 = y:
timer (noflash)
else:
* (default)

View File

@@ -1,9 +1,16 @@
/*
* SPDX-FileCopyrightText: 2020-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef ESP_APP_TRACE_PORT_H_
#define ESP_APP_TRACE_PORT_H_

View File

@@ -1,348 +0,0 @@
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include "soc/soc.h"
#include "esp_log.h"
#include "esp_cpu.h"
#include "esp_app_trace_port.h"
#include "driver/uart.h"
#include "hal/uart_ll.h"
#include "string.h"
#include "driver/gpio.h"
#define APPTRACE_DEST_UART (CONFIG_APPTRACE_DEST_UART0 | CONFIG_APPTRACE_DEST_UART1 | CONFIG_APPTRACE_DEST_UART2)
#define APP_TRACE_MAX_TX_BUFF_UART CONFIG_APPTRACE_UART_TX_BUFF_SIZE
#define APP_TRACE_MAX_TX_MSG_UART CONFIG_APPTRACE_UART_TX_MSG_SIZE
/** UART HW transport data */
typedef struct {
uint8_t inited;
#if CONFIG_APPTRACE_LOCK_ENABLE
esp_apptrace_lock_t lock; // sync lock
#endif
uart_port_t port_num;
// TX data ring buffer
uint8_t *tx_data_buff;
int32_t tx_data_buff_in;
int32_t tx_data_buff_out;
// TX message buffer
uint8_t *tx_msg_buff;
uint32_t tx_msg_buff_size;
// RX message buffer
uint8_t *down_buffer;
uint32_t down_buffer_size;
// Buffer overflow flags
bool message_buff_overflow;
bool circular_buff_overflow;
} esp_apptrace_uart_data_t;
#if APPTRACE_DEST_UART
static esp_err_t esp_apptrace_uart_init(esp_apptrace_uart_data_t *hw_data);
static esp_err_t esp_apptrace_uart_flush(esp_apptrace_uart_data_t *hw_data, esp_apptrace_tmo_t *tmo);
static esp_err_t esp_apptrace_uart_flush_nolock(esp_apptrace_uart_data_t *hw_data, uint32_t min_sz, esp_apptrace_tmo_t *tmo);
static uint8_t *esp_apptrace_uart_up_buffer_get(esp_apptrace_uart_data_t *hw_data, uint32_t size, esp_apptrace_tmo_t *tmo);
static esp_err_t esp_apptrace_uart_up_buffer_put(esp_apptrace_uart_data_t *hw_data, uint8_t *ptr, esp_apptrace_tmo_t *tmo);
static void esp_apptrace_uart_down_buffer_config(esp_apptrace_uart_data_t *hw_data, uint8_t *buf, uint32_t size);
static uint8_t *esp_apptrace_uart_down_buffer_get(esp_apptrace_uart_data_t *hw_data, uint32_t *size, esp_apptrace_tmo_t *tmo);
static esp_err_t esp_apptrace_uart_down_buffer_put(esp_apptrace_uart_data_t *hw_data, uint8_t *ptr, esp_apptrace_tmo_t *tmo);
static bool esp_apptrace_uart_host_is_connected(esp_apptrace_uart_data_t *hw_data);
#endif // APPTRACE_DEST_UART
const static char *TAG = "esp_apptrace_uart";
esp_apptrace_hw_t *esp_apptrace_uart_hw_get(int num, void **data)
{
ESP_LOGD(TAG,"esp_apptrace_uart_hw_get - %i", num);
#if APPTRACE_DEST_UART
static esp_apptrace_uart_data_t s_uart_hw_data = {
};
static esp_apptrace_hw_t s_uart_hw = {
.init = (esp_err_t (*)(void *))esp_apptrace_uart_init,
.get_up_buffer = (uint8_t *(*)(void *, uint32_t, esp_apptrace_tmo_t *))esp_apptrace_uart_up_buffer_get,
.put_up_buffer = (esp_err_t (*)(void *, uint8_t *, esp_apptrace_tmo_t *))esp_apptrace_uart_up_buffer_put,
.flush_up_buffer_nolock = (esp_err_t (*)(void *, uint32_t, esp_apptrace_tmo_t *))esp_apptrace_uart_flush_nolock,
.flush_up_buffer = (esp_err_t (*)(void *, esp_apptrace_tmo_t *))esp_apptrace_uart_flush,
.down_buffer_config = (void (*)(void *, uint8_t *, uint32_t ))esp_apptrace_uart_down_buffer_config,
.get_down_buffer = (uint8_t *(*)(void *, uint32_t *, esp_apptrace_tmo_t *))esp_apptrace_uart_down_buffer_get,
.put_down_buffer = (esp_err_t (*)(void *, uint8_t *, esp_apptrace_tmo_t *))esp_apptrace_uart_down_buffer_put,
.host_is_connected = (bool (*)(void *))esp_apptrace_uart_host_is_connected,
};
s_uart_hw_data.port_num = num;
*data = &s_uart_hw_data;
return &s_uart_hw;
#else
return NULL;
#endif
}
#if APPTRACE_DEST_UART
static esp_err_t esp_apptrace_uart_lock(esp_apptrace_uart_data_t *hw_data, esp_apptrace_tmo_t *tmo)
{
#if CONFIG_APPTRACE_LOCK_ENABLE
esp_err_t ret = esp_apptrace_lock_take(&hw_data->lock, tmo);
if (ret != ESP_OK) {
return ESP_FAIL;
}
#endif
return ESP_OK;
}
static esp_err_t esp_apptrace_uart_unlock(esp_apptrace_uart_data_t *hw_data)
{
esp_err_t ret = ESP_OK;
#if CONFIG_APPTRACE_LOCK_ENABLE
ret = esp_apptrace_lock_give(&hw_data->lock);
#endif
return ret;
}
static inline void esp_apptrace_uart_hw_init(void)
{
ESP_APPTRACE_LOGI("Initialized UART on CPU%d", esp_cpu_get_core_id());
}
/*****************************************************************************************/
/***************************** Apptrace HW iface *****************************************/
/*****************************************************************************************/
static esp_err_t esp_apptrace_send_uart_data(esp_apptrace_uart_data_t *hw_data, const char *data, uint32_t size, esp_apptrace_tmo_t *tmo)
{
esp_err_t res = esp_apptrace_uart_lock(hw_data, tmo);
if (res != ESP_OK) {
return res;
}
// We store current out position to handle it without lock
volatile int32_t out_position = hw_data->tx_data_buff_out;
int len_free = APP_TRACE_MAX_TX_BUFF_UART - (hw_data->tx_data_buff_in - out_position);
if (out_position > hw_data->tx_data_buff_in) {
len_free = out_position - hw_data->tx_data_buff_in;
}
int check_len = APP_TRACE_MAX_TX_BUFF_UART - hw_data->tx_data_buff_in;
if (size <= len_free)
{
if ( check_len >= size) {
memcpy(&hw_data->tx_data_buff[hw_data->tx_data_buff_in], data, size);
hw_data->tx_data_buff_in += size;
} else {
memcpy(&hw_data->tx_data_buff[hw_data->tx_data_buff_in], data, APP_TRACE_MAX_TX_BUFF_UART - hw_data->tx_data_buff_in);
memcpy(&hw_data->tx_data_buff[0], &data[APP_TRACE_MAX_TX_BUFF_UART - hw_data->tx_data_buff_in], size - (APP_TRACE_MAX_TX_BUFF_UART - hw_data->tx_data_buff_in));
hw_data->tx_data_buff_in = size - (APP_TRACE_MAX_TX_BUFF_UART - hw_data->tx_data_buff_in);
}
if (hw_data->tx_data_buff_in >= APP_TRACE_MAX_TX_BUFF_UART) {
hw_data->tx_data_buff_in = 0;
}
} else {
hw_data->circular_buff_overflow = true;
}
if (esp_apptrace_uart_unlock(hw_data) != ESP_OK) {
assert(false && "Failed to unlock apptrace data!");
}
return ESP_OK;
}
static void send_buff_data(esp_apptrace_uart_data_t *hw_data, esp_apptrace_tmo_t *tmo)
{
if (hw_data->tx_data_buff_in == hw_data->tx_data_buff_out) {
return;
}
// We store current in position to handle it without lock
volatile int32_t in_position = hw_data->tx_data_buff_in;
if (in_position > hw_data->tx_data_buff_out) {
int bytes_sent = uart_write_bytes(hw_data->port_num, &hw_data->tx_data_buff[hw_data->tx_data_buff_out], in_position - hw_data->tx_data_buff_out);
hw_data->tx_data_buff_out += bytes_sent;
} else {
int bytes_sent = uart_write_bytes(hw_data->port_num, &hw_data->tx_data_buff[hw_data->tx_data_buff_out], APP_TRACE_MAX_TX_BUFF_UART - hw_data->tx_data_buff_out);
hw_data->tx_data_buff_out += bytes_sent;
if (hw_data->tx_data_buff_out >= APP_TRACE_MAX_TX_BUFF_UART) {
hw_data->tx_data_buff_out = 0;
}
}
}
#define APP_TRACE_UART_STOP_WAIT_TMO 1000000 //us
static void esp_apptrace_send_uart_tx_task(void *arg)
{
esp_apptrace_uart_data_t *hw_data = (esp_apptrace_uart_data_t *)arg;
esp_apptrace_tmo_t tmo;
esp_apptrace_tmo_init(&tmo, APP_TRACE_UART_STOP_WAIT_TMO);
vTaskDelay(10);
while (1) {
send_buff_data(hw_data, &tmo);
vTaskDelay(10);
if (hw_data->circular_buff_overflow == true)
{
hw_data->circular_buff_overflow = false;
ESP_LOGE(TAG, "Buffer overflow. Please increase UART baudrate, or increase UART TX ring buffer size in menuconfig.");
}
if (hw_data->message_buff_overflow == true)
{
hw_data->message_buff_overflow = false;
ESP_LOGE(TAG, "Message size more then message buffer!");
}
}
}
static const int APP_TRACE_UART_RX_BUF_SIZE = 4024;
static esp_err_t esp_apptrace_uart_init(esp_apptrace_uart_data_t *hw_data)
{
int core_id = esp_cpu_get_core_id();
if (core_id == 0) {
hw_data->tx_data_buff = (uint8_t *)heap_caps_malloc(APP_TRACE_MAX_TX_BUFF_UART, MALLOC_CAP_INTERNAL|MALLOC_CAP_8BIT);
if (hw_data->tx_data_buff == NULL){
return ESP_ERR_NO_MEM;
}
hw_data->tx_data_buff_in = 0;
hw_data->tx_data_buff_out = 0;
hw_data->tx_msg_buff = (uint8_t *)heap_caps_malloc(APP_TRACE_MAX_TX_MSG_UART, MALLOC_CAP_INTERNAL|MALLOC_CAP_8BIT);
if (hw_data->tx_msg_buff == NULL)
{
return ESP_ERR_NO_MEM;
}
hw_data->tx_msg_buff_size = 0;
hw_data->down_buffer_size = 0;
hw_data->message_buff_overflow = false;
hw_data->circular_buff_overflow = false;
const uart_config_t uart_config = {
.baud_rate = CONFIG_APPTRACE_UART_BAUDRATE,
.data_bits = UART_DATA_8_BITS,
.parity = UART_PARITY_DISABLE,
.stop_bits = UART_STOP_BITS_1,
.flow_ctrl = UART_HW_FLOWCTRL_DISABLE,
.source_clk = UART_SCLK_DEFAULT,
};
ESP_LOGI(TAG, "UART baud rate: %i", CONFIG_APPTRACE_UART_BAUDRATE);
// We won't use a buffer for sending data.
esp_err_t err = uart_driver_install(hw_data->port_num, APP_TRACE_UART_RX_BUF_SIZE, APP_TRACE_UART_RX_BUF_SIZE, 0, NULL, 0);
assert((err == ESP_OK) && "Not possible to install UART. Please check and change menuconfig parameters!");
err = uart_param_config(hw_data->port_num, &uart_config);
assert((err == ESP_OK) && "Not possible to configure UART. Please check and change menuconfig parameters!");
err = uart_set_pin(hw_data->port_num, CONFIG_APPTRACE_UART_TX_GPIO, CONFIG_APPTRACE_UART_RX_GPIO, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE);
assert((err == ESP_OK) && "Not possible to configure UART RX/TX pins. Please check and change menuconfig parameters!");
int uart_prio = CONFIG_APPTRACE_UART_TASK_PRIO;
if (uart_prio >= (configMAX_PRIORITIES-1)) uart_prio = configMAX_PRIORITIES - 1;
err = xTaskCreate(esp_apptrace_send_uart_tx_task, "app_trace_uart_tx_task", 2500, hw_data, uart_prio, NULL);
assert((err == pdPASS) && "Not possible to configure UART. Not possible to create task!");
#if CONFIG_APPTRACE_LOCK_ENABLE
esp_apptrace_lock_init(&hw_data->lock);
#endif
}
// init UART on this CPU
esp_apptrace_uart_hw_init();
hw_data->inited |= 1 << core_id;
return ESP_OK;
}
static uint8_t *esp_apptrace_uart_up_buffer_get(esp_apptrace_uart_data_t *hw_data, uint32_t size, esp_apptrace_tmo_t *tmo)
{
uint8_t *ptr;
if (size > APP_TRACE_MAX_TX_MSG_UART) {
hw_data->message_buff_overflow = true;
return NULL;
}
if (hw_data->tx_msg_buff_size != 0)
{
// A previous message was not sent.
return NULL;
}
esp_err_t res = esp_apptrace_uart_lock(hw_data, tmo);
if (res != ESP_OK) {
return NULL;
}
ptr = hw_data->tx_msg_buff;
hw_data->tx_msg_buff_size = size;
// now we can safely unlock apptrace to allow other tasks/ISRs to get other buffers and write their data
if (esp_apptrace_uart_unlock(hw_data) != ESP_OK) {
assert(false && "Failed to unlock apptrace data!");
}
return ptr;
}
static esp_err_t esp_apptrace_uart_up_buffer_put(esp_apptrace_uart_data_t *hw_data, uint8_t *ptr, esp_apptrace_tmo_t *tmo)
{
esp_err_t res = esp_apptrace_send_uart_data(hw_data, (const char *)ptr, hw_data->tx_msg_buff_size, tmo);
// Clear size to indicate that we've sent data
hw_data->tx_msg_buff_size = 0;
return res;
}
static void esp_apptrace_uart_down_buffer_config(esp_apptrace_uart_data_t *hw_data, uint8_t *buf, uint32_t size)
{
hw_data->down_buffer = (uint8_t *)malloc(size);
if (hw_data->down_buffer == NULL){
assert(false && "Failed to allocate apptrace uart down buffer!");
}
hw_data->down_buffer_size = size;
}
static uint8_t *esp_apptrace_uart_down_buffer_get(esp_apptrace_uart_data_t *hw_data, uint32_t *size, esp_apptrace_tmo_t *tmo)
{
uint8_t *ptr = NULL;
if (*size > hw_data->down_buffer_size) {
return NULL;
}
esp_err_t res = esp_apptrace_uart_lock(hw_data, tmo);
if (res != ESP_OK) {
return NULL;
}
size_t uart_fifolen = 0;
uart_get_buffered_data_len(hw_data->port_num, &uart_fifolen);
if (uart_fifolen > 0) {
if (*size < uart_fifolen) {
uart_fifolen = *size;
}
*size = uart_fifolen;
ptr = hw_data->down_buffer;
*size =uart_read_bytes(hw_data->port_num, ptr, uart_fifolen, 0);
}
if (esp_apptrace_uart_unlock(hw_data) != ESP_OK) {
assert(false && "Failed to unlock apptrace data!");
}
return ptr;
}
static esp_err_t esp_apptrace_uart_down_buffer_put(esp_apptrace_uart_data_t *hw_data, uint8_t *ptr, esp_apptrace_tmo_t *tmo)
{
return ESP_OK;
}
static bool esp_apptrace_uart_host_is_connected(esp_apptrace_uart_data_t *hw_data)
{
return hw_data->inited & 1;
}
static esp_err_t esp_apptrace_uart_flush_nolock(esp_apptrace_uart_data_t *hw_data, uint32_t min_sz, esp_apptrace_tmo_t *tmo)
{
return ESP_OK;
}
static esp_err_t esp_apptrace_uart_flush(esp_apptrace_uart_data_t *hw_data, esp_apptrace_tmo_t *tmo)
{
return ESP_OK;
}
#endif // APPTRACE_DEST_UART

View File

@@ -1,14 +1,6 @@
/*
* SPDX-FileCopyrightText: 2021-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include "esp_cpu.h"
#include "esp_log.h"
#include "esp_app_trace_membufs_proto.h"
#include "esp_app_trace_port.h"
#include "riscv/semihosting.h"
/** RISCV HW transport data */
typedef struct {
@@ -28,6 +20,8 @@ typedef struct {
esp_apptrace_mem_block_t * mem_blocks;
} esp_apptrace_riscv_ctrl_block_t;
#define RISCV_APPTRACE_SYSNR 0x64
#define ESP_APPTRACE_RISCV_BLOCK_LEN_MSK 0x7FFFUL
#define ESP_APPTRACE_RISCV_BLOCK_LEN(_l_) ((_l_) & ESP_APPTRACE_RISCV_BLOCK_LEN_MSK)
#define ESP_APPTRACE_RISCV_BLOCK_LEN_GET(_v_) ((_v_) & ESP_APPTRACE_RISCV_BLOCK_LEN_MSK)
@@ -37,7 +31,7 @@ typedef struct {
#define ESP_APPTRACE_RISCV_HOST_DATA (1 << 22)
#define ESP_APPTRACE_RISCV_HOST_CONNECT (1 << 23)
#define ESP_APPTRACE_RISCV_INITED(_hw_) ((_hw_)->inited & (1 << 0/*esp_cpu_get_core_id()*/))
#define ESP_APPTRACE_RISCV_INITED(_hw_) ((_hw_)->inited & (1 << 0/*cpu_hal_get_core_id()*/))
static esp_err_t esp_apptrace_riscv_init(esp_apptrace_riscv_data_t *hw_data);
static esp_err_t esp_apptrace_riscv_flush(esp_apptrace_riscv_data_t *hw_data, esp_apptrace_tmo_t *tmo);
@@ -58,6 +52,11 @@ const static char *TAG = "esp_apptrace";
static esp_apptrace_riscv_ctrl_block_t s_tracing_ctrl[portNUM_PROCESSORS];
esp_apptrace_hw_t *esp_apptrace_uart_hw_get(int num, void **data)
{
return NULL;
}
esp_apptrace_hw_t *esp_apptrace_jtag_hw_get(void **data)
{
#if CONFIG_APPTRACE_DEST_JTAG
@@ -95,10 +94,25 @@ esp_apptrace_hw_t *esp_apptrace_jtag_hw_get(void **data)
e.g. OpenOCD flasher stub use own implementation of it. */
__attribute__((weak)) int esp_apptrace_advertise_ctrl_block(void *ctrl_block_addr)
{
if (!esp_cpu_dbgr_is_attached()) {
register int sys_nr = RISCV_APPTRACE_SYSNR;
register int host_ret = 0;
if (!esp_cpu_in_ocd_debug_mode()) {
return 0;
}
return (int) semihosting_call_noerrno(ESP_SEMIHOSTING_SYS_APPTRACE_INIT, (long*)ctrl_block_addr);
__asm__ volatile ( \
".option push\n" \
".option norvc\n" \
"mv a0, %[sys_nr]\n" \
"mv a1, %[arg1]\n" \
"slli zero,zero,0x1f\n" \
"ebreak\n" \
"srai zero,zero,0x7\n" \
"mv %[host_ret], a0\n" \
".option pop\n" \
:[host_ret]"=r"(host_ret)
:[sys_nr]"r"(sys_nr),[arg1]"r"(ctrl_block_addr):"a0","a1");
return host_ret;
}
/* Returns up buffers config.
@@ -140,7 +154,7 @@ static esp_err_t esp_apptrace_riscv_unlock(esp_apptrace_riscv_data_t *hw_data)
static esp_err_t esp_apptrace_riscv_init(esp_apptrace_riscv_data_t *hw_data)
{
int core_id = esp_cpu_get_core_id();
int core_id = cpu_hal_get_core_id();
if (hw_data->inited == 0) {
esp_apptrace_mem_block_t mem_blocks_cfg[2];
@@ -254,7 +268,7 @@ static bool esp_apptrace_riscv_host_is_connected(esp_apptrace_riscv_data_t *hw_d
if (!ESP_APPTRACE_RISCV_INITED(hw_data)) {
return false;
}
return s_tracing_ctrl[esp_cpu_get_core_id()].ctrl & ESP_APPTRACE_RISCV_HOST_CONNECT ? true : false;
return s_tracing_ctrl[cpu_hal_get_core_id()].ctrl & ESP_APPTRACE_RISCV_HOST_CONNECT ? true : false;
}
static esp_err_t esp_apptrace_riscv_flush_nolock(esp_apptrace_riscv_data_t *hw_data, uint32_t min_sz, esp_apptrace_tmo_t *tmo)
@@ -298,13 +312,13 @@ static inline void esp_apptrace_riscv_buffer_swap_lock(void)
// HACK: in this case host will set breakpoint just after ESP_APPTRACE_RISCV_CTRL_REG update,
// here we set address to set bp at
// enter ERI update critical section
s_tracing_ctrl[esp_cpu_get_core_id()].stat = (uint32_t)&__esp_apptrace_riscv_updated;
s_tracing_ctrl[cpu_hal_get_core_id()].stat = (uint32_t)&__esp_apptrace_riscv_updated;
}
static __attribute__((noinline)) void esp_apptrace_riscv_buffer_swap_unlock(void)
{
// exit ERI update critical section
s_tracing_ctrl[esp_cpu_get_core_id()].stat = 0;
s_tracing_ctrl[cpu_hal_get_core_id()].stat = 0;
// TODO: currently host sets breakpoint, use break instruction to stop;
// it will allow to use ESP_APPTRACE_RISCV_STAT_REG for other purposes
asm volatile (
@@ -318,13 +332,13 @@ static esp_err_t esp_apptrace_riscv_buffer_swap_start(uint32_t curr_block_id)
esp_apptrace_riscv_buffer_swap_lock();
uint32_t ctrl_reg = s_tracing_ctrl[esp_cpu_get_core_id()].ctrl;
uint32_t ctrl_reg = s_tracing_ctrl[cpu_hal_get_core_id()].ctrl;
uint32_t host_connected = ESP_APPTRACE_RISCV_HOST_CONNECT & ctrl_reg;
if (host_connected) {
uint32_t acked_block = ESP_APPTRACE_RISCV_BLOCK_ID_GET(ctrl_reg);
uint32_t host_to_read = ESP_APPTRACE_RISCV_BLOCK_LEN_GET(ctrl_reg);
if (host_to_read != 0 || acked_block != (curr_block_id & ESP_APPTRACE_RISCV_BLOCK_ID_MSK)) {
ESP_APPTRACE_LOGD("[%d]: Can not switch %x %d %x %x/%lx", esp_cpu_get_core_id(), ctrl_reg, host_to_read, acked_block,
ESP_APPTRACE_LOGD("[%d]: Can not switch %x %d %x %x/%lx", cpu_hal_get_core_id(), ctrl_reg, host_to_read, acked_block,
curr_block_id & ESP_APPTRACE_RISCV_BLOCK_ID_MSK, curr_block_id);
res = ESP_ERR_NO_MEM;
goto _on_err;
@@ -338,9 +352,9 @@ _on_err:
static esp_err_t esp_apptrace_riscv_buffer_swap_end(uint32_t new_block_id, uint32_t prev_block_len)
{
uint32_t ctrl_reg = s_tracing_ctrl[esp_cpu_get_core_id()].ctrl;
uint32_t ctrl_reg = s_tracing_ctrl[cpu_hal_get_core_id()].ctrl;
uint32_t host_connected = ESP_APPTRACE_RISCV_HOST_CONNECT & ctrl_reg;
s_tracing_ctrl[esp_cpu_get_core_id()].ctrl = ESP_APPTRACE_RISCV_BLOCK_ID(new_block_id) |
s_tracing_ctrl[cpu_hal_get_core_id()].ctrl = ESP_APPTRACE_RISCV_BLOCK_ID(new_block_id) |
host_connected | ESP_APPTRACE_RISCV_BLOCK_LEN(prev_block_len);
esp_apptrace_riscv_buffer_swap_unlock();
return ESP_OK;
@@ -354,7 +368,7 @@ static esp_err_t esp_apptrace_riscv_buffer_swap(uint32_t new_block_id)
static bool esp_apptrace_riscv_host_data_pending(void)
{
uint32_t ctrl_reg = s_tracing_ctrl[esp_cpu_get_core_id()].ctrl;
uint32_t ctrl_reg = s_tracing_ctrl[cpu_hal_get_core_id()].ctrl;
// ESP_APPTRACE_LOGV("%s() 0x%x", __func__, ctrl_reg);
return (ctrl_reg & ESP_APPTRACE_RISCV_HOST_DATA) ? true : false;
}

View File

@@ -1,9 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
//
// How It Works
// ************
@@ -148,18 +142,30 @@
// time exceeds specified timeout value operation is canceled and ESP_ERR_TIMEOUT code is returned.
#include "sdkconfig.h"
#include "soc/soc.h"
#include "soc/dport_access.h"
#if CONFIG_IDF_TARGET_ESP32
#include "soc/dport_reg.h"
#include "soc/tracemem_config.h"
#if CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3
#elif CONFIG_IDF_TARGET_ESP32S2
#include "soc/sensitive_reg.h"
#endif
#include "eri.h"
#include "esp_private/trax.h"
#include "esp_cpu.h"
#include "trax.h"
#include "esp_log.h"
#include "esp_app_trace_membufs_proto.h"
#include "esp_app_trace_port.h"
// TODO: move these (and same definitions in trax.c to dport_reg.h)
#if CONFIG_IDF_TARGET_ESP32
#define TRACEMEM_MUX_PROBLK0_APPBLK1 0
#define TRACEMEM_MUX_BLK0_ONLY 1
#define TRACEMEM_MUX_BLK1_ONLY 2
#define TRACEMEM_MUX_PROBLK1_APPBLK0 3
#elif CONFIG_IDF_TARGET_ESP32S2
#define TRACEMEM_MUX_BLK0_NUM 19
#define TRACEMEM_MUX_BLK1_NUM 20
#define TRACEMEM_BLK_NUM2ADDR(_n_) (0x3FFB8000UL + 0x4000UL*((_n_)-4))
#endif
// TRAX is disabled, so we use its registers for our own purposes
// | 31..XXXXXX..24 | 23 .(host_connect). 23 | 22 .(host_data). 22| 21..(block_id)..15 | 14..(block_len)..0 |
#define ESP_APPTRACE_TRAX_CTRL_REG ERI_TRAX_DELAYCNT
@@ -174,7 +180,19 @@
#define ESP_APPTRACE_TRAX_HOST_DATA (1 << 22)
#define ESP_APPTRACE_TRAX_HOST_CONNECT (1 << 23)
#define ESP_APPTRACE_TRAX_INITED(_hw_) ((_hw_)->inited & (1 << esp_cpu_get_core_id()))
#define ESP_APPTRACE_TRAX_INITED(_hw_) ((_hw_)->inited & (1 << cpu_hal_get_core_id()))
#if CONFIG_IDF_TARGET_ESP32
static uint8_t * const s_trax_blocks[] = {
(uint8_t *) 0x3FFFC000,
(uint8_t *) 0x3FFF8000
};
#elif CONFIG_IDF_TARGET_ESP32S2
static uint8_t * const s_trax_blocks[] = {
(uint8_t *)TRACEMEM_BLK_NUM2ADDR(TRACEMEM_MUX_BLK0_NUM),
(uint8_t *)TRACEMEM_BLK_NUM2ADDR(TRACEMEM_MUX_BLK1_NUM)
};
#endif
#define ESP_APPTRACE_TRAX_BLOCK_SIZE (0x4000UL)
@@ -205,10 +223,10 @@ static bool esp_apptrace_trax_host_data_pending(void);
const static char *TAG = "esp_apptrace";
static uint8_t * const s_trax_blocks[] = {
(uint8_t *)TRACEMEM_BLK0_ADDR,
(uint8_t *)TRACEMEM_BLK1_ADDR
};
esp_apptrace_hw_t *esp_apptrace_uart_hw_get(int num, void **data)
{
return NULL;
}
esp_apptrace_hw_t *esp_apptrace_jtag_hw_get(void **data)
{
@@ -272,7 +290,7 @@ static inline void esp_apptrace_trax_hw_init(void)
// must be read by host before any transfer using TRAX
eri_write(ESP_APPTRACE_TRAX_STAT_REG, 0);
ESP_APPTRACE_LOGI("Initialized TRAX on CPU%d", esp_cpu_get_core_id());
ESP_APPTRACE_LOGI("Initialized TRAX on CPU%d", cpu_hal_get_core_id());
}
static inline void esp_apptrace_trax_select_memory_block(int block_num)
@@ -282,14 +300,6 @@ static inline void esp_apptrace_trax_select_memory_block(int block_num)
DPORT_WRITE_PERI_REG(DPORT_TRACEMEM_MUX_MODE_REG, block_num ? TRACEMEM_MUX_BLK0_ONLY : TRACEMEM_MUX_BLK1_ONLY);
#elif CONFIG_IDF_TARGET_ESP32S2
WRITE_PERI_REG(DPORT_PMS_OCCUPY_3_REG, block_num ? BIT(TRACEMEM_MUX_BLK0_NUM-4) : BIT(TRACEMEM_MUX_BLK1_NUM-4));
#elif CONFIG_IDF_TARGET_ESP32S3
// select memory block to be exposed to the TRAX module (accessed by host)
uint32_t block_bits = block_num ? TRACEMEM_CORE0_MUX_BLK_BITS(TRACEMEM_MUX_BLK0_NUM)
: TRACEMEM_CORE0_MUX_BLK_BITS(TRACEMEM_MUX_BLK1_NUM);
block_bits |= block_num ? TRACEMEM_CORE1_MUX_BLK_BITS(TRACEMEM_MUX_BLK0_NUM)
: TRACEMEM_CORE1_MUX_BLK_BITS(TRACEMEM_MUX_BLK1_NUM);
ESP_EARLY_LOGV(TAG, "Select block %d @ %p (bits 0x%x)", block_num, s_trax_blocks[block_num], block_bits);
DPORT_WRITE_PERI_REG(SENSITIVE_INTERNAL_SRAM_USAGE_2_REG, block_bits);
#endif
}
@@ -311,7 +321,7 @@ static inline void esp_apptrace_trax_memory_enable(void)
static esp_err_t esp_apptrace_trax_init(esp_apptrace_trax_data_t *hw_data)
{
int core_id = esp_cpu_get_core_id();
int core_id = cpu_hal_get_core_id();
// 'esp_apptrace_trax_init()' is called on every core, so ensure to do main initialization only once
if (core_id == 0) {
@@ -498,7 +508,7 @@ static esp_err_t esp_apptrace_trax_buffer_swap_start(uint32_t curr_block_id)
uint32_t acked_block = ESP_APPTRACE_TRAX_BLOCK_ID_GET(ctrl_reg);
uint32_t host_to_read = ESP_APPTRACE_TRAX_BLOCK_LEN_GET(ctrl_reg);
if (host_to_read != 0 || acked_block != (curr_block_id & ESP_APPTRACE_TRAX_BLOCK_ID_MSK)) {
ESP_APPTRACE_LOGD("HC[%d]: Can not switch %x %d %x %x/%lx", esp_cpu_get_core_id(), ctrl_reg, host_to_read, acked_block,
ESP_APPTRACE_LOGD("HC[%d]: Can not switch %x %d %x %x/%lx", cpu_hal_get_core_id(), ctrl_reg, host_to_read, acked_block,
curr_block_id & ESP_APPTRACE_TRAX_BLOCK_ID_MSK, curr_block_id);
res = ESP_ERR_NO_MEM;
goto _on_err;

View File

@@ -1,9 +1,16 @@
/*
* SPDX-FileCopyrightText: 2020-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2020 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef ESP_APP_TRACE_MEMBUFS_PROTO_H_
#define ESP_APP_TRACE_MEMBUFS_PROTO_H_

View File

@@ -2,7 +2,7 @@
#
# Create coverage report.
function(idf_create_coverage_report report_dir)
set(gcov_tool ${_CMAKE_TOOLCHAIN_PREFIX}gcov)
set(gcov_tool ${CONFIG_SDK_TOOLPREFIX}gcov)
idf_build_get_property(project_name PROJECT_NAME)
add_custom_target(pre-cov-report

View File

@@ -14,6 +14,10 @@ CONFIG_ESP32_GCOV_ENABLE CONFIG_APPTRACE_GCOV_ENABLE
CONFIG_SYSVIEW_ENABLE CONFIG_APPTRACE_SV_ENABLE
CONFIG_SYSVIEW_TS_SOURCE CONFIG_APPTRACE_SV_TS_SOURCE
CONFIG_SYSVIEW_TS_SOURCE_CCOUNT CONFIG_APPTRACE_SV_TS_SOURCE_CCOUNT
CONFIG_SYSVIEW_TS_SOURCE_TIMER_00 CONFIG_APPTRACE_SV_TS_SOURCE_TIMER_00
CONFIG_SYSVIEW_TS_SOURCE_TIMER_01 CONFIG_APPTRACE_SV_TS_SOURCE_TIMER_01
CONFIG_SYSVIEW_TS_SOURCE_TIMER_10 CONFIG_APPTRACE_SV_TS_SOURCE_TIMER_10
CONFIG_SYSVIEW_TS_SOURCE_TIMER_11 CONFIG_APPTRACE_SV_TS_SOURCE_TIMER_11
CONFIG_SYSVIEW_TS_SOURCE_ESP_TIMER CONFIG_APPTRACE_SV_TS_SOURCE_ESP_TIMER
CONFIG_SYSVIEW_MAX_TASKS CONFIG_APPTRACE_SV_MAX_TASKS
CONFIG_SYSVIEW_BUF_WAIT_TMO CONFIG_APPTRACE_SV_BUF_WAIT_TMO

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *
@@ -74,7 +69,7 @@ Additional information:
Packets with IDs 24..31 are standard packets with extendible
structure and contain a length field.
<ID><Length><Data><TimeStampDelta>
<ID><Lenght><Data><TimeStampDelta>
Packets with IDs >= 32 always contain a length field.
<ID><Length><Data><TimeStampDelta>
@@ -1686,8 +1681,7 @@ void SEGGER_SYSVIEW_Start(void) {
void SEGGER_SYSVIEW_Stop(void) {
U8* pPayloadStart;
RECORD_START(SEGGER_SYSVIEW_INFO_SIZE);
// We should send answer for the Stop command in any case.
_SYSVIEW_Globals.EnableState = 1;
//
if (_SYSVIEW_Globals.EnableState) {
_SendPacket(pPayloadStart, pPayloadStart, SYSVIEW_EVTID_TRACE_STOP);
_SYSVIEW_Globals.EnableState = 0;
@@ -1807,10 +1801,6 @@ void SEGGER_SYSVIEW_SendSysDesc(const char *sSysDesc) {
*/
void SEGGER_SYSVIEW_RecordSystime(void) {
U64 Systime;
// This code requeued because SystemView expect the answer from the device.
// If there is no answer, then communication will be broken.
U8 old_en = _SYSVIEW_Globals.EnableState;
_SYSVIEW_Globals.EnableState = 1;
if (_SYSVIEW_Globals.pOSAPI && _SYSVIEW_Globals.pOSAPI->pfGetTime) {
Systime = _SYSVIEW_Globals.pOSAPI->pfGetTime();
@@ -1820,7 +1810,6 @@ void SEGGER_SYSVIEW_RecordSystime(void) {
} else {
SEGGER_SYSVIEW_RecordU32(SYSVIEW_EVTID_SYSTIME_CYCLES, SEGGER_SYSVIEW_GET_TIMESTAMP());
}
_SYSVIEW_Globals.EnableState = old_en;
}
/*********************************************************************

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *

View File

@@ -1,10 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*
* SPDX-FileContributor: 2017-2022 Espressif Systems (Shanghai) CO LTD
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *
@@ -76,7 +69,14 @@ Revision: $Rev: 3734 $
#include "esp_intr_alloc.h"
#include "soc/soc.h"
#include "soc/interrupts.h"
#include "esp_private/esp_clk.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/clk.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/clk.h"
#elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/clk.h"
#endif
extern const SEGGER_SYSVIEW_OS_API SYSVIEW_X_OS_TraceAPI;
@@ -108,16 +108,26 @@ extern const SEGGER_SYSVIEW_OS_API SYSVIEW_X_OS_TraceAPI;
#endif
#if TS_USE_TIMERGROUP
#include "driver/gptimer.h"
#include "driver/timer.h"
// Timer group timer divisor
#define SYSVIEW_TIMER_DIV 2
// Frequency of the timestamp, using APB as GPTimer source clock
// Frequency of the timestamp.
#define SYSVIEW_TIMESTAMP_FREQ (esp_clk_apb_freq() / SYSVIEW_TIMER_DIV)
// GPTimer handle
gptimer_handle_t s_sv_gptimer;
// Timer ID and group ID
#if defined(CONFIG_APPTRACE_SV_TS_SOURCE_TIMER_00) || defined(CONFIG_APPTRACE_SV_TS_SOURCE_TIMER_01)
#define TS_TIMER_ID 0
#else
#define TS_TIMER_ID 1
#endif // TIMER_00 || TIMER_01
#if defined(CONFIG_APPTRACE_SV_TS_SOURCE_TIMER_00) || defined(CONFIG_APPTRACE_SV_TS_SOURCE_TIMER_10)
#define TS_TIMER_GROUP 0
#else
#define TS_TIMER_GROUP 1
#endif // TIMER_00 || TIMER_10
#endif // TS_USE_TIMERGROUP
@@ -128,7 +138,11 @@ gptimer_handle_t s_sv_gptimer;
#if TS_USE_CCOUNT
// CCOUNT is incremented at CPU frequency
#define SYSVIEW_TIMESTAMP_FREQ (CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ * 1000000)
#if CONFIG_IDF_TARGET_ESP32
#define SYSVIEW_TIMESTAMP_FREQ (CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ * 1000000)
#elif CONFIG_IDF_TARGET_ESP32S2
#define SYSVIEW_TIMESTAMP_FREQ (CONFIG_ESP32S2_DEFAULT_CPU_FREQ_MHZ * 1000000)
#endif
#endif // TS_USE_CCOUNT
// System Frequency.
@@ -137,17 +151,16 @@ gptimer_handle_t s_sv_gptimer;
// The lowest RAM address used for IDs (pointers)
#define SYSVIEW_RAM_BASE (SOC_DROM_LOW)
#ifdef CONFIG_FREERTOS_TICK_SUPPORT_CORETIMER
#if CONFIG_IDF_TARGET_ESP32 || CONFIG_IDF_TARGET_ESP32S2
#if CONFIG_FREERTOS_CORETIMER_0
#define SYSTICK_INTR_ID (ETS_INTERNAL_TIMER0_INTR_SOURCE+ETS_INTERNAL_INTR_SOURCE_OFF)
#endif
#if CONFIG_FREERTOS_CORETIMER_1
#define SYSTICK_INTR_ID (ETS_INTERNAL_TIMER1_INTR_SOURCE+ETS_INTERNAL_INTR_SOURCE_OFF)
#endif
#elif CONFIG_FREERTOS_SYSTICK_USES_SYSTIMER
#define SYSTICK_INTR_ID (ETS_SYSTIMER_TARGET0_EDGE_INTR_SOURCE)
#endif // CONFIG_FREERTOS_TICK_SUPPORT_CORETIMER
#elif CONFIG_IDF_TARGET_ESP32C3
#define SYSTICK_INTR_ID (ETS_SYSTIMER_TARGET0_EDGE_INTR_SOURCE+ETS_INTERNAL_INTR_SOURCE_OFF)
#endif
// SystemView is single core specific: it implies that SEGGER_SYSVIEW_LOCK()
// disables IRQs (disables rescheduling globally). So we can not use finite timeouts for locks and return error
@@ -190,16 +203,19 @@ static void SEGGER_SYSVIEW_TS_Init(void)
* esp_timer and ccount can be used as is.
*/
#if TS_USE_TIMERGROUP
gptimer_config_t config = {
.clk_src = GPTIMER_CLK_SRC_DEFAULT,
.direction = GPTIMER_COUNT_UP,
.resolution_hz = SYSVIEW_TIMESTAMP_FREQ,
timer_config_t config = {
.alarm_en = 0,
.auto_reload = 0,
.counter_dir = TIMER_COUNT_UP,
.divider = SYSVIEW_TIMER_DIV,
.counter_en = 0
};
// pick any free GPTimer instance
ESP_ERROR_CHECK(gptimer_new_timer(&config, &s_sv_gptimer));
/* Configure timer */
timer_init(TS_TIMER_GROUP, TS_TIMER_ID, &config);
/* Load counter value */
timer_set_counter_value(TS_TIMER_GROUP, TS_TIMER_ID, 0x00000000ULL);
/* Start counting */
gptimer_enable(s_sv_gptimer);
gptimer_start(s_sv_gptimer);
timer_start(TS_TIMER_GROUP, TS_TIMER_ID);
#endif // TS_USE_TIMERGROUP
}
@@ -257,7 +273,7 @@ U32 SEGGER_SYSVIEW_X_GetTimestamp(void)
{
#if TS_USE_TIMERGROUP
uint64_t ts = 0;
gptimer_get_raw_count(s_sv_gptimer, &ts);
timer_get_counter_value(TS_TIMER_GROUP, TS_TIMER_ID, &ts);
return (U32) ts; // return lower part of counter value
#elif TS_USE_CCOUNT
return portGET_RUN_TIME_COUNTER_VALUE();

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *
@@ -142,11 +137,7 @@ static U64 _cbGetTime(void) {
void SYSVIEW_AddTask(U32 xHandle, const char* pcTaskName, unsigned uxCurrentPriority, U32 pxStack, unsigned uStackHighWaterMark) {
unsigned n;
/* On multi-core we have several idle tasks with 'IDLEx' names
Not best solution, because we can filter out user tasks starting with 'IDLE'.
But we can not use 'xTaskGetIdleTaskHandle' because at the moment when this
function is called array of idle tasks handles are not initialized yet. */
if (memcmp(pcTaskName, "IDLE", 4) == 0) {
if (memcmp(pcTaskName, "IDLE", 5) == 0) {
return;
}
@@ -180,11 +171,7 @@ void SYSVIEW_AddTask(U32 xHandle, const char* pcTaskName, unsigned uxCurrentPrio
void SYSVIEW_UpdateTask(U32 xHandle, const char* pcTaskName, unsigned uxCurrentPriority, U32 pxStack, unsigned uStackHighWaterMark) {
unsigned n;
/* On multi-core we have several idle tasks with 'IDLEx' names
Not best solution, because we can filter out user tasks starting with 'IDLE'.
But we can not use 'xTaskGetIdleTaskHandle' because at the moment when this
function is called array of idle tasks handles are not initialized yet. */
if (memcmp(pcTaskName, "IDLE", 4) == 0) {
if (memcmp(pcTaskName, "IDLE", 5) == 0) {
return;
}

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: 2015-2017 SEGGER Microcontroller GmbH & Co. KG
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/*********************************************************************
* SEGGER Microcontroller GmbH & Co. KG *
* The Embedded Experts *
@@ -81,6 +76,9 @@ Notes:
*
**********************************************************************
*/
#ifndef portSTACK_GROWTH
#define portSTACK_GROWTH ( -1 )
#endif
#define SYSVIEW_FREERTOS_MAX_NOF_TASKS CONFIG_APPTRACE_SV_MAX_TASKS
@@ -211,38 +209,24 @@ Notes:
#define apiID_VEVENTGROUPDELETE (72u)
#define apiID_UXEVENTGROUPGETNUMBER (73u)
#ifdef CONFIG_FREERTOS_SMP
#define traceQUEUE_SEND( pxQueue ) SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XQUEUEGENERICSEND, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue), 0, 0, 0)
#else // CONFIG_FREERTOS_SMP
#if ( configUSE_QUEUE_SETS != 1 )
#define traceQUEUE_SEND( pxQueue ) SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XQUEUEGENERICSEND, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue), (U32)pvItemToQueue, xTicksToWait, xCopyPosition)
#else
#define traceQUEUE_SEND( pxQueue ) SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XQUEUEGENERICSEND, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue), 0, 0, xCopyPosition)
#endif
#endif // CONFIG_FREERTOS_SMP
#define traceTASK_NOTIFY_TAKE( uxIndexToWait ) SEGGER_SYSVIEW_RecordU32x2(apiFastID_OFFSET + apiID_ULTASKNOTIFYTAKE, xClearCountOnExit, xTicksToWait)
#define traceTASK_NOTIFY_TAKE() SEGGER_SYSVIEW_RecordU32x2(apiFastID_OFFSET + apiID_ULTASKNOTIFYTAKE, xClearCountOnExit, xTicksToWait)
#define traceTASK_DELAY() SEGGER_SYSVIEW_RecordU32(apiFastID_OFFSET + apiID_VTASKDELAY, xTicksToDelay)
#define traceTASK_DELAY_UNTIL( xTimeToWake ) SEGGER_SYSVIEW_RecordVoid(apiFastID_OFFSET + apiID_VTASKDELAYUNTIL)
#define traceTASK_DELETE( pxTCB ) do { \
SEGGER_SYSVIEW_RecordU32(apiFastID_OFFSET + apiID_VTASKDELETE, \
SEGGER_SYSVIEW_ShrinkId((U32)pxTCB)); \
SYSVIEW_DeleteTask((U32)pxTCB); \
} while(0)
#define traceTASK_NOTIFY_GIVE_FROM_ISR( uxIndexToNotify ) SEGGER_SYSVIEW_RecordU32x2(apiFastID_OFFSET + apiID_VTASKNOTIFYGIVEFROMISR, SEGGER_SYSVIEW_ShrinkId((U32)pxTCB), (U32)pxHigherPriorityTaskWoken)
#define traceTASK_DELAY_UNTIL() SEGGER_SYSVIEW_RecordVoid(apiFastID_OFFSET + apiID_VTASKDELAYUNTIL)
#define traceTASK_DELETE( pxTCB ) if (pxTCB != NULL) { \
SEGGER_SYSVIEW_RecordU32(apiFastID_OFFSET + apiID_VTASKDELETE, \
SEGGER_SYSVIEW_ShrinkId((U32)pxTCB)); \
SYSVIEW_DeleteTask((U32)pxTCB); \
}
#define traceTASK_NOTIFY_GIVE_FROM_ISR() SEGGER_SYSVIEW_RecordU32x2(apiFastID_OFFSET + apiID_VTASKNOTIFYGIVEFROMISR, SEGGER_SYSVIEW_ShrinkId((U32)pxTCB), (U32)pxHigherPriorityTaskWoken)
#define traceTASK_PRIORITY_INHERIT( pxTCB, uxPriority ) SEGGER_SYSVIEW_RecordU32(apiFastID_OFFSET + apiID_VTASKPRIORITYINHERIT, (U32)pxMutexHolder)
#define traceTASK_RESUME( pxTCB ) SEGGER_SYSVIEW_RecordU32(apiFastID_OFFSET + apiID_VTASKRESUME, SEGGER_SYSVIEW_ShrinkId((U32)pxTCB))
#define traceINCREASE_TICK_COUNT( xTicksToJump ) SEGGER_SYSVIEW_RecordU32(apiFastID_OFFSET + apiID_VTASKSTEPTICK, xTicksToJump)
#define traceTASK_SUSPEND( pxTCB ) SEGGER_SYSVIEW_RecordU32(apiFastID_OFFSET + apiID_VTASKSUSPEND, SEGGER_SYSVIEW_ShrinkId((U32)pxTCB))
#define traceTASK_PRIORITY_DISINHERIT( pxTCB, uxBasePriority ) SEGGER_SYSVIEW_RecordU32(apiFastID_OFFSET + apiID_XTASKPRIORITYDISINHERIT, (U32)pxMutexHolder)
#define traceTASK_RESUME_FROM_ISR( pxTCB ) SEGGER_SYSVIEW_RecordU32(apiFastID_OFFSET + apiID_XTASKRESUMEFROMISR, SEGGER_SYSVIEW_ShrinkId((U32)pxTCB))
#define traceTASK_NOTIFY( uxIndexToNotify ) SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XTASKGENERICNOTIFY, SEGGER_SYSVIEW_ShrinkId((U32)pxTCB), ulValue, eAction, (U32)pulPreviousNotificationValue)
#define traceTASK_NOTIFY_FROM_ISR( uxIndexToNotify ) SYSVIEW_RecordU32x5(apiFastID_OFFSET + apiID_XTASKGENERICNOTIFYFROMISR, SEGGER_SYSVIEW_ShrinkId((U32)pxTCB), ulValue, eAction, (U32)pulPreviousNotificationValue, (U32)pxHigherPriorityTaskWoken)
#define traceTASK_NOTIFY_WAIT( uxIndexToWait ) SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XTASKNOTIFYWAIT, ulBitsToClearOnEntry, ulBitsToClearOnExit, (U32)pulNotificationValue, xTicksToWait)
#define traceTASK_NOTIFY() SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XTASKGENERICNOTIFY, SEGGER_SYSVIEW_ShrinkId((U32)pxTCB), ulValue, eAction, (U32)pulPreviousNotificationValue)
#define traceTASK_NOTIFY_FROM_ISR() SYSVIEW_RecordU32x5(apiFastID_OFFSET + apiID_XTASKGENERICNOTIFYFROMISR, SEGGER_SYSVIEW_ShrinkId((U32)pxTCB), ulValue, eAction, (U32)pulPreviousNotificationValue, (U32)pxHigherPriorityTaskWoken)
#define traceTASK_NOTIFY_WAIT() SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XTASKNOTIFYWAIT, ulBitsToClearOnEntry, ulBitsToClearOnExit, (U32)pulNotificationValue, xTicksToWait)
#define traceQUEUE_CREATE( pxNewQueue ) SEGGER_SYSVIEW_RecordU32x3(apiFastID_OFFSET + apiID_XQUEUEGENERICCREATE, uxQueueLength, uxItemSize, ucQueueType)
#define traceQUEUE_DELETE( pxQueue ) SEGGER_SYSVIEW_RecordU32(apiFastID_OFFSET + apiID_VQUEUEDELETE, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue))
@@ -255,6 +239,11 @@ Notes:
#define traceQUEUE_RECEIVE_FROM_ISR( pxQueue ) SEGGER_SYSVIEW_RecordU32x3(apiFastID_OFFSET + apiID_XQUEUERECEIVEFROMISR, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue), SEGGER_SYSVIEW_ShrinkId((U32)pvBuffer), (U32)pxHigherPriorityTaskWoken)
#define traceQUEUE_RECEIVE_FROM_ISR_FAILED( pxQueue ) SEGGER_SYSVIEW_RecordU32x3(apiFastID_OFFSET + apiID_XQUEUERECEIVEFROMISR, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue), SEGGER_SYSVIEW_ShrinkId((U32)pvBuffer), (U32)pxHigherPriorityTaskWoken)
#define traceQUEUE_REGISTRY_ADD( xQueue, pcQueueName ) SEGGER_SYSVIEW_RecordU32x2(apiFastID_OFFSET + apiID_VQUEUEADDTOREGISTRY, SEGGER_SYSVIEW_ShrinkId((U32)xQueue), (U32)pcQueueName)
#if ( configUSE_QUEUE_SETS != 1 )
#define traceQUEUE_SEND( pxQueue ) SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XQUEUEGENERICSEND, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue), (U32)pvItemToQueue, xTicksToWait, xCopyPosition)
#else
#define traceQUEUE_SEND( pxQueue ) SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XQUEUEGENERICSEND, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue), 0, 0, xCopyPosition)
#endif
#define traceQUEUE_SEND_FAILED( pxQueue ) SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XQUEUEGENERICSEND, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue), (U32)pvItemToQueue, xTicksToWait, xCopyPosition)
#define traceQUEUE_SEND_FROM_ISR( pxQueue ) SEGGER_SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XQUEUEGENERICSENDFROMISR, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue), (U32)pvItemToQueue, (U32)pxHigherPriorityTaskWoken, xCopyPosition)
#define traceQUEUE_SEND_FROM_ISR_FAILED( pxQueue ) SEGGER_SYSVIEW_RecordU32x4(apiFastID_OFFSET + apiID_XQUEUEGENERICSENDFROMISR, SEGGER_SYSVIEW_ShrinkId((U32)pxQueue), (U32)pvItemToQueue, (U32)pxHigherPriorityTaskWoken, xCopyPosition)
@@ -297,37 +286,34 @@ Notes:
//
// Define INCLUDE_xTaskGetIdleTaskHandle as 1 in FreeRTOSConfig.h to allow identification of Idle state.
//
// SMP FreeRTOS uses unpinned IDLE tasks, so sometimes IDEL0 runs on CPU1, IDLE1 runs on CPU0 and so on.
// So IDLE state detection based on 'xTaskGetIdleTaskHandle' does not work for SMP kernel.
// We could compare current task handle with every element of the array returned by 'xTaskGetIdleTaskHandle',
// but it deos not seem to be efficient enough to be worth of making code more complex and less readabl.
// So always use task name comparison mechanism for SMP kernel.
#if ( INCLUDE_xTaskGetIdleTaskHandle == 1 && !defined(CONFIG_FREERTOS_SMP))
#if ( INCLUDE_xTaskGetIdleTaskHandle == 1 )
#define traceTASK_SWITCHED_IN() if(prvGetTCBFromHandle(NULL) == xTaskGetIdleTaskHandle()) { \
SEGGER_SYSVIEW_OnIdle(); \
} else { \
SEGGER_SYSVIEW_OnTaskStartExec((U32)prvGetTCBFromHandle(NULL)); \
SEGGER_SYSVIEW_OnTaskStartExec((U32)pxCurrentTCB[cpu_hal_get_core_id()]); \
}
#else
#define traceTASK_SWITCHED_IN() { \
if (memcmp(prvGetTCBFromHandle(NULL)->pcTaskName, "IDLE", 4) != 0) { \
SEGGER_SYSVIEW_OnTaskStartExec((U32)prvGetTCBFromHandle(NULL)); \
if (memcmp(pxCurrentTCB[cpu_hal_get_core_id()]->pcTaskName, "IDLE", 5) != 0) { \
SEGGER_SYSVIEW_OnTaskStartExec((U32)pxCurrentTCB[cpu_hal_get_core_id()]); \
} else { \
SEGGER_SYSVIEW_OnIdle(); \
} \
}
#endif
#define traceMOVED_TASK_TO_READY_STATE(pxTCB) SEGGER_SYSVIEW_OnTaskStartReady((U32)pxTCB)
#define traceREADDED_TASK_TO_READY_STATE(pxTCB)
#define traceMOVED_TASK_TO_DELAYED_LIST() SEGGER_SYSVIEW_OnTaskStopReady((U32)prvGetTCBFromHandle(NULL)], (1u << 2))
#define traceMOVED_TASK_TO_OVERFLOW_DELAYED_LIST() SEGGER_SYSVIEW_OnTaskStopReady((U32)prvGetTCBFromHandle(NULL)], (1u << 2))
#define traceMOVED_TASK_TO_DELAYED_LIST() SEGGER_SYSVIEW_OnTaskStopReady((U32)pxCurrentTCB[cpu_hal_get_core_id()], (1u << 2))
#define traceMOVED_TASK_TO_OVERFLOW_DELAYED_LIST() SEGGER_SYSVIEW_OnTaskStopReady((U32)pxCurrentTCB[cpu_hal_get_core_id()], (1u << 2))
#define traceMOVED_TASK_TO_SUSPENDED_LIST(pxTCB) SEGGER_SYSVIEW_OnTaskStopReady((U32)pxTCB, ((3u << 3) | 3))
#define traceISR_EXIT_TO_SCHEDULER() SEGGER_SYSVIEW_RecordExitISRToScheduler()
#define traceISR_EXIT() SEGGER_SYSVIEW_RecordExitISR()
#define traceISR_ENTER(_n_) SEGGER_SYSVIEW_RecordEnterISR(_n_)
/*********************************************************************
*
* API functions

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2017-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2017 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include "string.h"
#include "freertos/FreeRTOS.h"
@@ -12,8 +20,6 @@
#include "esp_app_trace.h"
#include "esp_log.h"
#include "esp_cpu.h"
#include "esp_private/startup_internal.h"
const static char *TAG = "segger_rtt";
@@ -32,19 +38,6 @@ static uint8_t s_events_buf[SYSVIEW_EVENTS_BUF_SZ];
static uint16_t s_events_buf_filled;
static uint8_t s_down_buf[SYSVIEW_DOWN_BUF_SIZE];
#if CONFIG_APPTRACE_SV_DEST_UART
#define ESP_APPTRACE_DEST_SYSVIEW ESP_APPTRACE_DEST_UART
#if CONFIG_APPTRACE_SV_DEST_CPU_0 || CONFIG_FREERTOS_UNICORE
#define APPTRACE_SV_DEST_CPU 0
#else
#define APPTRACE_SV_DEST_CPU 1
#endif // CONFIG_APPTRACE_SV_DEST_CPU_0
#elif CONFIG_APPTRACE_SV_DEST_JTAG || (CONFIG_APPTRACE_ENABLE && CONFIG_APPTRACE_DEST_UART_NONE)
#define ESP_APPTRACE_DEST_SYSVIEW ESP_APPTRACE_DEST_TRAX
#endif
/*********************************************************************
*
* Public code
@@ -70,13 +63,13 @@ void SEGGER_RTT_ESP_FlushNoLock(unsigned long min_sz, unsigned long tmo)
{
esp_err_t res;
if (s_events_buf_filled > 0) {
res = esp_apptrace_write(ESP_APPTRACE_DEST_SYSVIEW, s_events_buf, s_events_buf_filled, tmo);
res = esp_apptrace_write(ESP_APPTRACE_DEST_TRAX, s_events_buf, s_events_buf_filled, tmo);
if (res != ESP_OK) {
ESP_LOGE(TAG, "Failed to flush buffered events (%d)!\n", res);
}
}
// flush even if we failed to write buffered events, because no new events will be sent after STOP
res = esp_apptrace_flush_nolock(ESP_APPTRACE_DEST_SYSVIEW, min_sz, tmo);
res = esp_apptrace_flush_nolock(ESP_APPTRACE_DEST_TRAX, min_sz, tmo);
if (res != ESP_OK) {
ESP_LOGE(TAG, "Failed to flush apptrace data (%d)!\n", res);
}
@@ -123,7 +116,7 @@ void SEGGER_RTT_ESP_Flush(unsigned long min_sz, unsigned long tmo)
*/
unsigned SEGGER_RTT_ReadNoLock(unsigned BufferIndex, void* pData, unsigned BufferSize) {
uint32_t size = BufferSize;
esp_err_t res = esp_apptrace_read(ESP_APPTRACE_DEST_SYSVIEW, pData, &size, 0);
esp_err_t res = esp_apptrace_read(ESP_APPTRACE_DEST_TRAX, pData, &size, 0);
if (res != ESP_OK) {
return 0;
}
@@ -157,40 +150,12 @@ unsigned SEGGER_RTT_ReadNoLock(unsigned BufferIndex, void* pData, unsigned Buffe
unsigned SEGGER_RTT_WriteSkipNoLock(unsigned BufferIndex, const void* pBuffer, unsigned NumBytes) {
uint8_t *pbuf = (uint8_t *)pBuffer;
uint8_t event_id = *pbuf;
#if CONFIG_APPTRACE_SV_DEST_UART
if (
(APPTRACE_SV_DEST_CPU != esp_cpu_get_core_id()) &&
(
(event_id == SYSVIEW_EVTID_ISR_ENTER) ||
(event_id == SYSVIEW_EVTID_ISR_EXIT) ||
(event_id == SYSVIEW_EVTID_TASK_START_EXEC) ||
(event_id == SYSVIEW_EVTID_TASK_STOP_EXEC) ||
(event_id == SYSVIEW_EVTID_TASK_START_READY) ||
(event_id == SYSVIEW_EVTID_TASK_STOP_READY) ||
(event_id == SYSVIEW_EVTID_USER_START) ||
(event_id == SYSVIEW_EVTID_USER_STOP) ||
(event_id == SYSVIEW_EVTID_TIMER_ENTER) ||
(event_id == SYSVIEW_EVTID_TIMER_EXIT) ||
(event_id == SYSVIEW_EVTID_STACK_INFO) ||
(event_id == SYSVIEW_EVTID_MODULEDESC)
)
){
return NumBytes;
}
// This is workaround for SystemView!
// Without this line SystemView will hangs on when heap tracing enabled.
if(event_id == SYSVIEW_EVTID_MODULEDESC){
return NumBytes;
}
#endif // CONFIG_APPTRACE_SV_DEST_UART
if (NumBytes > SYSVIEW_EVENTS_BUF_SZ) {
ESP_LOGE(TAG, "Too large event %u bytes!", NumBytes);
return 0;
}
#if CONFIG_APPTRACE_SV_DEST_JTAG
if (esp_cpu_get_core_id()) { // dual core specific code
if (cpu_hal_get_core_id()) { // dual core specific code
// use the highest - 1 bit of event ID to indicate core ID
// the highest bit can not be used due to event ID encoding method
// this reduces supported ID range to [0..63] (for 1 byte IDs) plus [128..16383] (for 2 bytes IDs)
@@ -200,31 +165,16 @@ unsigned SEGGER_RTT_WriteSkipNoLock(unsigned BufferIndex, const void* pBuffer, u
*pbuf |= (1 << 6);
}
}
#endif // CONFIG_APPTRACE_SV_DEST_JTAG
#if CONFIG_APPTRACE_SV_DEST_JTAG
if (s_events_buf_filled + NumBytes > SYSVIEW_EVENTS_BUF_SZ) {
esp_err_t res = esp_apptrace_write(ESP_APPTRACE_DEST_SYSVIEW, s_events_buf, s_events_buf_filled, SEGGER_HOST_WAIT_TMO);
esp_err_t res = esp_apptrace_write(ESP_APPTRACE_DEST_TRAX, s_events_buf, s_events_buf_filled, SEGGER_HOST_WAIT_TMO);
if (res != ESP_OK) {
return 0; // skip current data buffer only, accumulated events are kept
}
s_events_buf_filled = 0;
}
#endif
memcpy(&s_events_buf[s_events_buf_filled], pBuffer, NumBytes);
s_events_buf_filled += NumBytes;
#if CONFIG_APPTRACE_SV_DEST_UART
esp_err_t res = esp_apptrace_write(ESP_APPTRACE_DEST_SYSVIEW, pBuffer, NumBytes, SEGGER_HOST_WAIT_TMO);
if (res != ESP_OK)
{
return 0; // skip current data buffer only, accumulated events are kept
}
s_events_buf_filled = 0;
#endif
if (event_id == SYSVIEW_EVTID_TRACE_STOP)
{
if (event_id == SYSVIEW_EVTID_TRACE_STOP) {
SEGGER_RTT_ESP_FlushNoLock(0, SEGGER_STOP_WAIT_TMO);
}
return NumBytes;
@@ -290,17 +240,4 @@ int SEGGER_RTT_ConfigDownBuffer(unsigned BufferIndex, const char* sName, void* p
return 0;
}
/*************************** Init hook ****************************
*
* This init function is placed here because this port file will be
* linked whenever SystemView is used.
*/
ESP_SYSTEM_INIT_FN(sysview_init, BIT(0), 120)
{
SEGGER_SYSVIEW_Conf();
return ESP_OK;
}
/*************************** End of file ****************************/

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2018-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2018 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include <stdint.h>
#include <sdkconfig.h>
#include "SEGGER_SYSVIEW.h"
@@ -21,7 +29,7 @@ const static char *TAG = "sysview_heap_trace";
#endif
static SEGGER_SYSVIEW_MODULE s_esp_sysview_heap_module = {
.sModule = "M=ESP32 SystemView Heap Tracing Module",
.sModule = "ESP32 SystemView Heap Tracing Module",
.NumEvents = 2,
};

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2018-2021 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2018 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include <stdio.h>
#include <stdarg.h>
#include <sdkconfig.h>

View File

@@ -1,4 +1,3 @@
idf_component_register(SRC_DIRS "."
PRIV_INCLUDE_DIRS "."
PRIV_REQUIRES cmock driver)
target_compile_options(${COMPONENT_LIB} PRIVATE "-Wno-format")
PRIV_REQUIRES cmock)

View File

@@ -0,0 +1,5 @@
#
#Component Makefile
#
COMPONENT_ADD_LDFLAGS = -Wl,--whole-archive -l$(COMPONENT_NAME) -Wl,--no-whole-archive

View File

@@ -1,18 +1,12 @@
/*
* SPDX-FileCopyrightText: 2021-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stddef.h>
#include <stdint.h>
#include <string.h>
#include <stdio.h>
#include <stdarg.h>
#include "unity.h"
#include "driver/gptimer.h"
#include "esp_intr_alloc.h"
#include "driver/timer.h"
#include "esp_rom_sys.h"
#include "esp_cpu.h"
#include "soc/cpu.h"
#include "freertos/FreeRTOS.h"
#include "freertos/semphr.h"
#include "freertos/task.h"
@@ -66,6 +60,29 @@ const static char *TAG = "esp_apptrace_test";
#define ESP_APPTRACE_TEST_LOGV( format, ... ) ESP_APPTRACE_TEST_LOG_LEVEL(V, ESP_LOG_VERBOSE, format, ##__VA_ARGS__)
#define ESP_APPTRACE_TEST_LOGO( format, ... ) ESP_APPTRACE_TEST_LOG_LEVEL(E, ESP_LOG_NONE, format, ##__VA_ARGS__)
static void esp_apptrace_test_timer_init(int timer_group, int timer_idx, uint32_t period)
{
timer_config_t config;
uint64_t alarm_val = (period * (TIMER_BASE_CLK / 1000000UL)) / 2;
config.alarm_en = 1;
config.auto_reload = 1;
config.counter_dir = TIMER_COUNT_UP;
config.divider = 2; //Range is 2 to 65536
config.intr_type = TIMER_INTR_LEVEL;
config.counter_en = TIMER_PAUSE;
/*Configure timer*/
timer_init(timer_group, timer_idx, &config);
/*Stop timer counter*/
timer_pause(timer_group, timer_idx);
/*Load counter value */
timer_set_counter_value(timer_group, timer_idx, 0x00000000ULL);
/*Set alarm value*/
timer_set_alarm_value(timer_group, timer_idx, alarm_val);
/*Enable timer interrupt*/
timer_enable_intr(timer_group, timer_idx);
}
#if CONFIG_APPTRACE_SV_ENABLE == 0
#define ESP_APPTRACE_TEST_WRITE(_b_, _s_) esp_apptrace_write(ESP_APPTRACE_DEST_TRAX, _b_, _s_, ESP_APPTRACE_TMO_INFINITE)
#define ESP_APPTRACE_TEST_WRITE_FROM_ISR(_b_, _s_) esp_apptrace_write(ESP_APPTRACE_DEST_TRAX, _b_, _s_, 0UL)
@@ -81,8 +98,9 @@ typedef struct {
} esp_apptrace_test_gen_data_t;
typedef struct {
gptimer_handle_t gptimer;
bool (*isr_func)(gptimer_handle_t timer, const gptimer_alarm_event_data_t *edata, void *user_ctx);
int group;
int id;
void (*isr_func)(void *);
esp_apptrace_test_gen_data_t data;
} esp_apptrace_test_timer_arg_t;
@@ -94,6 +112,7 @@ typedef struct {
esp_apptrace_test_gen_data_t data;
volatile int stop;
SemaphoreHandle_t done;
uint32_t timers_num;
esp_apptrace_test_timer_arg_t *timers;
} esp_apptrace_test_task_arg_t;
@@ -109,87 +128,103 @@ static SemaphoreHandle_t s_print_lock;
static uint64_t esp_apptrace_test_ts_get(void);
static bool esp_apptrace_test_timer_isr(gptimer_handle_t timer, const gptimer_alarm_event_data_t *edata, void *user_ctx)
static void esp_apptrace_test_timer_isr(void *arg)
{
esp_apptrace_test_timer_arg_t *tim_arg = (esp_apptrace_test_timer_arg_t *)user_ctx;
esp_apptrace_test_timer_arg_t *tim_arg = (esp_apptrace_test_timer_arg_t *)arg;
uint32_t *ts = (uint32_t *)(tim_arg->data.buf + sizeof(uint32_t));
*ts = (uint32_t)esp_apptrace_test_ts_get();
memset(tim_arg->data.buf + 2 * sizeof(uint32_t), tim_arg->data.wr_cnt & tim_arg->data.mask, tim_arg->data.buf_sz - 2 * sizeof(uint32_t));
int res = ESP_APPTRACE_TEST_WRITE_FROM_ISR(tim_arg->data.buf, tim_arg->data.buf_sz);
if (res == ESP_OK) {
if (res != ESP_OK) {
} else {
if (0) {
esp_rom_printf("tim-%d-%d: Written chunk%d %d bytes, %x\n",
tim_arg->group, tim_arg->id, tim_arg->data.wr_cnt, tim_arg->data.buf_sz, tim_arg->data.wr_cnt & tim_arg->data.mask);
}
tim_arg->data.wr_err = 0;
}
tim_arg->data.wr_cnt++;
return true;
timer_group_clr_intr_status_in_isr(tim_arg->group, tim_arg->id);
timer_group_enable_alarm_in_isr(tim_arg->group, tim_arg->id);
}
static bool esp_apptrace_test_timer_isr_crash(gptimer_handle_t timer, const gptimer_alarm_event_data_t *edata, void *user_ctx)
static void esp_apptrace_test_timer_isr_crash(void *arg)
{
esp_apptrace_test_timer_arg_t *tim_arg = (esp_apptrace_test_timer_arg_t *)user_ctx;
esp_apptrace_test_timer_arg_t *tim_arg = (esp_apptrace_test_timer_arg_t *)arg;
timer_group_clr_intr_status_in_isr(tim_arg->group, tim_arg->id);
timer_group_enable_alarm_in_isr(tim_arg->group, tim_arg->id);
if (tim_arg->data.wr_cnt < ESP_APPTRACE_TEST_BLOCKS_BEFORE_CRASH) {
uint32_t *ts = (uint32_t *)(tim_arg->data.buf + sizeof(uint32_t));
*ts = (uint32_t)esp_apptrace_test_ts_get();//xthal_get_ccount();//xTaskGetTickCount();
memset(tim_arg->data.buf + 2 * sizeof(uint32_t), tim_arg->data.wr_cnt & tim_arg->data.mask, tim_arg->data.buf_sz - 2 * sizeof(uint32_t));
int res = ESP_APPTRACE_TEST_WRITE_FROM_ISR(tim_arg->data.buf, tim_arg->data.buf_sz);
if (res != ESP_OK) {
esp_rom_printf("tim-%x: Failed to write trace %d %x!\n", tim_arg->gptimer, res, tim_arg->data.wr_cnt & tim_arg->data.mask);
esp_rom_printf("tim-%d-%d: Failed to write trace %d %x!\n", tim_arg->group, tim_arg->id, res, tim_arg->data.wr_cnt & tim_arg->data.mask);
} else {
esp_rom_printf("tim-%x: Written chunk%d %d bytes, %x\n",
timer, tim_arg->data.wr_cnt, tim_arg->data.buf_sz, tim_arg->data.wr_cnt & tim_arg->data.mask);
esp_rom_printf("tim-%d-%d: Written chunk%d %d bytes, %x\n",
tim_arg->group, tim_arg->id, tim_arg->data.wr_cnt, tim_arg->data.buf_sz, tim_arg->data.wr_cnt & tim_arg->data.mask);
tim_arg->data.wr_cnt++;
}
} else {
uint32_t *ptr = 0;
*ptr = 1000;
}
return true;
}
static void esp_apptrace_dummy_task(void *p)
{
esp_apptrace_test_task_arg_t *arg = (esp_apptrace_test_task_arg_t *) p;
int res, flags = 0, i;
timer_isr_handle_t *inth = NULL;
TickType_t tmo_ticks = arg->data.period / (1000 * portTICK_PERIOD_MS);
ESP_APPTRACE_TEST_LOGI("%x: run dummy task (period %u us, %u timers)", xTaskGetCurrentTaskHandle(), arg->data.period, arg->timers_num);
for (int i = 0; i < arg->timers_num; i++) {
gptimer_config_t timer_config = {
.clk_src = GPTIMER_CLK_SRC_DEFAULT,
.direction = GPTIMER_COUNT_UP,
.resolution_hz = 1000000,
};
TEST_ESP_OK(gptimer_new_timer(&timer_config, &arg->timers[i].gptimer));
*(uint32_t *)arg->timers[i].data.buf = (uint32_t)arg->timers[i].gptimer | (1 << 31);
ESP_APPTRACE_TEST_LOGI("%x: start timer %x period %u us", xTaskGetCurrentTaskHandle(), arg->timers[i].gptimer, arg->timers[i].data.period);
gptimer_alarm_config_t alarm_config = {
.reload_count = 0,
.alarm_count = arg->timers[i].data.period,
.flags.auto_reload_on_alarm = true,
};
gptimer_event_callbacks_t cbs = {
.on_alarm = arg->timers[i].isr_func,
};
TEST_ESP_OK(gptimer_register_event_callbacks(arg->timers[i].gptimer, &cbs, &arg->timers[i]));
TEST_ESP_OK(gptimer_enable(arg->timers[i].gptimer));
TEST_ESP_OK(gptimer_set_alarm_action(arg->timers[i].gptimer, &alarm_config));
TEST_ESP_OK(gptimer_start(arg->timers[i].gptimer));
if (arg->timers_num > 0) {
inth = pvPortMalloc(arg->timers_num * sizeof(timer_isr_handle_t));
if (!inth) {
ESP_APPTRACE_TEST_LOGE("Failed to alloc timer ISR handles!");
goto on_fail;
}
memset(inth, 0, arg->timers_num * sizeof(timer_isr_handle_t));
for (int i = 0; i < arg->timers_num; i++) {
esp_apptrace_test_timer_init(arg->timers[i].group, arg->timers[i].id, arg->timers[i].data.period);
res = timer_isr_register(arg->timers[i].group, arg->timers[i].id, arg->timers[i].isr_func, &arg->timers[i], flags, &inth[i]);
if (res != ESP_OK) {
ESP_APPTRACE_TEST_LOGE("Failed to timer_isr_register (%d)!", res);
goto on_fail;
}
*(uint32_t *)arg->timers[i].data.buf = (uint32_t)inth[i] | (1 << 31);
ESP_APPTRACE_TEST_LOGI("%x: start timer %x period %u us", xTaskGetCurrentTaskHandle(), inth[i], arg->timers[i].data.period);
res = timer_start(arg->timers[i].group, arg->timers[i].id);
if (res != ESP_OK) {
ESP_APPTRACE_TEST_LOGE("Failed to timer_start (%d)!", res);
goto on_fail;
}
}
}
int i = 0;
i = 0;
while (!arg->stop) {
ESP_APPTRACE_TEST_LOGD("%x: dummy task work %d.%d", xTaskGetCurrentTaskHandle(), esp_cpu_get_core_id(), i++);
ESP_APPTRACE_TEST_LOGD("%x: dummy task work %d.%d", xTaskGetCurrentTaskHandle(), cpu_hal_get_core_id(), i++);
if (tmo_ticks) {
vTaskDelay(tmo_ticks);
}
}
for (int i = 0; i < arg->timers_num; i++) {
TEST_ESP_OK(gptimer_stop(arg->timers[i].gptimer));
TEST_ESP_OK(gptimer_disable(arg->timers[i].gptimer));
TEST_ESP_OK(gptimer_del_timer(arg->timers[i].gptimer));
on_fail:
if (inth) {
for (int i = 0; i < arg->timers_num; i++) {
timer_pause(arg->timers[i].group, arg->timers[i].id);
timer_disable_intr(arg->timers[i].group, arg->timers[i].id);
if (inth[i]) {
esp_intr_free(inth[i]);
}
}
vPortFree(inth);
}
xSemaphoreGive(arg->done);
vTaskDelay(1);
@@ -199,35 +234,37 @@ static void esp_apptrace_dummy_task(void *p)
static void esp_apptrace_test_task(void *p)
{
esp_apptrace_test_task_arg_t *arg = (esp_apptrace_test_task_arg_t *) p;
int res;
int res, flags = 0;
timer_isr_handle_t *inth = NULL;
TickType_t tmo_ticks = arg->data.period / (1000 * portTICK_PERIOD_MS);
ESP_APPTRACE_TEST_LOGI("%x: run (period %u us, stamp mask %x, %u timers)", xTaskGetCurrentTaskHandle(), arg->data.period, arg->data.mask, arg->timers_num);
for (int i = 0; i < arg->timers_num; i++) {
gptimer_config_t timer_config = {
.clk_src = GPTIMER_CLK_SRC_DEFAULT,
.direction = GPTIMER_COUNT_UP,
.resolution_hz = 1000000,
};
TEST_ESP_OK(gptimer_new_timer(&timer_config, &arg->timers[i].gptimer));
*(uint32_t *)arg->timers[i].data.buf = ((uint32_t)arg->timers[i].gptimer) | (1 << 31) | (esp_cpu_get_core_id() ? 0x1 : 0);
ESP_APPTRACE_TEST_LOGI("%x: start timer %x period %u us", xTaskGetCurrentTaskHandle(), arg->timers[i].gptimer, arg->timers[i].data.period);
gptimer_alarm_config_t alarm_config = {
.reload_count = 0,
.alarm_count = arg->timers[i].data.period,
.flags.auto_reload_on_alarm = true,
};
gptimer_event_callbacks_t cbs = {
.on_alarm = arg->timers[i].isr_func,
};
TEST_ESP_OK(gptimer_register_event_callbacks(arg->timers[i].gptimer, &cbs, &arg->timers[i]));
TEST_ESP_OK(gptimer_enable(arg->timers[i].gptimer));
TEST_ESP_OK(gptimer_set_alarm_action(arg->timers[i].gptimer, &alarm_config));
TEST_ESP_OK(gptimer_start(arg->timers[i].gptimer));
if (arg->timers_num > 0) {
inth = pvPortMalloc(arg->timers_num * sizeof(timer_isr_handle_t));
if (!inth) {
ESP_APPTRACE_TEST_LOGE("Failed to alloc timer ISR handles!");
goto on_fail;
}
memset(inth, 0, arg->timers_num * sizeof(timer_isr_handle_t));
for (int i = 0; i < arg->timers_num; i++) {
esp_apptrace_test_timer_init(arg->timers[i].group, arg->timers[i].id, arg->timers[i].data.period);
res = timer_isr_register(arg->timers[i].group, arg->timers[i].id, arg->timers[i].isr_func, &arg->timers[i], flags, &inth[i]);
if (res != ESP_OK) {
ESP_APPTRACE_TEST_LOGE("Failed to timer_isr_register (%d)!", res);
goto on_fail;
}
*(uint32_t *)arg->timers[i].data.buf = ((uint32_t)inth[i]) | (1 << 31) | (cpu_hal_get_core_id() ? 0x1 : 0);
ESP_APPTRACE_TEST_LOGI("%x: start timer %x period %u us", xTaskGetCurrentTaskHandle(), inth[i], arg->timers[i].data.period);
res = timer_start(arg->timers[i].group, arg->timers[i].id);
if (res != ESP_OK) {
ESP_APPTRACE_TEST_LOGE("Failed to timer_start (%d)!", res);
goto on_fail;
}
}
}
*(uint32_t *)arg->data.buf = (uint32_t)xTaskGetCurrentTaskHandle() | (esp_cpu_get_core_id() ? 0x1 : 0);
*(uint32_t *)arg->data.buf = (uint32_t)xTaskGetCurrentTaskHandle() | (cpu_hal_get_core_id() ? 0x1 : 0);
arg->data.wr_cnt = 0;
arg->data.wr_err = 0;
while (!arg->stop) {
@@ -241,7 +278,7 @@ static void esp_apptrace_test_task(void *p)
res = ESP_APPTRACE_TEST_WRITE(arg->data.buf, arg->data.buf_sz);
}
if (res) {
if (1) { //arg->data.wr_err++ < ESP_APPTRACE_TEST_PRN_WRERR_MAX) {
if (1){//arg->data.wr_err++ < ESP_APPTRACE_TEST_PRN_WRERR_MAX) {
ESP_APPTRACE_TEST_LOGE("%x: Failed to write trace %d %x!", xTaskGetCurrentTaskHandle(), res, arg->data.wr_cnt & arg->data.mask);
if (arg->data.wr_err == ESP_APPTRACE_TEST_PRN_WRERR_MAX) {
ESP_APPTRACE_TEST_LOGE("\n");
@@ -259,10 +296,16 @@ static void esp_apptrace_test_task(void *p)
}
}
for (int i = 0; i < arg->timers_num; i++) {
TEST_ESP_OK(gptimer_stop(arg->timers[i].gptimer));
TEST_ESP_OK(gptimer_disable(arg->timers[i].gptimer));
TEST_ESP_OK(gptimer_del_timer(arg->timers[i].gptimer));
on_fail:
if (inth) {
for (int i = 0; i < arg->timers_num; i++) {
timer_pause(arg->timers[i].group, arg->timers[i].id);
timer_disable_intr(arg->timers[i].group, arg->timers[i].id);
if (inth[i]) {
esp_intr_free(inth[i]);
}
}
vPortFree(inth);
}
xSemaphoreGive(arg->done);
vTaskDelay(1);
@@ -272,16 +315,17 @@ static void esp_apptrace_test_task(void *p)
static void esp_apptrace_test_task_crash(void *p)
{
esp_apptrace_test_task_arg_t *arg = (esp_apptrace_test_task_arg_t *) p;
int res, i;
ESP_APPTRACE_TEST_LOGE("%x: run (period %u us, stamp mask %x, %u timers)", xTaskGetCurrentTaskHandle(), arg->data.period, arg->data.mask, arg->timers_num);
arg->data.wr_cnt = 0;
*(uint32_t *)arg->data.buf = (uint32_t)xTaskGetCurrentTaskHandle();
for (int i = 0; i < ESP_APPTRACE_TEST_BLOCKS_BEFORE_CRASH; i++) {
for (i = 0; i < ESP_APPTRACE_TEST_BLOCKS_BEFORE_CRASH; i++) {
uint32_t *ts = (uint32_t *)(arg->data.buf + sizeof(uint32_t));
*ts = (uint32_t)esp_apptrace_test_ts_get();
memset(arg->data.buf + sizeof(uint32_t), arg->data.wr_cnt & arg->data.mask, arg->data.buf_sz - sizeof(uint32_t));
int res = ESP_APPTRACE_TEST_WRITE(arg->data.buf, arg->data.buf_sz);
res = ESP_APPTRACE_TEST_WRITE(arg->data.buf, arg->data.buf_sz);
if (res) {
ESP_APPTRACE_TEST_LOGE("%x: Failed to write trace %d %x!", xTaskGetCurrentTaskHandle(), res, arg->data.wr_cnt & arg->data.mask);
} else {
@@ -298,49 +342,66 @@ static void esp_apptrace_test_task_crash(void *p)
vTaskDelete(NULL);
}
static gptimer_handle_t ts_gptimer;
static int s_ts_timer_group, s_ts_timer_idx;
static uint64_t esp_apptrace_test_ts_get(void)
{
uint64_t ts = 0;
gptimer_get_raw_count(ts_gptimer, &ts);
timer_get_counter_value(s_ts_timer_group, s_ts_timer_idx, &ts);
return ts;
}
static void esp_apptrace_test_ts_init(void)
static void esp_apptrace_test_ts_init(int timer_group, int timer_idx)
{
gptimer_config_t timer_config = {
.clk_src = GPTIMER_CLK_SRC_DEFAULT,
.direction = GPTIMER_COUNT_UP,
.resolution_hz = 10000000,
};
TEST_ESP_OK(gptimer_new_timer(&timer_config, &ts_gptimer));
ESP_APPTRACE_TEST_LOGI("Use timer %x for TS", ts_gptimer);
TEST_ESP_OK(gptimer_enable(ts_gptimer));
TEST_ESP_OK(gptimer_start(ts_gptimer));
timer_config_t config;
//uint64_t alarm_val = period * (TIMER_BASE_CLK / 1000000UL);
ESP_APPTRACE_TEST_LOGI("Use timer%d.%d for TS", timer_group, timer_idx);
s_ts_timer_group = timer_group;
s_ts_timer_idx = timer_idx;
config.alarm_en = 0;
config.auto_reload = 0;
config.counter_dir = TIMER_COUNT_UP;
config.divider = 2; //Range is 2 to 65536
config.counter_en = 0;
/*Configure timer*/
timer_init(timer_group, timer_idx, &config);
/*Load counter value */
timer_set_counter_value(timer_group, timer_idx, 0x00000000ULL);
/*Enable timer interrupt*/
timer_start(timer_group, timer_idx);
}
static void esp_apptrace_test_ts_cleanup(void)
{
TEST_ESP_OK(gptimer_stop(ts_gptimer));
TEST_ESP_OK(gptimer_disable(ts_gptimer));
TEST_ESP_OK(gptimer_del_timer(ts_gptimer));
ts_gptimer = NULL;
timer_config_t config;
config.alarm_en = 0;
config.auto_reload = 0;
config.counter_dir = TIMER_COUNT_UP;
config.divider = 2; //Range is 2 to 65536
config.counter_en = 0;
/*Configure timer*/
timer_init(s_ts_timer_group, s_ts_timer_idx, &config);
}
static void esp_apptrace_test(esp_apptrace_test_cfg_t *test_cfg)
{
esp_apptrace_test_task_arg_t dummy_task_arg = {
.core = 0,
.prio = 3,
.task_func = esp_apptrace_test_task_crash,
.data.buf = NULL,
.data.buf_sz = 0,
.data.period = 500000,
.timers_num = 0,
.timers = NULL,
};
int i, k;
int tims_in_use[TIMER_GROUP_MAX][TIMER_MAX] = {{0, 0}, {0, 0}};
esp_apptrace_test_task_arg_t dummy_task_arg[1];
memset(dummy_task_arg, 0, sizeof(dummy_task_arg));
dummy_task_arg[0].core = 0;
dummy_task_arg[0].prio = 3;
dummy_task_arg[0].task_func = esp_apptrace_test_task_crash;
dummy_task_arg[0].data.buf = NULL;
dummy_task_arg[0].data.buf_sz = 0;
dummy_task_arg[0].data.period = 500000;
dummy_task_arg[0].timers_num = 0;
dummy_task_arg[0].timers = NULL;
#if ESP_APPTRACE_TEST_USE_PRINT_LOCK == 1
s_print_lock = xSemaphoreCreateBinary();
if (!s_print_lock) {
@@ -351,17 +412,38 @@ static void esp_apptrace_test(esp_apptrace_test_cfg_t *test_cfg)
#else
#endif
for (int i = 0; i < test_cfg->tasks_num; i++) {
for (i = 0; i < test_cfg->tasks_num; i++) {
test_cfg->tasks[i].data.mask = 0xFF;
test_cfg->tasks[i].stop = 0;
test_cfg->tasks[i].done = xSemaphoreCreateBinary();
TEST_ASSERT_NOT_NULL(test_cfg->tasks[i].done);
for (int k = 0; k < test_cfg->tasks[i].timers_num; k++) {
if (!test_cfg->tasks[i].done) {
ESP_APPTRACE_TEST_LOGE("Failed to create task completion semaphore!");
goto on_fail;
}
for (k = 0; k < test_cfg->tasks[i].timers_num; k++) {
test_cfg->tasks[i].timers[k].data.mask = 0xFF;
tims_in_use[test_cfg->tasks[i].timers[k].group][test_cfg->tasks[i].timers[k].id] = 1;
}
}
esp_apptrace_test_ts_init();
int found = 0;
for (i = 0; i < TIMER_GROUP_MAX; i++) {
for (k = 0; k < TIMER_MAX; k++) {
if (!tims_in_use[i][k]) {
ESP_APPTRACE_TEST_LOGD("Found timer%d.%d", i, k);
found = 1;
break;
}
}
if (found) {
break;
}
}
if (!found) {
ESP_APPTRACE_TEST_LOGE("No free timer for TS!");
goto on_fail;
}
esp_apptrace_test_ts_init(i, k);
for (int i = 0; i < test_cfg->tasks_num; i++) {
char name[30];
@@ -370,15 +452,16 @@ static void esp_apptrace_test(esp_apptrace_test_cfg_t *test_cfg)
xTaskCreatePinnedToCore(test_cfg->tasks[i].task_func, name, 2048, &test_cfg->tasks[i], test_cfg->tasks[i].prio, &thnd, test_cfg->tasks[i].core);
ESP_APPTRACE_TEST_LOGI("Created task %x", thnd);
}
xTaskCreatePinnedToCore(esp_apptrace_dummy_task, "dummy0", 2048, &dummy_task_arg, dummy_task_arg.prio, NULL, 0);
xTaskCreatePinnedToCore(esp_apptrace_dummy_task, "dummy0", 2048, &dummy_task_arg[0], dummy_task_arg[0].prio, NULL, 0);
#if CONFIG_FREERTOS_UNICORE == 0
xTaskCreatePinnedToCore(esp_apptrace_dummy_task, "dummy1", 2048, &dummy_task_arg, dummy_task_arg.prio, NULL, 1);
xTaskCreatePinnedToCore(esp_apptrace_dummy_task, "dummy1", 2048, &dummy_task_arg[0], dummy_task_arg[0].prio, NULL, 1);
#endif
for (int i = 0; i < test_cfg->tasks_num; i++) {
//arg1.stop = 1;
xSemaphoreTake(test_cfg->tasks[i].done, portMAX_DELAY);
}
on_fail:
for (int i = 0; i < test_cfg->tasks_num; i++) {
if (test_cfg->tasks[i].done) {
vSemaphoreDelete(test_cfg->tasks[i].done);
@@ -406,6 +489,8 @@ TEST_CASE("App trace test (1 task + 1 crashed timer ISR @ 1 core)", "[trace][ign
memset(s_test_timers, 0, sizeof(s_test_timers));
memset(s_test_tasks, 0, sizeof(s_test_tasks));
s_test_timers[0].group = TIMER_GROUP_0;
s_test_timers[0].id = TIMER_0;
s_test_timers[0].isr_func = esp_apptrace_test_timer_isr_crash;
s_test_timers[0].data.buf = s_bufs[0];
s_test_timers[0].data.buf_sz = sizeof(s_bufs[0]);
@@ -458,11 +543,15 @@ TEST_CASE("App trace test (2 tasks + 1 timer @ each core", "[trace][ignore]")
memset(s_test_tasks, 0, sizeof(s_test_tasks));
memset(s_test_timers, 0, sizeof(s_test_timers));
s_test_timers[0].group = TIMER_GROUP_0;
s_test_timers[0].id = TIMER_0;
s_test_timers[0].isr_func = esp_apptrace_test_timer_isr;
s_test_timers[0].data.buf = s_bufs[0];
s_test_timers[0].data.buf_sz = sizeof(s_bufs[0]);
s_test_timers[0].data.period = 150;
s_test_timers[1].group = TIMER_GROUP_1;
s_test_timers[1].id = TIMER_0;
s_test_timers[1].isr_func = esp_apptrace_test_timer_isr;
s_test_timers[1].data.buf = s_bufs[1];
s_test_timers[1].data.buf_sz = sizeof(s_bufs[1]);
@@ -518,6 +607,8 @@ TEST_CASE("App trace test (1 task + 1 timer @ 1 core)", "[trace][ignore]")
memset(s_test_timers, 0, sizeof(s_test_timers));
memset(s_test_tasks, 0, sizeof(s_test_tasks));
s_test_timers[0].group = TIMER_GROUP_0;
s_test_timers[0].id = TIMER_0;
s_test_timers[0].isr_func = esp_apptrace_test_timer_isr;
s_test_timers[0].data.buf = s_bufs[0];
s_test_timers[0].data.buf_sz = sizeof(s_bufs[0]);
@@ -653,7 +744,7 @@ static void esp_logtrace_task(void *p)
ESP_LOGI(TAG, "%p: sample print 4 %c", xTaskGetCurrentTaskHandle(), ((i & 0xFF) % 95) + 32);
ESP_LOGI(TAG, "%p: sample print 5 %f", xTaskGetCurrentTaskHandle(), 1.0);
ESP_LOGI(TAG, "%p: sample print 6 %f", xTaskGetCurrentTaskHandle(), 3.45);
ESP_LOGI(TAG, "%p: logtrace task work %d.%d", xTaskGetCurrentTaskHandle(), esp_cpu_get_core_id(), i);
ESP_LOGI(TAG, "%p: logtrace task work %d.%d", xTaskGetCurrentTaskHandle(), cpu_hal_get_core_id(), i);
if (++i == 10000) {
break;
}
@@ -696,11 +787,11 @@ TEST_CASE("Log trace test (2 tasks)", "[trace][ignore]")
vSemaphoreDelete(arg2.done);
}
#else // #if CONFIG_APPTRACE_SV_ENABLE == 0
#else
typedef struct {
gptimer_handle_t gptimer;
uint32_t period;
int group;
int timer;
int flags;
uint32_t id;
} esp_sysviewtrace_timer_arg_t;
@@ -714,47 +805,50 @@ typedef struct {
uint32_t id;
} esp_sysviewtrace_task_arg_t;
static bool esp_sysview_test_timer_isr(gptimer_handle_t timer, const gptimer_alarm_event_data_t *edata, void *user_ctx)
static void esp_sysview_test_timer_isr(void *arg)
{
esp_sysviewtrace_timer_arg_t *tim_arg = (esp_sysviewtrace_timer_arg_t *)user_ctx;
return false;
esp_sysviewtrace_timer_arg_t *tim_arg = (esp_sysviewtrace_timer_arg_t *)arg;
//ESP_APPTRACE_TEST_LOGI("tim-%d: IRQ %d/%d\n", tim_arg->id, tim_arg->group, tim_arg->timer);
timer_group_clr_intr_status_in_isr(tim_arg->group, tim_arg->id);
timer_group_enable_alarm_in_isr(tim_arg->group, tim_arg->id);
}
static void esp_sysviewtrace_test_task(void *p)
{
esp_sysviewtrace_task_arg_t *arg = (esp_sysviewtrace_task_arg_t *) p;
volatile uint32_t tmp = 0;
timer_isr_handle_t inth;
printf("%x: run sysview task\n", (uint32_t)xTaskGetCurrentTaskHandle());
if (arg->timer) {
gptimer_alarm_config_t alarm_config = {
.reload_count = 0,
.alarm_count = arg->timer->period,
.flags.auto_reload_on_alarm = true,
};
gptimer_event_callbacks_t cbs = {
.on_alarm = esp_sysview_test_timer_isr,
};
TEST_ESP_OK(gptimer_register_event_callbacks(arg->timer->gptimer, &cbs, arg->timer));
TEST_ESP_OK(gptimer_enable(arg->timer->gptimer));
TEST_ESP_OK(gptimer_set_alarm_action(arg->timer->gptimer, &alarm_config));
TEST_ESP_OK(gptimer_start(arg->timer->gptimer));
esp_err_t res = timer_isr_register(arg->timer->group, arg->timer->timer, esp_sysview_test_timer_isr, arg->timer, arg->timer->flags, &inth);
if (res != ESP_OK) {
printf("%x: failed to register timer ISR\n", (uint32_t)xTaskGetCurrentTaskHandle());
}
else {
res = timer_start(arg->timer->group, arg->timer->timer);
if (res != ESP_OK) {
printf("%x: failed to start timer\n", (uint32_t)xTaskGetCurrentTaskHandle());
}
}
}
int i = 0;
while (1) {
static uint32_t count;
printf("%d", arg->id);
if ((++count % 80) == 0) {
if((++count % 80) == 0)
printf("\n");
}
if (arg->sync) {
xSemaphoreTake(*arg->sync, portMAX_DELAY);
}
for (uint32_t k = 0; k < arg->work_count; k++) {
tmp++;
}
vTaskDelay(arg->sleep_tmo / portTICK_PERIOD_MS);
vTaskDelay(arg->sleep_tmo/portTICK_PERIOD_MS);
i++;
if (arg->sync) {
xSemaphoreGive(*arg->sync);
@@ -772,9 +866,10 @@ TEST_CASE("SysView trace test 1", "[trace][ignore]")
TaskHandle_t thnd;
esp_sysviewtrace_timer_arg_t tim_arg1 = {
.group = TIMER_GROUP_1,
.timer = TIMER_1,
.flags = ESP_INTR_FLAG_SHARED,
.id = 0,
.period = 500,
};
esp_sysviewtrace_task_arg_t arg1 = {
.done = xSemaphoreCreateBinary(),
@@ -785,9 +880,10 @@ TEST_CASE("SysView trace test 1", "[trace][ignore]")
.id = 0,
};
esp_sysviewtrace_timer_arg_t tim_arg2 = {
.group = TIMER_GROUP_1,
.timer = TIMER_0,
.flags = 0,
.id = 1,
.period = 100,
};
esp_sysviewtrace_task_arg_t arg2 = {
.done = xSemaphoreCreateBinary(),
@@ -798,15 +894,8 @@ TEST_CASE("SysView trace test 1", "[trace][ignore]")
.id = 1,
};
gptimer_config_t timer_config = {
.clk_src = GPTIMER_CLK_SRC_DEFAULT,
.direction = GPTIMER_COUNT_UP,
.resolution_hz = 1000000,
};
timer_config.flags.intr_shared = (tim_arg1.flags & ESP_INTR_FLAG_SHARED) == ESP_INTR_FLAG_SHARED;
TEST_ESP_OK(gptimer_new_timer(&timer_config, &tim_arg1.gptimer));
timer_config.flags.intr_shared = (tim_arg2.flags & ESP_INTR_FLAG_SHARED) == ESP_INTR_FLAG_SHARED;
TEST_ESP_OK(gptimer_new_timer(&timer_config, &tim_arg2.gptimer));
esp_apptrace_test_timer_init(TIMER_GROUP_1, TIMER_1, 500);
esp_apptrace_test_timer_init(TIMER_GROUP_1, TIMER_0, 100);
xTaskCreatePinnedToCore(esp_sysviewtrace_test_task, "svtrace0", 2048, &arg1, 3, &thnd, 0);
ESP_APPTRACE_TEST_LOGI("Created task %x", thnd);
@@ -821,12 +910,6 @@ TEST_CASE("SysView trace test 1", "[trace][ignore]")
vSemaphoreDelete(arg1.done);
xSemaphoreTake(arg2.done, portMAX_DELAY);
vSemaphoreDelete(arg2.done);
TEST_ESP_OK(gptimer_stop(tim_arg1.gptimer));
TEST_ESP_OK(gptimer_disable(tim_arg1.gptimer));
TEST_ESP_OK(gptimer_del_timer(tim_arg1.gptimer));
TEST_ESP_OK(gptimer_stop(tim_arg2.gptimer));
TEST_ESP_OK(gptimer_disable(tim_arg2.gptimer));
TEST_ESP_OK(gptimer_del_timer(tim_arg2.gptimer));
}
TEST_CASE("SysView trace test 2", "[trace][ignore]")
@@ -834,9 +917,10 @@ TEST_CASE("SysView trace test 2", "[trace][ignore]")
TaskHandle_t thnd;
esp_sysviewtrace_timer_arg_t tim_arg1 = {
.group = TIMER_GROUP_1,
.timer = TIMER_1,
.flags = ESP_INTR_FLAG_SHARED,
.id = 0,
.period = 500,
};
esp_sysviewtrace_task_arg_t arg1 = {
.done = xSemaphoreCreateBinary(),
@@ -847,9 +931,10 @@ TEST_CASE("SysView trace test 2", "[trace][ignore]")
.id = 0,
};
esp_sysviewtrace_timer_arg_t tim_arg2 = {
.group = TIMER_GROUP_1,
.timer = TIMER_0,
.flags = 0,
.id = 1,
.period = 100,
};
esp_sysviewtrace_task_arg_t arg2 = {
.done = xSemaphoreCreateBinary(),
@@ -879,15 +964,8 @@ TEST_CASE("SysView trace test 2", "[trace][ignore]")
.id = 3,
};
gptimer_config_t timer_config = {
.clk_src = GPTIMER_CLK_SRC_DEFAULT,
.direction = GPTIMER_COUNT_UP,
.resolution_hz = 1000000,
};
timer_config.flags.intr_shared = (tim_arg1.flags & ESP_INTR_FLAG_SHARED) == ESP_INTR_FLAG_SHARED;
TEST_ESP_OK(gptimer_new_timer(&timer_config, &tim_arg1.gptimer));
timer_config.flags.intr_shared = (tim_arg2.flags & ESP_INTR_FLAG_SHARED) == ESP_INTR_FLAG_SHARED;
TEST_ESP_OK(gptimer_new_timer(&timer_config, &tim_arg2.gptimer));
esp_apptrace_test_timer_init(TIMER_GROUP_1, TIMER_1, 500);
esp_apptrace_test_timer_init(TIMER_GROUP_1, TIMER_0, 100);
xTaskCreatePinnedToCore(esp_sysviewtrace_test_task, "svtrace0", 2048, &arg1, 3, &thnd, 0);
printf("Created task %x\n", (uint32_t)thnd);
@@ -916,12 +994,6 @@ TEST_CASE("SysView trace test 2", "[trace][ignore]")
xSemaphoreTake(arg4.done, portMAX_DELAY);
vSemaphoreDelete(arg4.done);
vSemaphoreDelete(test_sync);
TEST_ESP_OK(gptimer_stop(tim_arg1.gptimer));
TEST_ESP_OK(gptimer_disable(tim_arg1.gptimer));
TEST_ESP_OK(gptimer_del_timer(tim_arg1.gptimer));
TEST_ESP_OK(gptimer_stop(tim_arg2.gptimer));
TEST_ESP_OK(gptimer_disable(tim_arg2.gptimer));
TEST_ESP_OK(gptimer_del_timer(tim_arg2.gptimer));
}
#endif // #if CONFIG_APPTRACE_SV_ENABLE == 0
#endif // #if CONFIG_APPTRACE_ENABLE == 1
#endif
#endif

View File

@@ -1,7 +1,29 @@
idf_component_register(SRCS "esp_ota_ops.c" "esp_ota_app_desc.c"
idf_component_register(SRCS "esp_ota_ops.c"
"esp_app_desc.c"
INCLUDE_DIRS "include"
REQUIRES partition_table bootloader_support esp_app_format esp_partition
PRIV_REQUIRES esptool_py efuse spi_flash)
REQUIRES spi_flash partition_table bootloader_support)
# esp_app_desc structure is added as an undefined symbol because otherwise the
# linker will ignore this structure as it has no other files depending on it.
target_link_libraries(${COMPONENT_LIB} INTERFACE "-u esp_app_desc")
if(CONFIG_APP_PROJECT_VER_FROM_CONFIG)
# Ignore current PROJECT_VER (which was set in __project_get_revision()).
# Gets the version from the CONFIG_APP_PROJECT_VER.
idf_build_set_property(PROJECT_VER "${CONFIG_APP_PROJECT_VER}")
endif()
# cut PROJECT_VER and PROJECT_NAME to required 32 characters.
idf_build_get_property(project_ver PROJECT_VER)
idf_build_get_property(project_name PROJECT_NAME)
string(SUBSTRING "${project_ver}" 0 31 PROJECT_VER_CUT)
string(SUBSTRING "${project_name}" 0 31 PROJECT_NAME_CUT)
message(STATUS "App \"${PROJECT_NAME_CUT}\" version: ${PROJECT_VER_CUT}")
set_source_files_properties(
SOURCE "esp_app_desc.c"
PROPERTIES COMPILE_DEFINITIONS
"PROJECT_VER=\"${PROJECT_VER_CUT}\"; PROJECT_NAME=\"${PROJECT_NAME_CUT}\"")
if(NOT BOOTLOADER_BUILD)
partition_table_get_partition_info(otadata_offset "--partition-type data --partition-subtype ota" "offset")
@@ -23,41 +45,35 @@ if(NOT BOOTLOADER_BUILD)
add_custom_target(blank_ota_data ALL DEPENDS ${blank_otadata_file})
add_dependencies(flash blank_ota_data)
add_dependencies(encrypted-flash blank_ota_data)
set(otatool_py "${python}" "${COMPONENT_DIR}/otatool.py")
set(esptool_args --esptool-args before=${CONFIG_ESPTOOLPY_BEFORE} after=${CONFIG_ESPTOOLPY_AFTER})
set(otatool_args --partition-table-file ${PARTITION_CSV_PATH})
list(APPEND otatool_args --partition-table-offset ${PARTITION_TABLE_OFFSET})
set(otatool_py ${python} ${COMPONENT_DIR}/otatool.py)
set(esptool_args "--esptool-args;before=${CONFIG_ESPTOOLPY_BEFORE};after=${CONFIG_ESPTOOLPY_AFTER}")
set(otatool_args "--partition-table-file;${PARTITION_CSV_PATH}"
"--partition-table-offset;${PARTITION_TABLE_OFFSET}")
idf_component_get_property(esptool_py_dir esptool_py COMPONENT_DIR)
add_custom_target(read-otadata DEPENDS "${PARTITION_CSV_PATH}"
add_custom_target(read_otadata DEPENDS "${PARTITION_CSV_PATH}"
COMMAND ${CMAKE_COMMAND}
-D "IDF_PATH=${idf_path}"
-D "SERIAL_TOOL=${otatool_py}"
-D "SERIAL_TOOL_ARGS=${esptool_args};${otatool_args};read_otadata"
-D "WORKING_DIRECTORY=${build_dir}"
-D IDF_PATH="${idf_path}"
-D SERIAL_TOOL="${otatool_py}"
-D SERIAL_TOOL_ARGS="${esptool_args};${otatool_args};read_otadata"
-D WORKING_DIRECTORY="${build_dir}"
-P ${esptool_py_dir}/run_serial_tool.cmake
WORKING_DIRECTORY "${build_dir}"
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
USES_TERMINAL
VERBATIM
)
add_deprecated_target_alias(read_otadata read-otadata)
add_custom_target(erase-otadata DEPENDS "${PARTITION_CSV_PATH}"
add_custom_target(erase_otadata DEPENDS "${PARTITION_CSV_PATH}"
COMMAND ${CMAKE_COMMAND}
-D "IDF_PATH=${idf_path}"
-D "SERIAL_TOOL=${otatool_py}"
-D "SERIAL_TOOL_ARGS=${esptool_args};${otatool_args};erase_otadata"
-D "WORKING_DIRECTORY=${build_dir}"
-D IDF_PATH="${idf_path}"
-D SERIAL_TOOL="${otatool_py}"
-D SERIAL_TOOL_ARGS="${esptool_args};${otatool_args};erase_otadata"
-D WORKING_DIRECTORY="${build_dir}"
-P ${esptool_py_dir}/run_serial_tool.cmake
WORKING_DIRECTORY "${build_dir}"
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
USES_TERMINAL
VERBATIM
)
add_deprecated_target_alias(erase_otadata erase-otadata)
idf_component_get_property(main_args esptool_py FLASH_ARGS)
idf_component_get_property(sub_args esptool_py FLASH_SUB_ARGS)

View File

@@ -0,0 +1,54 @@
# Generate partition binary
#
.PHONY: blank_ota_data erase_otadata read_otadata
OTATOOL_PY := $(PYTHON) $(COMPONENT_PATH)/otatool.py
PARTTOOL_PY := $(PYTHON) $(IDF_PATH)/components/partition_table/parttool.py
# Generate blank partition file
BLANK_OTA_DATA_FILE = $(BUILD_DIR_BASE)/ota_data_initial.bin
# Copy PARTITION_TABLE_CSV_PATH definition here from $IDF_PATH/components/partition_table/Makefile.projbuild
# to avoid undefined variables warning for PARTITION_TABLE_CSV_PATH
ifndef PARTITION_TABLE_CSV_PATH
PARTITION_TABLE_ROOT := $(call dequote,$(if $(CONFIG_PARTITION_TABLE_CUSTOM),$(PROJECT_PATH),$(IDF_PATH)/components/partition_table))
PARTITION_TABLE_CSV_PATH := $(call dequote,$(abspath $(PARTITION_TABLE_ROOT)/$(call dequote,$(CONFIG_PARTITION_TABLE_FILENAME))))
endif
$(BLANK_OTA_DATA_FILE): partition_table_get_info $(PARTITION_TABLE_CSV_PATH) | check_python_dependencies
$(shell if [ "$(OTA_DATA_OFFSET)" != "" ] && [ "$(OTA_DATA_SIZE)" != "" ]; then \
$(PYTHON) $(IDF_PATH)/components/partition_table/gen_empty_partition.py $(OTA_DATA_SIZE) $(BLANK_OTA_DATA_FILE); \
fi; )
$(eval BLANK_OTA_DATA_FILE = $(shell if [ "$(OTA_DATA_OFFSET)" != "" ] && [ "$(OTA_DATA_SIZE)" != "" ]; then \
echo $(BLANK_OTA_DATA_FILE); else echo " "; fi) )
blank_ota_data: $(BLANK_OTA_DATA_FILE)
# If there is no otadata partition, both OTA_DATA_OFFSET and BLANK_OTA_DATA_FILE
# expand to empty values.
ESPTOOL_ALL_FLASH_ARGS += $(OTA_DATA_OFFSET) $(BLANK_OTA_DATA_FILE)
ESPTOOL_ARGS := --esptool-args port=$(CONFIG_ESPTOOLPY_PORT) baud=$(CONFIG_ESPTOOLPY_BAUD) before=$(CONFIG_ESPTOOLPY_BEFORE) after=$(CONFIG_ESPTOOLPY_AFTER)
erase_otadata: $(PARTITION_TABLE_CSV_PATH) partition_table_get_info | check_python_dependencies
$(OTATOOL_PY) $(ESPTOOL_ARGS) --partition-table-file $(PARTITION_TABLE_CSV_PATH) \
--partition-table-offset $(PARTITION_TABLE_OFFSET) \
erase_otadata
read_otadata: $(PARTITION_TABLE_CSV_PATH) partition_table_get_info | check_python_dependencies
$(OTATOOL_PY) $(ESPTOOL_ARGS) --partition-table-file $(PARTITION_TABLE_CSV_PATH) \
--partition-table-offset $(partition_table_offset) \
read_otadata
all: blank_ota_data
flash: blank_ota_data
ifdef CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT
encrypted-flash: blank_ota_data
endif
TMP_DEFINES := $(BUILD_DIR_BASE)/app_update/tmp_cppflags.txt
export TMP_DEFINES
clean:
rm -f $(BLANK_OTA_DATA_FILE)
rm -f $(TMP_DEFINES)

View File

@@ -0,0 +1,56 @@
#
# Component Makefile
#
# (Uses default behaviour of compiling all source files in directory, adding 'include' to include path.)
# esp_app_desc structure is added as an undefined symbol because otherwise the
# linker will ignore this structure as it has no other files depending on it.
COMPONENT_ADD_LDFLAGS += -u esp_app_desc
ifndef IS_BOOTLOADER_BUILD
# If ``CONFIG_APP_PROJECT_VER_FROM_CONFIG`` option is set, the value of ``CONFIG_APP_PROJECT_VER`` will be used
# Else, if ``PROJECT_VER`` variable set in project Makefile file, its value will be used.
# Else, if the ``$PROJECT_PATH/version.txt`` exists, its contents will be used as ``PROJECT_VER``.
# Else, if the project is located inside a Git repository, the output of git describe will be used.
# Otherwise, ``PROJECT_VER`` will be "1".
ifdef CONFIG_APP_PROJECT_VER_FROM_CONFIG
PROJECT_VER:= $(CONFIG_APP_PROJECT_VER)
else
ifneq ("${PROJECT_VER}", "")
PROJECT_VER:= $(PROJECT_VER)
else
ifneq ("$(wildcard ${PROJECT_PATH}/version.txt)","")
PROJECT_VER := $(shell cat ${PROJECT_PATH}/version.txt)
else
GIT_PROJECT_VER := $(shell cd ${PROJECT_PATH} && git describe --always --tags --dirty 2> /dev/null)
ifeq ("${GIT_PROJECT_VER}", "")
PROJECT_VER := "1"
$(info Project is not inside a git repository, or git repository has no commits)
$(info will not use 'git describe' to determine PROJECT_VER.)
else
PROJECT_VER:= $(GIT_PROJECT_VER)
endif # a git repository
endif # version.txt
endif # PROJECT_VER
endif # CONFIG_APP_PROJECT_VER_FROM_CONFIG
# cut PROJECT_VER and PROJECT_NAME to required 32 characters.
PROJECT_VER_CUT := $(shell echo "$(PROJECT_VER)" | cut -c 1-31)
PROJECT_NAME_CUT := $(shell echo "$(PROJECT_NAME)" | cut -c 1-31)
$(info App "$(PROJECT_NAME_CUT)" version: $(PROJECT_VER_CUT))
NEW_DEFINES:= "$(PROJECT_VER_CUT) $(PROJECT_NAME_CUT) $(IDF_VER)"
ifeq ("$(wildcard ${TMP_DEFINES})","")
OLD_DEFINES:= ""
else
OLD_DEFINES:= "$(shell cat $(TMP_DEFINES))"
endif
# If NEW_DEFINES (PROJECT_VER, PROJECT_NAME) were changed then rebuild only esp_app_desc.
ifneq (${NEW_DEFINES}, ${OLD_DEFINES})
$(shell echo $(NEW_DEFINES) > $(TMP_DEFINES); rm -f esp_app_desc.o;)
endif
esp_app_desc.o: CPPFLAGS += -D PROJECT_VER=\""$(PROJECT_VER_CUT)"\" -D PROJECT_NAME=\""$(PROJECT_NAME_CUT)"\"
endif # IS_BOOTLOADER_BUILD

View File

@@ -0,0 +1,110 @@
// Copyright 2017-2018 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include <assert.h>
#include <sys/param.h>
#include "esp_ota_ops.h"
#include "esp_attr.h"
#include "sdkconfig.h"
// Application version info
const __attribute__((section(".rodata_desc"))) esp_app_desc_t esp_app_desc = {
.magic_word = ESP_APP_DESC_MAGIC_WORD,
#ifdef CONFIG_APP_EXCLUDE_PROJECT_VER_VAR
.version = "",
#else
.version = PROJECT_VER,
#endif
#ifdef CONFIG_APP_EXCLUDE_PROJECT_NAME_VAR
.project_name = "",
#else
.project_name = PROJECT_NAME,
#endif
.idf_ver = IDF_VER,
#ifdef CONFIG_BOOTLOADER_APP_SECURE_VERSION
.secure_version = CONFIG_BOOTLOADER_APP_SECURE_VERSION,
#else
.secure_version = 0,
#endif
#ifdef CONFIG_APP_COMPILE_TIME_DATE
.time = __TIME__,
.date = __DATE__,
#else
.time = "",
.date = "",
#endif
};
#ifndef CONFIG_APP_EXCLUDE_PROJECT_VER_VAR
_Static_assert(sizeof(PROJECT_VER) <= sizeof(esp_app_desc.version), "PROJECT_VER is longer than version field in structure");
#endif
_Static_assert(sizeof(IDF_VER) <= sizeof(esp_app_desc.idf_ver), "IDF_VER is longer than idf_ver field in structure");
#ifndef CONFIG_APP_EXCLUDE_PROJECT_NAME_VAR
_Static_assert(sizeof(PROJECT_NAME) <= sizeof(esp_app_desc.project_name), "PROJECT_NAME is longer than project_name field in structure");
#endif
const esp_app_desc_t *esp_ota_get_app_description(void)
{
return &esp_app_desc;
}
/* The following two functions may be called from the panic handler
* or core dump, hence IRAM_ATTR.
*/
static inline char IRAM_ATTR to_hex_digit(unsigned val)
{
return (val < 10) ? ('0' + val) : ('a' + val - 10);
}
__attribute__((constructor)) void esp_ota_init_app_elf_sha256(void)
{
esp_ota_get_app_elf_sha256(NULL, 0);
}
/* The esp_app_desc.app_elf_sha256 should be possible to print in panic handler during cache is disabled.
* But because the cache is disabled the reading esp_app_desc.app_elf_sha256 is not right and
* can lead to a complete lock-up of the CPU.
* For this reason we do a reading of esp_app_desc.app_elf_sha256 while start up in esp_ota_init_app_elf_sha256()
* and keep it in the static s_app_elf_sha256 value.
*/
int IRAM_ATTR esp_ota_get_app_elf_sha256(char* dst, size_t size)
{
static char s_app_elf_sha256[CONFIG_APP_RETRIEVE_LEN_ELF_SHA / 2];
static bool first_call = true;
if (first_call) {
first_call = false;
// At -O2 optimization level, GCC optimizes out the copying of the first byte of the app_elf_sha256,
// because it is zero at compile time, and only modified afterwards by esptool.
// Casting to volatile disables the optimization.
const volatile uint8_t* src = (const volatile uint8_t*)esp_app_desc.app_elf_sha256;
for (size_t i = 0; i < sizeof(s_app_elf_sha256); ++i) {
s_app_elf_sha256[i] = src[i];
}
}
if (dst == NULL || size == 0) {
return 0;
}
size_t n = MIN((size - 1) / 2, sizeof(s_app_elf_sha256));
for (size_t i = 0; i < n; ++i) {
dst[2*i] = to_hex_digit(s_app_elf_sha256[i] >> 4);
dst[2*i + 1] = to_hex_digit(s_app_elf_sha256[i] & 0xf);
}
dst[2*n] = 0;
return 2*n + 1;
}

View File

@@ -1,21 +0,0 @@
/*
* SPDX-FileCopyrightText: 2017-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <assert.h>
#include <sys/param.h>
#include "esp_ota_ops.h"
#include "esp_attr.h"
#include "sdkconfig.h"
const esp_app_desc_t *esp_ota_get_app_description(void)
{
return esp_app_get_description();
}
int IRAM_ATTR esp_ota_get_app_elf_sha256(char* dst, size_t size)
{
return esp_app_get_elf_sha256(dst, size);
}

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2015-2023 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include <stdint.h>
#include <stdbool.h>
@@ -11,12 +19,16 @@
#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "esp_err.h"
#include "esp_partition.h"
#include "esp_spi_flash.h"
#include "esp_image_format.h"
#include "esp_secure_boot.h"
#include "esp_flash_encrypt.h"
#include "esp_spi_flash.h"
#include "sdkconfig.h"
#include "esp_ota_ops.h"
@@ -29,20 +41,6 @@
#include "esp_efuse.h"
#include "esp_attr.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C3
#include "esp32c3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32S3
#include "esp32s3/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32H2
#include "esp32h2/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32C2
#include "esp32c2/rom/secure_boot.h"
#endif
#define SUB_TYPE_ID(i) (i & 0x0F)
/* Partial_data is word aligned so no reallocation is necessary for encrypted flash write */
@@ -83,16 +81,16 @@ static const esp_partition_t *read_otadata(esp_ota_select_entry_t *two_otadata)
return NULL;
}
esp_partition_mmap_handle_t ota_data_map;
spi_flash_mmap_handle_t ota_data_map;
const void *result = NULL;
esp_err_t err = esp_partition_mmap(otadata_partition, 0, otadata_partition->size, ESP_PARTITION_MMAP_DATA, &result, &ota_data_map);
esp_err_t err = esp_partition_mmap(otadata_partition, 0, otadata_partition->size, SPI_FLASH_MMAP_DATA, &result, &ota_data_map);
if (err != ESP_OK) {
ESP_LOGE(TAG, "mmap otadata filed. Err=0x%8x", err);
return NULL;
} else {
memcpy(&two_otadata[0], result, sizeof(esp_ota_select_entry_t));
memcpy(&two_otadata[1], result + SPI_FLASH_SEC_SIZE, sizeof(esp_ota_select_entry_t));
esp_partition_munmap(ota_data_map);
spi_flash_munmap(ota_data_map);
}
return otadata_partition;
}
@@ -193,18 +191,13 @@ esp_err_t esp_ota_write(esp_ota_handle_t handle, const void *data, size_t size)
return ESP_ERR_INVALID_ARG;
}
if (size == 0) {
ESP_LOGD(TAG, "write data size is 0");
return ESP_OK;
}
// find ota handle in linked list
for (it = LIST_FIRST(&s_ota_ops_entries_head); it != NULL; it = LIST_NEXT(it, entries)) {
if (it->handle == handle) {
if (it->need_erase) {
// must erase the partition before writing to it
uint32_t first_sector = it->wrote_size / SPI_FLASH_SEC_SIZE; // first affected sector
uint32_t last_sector = (it->wrote_size + size - 1) / SPI_FLASH_SEC_SIZE; // last affected sector
uint32_t first_sector = it->wrote_size / SPI_FLASH_SEC_SIZE;
uint32_t last_sector = (it->wrote_size + size) / SPI_FLASH_SEC_SIZE;
ret = ESP_OK;
if ((it->wrote_size % SPI_FLASH_SEC_SIZE) == 0) {
@@ -388,7 +381,7 @@ static esp_err_t rewrite_ota_seq(esp_ota_select_entry_t *two_otadata, uint32_t s
}
}
uint8_t esp_ota_get_app_partition_count(void)
static uint8_t get_ota_partition_count(void)
{
uint16_t ota_app_count = 0;
while (esp_partition_find_first(ESP_PARTITION_TYPE_APP, ESP_PARTITION_SUBTYPE_APP_OTA_MIN + ota_app_count, NULL) != NULL) {
@@ -406,7 +399,7 @@ static esp_err_t esp_rewrite_ota_data(esp_partition_subtype_t subtype)
return ESP_ERR_NOT_FOUND;
}
uint8_t ota_app_count = esp_ota_get_app_partition_count();
uint8_t ota_app_count = get_ota_partition_count();
if (SUB_TYPE_ID(subtype) >= ota_app_count) {
return ESP_ERR_INVALID_ARG;
}
@@ -524,7 +517,7 @@ const esp_partition_t *esp_ota_get_boot_partition(void)
return NULL;
}
int ota_app_count = esp_ota_get_app_partition_count();
int ota_app_count = get_ota_partition_count();
ESP_LOGD(TAG, "found ota app max = %d", ota_app_count);
if ((bootloader_common_ota_select_invalid(&otadata[0]) &&
@@ -655,14 +648,8 @@ esp_err_t esp_ota_get_partition_description(const esp_partition_t *partition, es
#ifdef CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK
static esp_err_t esp_ota_set_anti_rollback(void) {
const esp_partition_t* partition = esp_ota_get_running_partition();
esp_app_desc_t app_desc = {0};
esp_err_t err = esp_ota_get_partition_description(partition, &app_desc);
if (err == ESP_OK) {
return esp_efuse_update_secure_version(app_desc.secure_version);
}
return err;
const esp_app_desc_t *app_desc = esp_ota_get_app_description();
return esp_efuse_update_secure_version(app_desc->secure_version);
}
#endif
@@ -675,7 +662,7 @@ bool esp_ota_check_rollback_is_possible(void)
return false;
}
int ota_app_count = esp_ota_get_app_partition_count();
int ota_app_count = get_ota_partition_count();
if (ota_app_count == 0) {
return false;
}
@@ -733,7 +720,7 @@ static esp_err_t esp_ota_current_ota_is_workable(bool valid)
}
int active_otadata = bootloader_common_get_active_otadata(otadata);
if (active_otadata != -1 && esp_ota_get_app_partition_count() != 0) {
if (active_otadata != -1 && get_ota_partition_count() != 0) {
if (valid == true && otadata[active_otadata].ota_state != ESP_OTA_IMG_VALID) {
otadata[active_otadata].ota_state = ESP_OTA_IMG_VALID;
ESP_LOGD(TAG, "OTA[current] partition is marked as VALID");
@@ -802,7 +789,7 @@ const esp_partition_t* esp_ota_get_last_invalid_partition(void)
int invalid_otadata = get_last_invalid_otadata(otadata);
int ota_app_count = esp_ota_get_app_partition_count();
int ota_app_count = get_ota_partition_count();
if (invalid_otadata != -1 && ota_app_count != 0) {
int ota_slot = (otadata[invalid_otadata].ota_seq - 1) % ota_app_count;
ESP_LOGD(TAG, "Find invalid ota_%d app", ESP_PARTITION_SUBTYPE_APP_OTA_MIN + ota_slot);
@@ -830,7 +817,7 @@ esp_err_t esp_ota_get_state_partition(const esp_partition_t *partition, esp_ota_
}
esp_ota_select_entry_t otadata[2];
int ota_app_count = esp_ota_get_app_partition_count();
int ota_app_count = get_ota_partition_count();
if (read_otadata(otadata) == NULL || ota_app_count == 0) {
return ESP_ERR_NOT_FOUND;
}
@@ -862,7 +849,7 @@ esp_err_t esp_ota_erase_last_boot_app_partition(void)
}
int active_otadata = bootloader_common_get_active_otadata(otadata);
int ota_app_count = esp_ota_get_app_partition_count();
int ota_app_count = get_ota_partition_count();
if (active_otadata == -1 || ota_app_count == 0) {
return ESP_FAIL;
}
@@ -899,25 +886,7 @@ esp_err_t esp_ota_erase_last_boot_app_partition(void)
return ESP_OK;
}
#if SOC_SUPPORT_SECURE_BOOT_REVOKE_KEY && CONFIG_SECURE_BOOT_V2_ENABLED
// Validates the image at "app_pos" with the secure boot digests other than "revoked_key_index"
static bool validate_img(esp_ota_secure_boot_public_key_index_t revoked_key_index, esp_partition_pos_t *app_pos)
{
bool verified = false;
for (int i = 0; i < SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS; i++) {
if (i == revoked_key_index) {
continue;
}
if (esp_secure_boot_verify_with_efuse_digest_index(i, app_pos) == ESP_OK) {
verified = true;
ESP_LOGI(TAG, "Application successfully verified with public key digest %d", i);
break;
}
}
return verified;
}
#if SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS > 1 && CONFIG_SECURE_BOOT_V2_ENABLED
esp_err_t esp_ota_revoke_secure_boot_public_key(esp_ota_secure_boot_public_key_index_t index)
{
if (!esp_secure_boot_enabled()) {
@@ -932,61 +901,70 @@ esp_err_t esp_ota_revoke_secure_boot_public_key(esp_ota_secure_boot_public_key_i
return ESP_ERR_INVALID_ARG;
}
const esp_partition_t *running_app_part = esp_ota_get_running_partition();
esp_err_t ret = ESP_FAIL;
#ifdef CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE
esp_ota_img_states_t running_app_state;
ret = esp_ota_get_state_partition(running_app_part, &running_app_state);
if (ret != ESP_OK) {
ESP_LOGE(TAG, "esp_ota_get_state_partition returned: %s", esp_err_to_name(ret));
esp_image_sig_public_key_digests_t app_digests = { 0 };
esp_err_t err = esp_secure_boot_get_signature_blocks_for_running_app(true, &app_digests);
if (err != ESP_OK || app_digests.num_digests == 0) {
ESP_LOGE(TAG, "This app is not signed, but check signature on update is enabled in config. It won't be possible to verify any update.");
return ESP_FAIL;
}
if (running_app_state != ESP_OTA_IMG_VALID) {
ESP_LOGE(TAG, "The current running application is not marked as a valid image. Aborting..");
return ESP_FAIL;
}
#endif
esp_secure_boot_key_digests_t trusted_keys;
ret = esp_secure_boot_read_key_digests(&trusted_keys);
if (ret != ESP_OK) {
ets_secure_boot_key_digests_t trusted_keys;
int ets_status = ets_secure_boot_read_key_digests(&trusted_keys);
if (ets_status != ETS_OK) {
ESP_LOGE(TAG, "Could not read the secure boot key digests from efuse. Aborting..");
return ESP_FAIL;
}
if (trusted_keys.key_digests[index] == NULL) {
ESP_LOGI(TAG, "Given public key digest(%d) is already revoked.", index);
ESP_LOGI(TAG, "Trusted Key block(%d) already revoked.", index);
return ESP_OK;
}
/* Check if the application can be verified with a key other than the one being revoked */
esp_partition_pos_t running_app_pos = {
.offset = running_app_part->address,
.size = running_app_part->size,
};
esp_image_sig_public_key_digests_t trusted_digests = { 0 };
for (unsigned i = 0; i < SECURE_BOOT_NUM_BLOCKS; i++) {
if (i == index) {
continue; // omitting - to find if there is a valid key after revoking this digest
}
if (!validate_img(index, &running_app_pos)) {
ESP_LOGE(TAG, "Application cannot be verified with any key other than the one being revoked");
if (trusted_keys.key_digests[i] != NULL) {
bool all_zeroes = true;
for (unsigned j = 0; j < ESP_SECURE_BOOT_DIGEST_LEN; j++) {
all_zeroes = all_zeroes && (*(uint8_t *)(trusted_keys.key_digests[i] + j) == 0);
}
if (!all_zeroes) {
memcpy(trusted_digests.key_digests[trusted_digests.num_digests++], (uint8_t *)trusted_keys.key_digests[i], ESP_SECURE_BOOT_DIGEST_LEN);
} else {
ESP_LOGD(TAG, "Empty trusted key block (%d).", i);
}
}
}
bool match = false;
for (unsigned i = 0; i < trusted_digests.num_digests; i++) {
if (match == true) {
break;
}
for (unsigned j = 0; j < app_digests.num_digests; j++) {
if (memcmp(trusted_digests.key_digests[i], app_digests.key_digests[j], ESP_SECURE_BOOT_DIGEST_LEN) == 0) {
ESP_LOGI(TAG, "App key block(%d) matches Trusted key block(%d)[%d -> Next active trusted key block].", j, i, i);
esp_err_t err = esp_efuse_set_digest_revoke(index);
if (err != ESP_OK) {
ESP_LOGE(TAG, "Failed to revoke digest (0x%x).", err);
return ESP_FAIL;
}
ESP_LOGI(TAG, "Revoked signature block %d.", index);
match = true;
break;
}
}
}
if (match == false) {
ESP_LOGE(TAG, "Running app doesn't have another valid secure boot key. Cannot revoke current key(%d).", index);
return ESP_FAIL;
}
/* Check if bootloder can be verified with any key other than the one being revoked */
esp_partition_pos_t bootloader_pos = {
.offset = ESP_BOOTLOADER_OFFSET,
.size = (ESP_PARTITION_TABLE_OFFSET - ESP_BOOTLOADER_OFFSET),
};
if (!validate_img(index, &bootloader_pos)) {
ESP_LOGE(TAG, "Bootloader cannot be verified with any key other than the one being revoked");
return ESP_FAIL;
}
esp_err_t err = esp_efuse_set_digest_revoke(index);
if (err != ESP_OK) {
ESP_LOGE(TAG, "Failed to revoke digest (0x%x).", err);
return ESP_FAIL;
}
ESP_LOGI(TAG, "Revoked signature block %d.", index);
return ESP_OK;
}
#endif

View File

@@ -1,8 +1,16 @@
/*
* SPDX-FileCopyrightText: 2015-2023 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef _OTA_OPS_H
#define _OTA_OPS_H
@@ -12,9 +20,8 @@
#include <stddef.h>
#include "esp_err.h"
#include "esp_partition.h"
#include "esp_app_desc.h"
#include "esp_image_format.h"
#include "esp_flash_partitions.h"
#include "soc/soc_caps.h"
#ifdef __cplusplus
extern "C"
@@ -44,27 +51,20 @@ typedef uint32_t esp_ota_handle_t;
/**
* @brief Return esp_app_desc structure. This structure includes app version.
*
* @note This API is present for backward compatibility reasons. Alternative function
* with the same functionality is `esp_app_get_description`
*
* Return description for running app.
* @return Pointer to esp_app_desc structure.
*/
const esp_app_desc_t *esp_ota_get_app_description(void) __attribute__((deprecated("Please use esp_app_get_description instead")));
const esp_app_desc_t *esp_ota_get_app_description(void);
/**
* @brief Fill the provided buffer with SHA256 of the ELF file, formatted as hexadecimal, null-terminated.
* If the buffer size is not sufficient to fit the entire SHA256 in hex plus a null terminator,
* the largest possible number of bytes will be written followed by a null.
*
* @note This API is present for backward compatibility reasons. Alternative function
* with the same functionality is `esp_app_get_elf_sha256`
*
* @param dst Destination buffer
* @param size Size of the buffer
* @return Number of bytes written to dst (including null terminator)
*/
int esp_ota_get_app_elf_sha256(char* dst, size_t size) __attribute__((deprecated("Please use esp_app_get_elf_sha256 instead")));
int esp_ota_get_app_elf_sha256(char* dst, size_t size);
/**
* @brief Commence an OTA update writing to the specified partition.
@@ -110,7 +110,7 @@ esp_err_t esp_ota_begin(const esp_partition_t* partition, size_t image_size, esp
* @param size Size of data buffer in bytes.
*
* @return
* - ESP_OK: Data was written to flash successfully, or size = 0
* - ESP_OK: Data was written to flash successfully.
* - ESP_ERR_INVALID_ARG: handle is invalid.
* - ESP_ERR_OTA_VALIDATE_FAILED: First byte of image contains invalid app image magic byte.
* - ESP_ERR_FLASH_OP_TIMEOUT or ESP_ERR_FLASH_OP_FAIL: Flash write failed.
@@ -119,17 +119,17 @@ esp_err_t esp_ota_begin(const esp_partition_t* partition, size_t image_size, esp
esp_err_t esp_ota_write(esp_ota_handle_t handle, const void* data, size_t size);
/**
* @brief Write OTA update data to partition at an offset
* @brief Write OTA update data to partition
*
* This function can write data in non-contiguous manner.
* If flash encryption is enabled, data should be 16 bytes aligned.
* This function can write data in non contiguous manner.
* If flash encryption is enabled, data should be 16 byte aligned.
*
* @param handle Handle obtained from esp_ota_begin
* @param data Data buffer to write
* @param size Size of data buffer in bytes
* @param offset Offset in flash partition
*
* @note While performing OTA, if the packets arrive out of order, esp_ota_write_with_offset() can be used to write data in non-contiguous manner.
* @note While performing OTA, if the packets arrive out of order, esp_ota_write_with_offset() can be used to write data in non contiguous manner.
* Use of esp_ota_write_with_offset() in combination with esp_ota_write() is not recommended.
*
* @return
@@ -251,14 +251,6 @@ const esp_partition_t* esp_ota_get_next_update_partition(const esp_partition_t *
*/
esp_err_t esp_ota_get_partition_description(const esp_partition_t *partition, esp_app_desc_t *app_desc);
/**
* @brief Returns number of ota partitions provided in partition table.
*
* @return
* - Number of OTA partitions
*/
uint8_t esp_ota_get_app_partition_count(void);
/**
* @brief This function is called to indicate that the running app is working well.
*
@@ -332,11 +324,11 @@ typedef enum {
} esp_ota_secure_boot_public_key_index_t;
/**
* @brief Revokes the signature digest denoted by the given index. This should be called in the application only after the rollback logic otherwise the device may end up in unrecoverable state.
* @brief Revokes the old signature digest. To be called in the application after the rollback logic.
*
* Relevant for Secure boot v2 on ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C6, ESP32-H2 where up to 3 key digests can be stored (Key \#N-1, Key \#N, Key \#N+1).
* When a key used to sign an app is invalidated, an OTA update is to be sent with an app signed with at least one of the other two keys which has not been revoked already.
* After successfully booting the OTA app should call this function to revoke Key \#N-1.
* Relevant for Secure boot v2 on targets where upto 3 key digests can be stored (Key N-1, Key N, Key N+1).
* When key N-1 used to sign an app is invalidated, an OTA update is to be sent with an app signed with key N-1 & Key N.
* After successfully booting the OTA app should call this function to revoke Key N-1.
*
* @param index - The index of the signature block to be revoked
*

View File

@@ -3,8 +3,19 @@
# otatool is used to perform ota-level operations - flashing ota partition
# erasing ota partition and switching ota partition
#
# SPDX-FileCopyrightText: 2018-2021 Espressif Systems (Shanghai) CO LTD
# SPDX-License-Identifier: Apache-2.0
# Copyright 2018 Espressif Systems (Shanghai) PTE LTD
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http:#www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from __future__ import division, print_function
import argparse
@@ -234,6 +245,10 @@ def _erase_ota_partition(target, ota_id):
def main():
if sys.version_info[0] < 3:
print('WARNING: Support for Python 2 is deprecated and will be removed in future versions.', file=sys.stderr)
elif sys.version_info[0] == 3 and sys.version_info[1] < 6:
print('WARNING: Python 3 versions older than 3.6 are not supported.', file=sys.stderr)
global quiet
parser = argparse.ArgumentParser('ESP-IDF OTA Partitions Tool')

View File

@@ -1,5 +1,4 @@
idf_component_register(SRC_DIRS "."
PRIV_INCLUDE_DIRS "."
PRIV_REQUIRES cmock test_utils app_update bootloader_support nvs_flash driver spi_flash
PRIV_REQUIRES cmock test_utils app_update bootloader_support nvs_flash
)
target_compile_options(${COMPONENT_LIB} PRIVATE "-Wno-format")

View File

@@ -0,0 +1,5 @@
#
#Component Makefile
#
COMPONENT_ADD_LDFLAGS = -Wl,--whole-archive -l$(COMPONENT_NAME) -Wl,--no-whole-archive

View File

@@ -0,0 +1,50 @@
#include <string.h>
#include "esp_ota_ops.h"
#include "unity.h"
TEST_CASE("esp_ota_get_app_elf_sha256 test", "[esp_app_desc]")
{
const int sha256_hex_len = CONFIG_APP_RETRIEVE_LEN_ELF_SHA;
char dst[sha256_hex_len + 2];
const char fill = 0xcc;
int res;
size_t len;
char ref_sha256[sha256_hex_len + 1];
const esp_app_desc_t* desc = esp_ota_get_app_description();
for (int i = 0; i < sizeof(ref_sha256) / 2; ++i) {
snprintf(ref_sha256 + 2*i, 3, "%02x", desc->app_elf_sha256[i]);
}
ref_sha256[sha256_hex_len] = 0;
printf("Ref: %s\n", ref_sha256);
memset(dst, fill, sizeof(dst));
len = sizeof(dst);
res = esp_ota_get_app_elf_sha256(dst, len);
printf("%d: %s (%d)\n", len, dst, res);
TEST_ASSERT_EQUAL(sha256_hex_len + 1, res);
TEST_ASSERT_EQUAL(0, memcmp(dst, ref_sha256, res - 1));
TEST_ASSERT_EQUAL_HEX(0, dst[sha256_hex_len]);
TEST_ASSERT_EQUAL_HEX(fill, dst[sha256_hex_len + 1]);
memset(dst, fill, sizeof(dst));
len = 9;
res = esp_ota_get_app_elf_sha256(dst, len);
printf("%d: %s (%d)\n", len, dst, res);
TEST_ASSERT_EQUAL(9, res);
TEST_ASSERT_EQUAL(0, memcmp(dst, ref_sha256, res - 1));
TEST_ASSERT_EQUAL_HEX(0, dst[8]);
TEST_ASSERT_EQUAL_HEX(fill, dst[9]);
memset(dst, fill, sizeof(dst));
len = 8;
res = esp_ota_get_app_elf_sha256(dst, len);
printf("%d: %s (%d)\n", len, dst, res);
// should output even number of characters plus '\0'
TEST_ASSERT_EQUAL(7, res);
TEST_ASSERT_EQUAL(0, memcmp(dst, ref_sha256, res - 1));
TEST_ASSERT_EQUAL_HEX(0, dst[6]);
TEST_ASSERT_EQUAL_HEX(fill, dst[7]);
TEST_ASSERT_EQUAL_HEX(fill, dst[8]);
}

View File

@@ -1,12 +1,6 @@
/*
* SPDX-FileCopyrightText: 2021-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "esp_log.h"
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include <freertos/semphr.h>
@@ -14,6 +8,7 @@
#include <unity.h>
#include <test_utils.h>
#include <esp_ota_ops.h>
#include "bootloader_common.h"
/* These OTA tests currently don't assume an OTA partition exists
on the device, so they're a bit limited
@@ -91,8 +86,6 @@ TEST_CASE("esp_ota_get_next_update_partition logic", "[ota]")
TEST_CASE("esp_ota_get_partition_description", "[ota]")
{
extern esp_err_t bootloader_common_get_partition_description(const esp_partition_pos_t *partition, esp_app_desc_t *app_desc);
const esp_partition_t *running = esp_ota_get_running_partition();
TEST_ASSERT_NOT_NULL(running);
esp_app_desc_t app_desc1, app_desc2;
@@ -114,11 +107,3 @@ TEST_CASE("esp_ota_get_partition_description", "[ota]")
};
TEST_ESP_ERR(ESP_ERR_NOT_FOUND, bootloader_common_get_partition_description(&not_app_pos, &app_desc1));
}
TEST_CASE("esp_ota_get_running_partition points to correct address", "[spi_flash]")
{
const esp_partition_t *factory = esp_partition_find_first(ESP_PARTITION_TYPE_APP, ESP_PARTITION_SUBTYPE_ANY, "factory");
const esp_partition_t* part = esp_ota_get_running_partition();
ESP_LOGI("running bin", "0x%p", (void*)part->address);
TEST_ASSERT_EQUAL_HEX32(factory->address, part->address);
}

View File

@@ -12,7 +12,13 @@
#include "string.h"
#include "sdkconfig.h"
#include "esp_rom_spiflash.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/spi_flash.h"
#include "esp32/rom/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/spi_flash.h"
#include "esp32s2/rom/rtc.h"
#endif
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
@@ -21,7 +27,7 @@
#include "unity.h"
#include "bootloader_common.h"
#include "../bootloader_flash/include/bootloader_flash_priv.h"
#include "../include_bootloader/bootloader_flash_priv.h"
#include "esp_log.h"
#include "esp_ota_ops.h"
@@ -32,13 +38,9 @@
#include "driver/gpio.h"
#include "esp_sleep.h"
#include "test_utils.h"
#if !TEMPORARY_DISABLED_FOR_TARGETS(ESP32C2)
//IDF-5131
RTC_DATA_ATTR static int boot_count = 0;
static const char *TAG = "ota_test";
/* @brief Copies a current app to next partition using handle.
@@ -49,11 +51,11 @@ static const char *TAG = "ota_test";
static void copy_app_partition(esp_ota_handle_t update_handle, const esp_partition_t *curr_app)
{
const void *partition_bin = NULL;
esp_partition_mmap_handle_t data_map;
spi_flash_mmap_handle_t data_map;
ESP_LOGI(TAG, "start the copy process");
TEST_ESP_OK(esp_partition_mmap(curr_app, 0, curr_app->size, ESP_PARTITION_MMAP_DATA, &partition_bin, &data_map));
TEST_ESP_OK(esp_partition_mmap(curr_app, 0, curr_app->size, SPI_FLASH_MMAP_DATA, &partition_bin, &data_map));
TEST_ESP_OK(esp_ota_write(update_handle, (const void *)partition_bin, curr_app->size));
esp_partition_munmap(data_map);
spi_flash_munmap(data_map);
ESP_LOGI(TAG, "finish the copy process");
}
@@ -65,15 +67,15 @@ static void copy_app_partition(esp_ota_handle_t update_handle, const esp_partiti
static void copy_app_partition_with_offset(esp_ota_handle_t update_handle, const esp_partition_t *curr_app)
{
const void *partition_bin = NULL;
esp_partition_mmap_handle_t data_map;
spi_flash_mmap_handle_t data_map;
ESP_LOGI(TAG, "start the copy process");
uint32_t offset = 0, bytes_to_write = curr_app->size;
uint32_t write_bytes;
while (bytes_to_write > 0) {
write_bytes = (bytes_to_write > (4 * 1024)) ? (4 * 1024) : bytes_to_write;
TEST_ESP_OK(esp_partition_mmap(curr_app, offset, write_bytes, ESP_PARTITION_MMAP_DATA, &partition_bin, &data_map));
TEST_ESP_OK(esp_partition_mmap(curr_app, offset, write_bytes, SPI_FLASH_MMAP_DATA, &partition_bin, &data_map));
TEST_ESP_OK(esp_ota_write_with_offset(update_handle, (const void *)partition_bin, write_bytes, offset));
esp_partition_munmap(data_map);
spi_flash_munmap(data_map);
bytes_to_write -= write_bytes;
offset += write_bytes;
}
@@ -90,11 +92,11 @@ static void copy_app_partition_with_offset(esp_ota_handle_t update_handle, const
static void copy_partition(const esp_partition_t *dst_partition, const esp_partition_t *src_partition)
{
const void *partition_bin = NULL;
esp_partition_mmap_handle_t data_map;
TEST_ESP_OK(esp_partition_mmap(src_partition, 0, src_partition->size, ESP_PARTITION_MMAP_DATA, &partition_bin, &data_map));
spi_flash_mmap_handle_t data_map;
TEST_ESP_OK(esp_partition_mmap(src_partition, 0, src_partition->size, SPI_FLASH_MMAP_DATA, &partition_bin, &data_map));
TEST_ESP_OK(esp_partition_erase_range(dst_partition, 0, dst_partition->size));
TEST_ESP_OK(esp_partition_write(dst_partition, 0, (const void *)partition_bin, dst_partition->size));
esp_partition_munmap(data_map);
spi_flash_munmap(data_map);
}
#endif
@@ -825,7 +827,6 @@ static void test_flow6(void)
// 3 Stage: run OTA0 -> check it -> erase OTA_DATA for next tests -> PASS
TEST_CASE_MULTIPLE_STAGES("Switching between factory, OTA0 using esp_ota_write_with_offset", "[app_update][timeout=90][reset=DEEPSLEEP_RESET, DEEPSLEEP_RESET]", start_test, test_flow6, test_flow6);
//IDF-5145
TEST_CASE("Test bootloader_common_get_sha256_of_partition returns ESP_ERR_IMAGE_INVALID when image is ivalid", "[partitions]")
{
const esp_partition_t *cur_app = esp_ota_get_running_partition();
@@ -847,4 +848,3 @@ TEST_CASE("Test bootloader_common_get_sha256_of_partition returns ESP_ERR_IMAGE_
TEST_ESP_ERR(ESP_ERR_IMAGE_INVALID, bootloader_common_get_sha256_of_partition(other_app->address, other_app->size, other_app->type, sha_256_other_app));
TEST_ASSERT_EQUAL_MEMORY_MESSAGE(sha_256_cur_app, sha_256_other_app, sizeof(sha_256_cur_app), "must be the same");
}
#endif //!TEMPORARY_DISABLED_FOR_TARGETS(ESP32C2)

View File

@@ -0,0 +1,41 @@
if(NOT CONFIG_LWIP_IPV6 AND NOT CMAKE_BUILD_EARLY_EXPANSION)
# note: the component is still included in the build so it can become visible again in config
# without needing to re-run CMake. However no source or header files are built.
message(STATUS "IPV6 support is disabled so the asio component will not be built")
idf_component_register()
return()
endif()
set(asio_sources "asio/asio/src/asio.cpp")
if(CONFIG_ASIO_SSL_SUPPORT)
if(CONFIG_ASIO_USE_ESP_OPENSSL)
list(APPEND asio_sources
"asio/asio/src/asio_ssl.cpp"
"port/src/esp_asio_openssl_stubs.c")
endif()
if(CONFIG_ASIO_USE_ESP_WOLFSSL)
list(APPEND asio_sources
"asio/asio/src/asio_ssl.cpp")
endif()
endif()
idf_component_register(SRCS ${asio_sources}
INCLUDE_DIRS "asio/asio/include" "port/include"
REQUIRES lwip)
if(CONFIG_ASIO_SSL_SUPPORT)
if(CONFIG_ASIO_USE_ESP_WOLFSSL)
idf_component_get_property(wolflib esp-wolfssl COMPONENT_LIB)
idf_component_get_property(wolfdir esp-wolfssl COMPONENT_DIR)
target_link_libraries(${COMPONENT_LIB} PUBLIC ${wolflib})
target_include_directories(${COMPONENT_LIB} PUBLIC ${wolfdir}/wolfssl/wolfssl)
endif()
if(CONFIG_ASIO_USE_ESP_OPENSSL)
idf_component_get_property(esp_openssl openssl COMPONENT_LIB)
target_link_libraries(${COMPONENT_LIB} PUBLIC ${esp_openssl})
endif()
endif()

27
components/asio/Kconfig Normal file
View File

@@ -0,0 +1,27 @@
menu "ESP-ASIO"
visible if LWIP_IPV6
config ASIO_SSL_SUPPORT
bool "Enable SSL/TLS support of ASIO"
default n
help
Enable support for basic SSL/TLS features, available for mbedTLS/OpenSSL
as well as wolfSSL TLS library.
choice ASIO_SSL_LIBRARY_CHOICE
prompt "Choose SSL/TLS library for ESP-TLS (See help for more Info)"
default ASIO_USE_ESP_OPENSSL
depends on ASIO_SSL_SUPPORT
help
The ASIO support multiple backend TLS libraries. Currently the mbedTLS with a thin ESP-OpenSSL
port layer (default choice) and WolfSSL are supported.
Different TLS libraries may support different features and have different resource
usage. Consult the ESP-TLS documentation in ESP-IDF Programming guide for more details.
config ASIO_USE_ESP_OPENSSL
bool "esp-openssl"
config ASIO_USE_ESP_WOLFSSL
depends on TLS_STACK_WOLFSSL
bool "wolfSSL (License info in wolfSSL directory README)"
endchoice
endmenu

1
components/asio/asio Submodule

Submodule components/asio/asio added at f31694c9f1

View File

@@ -0,0 +1,13 @@
ifdef CONFIG_LWIP_IPV6
COMPONENT_ADD_INCLUDEDIRS := asio/asio/include port/include
COMPONENT_PRIV_INCLUDEDIRS := private_include
COMPONENT_SRCDIRS := asio/asio/src port/src
ifeq ($(CONFIG_ASIO_SSL_SUPPORT), )
COMPONENT_OBJEXCLUDE := asio/asio/src/asio_ssl.o port/src/esp_asio_openssl_stubs.o
endif
COMPONENT_SUBMODULES += asio
endif # CONFIG_LWIP_IPV6

View File

@@ -0,0 +1,50 @@
// Copyright 2018 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef _ESP_ASIO_CONFIG_H_
#define _ESP_ASIO_CONFIG_H_
//
// Enabling exceptions only when they are enabled in menuconfig
//
# include <sdkconfig.h>
# ifndef CONFIG_COMPILER_CXX_EXCEPTIONS
# define ASIO_NO_EXCEPTIONS
# endif // CONFIG_COMPILER_CXX_EXCEPTIONS
# ifndef CONFIG_COMPILER_RTTI
# define ASIO_NO_TYPEID
# endif // CONFIG_COMPILER_RTTI
//
// LWIP compatibility inet and address macros/functions
//
# define LWIP_COMPAT_SOCKET_INET 1
# define LWIP_COMPAT_SOCKET_ADDR 1
//
// Specific ASIO feature flags
//
# define ASIO_DISABLE_SERIAL_PORT
# define ASIO_SEPARATE_COMPILATION
# define ASIO_STANDALONE
# define ASIO_HAS_PTHREADS
# ifdef CONFIG_ASIO_USE_ESP_OPENSSL
# define ASIO_USE_ESP_OPENSSL
# define OPENSSL_NO_ENGINE
# elif CONFIG_ASIO_USE_ESP_WOLFSSL
# define ASIO_USE_WOLFSSL
# endif // CONFIG_ASIO_USE_ESP_OPENSSL
#endif // _ESP_ASIO_CONFIG_H_

Some files were not shown because too many files have changed in this diff Show More