Compare commits

..

6183 Commits

Author SHA1 Message Date
Ivan Grokhotkov
d1503315de versions: Update version to 4.2.5 2023-06-29 10:06:42 +02:00
Jiang Jiang Jian
058fd7396b Merge branch 'bugfix/fix_chip_broken_bug_in_monitor_mode_S2_v4.2' into 'release/v4.2'
pm: fix RTC IO and MEM issues under high temperature(v4.2)

See merge request espressif/esp-idf!24252
2023-06-16 18:22:09 +08:00
Michael (XIAO Xufeng)
e2c08f3a73 pm: fix RTC IO and MEM issues under high temperature(v4.2) 2023-06-16 18:22:09 +08:00
Jiang Jiang Jian
b2c9d3d0f3 Merge branch 'bugfix/call_missing_disconnected_cb_v4.2' into 'release/v4.2'
esp_wifi: fix some wifi bugs(Backport v4.2)

See merge request espressif/esp-idf!24245
2023-06-16 18:18:29 +08:00
Jiang Jiang Jian
985cca4afd Merge branch 'bugfix/fix_wps_with_sae_enabled_ap_v4.2' into 'release/v4.2'
esp_wifi: Fix WPS issue for WPA3+WPA2 mode(v4.2)

See merge request espressif/esp-idf!24158
2023-06-16 11:34:55 +08:00
muhaidong
e532cc81ef esp_wifi: fix some wifi bugs
1. verify if country start channel is valid
2. fix missing disconnected callback and update some log prints
2023-06-14 20:42:14 +08:00
Kapil Gupta
26533e07a3 esp_wifi: Fix WPS issue for WPA3+WPA2 mode 2023-06-09 18:15:54 +05:30
Jiang Jiang Jian
129286d207 Merge branch 'bugfix/fix_some_wifi_bugs_230605_v4.2' into 'release/v4.2'
esp_wifi: fix some wifi bugs(Backport v4.2)

See merge request espressif/esp-idf!24051
2023-06-06 13:50:52 +08:00
muhaidong
e3d9d5df0d esp_wifi: fix some wifi bugs
1. send null data when state change from association to run
2. fix sta auth failed but softAP shows it connected issue
3. mesh: layer2 node will scan all channels when root leave in fixed root network
2023-06-05 20:46:22 +08:00
Jiang Jiang Jian
a9cac7605b Merge branch 'bufix/Backport_some_lwip_bugs_for_4.2_0417' into 'release/v4.2'
lwip: Add security fixes and other features and bufixes to v4.2

See merge request espressif/esp-idf!23238
2023-06-05 17:15:19 +08:00
xueyunfei
00096a3433 lwip: Add security fixes and other features and bufixes to v4.2
* Update submodule: git log --oneline 2195f7416fb3136831babf3e96c027a73075bd4f..6bb132e3797d5449a923804c75c57d458920f8ac

Detailed description of the changes:
  - tcp_in/ooseq: Fix incorrect segment trim when FIN moved (espressif/esp-lwip@6bb132e3)
  - api_msg: fix tcp_abort thread safety (2.1.2-esp) (espressif/esp-lwip@53a6e019)
  - lwip:optimization dhcp coarse timer (espressif/esp-lwip@a7abf28e)
  - napt: Fix ip_portmap_add() to keep only one port mapping (espressif/esp-lwip@abab9fef)
  - reduce the DHCP Request timeout (espressif/esp-lwip@6fa02bd3)
  - lwip timer:optimization dhcp fine timer (espressif/esp-lwip@79182163)
  - optimization lwip ip4 reassembly timer (espressif/esp-lwip@17f41c9f)
  - optimization lwip ip6 reassembly timer (espressif/esp-lwip@c943fc5a)
  - optimization lwip dns timer (espressif/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)
  - 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)
  - Closes https://github.com/espressif/esp-idf/issues/6786
  - lwip/dhcp: add 60 option for vendor class identify (espressif/esp-lwip@ae7edc2a)
  - Closes https://github.com/espressif/esp-lwip/issues/32
  - dhcp: Restore dhcp_cb on restart after dhcp_release_and_stop() (espressif/esp-lwip@55ea9d9c)
  - Closes https://github.com/espressif/esp-idf/issues/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)
2023-06-05 06:08:45 +00:00
Jiang Jiang Jian
92a03d6241 Merge branch 'bugfix/nvs_softap_pmk_v4.2' into 'release/v4.2'
esp_wifi: fix softap nvs <ssid,password,pmk> not matching issue(v4.2)

See merge request espressif/esp-idf!23818
2023-06-05 12:06:08 +08:00
Marius Vikhammer
da80b63f3f Merge branch 'contrib/github_pr_11215_v4.2' into 'release/v4.2'
improve thread safety in esp_timer (GitHub PR) (v4.2)

See merge request espressif/esp-idf!23543
2023-05-29 10:19:41 +08:00
Jens Gutermuth
457b71f1a3 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-18 15:41:53 +08:00
chenjianxing
54a4d20bd2 esp_wifi: fix softap nvs <ssid,password,pmk> not matching issue 2023-05-18 15:40:10 +08:00
Marius Vikhammer
fe907a6c39 Merge branch 'bugfix/esp32s2_startup_garbled_output_v4.2' into 'release/v4.2'
esp_system: fix garbled UART output on startup on esp32s2 (v4.2)

See merge request espressif/esp-idf!18752
2023-05-18 13:05:57 +08:00
Jiang Jiang Jian
65331f6ce1 Merge branch 'bugfix/fix_some_ble_bug_v4.2' into 'release/v4.2'
Fixed some BLE bugs (backport v4.2)

See merge request espressif/esp-idf!23701
2023-05-18 10:52:37 +08:00
Ivan Grokhotkov
dc07c9e110 esp_system: fix garbled UART output on startup on esp32s2
Closes https://github.com/espressif/esp-idf/issues/9168
2023-05-18 02:14:31 +00:00
Jiang Jiang Jian
c28f5a5cd2 Merge branch 'bugfix/fix_esp32_bugs_230511_v4.2' into 'release/v4.2'
Fixed some esp32 bugs(backport v4.2)

See merge request espressif/esp-idf!23706
2023-05-17 17:08:44 +08:00
Zim Kalinowski
af6dafe01e Merge branch 'bugfix/psram_newlib_time_rom_v4.2' into 'release/v4.2'
rom: fix newlib time ROM functions being regardless of CONFIG_SPIRAM_CACHE_WORKAROUND (v4.2)

See merge request espressif/esp-idf!23392
2023-05-15 18:46:22 +08:00
zhiweijian
20de428632 Fixed blufi doc error 2023-05-11 20:29:24 +08:00
zhiweijian
b9d062ef16 Fixed BLE disconnection failure on ESP32 2023-05-11 20:26:39 +08:00
zwj
0b8b26ec49 Fixed disconnection due to consecutive CRC errors in first 6 intervals 2023-05-11 20:26:29 +08:00
zhiweijian
f563a1e3cc Fixed battery profile wrong condition 2023-05-11 20:25:57 +08:00
chenjianhua
747daffc28 bluedroid: fix ble adv data construct for device name 2023-05-11 15:28:39 +08:00
chenjianhua
dfe7cffd09 bluedroid: fix ble smp key distribution setting 2023-05-11 15:28:26 +08:00
chenjianhua
cb658fefb3 bluedroid: report disconnect event after BLE link closed 2023-05-11 15:28:05 +08:00
Marius Vikhammer
6a3bd9e22b 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:33 +00:00
Wang Meng Yang
3d0cfc8cc3 Merge branch 'bugfix/hf_cind_ind_index_v4.2' into 'release/v4.2'
bt: Fixed the inconsistency between the indicator event received by the HF application layer and the actually received indicator(v4.2)

See merge request espressif/esp-idf!23564
2023-05-09 19:54:52 +08:00
xiongweichao
1b459301d6 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:24:42 +08:00
Jiang Jiang Jian
4a52b7845c Merge branch 'bugfix/bt_diable_enbale_crash_v4.2' into 'release/v4.2'
bt:Fixed esp32 controller bug (v4.2)

See merge request espressif/esp-idf!23176
2023-04-24 11:03:08 +08:00
Jiang Jiang Jian
f97a8a2a2d Merge branch 'bugfix/fix_some_ble_bug_v4.2' into 'release/v4.2'
Fixed some BLE bugs (backport v4.2)

See merge request espressif/esp-idf!23305
2023-04-24 10:46:13 +08:00
zwj
45a3c35d65 Fixed duplicate scan refresh cycle is not accurate after restarting scan on ESP32 2023-04-23 12:21:20 +00:00
xiongweichao
873856fdf3 bt: added coex adapter operation to get version of coexist module to ESP32 Bluetooth Controller 2023-04-23 12:21:20 +00:00
xiongweichao
37aa555611 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-23 12:21:20 +00:00
chenjianhua
93360655cf bluedroid: report status after clearing the BLE white list 2023-04-21 16:01:09 +08:00
chenjianhua
b242e0e602 bluedroid: fix GATTC cache address save 2023-04-21 15:58:11 +08:00
chenjianhua
1d7317b401 bluedroid: fix adv and scan state conflict 2023-04-21 15:57:58 +08:00
chenjianhua
564c4b644d bluedroid: support get bluetooth device name 2023-04-21 15:57:41 +08:00
Jiang Jiang Jian
527a23d63f Merge branch 'bugfix/fix_systimer_stall_issue_in_lightsleep_v4.2' into 'release/v4.2'
esp_wifi: fix failed to sleep after scan, coex: fix wifi connecting interrupted by ble

See merge request espressif/esp-idf!23214
2023-04-17 19:42:47 +08:00
liuning
cebf0acaee esp_wifi: fix failed to sleep after scan, coex: fix wifi connecting interrupted by ble 2023-04-14 18:53:13 +08:00
Jiang Jiang Jian
f06c39e9a6 Merge branch 'bugfix/espnow_config_channel_v4.2' into 'release/v4.2'
esp_wifi: fix espnow example add peer fail when config channel(v4.2)

See merge request espressif/esp-idf!23181
2023-04-13 18:08:10 +08:00
chenjianxing
d71832b0c3 esp_wifi: fix espnow example add peer fail when config channel
Closes https://github.com/espressif/esp-idf/issues/9592
2023-04-13 10:55:10 +08:00
Jiang Jiang Jian
148f4c62a9 Merge branch 'mesh/bugfix_fix_heap_corrupt_issue_v4.2' into 'release/v4.2'
esp_wifi: fix bugs in wifi mesh (backport v4.2)

See merge request espressif/esp-idf!23131
2023-04-11 17:42:01 +08:00
zhangyanjiao
504e83c856 Update the ESP-NOW frame length in docs 2023-04-10 17:21:59 +08:00
zhangyanjiao
a7ba067c2e wifi_mesh: update mesh doc 2023-04-10 17:21:51 +08:00
zhangyanjiao
a42b845cab esp_wifi:
1. wifi_mesh: fix the heap corrupt issue in MTXON task
2. wifi_mesh: Fix several bugs on mesh network
2023-04-10 17:20:59 +08:00
Jiang Jiang Jian
25e130a833 Merge branch 'bugfix/fix_blufi_frag_pkt_vulnerability_4.2' into 'release/v4.2'
Fixed vulnerability attacks that could cause heap overflow in fragmented Blufi packet processing (back port v4.2)

See merge request espressif/esp-idf!23063
2023-04-06 10:57:19 +08:00
zhiweijian
3a7dd3c0de Fixed vulnerability attacks that could cause heap overflow in fragmented Blufi packet processing 2023-04-04 15:42:34 +08:00
Jiang Jiang Jian
9dfbf27857 Merge branch 'bugfix/fix_some_ble_bugs_for_4.2' into 'release/v4.2'
Bluedroid: fix some ble bugs (backport 4.2)

See merge request espressif/esp-idf!22704
2023-03-20 14:02:59 +08:00
Jiang Jiang Jian
8e8ef2b469 Merge branch 'bugfix/close_rf_in_deep_sleep_backport_v4.2' into 'release/v4.2'
deep sleep: further optimize sleep current if RF is enabled (backport v4.2)

See merge request espressif/esp-idf!22735
2023-03-20 14:02:17 +08:00
Jiang Jiang Jian
03ad2abdee Merge branch 'feature/esp32_ulp_allow_8kb_v4.2' into 'release/v4.2'
esp32: allow up to 8 kB of ULP program size (v4.2)

See merge request espressif/esp-idf!22707
2023-03-20 14:00:59 +08:00
wuzhenghui
b158a891fe deep sleep: close rf to optimize sleep current 2023-03-19 18:37:58 +08:00
wuzhenghui
0270f9d435 Revert "deep sleep: optimize sleep current in wifi softap mode"
This reverts commit f16e8cb48e.
2023-03-17 12:06:55 +08:00
Zim Kalinowski
f558578958 Merge branch 'refactor/nvs_allocatable_objects_v4.2' into 'release/v4.2'
refactor(nvs): custom allocator for all objects allocated in NVS (v4.2)

See merge request espressif/esp-idf!21796
2023-03-14 03:58:03 +08:00
Ivan Grokhotkov
3ccd1ae6e2 esp32: allow up to 8 kB of ULP program size
The remaining 4 kB had been reserved for storing RF calibration and
BT stack state since 4e092be6. However, these features never got
implemented. If we ever need to place RF related data into RTC slow
memory, we can do this by creating a variable with RTC_NOINIT_ATTR
instead.

https://github.com/espressif/esp-idf/issues/6515
2023-03-10 18:08:14 +08:00
chenjianhua
c912fcba45 fix ble adv tx power map 2023-03-10 17:15:24 +08:00
chenjianhua
c5dc8389ed bluedroid: fix ble rpa generate and update by host 2023-03-10 17:15:24 +08:00
chenjianhua
763143a89a fix esp hid crash when auth failed 2023-03-10 17:15:24 +08:00
Jakob Hasse
3705e39db9 refactor(nvs): custom allocator for all objects allocated in NVS 2023-03-04 14:07:10 +00:00
Zim Kalinowski
45a488f9e1 Merge branch 'bugfix/twai_listen_only_errata_v4.2' into 'release/v4.2'
twai: Add errata workaround for listen only mode (v4.2)

See merge request espressif/esp-idf!22517
2023-03-01 16:13:31 +08:00
Roland Dobai
129c4f5b62 Merge branch 'fix/gdbgui_v4.2' into 'release/v4.2'
Tools: gdbgui is not supported on Python 3.11 (v4.2)

See merge request espressif/esp-idf!22549
2023-03-01 16:01:03 +08:00
Roland Dobai
9e9cbd541b Tools: gdbgui is not supported on Python 3.11
Closes https://github.com/espressif/esp-idf/issues/10116
2023-02-28 16:15:22 +01:00
Darian Leung
f3a8a911c0 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:38:37 +08:00
Jiang Jiang Jian
ab0ae8733f Merge branch 'bugfix/build_err_with_ssr_enabled_v4.2' into 'release/v4.2'
bt: Fixed build errors when sniff subrating is enabled (v4.2)

See merge request espressif/esp-idf!22353
2023-02-17 13:51:55 +08:00
Jin Cheng
c25d227280 Fixed build errors when sniff subrating is enabled. 2023-02-16 15:25:41 +08:00
Jiang Jiang Jian
30af2e87f5 Merge branch 'fix/long_assoc_comeback_time_v4.2' into 'release/v4.2'
esp_wifi: reject AP when assoc comeback time given is greater than 5 seconds (Backport v4.2)

See merge request espressif/esp-idf!21814
2023-01-12 13:56:57 +08:00
Sarvesh Bodakhe
3bc7626603 esp_wifi: Update wifi libs
Update wifi libs with below changes -
1. reject AP when assoc comeback time given is greater than 5 seconds
2023-01-11 14:39:24 +05:30
Jiang Jiang Jian
034d954cd2 Merge branch 'bugfix/sae_auth_and_pmk_issues_v4.2' into 'release/v4.2'
Fix SAE open auth and PMK issues (Backport v4.2)

See merge request espressif/esp-idf!21921
2023-01-10 22:16:21 +08:00
Shyamal Khachane
a858328f3b wpa_supplicant: Set PMK from PMKSA incase of caching 2023-01-09 10:22:15 +05:30
Shyamal Khachane
7d70759991 esp_wifi: Fix open auth issue after commit message exchange 2023-01-09 10:22:15 +05:30
Jiang Jiang Jian
8da3f6ec7f Merge branch 'bugfix/fix_softap_beacon_memory_leak_issue_v4.2' into 'release/v4.2'
esp_wifi: fix softap beacon memory leak issue(Backport v4.2)

See merge request espressif/esp-idf!21813
2023-01-06 12:03:53 +08:00
Island
6012cda1fe Merge branch 'bugfix/change_position_of_vendor_model_and_gen_onoff_model_callback_forv4.2' into 'release/v4.2'
ble_mesh:example:change position of vendor model and generic onoff model callback(v4.2)

See merge request espressif/esp-idf!21801
2022-12-30 10:16:43 +08:00
Yuan Hong Hui
76e254cfb0 ble_mesh:example:change position of vendor model and generic onoff model callback(v4.2) 2022-12-30 10:16:42 +08:00
Jiang Jiang Jian
cb47c3fbc1 Merge branch 'bugfix/backport_wifi_fixes_v4.2' into 'release/v4.2'
backported some wifi fixes (backport v4.2)

See merge request espressif/esp-idf!21812
2022-12-27 23:51:46 +08:00
muhaidong
d6722f1ae1 esp_wifi: fix softap beacon memory leak issue
1. fix softap beacon memory leak issue.
2. fix esp wifi sta get ap info does not return connected ssid issue.
3. update inactive timer when recv ps-poll or success send data.
2022-12-27 19:34:13 +08:00
Kapil Gupta
a519f63740 esp_wifi: Add changes to skip SAE handshake during WPS connection 2022-12-27 15:33:33 +05:30
Kapil Gupta
81a0c6a27d esp_wifi: Flush PMK caching if bss akm has changed 2022-12-27 15:32:46 +05:30
Kapil Gupta
4a5f26d7fc Correct SSID copy length during WPS scan 2022-12-27 15:32:35 +05:30
Jiang Jiang Jian
c135695a18 Merge branch 'bugfix/fix_ble_some_bugs_20221219_v4.2' into 'release/v4.2'
backport some BLE bugs 20221219 (backport v4.2)

See merge request espressif/esp-idf!21720
2022-12-21 12:00:08 +08:00
Jiang Jiang Jian
7c9bdca900 Merge branch 'bugfix/spp_vfs_memory_leak_v4.2' into 'release/v4.2'
Component_bt/fix esp_spp_vfs_register memory leak(v4.2)

See merge request espressif/esp-idf!21717
2022-12-21 11:59:58 +08:00
Jiang Jiang Jian
6617cee1b2 Merge branch 'bugfix/fix_some_ble_bugs_by_cjh_v4.2' into 'release/v4.2'
Fixed some BLE bugs (backport v4.2)

See merge request espressif/esp-idf!21696
2022-12-20 18:56:46 +08:00
zwj
18d0ba010d 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
- Change default TX power to 9 dBm
- Fixed disconnect reason 0x1f (unspecified error)
- Fixed connection timeout due to terminate ind has not been acknowledged
- Fixed some memory was not released after bluetooth controller initialization failed on ESP32
2022-12-20 17:21:21 +08:00
xiongweichao
7f371f7864 bt: Fixed repeated register of vfs_id causing memory leaks 2022-12-20 15:13:44 +08:00
xiongweichao
1d43c9103c Assert when malloc user_data fail 2022-12-20 15:13:25 +08:00
xiongweichao
41d064578f Fixed memory leak when SPP initialization failed 2022-12-20 15:12:48 +08:00
chenjianhua
2fd6fa2773 bluedroid: fix ble connection update with same params 2022-12-19 20:05:50 +08:00
chenjianhua
4ea33bbdba examples: fix ble hid led output report 2022-12-19 20:05:50 +08:00
chenjianhua
310be0d052 bluedroid: fix encrypt keysize of GATT characteristic permission 2022-12-19 20:05:50 +08:00
chenjianhua
b24bc2482b bluedroid: correct the length of att read by type pdu 2022-12-19 20:05:50 +08:00
Island
79f74f8f76 Merge branch 'bugfix/change_the_level_of_nimble_log_forv4.2' into 'release/v4.2'
ble_mesh:example:change the level of nimble host log(v4.2)

See merge request espressif/esp-idf!21631
2022-12-16 14:13:11 +08:00
Yuan Hong Hui
41ed43cc51 ble_mesh:example:change the level of nimble host log 2022-12-15 18:07:44 +08:00
Jiang Jiang Jian
698aae95cf Merge branch 'contrib/github_pr_9529_v4.2' into 'release/v4.2'
component_bt: Fixed memory leak due to not freeing memory if posting a message to a thread fails(v4.2)

See merge request espressif/esp-idf!21474
2022-12-13 13:56:24 +08:00
morris
083483effc Merge branch 'bugfix/fix_slave_gpio_cs_mixed_with_iomux_bus_v4.2' into 'release/v4.2'
spi_slave: fix slave can't use iomux bus mixed with gpio cs_pin (v4.2)

See merge request espressif/esp-idf!21379
2022-12-12 15:50:41 +08:00
Jiang Jiang Jian
24de51437b Merge branch 'bugfix/correct_the_default_SR_mode_v4.2' into 'release/v4.2'
bugfix/correct the SR_mode selection when konw nothing about Peripheral's SR_mode (v4.2)

See merge request espressif/esp-idf!21522
2022-12-12 14:57:37 +08:00
xiongweichao
e5e225adaa bt: Fixed incorrect parameters in switching to BTC context 2022-12-09 16:27:36 +08:00
xiongweichao
b5a959f11d bt:Modify the member variable *arg in struct btc_msg to arg[0] 2022-12-09 16:27:36 +08:00
Jin Cheng
bd9fddf174 correct the SR_mode selection when konw nothing about Peripheral 2022-12-09 10:39:59 +08:00
xiongweichao
0b0f2eeb01 bt: Fixed memory leak due to not freeing memory if posting a message to a thread fails 2022-12-08 18:47:31 +08:00
Jiang Jiang Jian
ff4d3224aa Merge branch 'bugfix/Fix_exceptional_list_params_check_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix exceptional list parameters check issue(v4.2)

See merge request espressif/esp-idf!21444
2022-12-06 20:40:45 +08:00
wangjialiang
c281ef1f43 ble_mesh: stack: Fix exceptional list parameters check issue 2022-12-05 20:35:54 +08:00
Jiang Jiang Jian
8c6057db9d Merge branch 'bugfix/unprot_sa_query_issue_v4.2' into 'release/v4.2'
Fix unprotected SA Query issue (Backport v4.2)

See merge request espressif/esp-idf!21316
2022-12-05 10:59:10 +08:00
wanlei
e08bbd311f spi_slave: fix slave can't use iomux bus mixed with gpio cs_pin 2022-12-01 20:36:14 +08:00
Jiang Jiang Jian
9ff6e4492e Merge branch 'bufix/a2dp_fail_connect_again_after_disconnect_v4.2' into 'release/v4.2'
component_bt: Fixed a2dp failing to connect again after disconnect(v4.2)

See merge request espressif/esp-idf!21345
2022-12-01 10:30:30 +08:00
gauri patankar
b924092320 esp_wifi: Update wifi libs
Fix unprotected SA Query issue
2022-11-30 17:39:55 +05:30
xiongweichao
1e09841bd1 bt: Fixed a2dp failing to connect again after disconnect 2022-11-30 19:19:18 +08:00
Jiang Jiang Jian
e6c736b1d7 Merge branch 'bugfix/security_params_overwrite_v4.2' into 'release/v4.2'
Add changes to prevent security params overwritten in full scan (backport v4.2)

See merge request espressif/esp-idf!21290
2022-11-30 14:35:34 +08:00
Jiang Jiang Jian
49e15e942c Merge branch 'bugfix/fix_hfp_clcc_parser_bug_4.2' into 'release/v4.2'
Bugfix/Fix HFP client parse CLCC command response bug[backport 4.2]

See merge request espressif/esp-idf!21160
2022-11-30 10:59:47 +08:00
gauri patankar
1bdb0a14fd Add changes to prevent security params overwritten in full scan (backport v4.2) 2022-11-28 11:14:15 +05:30
Jiang Jiang Jian
4c8e97304a Merge branch 'bugfix/fix_iram_end_redefined_backportv4.2' into 'release/v4.2'
bugfix:  fix redefined _iram_end (backport v4.2)

See merge request espressif/esp-idf!21153
2022-11-28 10:19:48 +08:00
Jiang Jiang Jian
f730580a2d Merge branch 'bugfix/fix_softap_not_send_null_data_issue_v4.2' into 'release/v4.2'
esp_wifi: fix some softap issues(Backport v4.2)

See merge request espressif/esp-idf!21218
2022-11-25 11:16:28 +08:00
muhaidong
bdcc61ce3f esp_wifi: fix some softap issues 2022-11-24 11:20:15 +08:00
Jiang Jiang Jian
78cebd6c0b Merge branch 'bugfix/fixed_HIDH_connection_failure_v4.2' into 'release/v4.2'
bugfix/fixed connection failure and build errors of HID host (v4.2)

See merge request espressif/esp-idf!21208
2022-11-24 11:05:33 +08:00
Jin Cheng
0f3c7470d7 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:05:13 +08:00
Jin Cheng
f161c867c7 fixed build errors with Secure Simple Paring disabled 2022-11-23 21:04:19 +08:00
liqigan
1fa4e7dd9c fix HFP client parse CLCC command response bug 2022-11-23 03:10:36 +00:00
Jiang Jiang Jian
633e3ae00b Merge branch 'bugfix/wpa_enterprise_reauth_v4.2' into 'release/v4.2'
esp_wifi: Fix WiFi Enterprise Reauthentication issue (v4.2)

See merge request espressif/esp-idf!21074
2022-11-23 10:42:17 +08:00
Shreyas Sheth
28d791fac5 esp_wifi: Fix WiFi Enterprise Reauthentication issue (v4.2) 2022-11-23 10:42:17 +08:00
Island
2d6395ffd2 Merge branch 'bugfix/change_log_print_forv4.2' into 'release/v4.2'
ble_mesh:example:Add command to test the function of duplicate exceptional list(v4.2)

See merge request espressif/esp-idf!21123
2022-11-23 10:25:56 +08:00
Yuan Hong Hui
918151a983 ble_mesh:example:Add command to test the function of duplicate exceptional list(v4.2) 2022-11-23 10:25:56 +08:00
Jiang Jiang Jian
2455a073d6 Merge branch 'bugfix/fixing_memory_leak_wps_scan_v4.2' into 'release/v4.2'
(wpa_supplicant) : Fixed a memory leak issue created when parsing scan results

See merge request espressif/esp-idf!20989
2022-11-22 10:34:13 +08:00
Roland Dobai
423dec275b Merge branch 'fix/bitstring_4_v4.2' into 'release/v4.2'
Tools: Use bitstring package compatible with supported Python versions (v4.2)

See merge request espressif/esp-idf!21181
2022-11-22 03:48:51 +08:00
Roland Dobai
460ebc115d 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:25 +01:00
jgujarathi
831a97a3db (wpa_supplicant) : Fixed a memory leak issue created when parsing scan results 2022-11-21 18:04:32 +05:30
wuzhenghui
e973d46045 bugfix: fix redefined _iram_end 2022-11-18 19:49:16 +08:00
morris
30eff41e9d Merge branch 'feature/remove_psram_cs_clk_pin_settings_config_s2_s3_v4.2' into 'release/v4.2'
psram: remove CS/CLK pin settings in kconfig on ESP32S2 (v4.2)

See merge request espressif/esp-idf!21049
2022-11-14 18:07:25 +08:00
Jiang Jiang Jian
8fcfcdda77 Merge branch 'bugfix/a2dp_can_not_connect_after_ble_connected_v4.2' into 'release/v4.2'
fixed the issue iOS devices cannot initiate connection (v4.2)

See merge request espressif/esp-idf!21060
2022-11-14 15:28:05 +08:00
Jin Cheng
e974410092 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:51:02 +08:00
Armando
0121b27a37 psram: remove CS/CLK pin settings in kconfig on ESP32S2 2022-11-11 18:20:06 +08:00
Jiang Jiang Jian
8c6e7089f5 Merge branch 'bugfix/fix_trans_optional_info_using_group_addr_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix can't trans optional info to group address(v4.2)

See merge request espressif/esp-idf!20961
2022-11-11 16:46:12 +08:00
wangjialiang
1cf785d3f5 ble_mesh: stack: Fix can't trans optional info to group address 2022-11-07 15:52:15 +08:00
Jiang Jiang Jian
a0281fc4c7 Merge branch 'bugfix/eapol_drop_issue_v4.2' into 'release/v4.2'
esp_wifi: Clear old keys before going for new connection

See merge request espressif/esp-idf!20903
2022-11-04 14:15:05 +08:00
jgujarathi
74b82595e3 esp_wifi: Clear old keys before going for new connection 2022-11-02 14:31:02 +05:30
Jiang Jiang Jian
cb65890aaf Merge branch 'bugfix/fix_sta_scan_when_already_connected_v4.2' into 'release/v4.2'
esp-wifi: Restores station status to connected when no other AP is found for roam

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

See merge request espressif/esp-idf!20811
2022-11-01 10:48:57 +08:00
morris
91ac2dc121 Merge branch 'bugfix/fix_esp32_psram_cs_hold_time_issue_when_under_80m_v4.2' into 'release/v4.2'
esp_psram: fix esp32 psram cs hold time issue when under 40m (v4.2)

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

See merge request espressif/esp-idf!20141
2022-11-01 10:17:12 +08:00
Jiang Jiang Jian
76bb98355d Merge branch 'bugfix/esp_spp_write_len_0_v4.2' into 'release/v4.2'
bt: Fixed esp_spp_write() crash when len is 0 (v4.2)

See merge request espressif/esp-idf!20708
2022-10-31 19:51:15 +08:00
Michael (XIAO Xufeng)
934f99710b Merge branch 'bugfix/fix_uart_fake_tx_done_v4.2' into 'release/v4.2'
uart: Fix unwanted processing of TX_DONE interrupt immediately after calling uart_wait_tx_done() (backport v4.2)

See merge request espressif/esp-idf!20315
2022-10-31 16:16:46 +08:00
Jiang Jiang Jian
fe16a6fcf0 Merge branch 'bugfix/handle_issue_of_malloc_fail_v4.2' into 'release/v4.2'
bugfix/avoid unexpected free when malloc failed (v4.2)

See merge request espressif/esp-idf!20725
2022-10-31 10:47:42 +08:00
Island
713d058c61 Merge branch 'bugfix/ble_mesh_console_memory_leak_test_forv4.2' into 'release/v4.2'
ble_mesh:example:fix memory leak(v4.2)

See merge request espressif/esp-idf!20040
2022-10-28 16:12:47 +08:00
David Čermák
9d50c47e10 Merge branch 'bugfix/fix_mdns_example_v4.2' into 'release/v4.2'
mDNS: Fix example test in CI using retries (v4.2)

See merge request espressif/esp-idf!19450
2022-10-27 16:36:38 +08:00
jgujarathi
a2bbe0918f esp-wifi: Restores station status to connected when no other AP is found for roam 2022-10-27 10:57:56 +05:30
wangmengyang
e4d21b2781 bt: use non-blocking coexistence callback functions so that Wi-Fi task is not blocked by Bluetooth on ESP32 2022-10-26 19:04:06 +08:00
xiongweichao
c528942f0d bt: Fixed SPP VFS mode not being able to send data 2022-10-26 16:46:11 +08:00
xiongweichao
404d2be6f2 bt: Fixed esp_spp_write() crash when len is 0
Closes https://github.com/espressif/esp-idf/issues/9977
2022-10-26 16:45:50 +08:00
gabsuren
321481b459 mDNS: Fix example test in CI using retries 2022-10-26 06:06:14 +00:00
Jiang Jiang Jian
d33ce3ce52 Merge branch 'bugfix/fix_esp32_some_bugs_v4.2' into 'release/v4.2'
Fixed BLE ASSERT_PARAM(32 0) in rwble.c at line 384 on ESP32(backport v4.2)

See merge request espressif/esp-idf!20762
2022-10-26 10:56:12 +08:00
Jiang Jiang Jian
39f3ab13ce Merge branch 'bugfix/update_ctrl_init_config_macro_v4.2' into 'release/v4.2'
Bugfix/update ctrl init config macro (v4.2)

See merge request espressif/esp-idf!20714
2022-10-25 17:41:42 +08:00
zhiweijian
78fd81c0d3 Fixed ESP32 BLE assert(32 0) 2022-10-25 17:33:17 +08:00
zwj
a2dfa5c86b allow bluedroid host to report adv_ind separately 2022-10-25 17:33:17 +08:00
Jiang Jiang Jian
45a2695b87 Merge branch 'bugfix/build_wifi_lib_with_Os_v4.2' into 'release/v4.2'
esp_wifi: build wifi lib with -Os optimization (Backport v4.2)

See merge request espressif/esp-idf!20751
2022-10-25 16:50:25 +08:00
Yuan Hong Hui
9de1ce057a ble_mesh:example:fix memory leak 2022-10-25 03:48:30 +00:00
Island
0021c6d14f Merge branch 'bugfix/remove_get_modle_and_get_comp_api_forv4.2' into 'release/v4.2'
ble_mesh:example:change the method of get model(for v4.2)

See merge request espressif/esp-idf!20395
2022-10-24 19:42:55 +08:00
zhangyanjiao
f32a3ad5b0 esp_wifi: build wifi lib with -Os optimization
Closes WIFI-4710
2022-10-24 15:24:06 +08:00
Jiang Jiang Jian
509e708a96 Merge branch 'bugfix/fix_some_wifi_bugs_1019_v4.2' into 'release/v4.2'
esp_wifi: fix some wifi bugs(Backport v4.2)

See merge request espressif/esp-idf!20729
2022-10-24 12:25:27 +08:00
Fu Hanxi
1a31c85f89 Merge branch 'ci/force_based_on_commit_v4.2' into 'release/v4.2'
ci: support one pipeline must based on commmits (v4.2)

See merge request espressif/esp-idf!17924
2022-10-24 08:57:30 +08:00
muhaidong
329d978c89 docs: update wifi country code docs. 2022-10-21 21:01:11 +08:00
liuning
73912c07ce esp_wifi: fix fail to scan after recv disassoc/deauth for esp32s2 2022-10-21 19:59:27 +08:00
muhaidong
234a45b2b3 esp_wifi: fix some wifi bugs:
1. fix sta reset beacon timeout timer issue
2. fix pairwise cipher tkip pmf compability issue
3. fix country policy issue
4. fix deinit return wrong status issue
5. fix get wrong channel value use esp_wifi_get_config
6. fix bug of missing unlock when wifi stop
7. fix error of esp_wifi_start_scan in api esp_wifi_connect
8. fix fail to scan after recv disassoc/deauth for esp32s2
2022-10-21 19:59:09 +08:00
Jiang Jiang Jian
04bf991178 Merge branch 'bugfix/fix_legacy_pair_not_send_link_key_host_v4.2' into 'release/v4.2'
component_bt: fix legacy pair controller does not send the link key to the host (v4.2)

See merge request espressif/esp-idf!19322
2022-10-21 16:06:58 +08:00
tgotic
b37b8f163b [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:57:19 +08:00
Jin Cheng
bb2f66843c Corrects header names in string from "bt.h" to "esp_bt.h". 2022-10-21 13:14:38 +08:00
Fu Hanxi
f4ee9a97dc ci: support one pipeline must based on commmits 2022-10-20 12:42:23 +00:00
Jiang Jiang Jian
eb8316394c Merge branch 'bugfix/revert_commit_da44fc9c_v4.2' into 'release/v4.2'
Revert "fixed the issue iOS devices cannot initiate connection" (v4.2)

See merge request espressif/esp-idf!20668
2022-10-20 19:18:54 +08:00
xiongweichao
2a3ab6accf fix legacy pair controller does not send the link key to the host
Closes https://github.com/espressif/esp-idf/issues/5850
2022-10-20 11:07:24 +00:00
Island
f17dce2c3b Merge branch 'feature/Add_IVI_recovery_option_v4.2' into 'release/v4.2'
ble_mesh: stack: Add IV index recovery option when device missed the whole IV update(v4.2)

See merge request espressif/esp-idf!20644
2022-10-20 16:42:51 +08:00
Island
25e80452ab Merge branch 'bugfix/fix_fast_interval_prov_adv_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix send fast interval prov_adv failed(v4.2)

See merge request espressif/esp-idf!20638
2022-10-20 16:41:58 +08:00
Jiang Jiang Jian
5158f347cd Merge branch 'bugfix/fix_connect_fail_when_enable_SPIRAM_v4.2' into 'release/v4.2'
esp_wifi: fix connect fail when enable SPIRAM and ESPNOW send (backport v4.2)

See merge request espressif/esp-idf!20606
2022-10-20 12:02:48 +08:00
zhangyanjiao
e28977a884 esp_wifi:
1. fix connect fail when enable SPIRAM and ESPNOW send
2. refactor WiFi ioctl function
2022-10-19 10:20:26 +08:00
Jin Cheng
15f49d5848 Revert "fixed the issue iOS devices cannot initiate connection"
This reverts commit da44fc9cbe.
2022-10-18 19:45:49 +08:00
Jiang Jiang Jian
b8e47cc6a9 Merge branch 'contrib/github_pr_9529_mr_v4.2' into 'release/v4.2'
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.2)

See merge request espressif/esp-idf!19694
2022-10-18 16:10:25 +08:00
xiongweichao
7162617e65 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-18 06:15:46 +00:00
tgotic
2b70fe2531 update code to use osi_free() 2022-10-18 06:15:46 +00:00
tgotic
59e36c445d 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-18 06:15:46 +00:00
wangjialiang
f56c9da3d7 ble_mesh: stack: Add IV index recovery option when device missed the whole IV update 2022-10-17 16:54:47 +08:00
wangjialiang
b467ab61a1 ble_mesh: stack: Fix send fast interval prov_adv failed when PB-ADV and PB-GATT enable simultaneously 2022-10-17 16:40:38 +08:00
Roland Dobai
b89f55d74a Merge branch 'fix/virtualenv_dir_v4.2' into 'release/v4.2'
Tools: Keep making virtual environments with python in the bin directory (v4.2)

See merge request espressif/esp-idf!20621
2022-10-17 01:04:41 +08:00
Roland Dobai
158df60dce 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:37:46 +02:00
morris
6e42e604b2 Merge branch 'bugfix/fix_rtc8m_calibration_fail_after_cpu_core_reset_v4.2' into 'release/v4.2'
rtc_clk: Fix rtc8m calibration failure after cpu/core reset (backport v4.2)

See merge request espressif/esp-idf!20555
2022-10-14 14:06:52 +08:00
Song Ruo Jing
3b5ce456e2 rtc_clk: Fix rtc8m calibration failure after cpu/core reset
Explicitly guarantee 8md256 clk is enabled before calibration
2022-10-12 12:44:48 +08:00
Michael (XIAO Xufeng)
2900d0da2e Merge branch 'bugfix/i2c_timeout_issue_v4.2' into 'release/v4.2'
I2C: patch for solving watchdog timeout issue(backport v4.2)

See merge request espressif/esp-idf!18135
2022-10-11 15:21:49 +08:00
morris
2451047a7b Merge branch 'feat/spi_flash_qio_test_v4.2' into 'release/v4.2'
spi_flash: add unit tests for qio mode (v4.2)

See merge request espressif/esp-idf!17696
2022-10-10 18:22:49 +08:00
Wang Meng Yang
db75db5509 Merge branch 'bugfix/remove_bt_dft_init_semicolon_v4.2' into 'release/v4.2'
bt: Remove trailing semicolon from bt dft initializer(v4.2)

See merge request espressif/esp-idf!19917
2022-10-10 17:32:57 +08:00
Wang Meng Yang
9c5127d0e4 Merge branch 'feature/sink_support_mono_v4.2' into 'release/v4.2'
bt: Fixed sink not being able to output mono audio because it can only decode dual channel audio data(v4.2)

See merge request espressif/esp-idf!20080
2022-10-10 17:32:35 +08:00
Wang Meng Yang
82890eee6c Merge branch 'bugfix/a2dp_can_not_connect_after_ble_connected_v4.2' into 'release/v4.2'
fixed the issue iOS devices cannot initiate connection (v4.2)

See merge request espressif/esp-idf!20406
2022-10-10 17:25:25 +08:00
Cao Sen Miao
9a59ed4b7a I2C: patch for solving watchdog timeout issue 2022-10-10 11:05:25 +08:00
Wang Meng Yang
bd4b68167d Merge branch 'bugfix/fix_ble_get_cur_pkt_num_crash_sometimes_when_bluetooth_is_disconnecting_v4.2' into 'release/v4.2'
Fixed calling esp_ble_get_cur_sendable_packets_num() sometimes crashes when bluetooth is disconnecting(backport v4.2)

See merge request espressif/esp-idf!20379
2022-10-08 16:35:45 +08:00
Michael (XIAO Xufeng)
e5f6cd9cc5 Merge branch 'feat/essl_extra_component_v4.2' into 'release/v4.2'
sdio/example: fixed the essl return value issue (v4.2)

See merge request espressif/esp-idf!20347
2022-10-08 14:07:19 +08:00
Roland Dobai
05830cb46d Merge branch 'bugfix/missing_idfSelectedId_v4.2' into 'release/v4.2'
Tools: bugfix wrong format of idf-env.json, KeyError: 'idfSelectedId' (v4.2)

See merge request espressif/esp-idf!20382
2022-09-29 01:31:01 +08:00
Jiang Jiang Jian
5976dcc006 Merge branch 'bugfix/fix_send_eapol_key_request_frame_when_wpa_group_handshake_issue_v4.2' into 'release/v4.2'
wpa_supplicant: try install gtk before send group key handshake message 2(Backport v4.2)

See merge request espressif/esp-idf!20199
2022-09-28 17:50:35 +08:00
Jin Cheng
396dc28ca9 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:16:05 +08:00
Yuan Hong Hui
8f01785e2f ble_mesh:example:change the method of get model 2022-09-28 15:34:08 +08:00
Wang Meng Yang
91874c837c Merge branch 'bugfix/hfp_examples_not_work_with_default_sdkconfig_v4.2' into 'release/v4.2'
bugfix/set default number of sco connection to 1 (v4.2)

See merge request espressif/esp-idf!19589
2022-09-28 15:28:01 +08:00
Island
ec05def4cd Merge branch 'bugfix/ble_mesh_console_support_nimble_host_for_v4.2' into 'release/v4.2'
ble_mesh:ble mesh console support nimble(v4.2)

See merge request espressif/esp-idf!19606
2022-09-28 12:32:31 +08:00
Marek Fiala
77569c24b9 Tools: bugfix wrong format of idf-env.json, KeyError: 'idfSelectedId'
Closes https://github.com/espressif/esp-idf/issues/9837
2022-09-27 22:42:10 +02:00
cjin
1659c3460a fix on data len change cmd malfunction 2022-09-27 21:47:39 +08:00
cjin
9d9b08ff10 fix err using rpa for confirmation calculation 2022-09-27 21:47:25 +08:00
zwj
4c3a48edea fix calling esp_ble_get_cur_sendable_packets_num() sometimes crashes when bluetooth is disconnecting 2022-09-27 21:46:57 +08:00
Michael (XIAO Xufeng)
cff557ce07 sdio/example: fixed the essl return type issue 2022-09-26 19:42:24 +08:00
Roland Dobai
0b92a1b40d Merge branch 'fix/ci_macos_idf_env_json_v4.2' into 'release/v4.2'
CI: Clean-up idf-env.json which might not be compatible with newer versions (v4.2)

See merge request espressif/esp-idf!20322
2022-09-23 21:47:12 +08:00
Roland Dobai
b3a80b4229 CI: Clean-up idf-env.json which might not compatible with newer versions 2022-09-23 12:26:23 +02:00
Song Ruo Jing
0f051a5e3b 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.

Introduced in 239e56541c
2022-09-23 16:24:30 +08:00
Jiang Jiang Jian
e81c5be7d8 Merge branch 'ci/optimize_ats_ci_flow_v4.2' into 'release/v4.2'
CI: optimize ATS ci flow (v4.2)

See merge request espressif/esp-idf!20179
2022-09-22 14:12:17 +08:00
morris
04f2766b3e Merge branch 'bugfix/fix_spi_bus_lock_concurrency_issue_v4.2' into 'release/v4.2'
spi_bus_lock: fix a concurrency issue (v4.2)

See merge request espressif/esp-idf!20140
2022-09-22 13:30:47 +08:00
Island
d1f4406718 Merge branch 'bugfix/lpn_not_recv_message_to_all_node_4.2' into 'release/v4.2'
ble_mesh: stack: Add option for lpn auto sub all-nodes(v4.2)

See merge request espressif/esp-idf!20262
2022-09-21 11:31:29 +08:00
wangjialiang
514e896462 ble_mesh: stack: Add option for lpn auto sub all-nodes. 2022-09-20 20:32:37 +08:00
muhaidong
faf4fd233a wpa_supplicant: try install gtk before send group key handshake message 2 2022-09-19 08:15:15 +00:00
Jiang Jiang Jian
138bbec8ab Merge branch 'bugfix/relay_friend_cred_message_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix friend relay lpn message when relay disable(v4.2)

See merge request espressif/esp-idf!20206
2022-09-19 14:03:31 +08:00
wangjialiang
c78efa5fa4 ble_mesh: stack: Fix friend relay lpn message when relay disable. 2022-09-18 09:51:31 +00:00
Island
13b05ca6ba Merge branch 'bugfix/adapt_new_btc_v4.2' into 'release/v4.2'
ble_mesh: stack: Corrected parameter size when the btc_transfer_context is used (v4.2)

See merge request espressif/esp-idf!20168
2022-09-18 14:35:49 +08:00
Jiang Jiang Jian
c2bb3afafa Merge branch 'bugfix/fix_some_wifi_bugs_0805_v4.2' into 'release/v4.2'
esp_wifi: fix some wifi bugs(Backport v4.2)

See merge request espressif/esp-idf!19402
2022-09-16 14:16:11 +08:00
Chen Yudong
9d5275375a CI: optimize ATS ci flow 2022-09-16 13:53:15 +08:00
Island
98d90cd216 Merge branch 'bugfix/friend_and_lpn_issues_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix friend and lpn issues(v4.2)

See merge request espressif/esp-idf!19477
2022-09-15 18:42:41 +08:00
Island
0b03533594 Merge branch 'bugfix/mesh_bqb_test_issues_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix mesh v1.0 BQB test issues(v4.2)

See merge request espressif/esp-idf!19504
2022-09-15 18:42:30 +08:00
wangjialiang
3052096ab1 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 17:02:24 +08:00
morris
949d7da779 Merge branch 'bugfix/driver_rs485_fix_test_sync_issues_v42' into 'release/v4.2'
driver: uart rs485 fix test sync issues and fail threshold (backport v4.2)

See merge request espressif/esp-idf!19615
2022-09-15 15:23:21 +08:00
Alex Lisitsyn
3c67e26dce driver: uart rs485 fix test sync issues and fail threshold (backport v4.2) 2022-09-15 15:23:21 +08:00
wanlei
d7e3f3fb64 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 14:20:16 +08:00
Armando
19098d3eb0 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:15:06 +08:00
Ivan Grokhotkov
ed22f22632 Merge branch 'bugfix/spi_slave_intr_iram_v4.2' into 'release/v4.2'
driver: spi_slave: make sure CS helpers are in IRAM if the ISR is (v4.2)

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

See merge request espressif/esp-idf!19613
2022-09-13 16:27:52 +08:00
Zim Kalinowski
eb128229a9 Merge branch 'bugfix/i2c_notify_task_in_ISR_v4.2' into 'release/v4.2'
I2C: Fix a bug making the I2C task wait too long on an event

See merge request espressif/esp-idf!19619
2022-09-13 16:27:40 +08:00
Roland Dobai
691c4ddeb5 Merge branch 'feature/oocd_ver_upgrade_v4.2' into 'release/v4.2'
tools: Updates OpenOCD version to 'v0.11.0-esp32-20220706' (v4.2)

See merge request espressif/esp-idf!19492
2022-09-12 16:54:19 +08:00
Michael (XIAO Xufeng)
afbfcbaef1 ci: add job num 2022-09-12 00:52:20 +08:00
Michael (XIAO Xufeng)
75ff8d7ff8 spi_flash: add unit tests for qio mode 2022-09-11 02:39:59 +08:00
xiongweichao
7f0c35dd32 bt:Fixed sink not being able to output mono audio because it can only decode dual channel audio data 2022-09-09 17:45:03 +08:00
Mahavir Jain
1ec5e249b6 Merge branch 'update/version_4_2_4' into 'release/v4.2'
Update version to 4.2.4

See merge request espressif/esp-idf!19867
2022-09-08 12:25:02 +08:00
Pedro
ef23935993 Remove trailing semicolon from bt dft initializer
Similar to espressif#6554
2022-09-02 11:14:16 +08:00
Ivan Grokhotkov
f5e484fc79 versions: Update version to 4.2.4 2022-08-31 00:18:44 +02:00
Armando
ea78cd1116 esp_psram: fixed 40mhz cs signal glitch issue 2022-08-18 20:39:56 +08:00
Omar Chebib
ebd63c499c (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-18 10:44:31 +08:00
Omar Chebib
17a5d4aff7 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-17 17:39:10 +08:00
Yuan Hong Hui
db99a12578 ble_mesh:ble mesh console support nimble 2022-08-17 14:39:53 +08:00
jincheng
c92e55cb4a 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:34 +08:00
Alexey Gerenkov
d42d181f27 test/examples: Fixes expected GDB message upon thread hit breakpoint 2022-08-15 19:06:19 +03:00
Alexey Gerenkov
4d9aed7511 tools: Updates OpenOCD version to 'v0.11.0-esp32-20220706' 2022-08-12 14:11:40 +03:00
wangjialiang
2850d7ca59 ble_mesh: stack: Fix kr from non-primary subnet shouldn't ignore
For case MESH/NODE/KR/BV-02-C
2022-08-11 14:17:46 +08:00
wangjialiang
f14a13b887 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:17:41 +08:00
wangjialiang
5df2e036df 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:17:35 +08:00
wangjialiang
929f931b88 ble_mesh: stack: The Heartbeat Publication Period Log value can set to 0x11, range: [0, 0x11] 2022-08-11 14:17:29 +08:00
wangjialiang
892b9b9def 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:17:22 +08:00
wangjialiang
6a88790a74 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:17:13 +08:00
wangjialiang
80630b1e6a ble_mesh: stack: Fix PB-GATT not check invalid link flag
For case MESH/NODE/PROV/BI-03-C
2022-08-11 14:17:05 +08:00
wangjialiang
386da9df0c ble_mesh: stack: Fix invalid provisioning pdu type check
For case MESH/NODE/PROV/BI-15-C
2022-08-11 14:17:01 +08:00
wangjialiang
2e190452b8 ble_mesh: stack: Fix add continuously secure update into friend queue.
For MESH/NODE/FRND/FN/BV-20-C
2022-08-09 21:50:24 +08:00
wangjialiang
a6b2103948 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:50:20 +08:00
Ivan Grokhotkov
5a65ac50e0 driver: spi_slave: make sure CS helpers are in IRAM if the ISR is
Closes https://github.com/espressif/esp-idf/issues/3870
2022-08-08 10:34:09 +02:00
Island
997844bbc3 Merge branch 'bugfix/vendor_model_send_message_no_memory_forv4.2' into 'release/v4.2'
ble_mesh:example: free the memory of malloc (v4.2)

See merge request espressif/esp-idf!19187
2022-08-08 12:25:38 +08:00
Yuan Hong Hui
10f0879fdb ble_mesh:the memory requested by malloc has not benn released 2022-08-05 12:13:47 +00:00
Jiang Jiang Jian
d016f69ffc Merge branch 'feat/make_property_idf_component_manager_root_level_v4.2' into 'release/v4.2'
Feat/make property idf component manager root level (v4.2)

See merge request espressif/esp-idf!19084
2022-08-05 19:58:57 +08:00
Jiang Jiang Jian
847d9631b9 Merge branch 'bugfix/restore_missing_ble_mesh_videos_v4.2' into 'release/v4.2'
ble_mesh: doc: Restore missing ble mesh videos(v4.2)

See merge request espressif/esp-idf!19405
2022-08-05 19:58:42 +08:00
wangjialiang
3c5eb41914 ble_mesh: doc: Restore missing ble mesh videos 2022-08-05 13:57:25 +08:00
muhaidong
647526af47 esp_wifi: fix some wifi bugs
1. fix not update phy according to country code.
2. sync peripheral device reg base.
3. fix for default ap ssid not set.
4. do not recv unencrypted unicaset ESPNOW packets when local encrypted.
2022-08-05 13:29:52 +08:00
Jiang Jiang Jian
be26894259 Merge branch 'bugfix/install_key_refactor_v4.2' into 'release/v4.2'
esp_wifi: backported some wifi fixes (19472381)

See merge request espressif/esp-idf!19385
2022-08-05 10:42:26 +08:00
Kapil Gupta
bdc671aee3 esp_wifi: backported some wifi fixes (19472381)
1. G1 rx drop from key install code refactoring
2. Remove group cipher check for PMF connection
2022-08-04 12:21:20 +05:30
Marius Vikhammer
ca1628b310 Merge branch 'bugfix/freertos_event_group_unblock_race_condition_v4.2' into 'release/v4.2'
FreeRTOS: Fix event group task list race condition (v4.2)

See merge request espressif/esp-idf!19105
2022-08-04 13:14:26 +08:00
Jiang Jiang Jian
2f634a82d5 Merge branch 'bugfix/wlan_fixes_backports_v4.2' into 'release/v4.2'
esp_wifi: Fix some wlan issues(backport v4.2)

See merge request espressif/esp-idf!19362
2022-08-04 11:33:57 +08:00
Jiang Jiang Jian
a46d166c49 Merge branch 'bugfix/combined_softap_pmf_fixes_v4.2' into 'release/v4.2'
Combined bugfixes for SoftAP and PMF (Backport v4.2)

See merge request espressif/esp-idf!19121
2022-08-04 11:05:10 +08:00
Nachiket Kukade
0c88beb9c4 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
2022-08-03 18:16:37 +05:30
Jiang Jiang Jian
c5875e64b1 Merge branch 'docs/update_wifi_api_doc_v4.2' into 'release/v4.2'
DOC: update wifi api docs ( backport v4.2)

See merge request espressif/esp-idf!18083
2022-08-03 20:12:06 +08:00
Kapil Gupta
0efba69571 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:47:07 +05:30
Kapil Gupta
ec70ed86e0 esp_wifi: Changes to not use pmkid caching when SSID is changed 2022-08-03 14:38:05 +05:30
Kapil Gupta
064474fca6 wpa_supplicant: Fix issues reported by coverity 2022-08-03 14:37:43 +05:30
Jiang Jiang Jian
d98e2a3d5f Merge branch 'bugfix/fix_write_to_null_pointer_if_malloc_failed_issue_v4.2' into 'release/v4.2'
fix write to null pointer if malloc failed(Backport v4.2)

See merge request espressif/esp-idf!19350
2022-08-03 10:59:10 +08:00
Jiang Jiang Jian
8e8cf08d2d Merge branch 'bugfix/update_gpio_intr_enable_note_v4.2' into 'release/v4.2'
Update the note of the gpio_intr_enable function(v4.2)

See merge request espressif/esp-idf!18544
2022-08-03 10:58:42 +08:00
xueyunfei
3ffcb03f60 bugfix for backport wifi bugs to 4.2
- Bugfix for close sniffer mode when wifi stop

  - Bugfix for qos null update ba ssn

  - Bugfix for wrong configuration of static txbuf

  - Fix deep sleep can't reconnect to ap when pmf enable.

  - Fix some ap will ignore auth when rx deauth for a while.

  - update wifi header file
2022-08-03 10:45:36 +08:00
Oleg Savchenko
0a0ad4309f fix write to null pointer if malloc failed 2022-08-02 20:30:30 +08:00
zhangyanjiao
63324950fa modify API-reference using Sphinx directives 2022-08-02 20:23:37 +08:00
zhangyanjiao
0a7fedcbbd update wifi api docs 2022-08-02 20:23:37 +08:00
Jiang Jiang Jian
9d854cd6b0 Merge branch 'bugfix/set_ipv6_dns_error_v4.2' into 'release/v4.2'
lw ip: Fixed that ipv6 dns cannot work (v4.2)

See merge request espressif/esp-idf!19064
2022-08-02 20:21:39 +08:00
Jiang Jiang Jian
eddee33f98 Merge branch 'bugfix/fix_bluedroid_host_memory_overflow_v4.2' into 'release/v4.2'
Fixed bluedroid host memory overflow for v4.2

See merge request espressif/esp-idf!18905
2022-08-02 19:47:41 +08:00
Jiang Jiang Jian
510f86d451 Merge branch 'bugfix/memory_debug_not_work_v4.2' into 'release/v4.2'
bugfix/fix the dependency error of macro for memory debug (v4.2)

See merge request espressif/esp-idf!19234
2022-08-02 15:49:36 +08:00
Jiang Jiang Jian
4bdc7853cf Merge branch 'bugfix/put_sempher_and_queue_used_in_isr_into_DRAM_v4.2' into 'release/v4.2'
Make sure semphr/queue used in interrupt is in DRAM

See merge request espressif/esp-idf!18990
2022-08-02 11:32:18 +08:00
Michael (XIAO Xufeng)
7718c60d81 Merge branch 'bugfix/reserve_dma_ram_in_segments_v4.2' into 'release/v4.2'
psram: reserve dma pool in the step of heap max block (v4.2)

See merge request espressif/esp-idf!18861
2022-08-01 17:14:46 +08:00
Fu Hanxi
8b09f2f01f ci: pip install idf-component-manager inside CI 2022-08-01 10:44:50 +08:00
Sergei Silnov
ac8b720880 docs: Add IDF_COMPONENT_MANAGER build property 2022-08-01 10:44:50 +08:00
Sergei Silnov
fdc70f5b7f docs: Enable the component manager by default in CMake 2022-08-01 10:44:50 +08:00
Fu Hanxi
5d1864b7d7 build&config: lift property IDF_COMPONENT_MANAGER to root level 2022-08-01 10:44:50 +08:00
David Čermák
9003e6d1eb Merge branch 'bugfix/cxx_exception_pool_4.2' into 'release/v4.2'
startup: Make __cxx_eh_arena_size_get return 0 if exceptions disabled (v4.2)

See merge request espressif/esp-idf!18800
2022-07-29 13:14:45 +08:00
zhiweijian@espressif.com
029ed39579 Fixed bluedroid host memory overflow 2022-07-28 09:47:03 +00:00
wanlei
da340c02cc psram: 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:17:17 +08:00
xiongweichao
06d169e518 Update the note of the gpio_intr_enable function 2022-07-26 12:39:42 +00:00
baohongde
1af2a470dc 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 13:50:43 +08:00
baohongde
6842dc1d2d components/bt: Make sure sempher and queue used in isr is in DRAM 2022-07-25 11:45:45 +08:00
Jiang Jiang Jian
1801a10828 Merge branch 'bugfix/schm_process_in_active_crash_v4.2' into 'release/v4.2'
Coex: fixed crash when calculating end transfer time(v4.2)

See merge request espressif/esp-idf!19192
2022-07-22 21:24:16 +08:00
jincheng
b7fe47292f fix the dependency error of macro for memory debug 2022-07-22 16:21:57 +08:00
xiongweichao
61af5f66a4 coex: fixed crash when calculating end transfer time 2022-07-22 16:15:58 +08:00
Jiang Jiang Jian
ad9395f74a Merge branch 'mesh/non_mesh_connections_access_v4.2' into 'release/v4.2'
esp_wifi_mesh: add non mesh connections access(v4.2)

See merge request espressif/esp-idf!18785
2022-07-21 19:19:14 +08:00
Darian Leung
c7c07c5fb2 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-19 12:19:42 +08:00
Darian Leung
5e15bafd26 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-19 12:13:54 +08:00
Chen Wu
43f1c37458 lwip: Fixed that ipv6 dns cannot work 2022-07-15 16:20:37 +08:00
Jiang Jiang Jian
611493af37 Merge branch 'docs/update_wifi_multiple_antennas_doc_v4.2' into 'release/v4.2'
docs: update wifi multiple antennas docs (v4.2)

See merge request espressif/esp-idf!19048
2022-07-15 10:48:10 +08:00
Island
23a3f97af1 Merge branch 'bugfix/print_ready_after_init_transaction_forv4.2' into 'release/v4.2'
ble_mesh:change the location of print ready(v4.2)

See merge request espressif/esp-idf!19030
2022-07-14 17:28:19 +08:00
Krzysztof Budzynski
15480c49e3 Apply 1 suggestion(s) to 1 file(s) 2022-07-14 16:44:00 +08:00
muhaidong
6ceabe794e Apply 2 suggestions by Marius Vikhammer 2022-07-14 16:42:55 +08:00
muhaidong
758e185090 docs: update wifi multiple antennas docs 2022-07-14 16:36:46 +08:00
Yuan Hong Hui
770075609f ble_mesh:change the location of print ready 2022-07-13 18:13:08 +08:00
David Čermák
bef5f431d9 Merge branch 'bugfix/eth_icmp_dest_localhost_v4.2' into 'release/v4.2'
ci/esp_eth: Make the ICMP destination localhost (v4.2)

See merge request espressif/esp-idf!18753
2022-07-13 16:06:53 +08:00
Jiang Jiang Jian
7a1df44319 Merge branch 'bugfix/modbus_allow_master_slave_work_simultaneously_v42' into 'release/v4.2'
freemodbus: fix issues when modbus master and slave work simultaneously (backport v4.2)

See merge request espressif/esp-idf!14949
2022-07-13 15:37:20 +08:00
Alex Lisitsyn
bfac558b6f freemodbus: fix issues when modbus master and slave work simultaneously (backport v4.2) 2022-07-13 15:37:19 +08:00
Jiang Jiang Jian
e040cd1a68 Merge branch 'bugfix/fix_esp32_ke_mem_c_assert_v4.2' into 'release/v4.2'
Fixed ESP32 BLE ke_mem.c assert for v4.2

See merge request espressif/esp-idf!19004
2022-07-13 14:06:47 +08:00
zwj
6c4351908c Fixed ESP32 BLE ke_mem.c assert 2022-07-13 03:08:09 +00:00
Island
d69e42348f Merge branch 'bugfix/no_proxy_beacon_send_after_deinit_v4.2' into 'release/v4.2'
ble_mesh: stack: Bugfix for proxy beacon send after reinit mesh(v4.2)

See merge request espressif/esp-idf!18793
2022-07-13 10:51:36 +08:00
Jiang Jiang Jian
221993edd4 Merge branch 'bugfix/not_use_malloc_in_bluedroid_v4.2' into 'release/v4.2'
component/bt: use osi_malloc instead of malloc in bluedroid

See merge request espressif/esp-idf!18845
2022-07-12 10:43:44 +08:00
Jiang Jiang Jian
989a390798 Merge branch 'bugfix/enterprise_certs_ca_expired_v4.2' into 'release/v4.2'
esp_wifi: Fix issue of ca certificate expired.

See merge request espressif/esp-idf!18524
2022-07-11 16:45:50 +08:00
Jiang Jiang Jian
8f2659e2ad Merge branch 'bugfix/eap_method_selection_release_v4.2' into 'release/v4.2'
esp_wifi: Fix the negotiation of method with eap server.

See merge request espressif/esp-idf!18509
2022-07-11 16:45:22 +08:00
Jiang Jiang Jian
a07f18ff9f Merge branch 'bugfix/cpu_reset_perip_clk_disable_v4.2' into 'release/v4.2'
esp_system: Peripheral clocks faulty become disabled during cpu reset (backport v4.2)

See merge request espressif/esp-idf!15486
2022-07-11 16:44:32 +08:00
Jiang Jiang Jian
443d8a187b Merge branch 'bugfix/fix_esp_restart_does_not_reset_timer_groups_periph_v42' into 'release/v4.2'
modbus: fix esp restart does not reset timer groups periph (backport v4.2)

See merge request espressif/esp-idf!15506
2022-07-11 16:42:42 +08:00
Alex Lisitsyn
eaf03e06d5 modbus: fix esp restart does not reset timer groups periph (backport v4.2) 2022-07-11 16:42:42 +08:00
Jiang Jiang Jian
034c05c82e Merge branch 'bugfix/usb_hal_and_clk_v4.2' into 'release/v4.2'
Fix USB with swapped pins not working (backport v4.2)

See merge request espressif/esp-idf!17104
2022-07-11 16:42:13 +08:00
Wang Meng Yang
94fd4ffa2e Merge branch 'bugfix/fix_osi_men_dbg_xxx_not_defined_when_enable_mem_dbg_v4.2' into 'release/v4.2'
bugfix/fix the issue of functions not defined when enable memory debug (v4.2)

See merge request espressif/esp-idf!18817
2022-07-11 15:37:54 +08:00
morris
c9bc1943fa ci/esp_eth: Make the ICMP destination localhost
Original commit: 9fa06719fa
global: enable build uinit test for esp32-s3
2022-07-11 04:53:40 +00:00
baohongde
68612afa09 component/bt: use osi_malloc instead of malloc in bluedroid 2022-07-11 02:48:10 +00:00
Jiang Jiang Jian
25253b22cc Merge branch 'bugfix/do_not_allow_unauthenticated_encrypted_key_data_release_v4.2' into 'release/v4.2'
esp_wifi: Ignore unauthenticated encrypted EAPOL-Key data and fix

See merge request espressif/esp-idf!18316
2022-07-10 15:59:53 +08:00
Jiang Jiang Jian
c2090fc962 Merge branch 'bugfix/a2dp_source_not_stop_discovery_correctly_v4.2' into 'release/v4.2'
bugfix/avoid wrongly restart discovery in a2dp_source (v4.2)

See merge request espressif/esp-idf!18712
2022-07-10 15:52:21 +08:00
Jiang Jiang Jian
c811a2c2f4 Merge branch 'bugfix/restore_edr_en_and_protect_for_vhci_env_v4.2' into 'release/v4.2'
bugfix/restore edr_en and add protect for vhci_env (v4.2)

See merge request espressif/esp-idf!18813
2022-07-10 15:49:27 +08:00
Jiang Jiang Jian
3266c6a2d4 Merge branch 'bugfix/lower_a2dp_appT_prio_v4.2' into 'release/v4.2'
bugfix/lower the priority of application task of a2dp demo (v4.2)

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

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

See merge request espressif/esp-idf!18855
2022-07-10 15:45:06 +08:00
Jiang Jiang Jian
f735dfa617 Merge branch 'docs/update_wifi_csi_sub_carrier_index_doc_v4.2' into 'release/v4.2'
docs:update wifi sci subcarrier index docs (v4.2)

See merge request espressif/esp-idf!18943
2022-07-10 15:40:14 +08:00
muhaidong
496b27eb0a docs:update wifi sci subcarrier index docs 2022-07-08 14:51:48 +08:00
jincheng
aeeb255d35 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:23:09 +08:00
jincheng
e2c29bf4db avoid wrongly restart discovery 2022-07-08 14:19:54 +08:00
jincheng
aae7b6e1ae 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:13:08 +08:00
jincheng
37b9d3f886 lower the priority of application task of a2dp demo 2022-07-08 14:03:26 +08:00
Jiang Jiang Jian
5f5a2d9c5a Merge branch 'bugfix/auto_test_script_only_use_given_branch_v4.2' into 'release/v4.2'
CI: limit switching branches for auto_test_script (v4.2)

See merge request espressif/esp-idf!11144
2022-07-08 11:26:07 +08:00
jincheng
24fc73c4e0 fix the issue of functions not defined when enable memory debug 2022-07-08 11:00:59 +08:00
Mahavir Jain
b85c0ec352 Merge branch 'bugfix/efuse_esp_efuse_utility_burn_efuses_v4.2' into 'release/v4.2'
efuse: Fix burn operation when data was written directly to regs (v4.2)

See merge request espressif/esp-idf!18887
2022-07-07 22:30:33 +08:00
Chen Yu Dong
4620826c83 ci: limit switching branches for auto_test_script 2022-07-06 11:55:33 +08:00
KonstantinKondrashov
404979d71a efuse: Fix burn operation when data was written directly to regs
Closes https://github.com/espressif/esp-idf/issues/9290
2022-07-05 18:29:27 +08:00
Darian Leung
0a894c2b30 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:26:16 +08:00
Jakob Hasse
2bcfeb612f startup: Make __cxx_eh_arena_size_get return 0 if exceptions disabled
This function 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.
2022-07-01 08:32:37 +02:00
wangjialiang
3facb2dcfa ble_mesh: stack: Bugfix for proxy beacon send after reinit mesh 2022-07-01 11:50:43 +08:00
shenjun
b408043d7e esp_wifi_mesh: add non mesh connections access 2022-06-30 21:19:23 +08:00
Island
42ea9b7cb1 Merge branch 'feature/add_filter_seq_auth_config_v4.2' into 'release/v4.2'
ble_mesh: stack: Add filter old seq_auth packet menuconfig(v4.2)

See merge request espressif/esp-idf!18651
2022-06-24 11:15:22 +08:00
wangjialiang
aa42bb3355 ble_mesh: stack: Add filter old seq_auth packet menuconfig 2022-06-23 16:22:08 +08:00
Jiang Jiang Jian
372ae83fde Merge branch 'bugfix/avdtp_genreal_reject_format_error_v4.2' into 'release/v4.2'
component_bt: Fix AVDTP general reject format error(v4.2)

See merge request espressif/esp-idf!18558
2022-06-21 20:54:34 +08:00
Jiang Jiang Jian
46f777a254 Merge branch 'feature/update_hfp_ag_version_v4.2' into 'release/v4.2'
component_bt: update hfp_ag version to 1.7.2(v4.2)

See merge request espressif/esp-idf!18605
2022-06-21 19:40:59 +08:00
xiongweichao
90f464c671 update hfp_ag version to 1.7.2 2022-06-21 14:50:44 +08:00
Jiang Jiang Jian
32aa2ab24e Merge branch 'feat/epi_flash_api_iram_save_4.2' into 'release/v4.2'
spi_flash: partially move API functions out of IRAM (v4.2)

See merge request espressif/esp-idf!18304
2022-06-19 23:22:48 +08:00
Jiang Jiang Jian
8f9a3d508e Merge branch 'bugfix/idle_task_skipped_light_sleep_backport_v4.2' into 'release/v4.2'
pm_impl: fix neither enter light sleep nor enter waiti state in idle task(backport v4.2)

See merge request espressif/esp-idf!17849
2022-06-19 23:21:57 +08:00
xiongweichao
cec2713416 Fix AVDTP general reject format error. 2022-06-17 10:28:50 +08:00
aditi_lonkar
d8d32d71c9 esp_wifi: Fix issue of ca certificate expired. 2022-06-15 17:23:20 +05:30
Hrudaynath Dhabe
f66638c360 esp_wifi: Fix the negotiation of method with eap server. 2022-06-15 05:57:15 +00:00
Jiang Jiang Jian
14b204e201 Merge branch 'bugfix/pm_enabled_bt_build_fail_v4.2' into 'release/v4.2'
Bluetooth build fail when power management is enabled(v4.2)

See merge request espressif/esp-idf!18383
2022-06-15 11:07:08 +08:00
Hrudaynath Dhabe
8eb3c959dc esp_wifi: Ignore unauthenticated encrypted EAPOL-Key data and fix handling of key RSC.
Closes https://github.com/espressif/esp-idf/issues/8401
2022-06-14 18:33:27 +05:30
Michael (XIAO Xufeng)
ac6f45d290 bootloader: support unlock MXIC flash chips 2022-06-09 12:41:56 +08:00
Cao Sen Miao
168880fe7b spi_flash: move the unlock patch to bootloader and add support for GD 2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
e5ac1eb83f 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.
2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
33a8c60b2c bootloader: add xmc spi_flash startup flow to improve reliability 2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
e1bd7b9d8f bootloader: create public bootloader_flash.h header
Move non-public functions into bootloader_flash_priv.h header
2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
9582cbe5b8 bootloader: fix the WRSR format for ISSI flash chips
1. The 2nd bootloader always call `rom_spiflash_unlock()`, but never help to clear the WEL bit when exit. This may cause system unstability.

   This commit helps to clear WEL when flash configuration is done.

   **RISK:** When the app starts, it didn't have to clear the WEL before it actually write/erase. But now the very first write/erase operation should be done after a WEL clear. Though the risk is little (all the following write/erase also need to clear the WEL), we still have to test this carefully, especially for those functions used by the OTA.

2. The `rom_spiflash_unlock()` function in the patch of ESP32 may (1) trigger the QPI, (2) clear the QE or (3) fail to unlock the ISSI chips.

   Status register bitmap of ISSI chip and GD chip:

| SR | ISSI | GD25LQ32C |
| -- | ---- | --------- |
| 0  | WIP  | WIP       |
| 1  | WEL  | WEL       |
| 2  | BP0  | BP0       |
| 3  | BP1  | BP1       |
| 4  | BP2  | BP2       |
| 5  | BP3  | BP3       |
| 6  | QE   | BP4       |
| 7  | SRWD | SRP0      |
| 8  |      | SRP1      |
| 9  |      | QE        |
| 10 |      | SUS2      |
| 11 |      | LB1       |
| 12 |      | LB2       |
| 13 |      | LB3       |
| 14 |      | CMP       |
| 15 |      | SUS1      |

   QE bit of other chips are at the bit 9 of the status register (i.e. bit 1 of SR2), which should be read by RDSR2 command.

   However, the RDSR2 (35H, Read Status 2) command for chip of other vendors happens to be the QIOEN (Enter QPI mode) command of ISSI chips. When the `rom_spiflash_unlock()` function trys to read SR2, it may trigger the QPI of ISSI chips.

   Moreover, when `rom_spiflash_unlock()` try to clear the BP4 bit in the status register, QE (bit 6) of ISSI chip may be cleared by accident. Or if the ISSI chip doesn't accept WRSR command with argument of two bytes (since it only have status register of one byte), it may fail to clear the other protect bits (BP0~BP3) as expected.

   This commit makes the `rom_spiflash_unlock()` check whether the vendor is issi. if so, `rom_spiflash_unlock()` only send RDSR to read the status register, send WRSR with only 1 byte argument, and also avoid clearing the QE bit (bit 6).

3. `rom_spiflash_unlock()` always send WRSR command to clear protection bits even when there is no protection bit active. And the execution of clearing status registers, which takes about 700us, will also happen even when there's no bits cleared.

   This commit skips the clearing of status register if there is no protection bits active.

Also move the execute_flash_command to be a bootloader API; move
implementation of spi_flash_wrap_set to the bootloader
2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
a130dcd5ec test_spiffs: increase test case stack size 2022-06-09 12:41:56 +08:00
Michael (XIAO Xufeng)
51584d4f2a spi_flash: partially move API functions out of IRAM 2022-06-09 12:41:56 +08:00
Jiang Jiang Jian
a3374b2d2f Merge branch 'bugfix/fix_cannot_lslp_again_after_ulp_wakeup_backport_v4.2' into 'release/v4.2'
sleep: fix cannot lightsleep again after a wakeup from ULP(backport v4.2)

See merge request espressif/esp-idf!18218
2022-06-07 11:21:42 +08:00
xiongweichao
0cb13d47cc Bluetooth build fail when power management is enabled 2022-06-06 20:28:25 +08:00
Roland Dobai
087c72e8ea Merge branch 'bugfix/disable_extensions_idfpy_tests_v4.2' into 'release/v4.2'
Tools: Make idf.py tests independent on extra extensions (v4.2)

See merge request espressif/esp-idf!18284
2022-06-03 19:05:26 +08:00
Sergei Silnov
2e8e620d94 Tools: Make idf.py tests independent on extra extensions 2022-06-02 17:56:38 +02:00
Jiang Jiang Jian
59a66f90c7 Merge branch 'bugfix/add_bda_to_read_rmt_name_param_v4.2' into 'release/v4.2'
Bugfix/add bda to read rmt name param v4.2

See merge request espressif/esp-idf!18282
2022-06-02 11:46:51 +08:00
Jiang Jiang Jian
83b2a98682 Merge branch 'feature/docker_build_gh_actions_v4.2' into 'release/v4.2'
ci: move Docker image builds to Github, plus other improvements (v4.2)

See merge request espressif/esp-idf!18289
2022-06-02 11:45:20 +08:00
keymoon
c670dc6d14 assign value to uninitialized bt_addr field 2022-05-29 18:04:53 -07:00
keymoon
2bf87b0a53 add address field to read_rmt_name_param 2022-05-29 18:04:41 -07:00
Ivan Grokhotkov
7d9aff3913 tools/docker: add README.md file to be displayed on Docker Hub
Closes https://github.com/espressif/esp-idf/issues/7933
2022-05-27 14:15:51 +02:00
Ivan Grokhotkov
cf44cbfdc9 ci: build and push Docker images in Github actions
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-05-27 14:15:47 +02:00
Ivan Grokhotkov
a1eb5c77e9 docs: document build arguments of the Docker image 2022-05-27 14:01:34 +02:00
Ivan Grokhotkov
1e64f241f9 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-05-27 14:01:22 +02:00
jingli
57975000fe 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-23 01:00:28 +08:00
Jiang Jiang Jian
b6b7a59958 Merge branch 'bugfix/twai_esp32_errata_workarounds_backport_v4.2' into 'release/v4.2'
TWAI: Add FIFO overrun handling and ESP32 hardware errata workarounds + Refactor TWAI HAL to store state information  (backport v4.2)

See merge request espressif/esp-idf!17106
2022-05-19 10:55:59 +08:00
Jiang Jiang Jian
b74fc002f1 Merge branch 'bugfix/driver_uart_fix_tx_bytes_rts_assert_failure_v42' into 'release/v4.2'
driver: fixes context switch while sending cause rts reset before send (backport v4.2)

See merge request espressif/esp-idf!17942
2022-05-19 10:55:36 +08:00
Alex Lisitsyn
721e26019e driver: fixes context switch while sending cause rts reset before send (backport v4.2) 2022-05-19 10:55:35 +08:00
Jiang Jiang Jian
9cb1729107 Merge branch 'bugfix/fix_adc_calibration_light_sleep_issue_v4.2' into 'release/v4.2'
adc: fix calibration error when waking up from light sleep (v4.2)

See merge request espressif/esp-idf!16931
2022-05-19 10:55:10 +08:00
Jiang Jiang Jian
ea173fc189 Merge branch 'bugfix/ble_mesh_console_correct_repl_config_prompt_forv4.2' into 'release/v4.2'
ble mesh:example:correct repl config prompt in ble mesh console(v4.2)

See merge request espressif/esp-idf!17185
2022-05-19 10:54:52 +08:00
Yuan Hong Hui
886e846dc0 ble mesh:example:correct repl config prompt in ble mesh console(v4.2) 2022-05-19 10:54:51 +08:00
Jiang Jiang Jian
0fba64486a Merge branch 'bugfix/spi_lose_last_3_bytes_v4.2' into 'release/v4.2'
spi_master: fix an issue where master cannot correctly receive data when using DMA in halfduplex mode (v4.2)

See merge request espressif/esp-idf!17379
2022-05-19 10:54:36 +08:00
Jiang Jiang Jian
c71a9e5704 Merge branch 'feature/check_block_after_burn_v4.2' into 'release/v4.2'
efuse: Validates data after burning and re-burnes it if necessary (v4.2)

See merge request espressif/esp-idf!17704
2022-05-19 10:54:19 +08:00
morris
6c66b39221 Merge branch 'feature/modbus_master_fix_check_uart_set_pin_v42' into 'release/v4.2'
example/modbus_master: fix the assert for uart_set_pin (backport v4.2)

See merge request espressif/esp-idf!17626
2022-05-10 18:30:03 +08:00
Elbert van de Put
07c8e86987 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-05-10 08:05:22 +00:00
Jiang Jiang Jian
d6a975f6b2 Merge branch 'bugfix/_rtc_slow_length_incorrectly_optimized_backport_v4.2' into 'release/v4.2'
sleep_power_domain: fix _rtc_slow_length being incorrectly optimized by compiler(backport v4.2)

See merge request espressif/esp-idf!17976
2022-05-10 01:04:37 +08:00
morris
d0db75899d Merge branch 'bugfix/ledc_consecutive_fade_v4.2' into 'release/v4.2'
ledc: Bugfixes for issues related to fade protection (backport v4.2)

See merge request espressif/esp-idf!16955
2022-05-07 18:24:45 +08:00
jingli
05b7db9cd8 fix _rtc_slow_length being incorrectly optimized by compiler 2022-05-01 23:26:52 +08:00
Jiang Jiang Jian
667f3dfbad Merge branch 'bugfix/ignore_pmf_capable_flag_v4.2' into 'release/v4.2'
Always connect Station in PMF mode if possible (Backport v4.2)

See merge request espressif/esp-idf!17538
2022-05-01 20:10:58 +08:00
Jiang Jiang Jian
bf7b430f55 Merge branch 'contrib/github_pr_8779_v4.2' into 'release/v4.2'
esp_wifi: fix clearing default wifi netif procedure(v4.2)

See merge request espressif/esp-idf!17940
2022-04-28 16:17:14 +08:00
Jiang Jiang Jian
00d2c3037a Merge branch 'bugfix/fix_disable_bt_log_ci_fail_v4.2' into 'release/v4.2'
component_bt: Fix CI failure when disable bluetooth debug log(v4.2)

See merge request espressif/esp-idf!17905
2022-04-27 18:20:27 +08:00
Jiang Jiang Jian
5c1d1c0f45 Merge branch 'bugfix/spp_crash_after_call_spp_deinit_v4.2' into 'release/v4.2'
Component_bt/Fix spp crash after call esp_spp_deinit(v4.2)

See merge request espressif/esp-idf!17933
2022-04-27 18:06:57 +08:00
Krzysztof Lewandowski
55b6ff6fbd 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-27 03:23:20 -04:00
xiongweichao
d59d373edc Fix spp initialization failure without free mutex 2022-04-27 14:49:39 +08:00
xiongweichao
9e2ae1271d Fix spp crash after calling esp_spp_deinit 2022-04-27 14:43:42 +08:00
xiongweichao
0825981026 Fix CI failure when disable bluetooth debug log 2022-04-26 15:06:50 +08:00
KonstantinKondrashov
83728f3832 efuse: fix 2022-04-26 00:08:51 +08:00
Island
8b422cd8b1 Merge branch 'bugfix/oversized_SegN_as_valid_v4.2' into 'release/v4.2'
ble_mesh: stack: Bugfix for oversized SegN as valid(v4.2)

See merge request espressif/esp-idf!17774
2022-04-25 18:52:04 +08:00
wangjialiang
7691b8effb ble_mesh: stack: Bugfix for oversized SegN as valid 2022-04-25 11:53:35 +08:00
Jiang Jiang Jian
c35cd9d0fe Merge branch 'bugfix/rrm_dpp_task_delete_v4.2' into 'release/v4.2'
Bugfix/rrm dpp task delete v4.2

See merge request espressif/esp-idf!17880
2022-04-25 10:52:26 +08:00
Jack
be2779818b fix build error 2022-04-23 01:11:29 +08:00
Jack
fdf79ce300 ESP_WIFI: Remove static analysis warnings 2022-04-23 00:54:30 +08:00
Kapil Gupta
dc87416df0 wpa_supplicant: static analysis fixes 2022-04-23 00:33:34 +08:00
Kapil Gupta
a26b0dbaab wpa_supplicant: Add BTM security checks 2022-04-23 00:26:08 +08:00
Jiang Jiang Jian
06837c7efa Merge branch 'bugfix/fix_phy_i2c_crash_v4.2' into 'release/v4.2'
esp_phy: Add IRAM_ATTR for phy i2c spinlock (v4.2)

See merge request espressif/esp-idf!17844
2022-04-21 15:47:04 +08:00
gaoxiaojie
5516dc7d0c pm_impl: fix neither enter light sleep nor enter waiti state in idle task 2022-04-21 14:40:57 +08:00
xiewenxiang
d976bbec08 esp_phy: Add IRAM_ATTR for phy i2c spinlock 2022-04-21 02:57:08 +08:00
Wang Meng Yang
d8105a565e Merge branch 'bugfix/fix_spp_initiator_connect_failed_v4.2' into 'release/v4.2'
Component_bt/Fix SPP initiator can not free resource when connection is failed[backport 4.2]

See merge request espressif/esp-idf!17746
2022-04-19 15:49:12 +08:00
morris
7cb3e99740 Merge branch 'fix/spi_master_use_data_flag_v4.2' into 'release/v4.2'
spi_master: fix the error log when use tx/rx_data with larger data (v4.2)

See merge request espressif/esp-idf!17800
2022-04-18 23:22:02 +08:00
Michael (XIAO Xufeng)
5edd6a4ddf spi_master: fix the error log when use tx/rx_data with larger data 2022-04-18 15:15:06 +08:00
Michael (XIAO Xufeng)
396159299c Merge branch 'bugfix/gpio_pin_num_fix_v4.2' into 'release/v4.2'
gpio: Fix some gpio pin num errors on esp32s2 (backport v4.2)

See merge request espressif/esp-idf!17110
2022-04-18 14:49:52 +08:00
Ivan Grokhotkov
34a326130a Merge branch 'bugfix/nvs_coverity_issues_4.2' into 'release/v4.2'
bugfix (nvs): Fixed issues found by Coverity (backport v4.2)

See merge request espressif/esp-idf!17764
2022-04-14 17:44:51 +08:00
Jakob Hasse
e5eccb409e bugfix (nvs): Fixed issues found by Coverity
*  Fixed potential memory leak
*  Fixed wrong strncpy usage
*  Fixed potential out of bounds access
2022-04-13 18:02:47 +08:00
Nachiket Kukade
154e579cfc 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.
Additionally add API esp_wifi_disable_pmf_config to disable PMF for
debug purposes or to avoid PMF issues on AP side.
2022-04-12 18:40:51 +05:30
liqigan
0c2c192013 add missing unlock in btc_spp_cb_handler of BTA_JV_RFCOMM_WRITE_EVT 2022-04-12 15:37:07 +08:00
liqigan
95ad53153f fix SPP initiator can not free resource when connection is failed 2022-04-12 15:36:47 +08:00
Wang Meng Yang
43ee24a52e Merge branch 'bugfix/bt_add_some_debug_log_v4.2' into 'release/v4.2'
component_bt: Add some bluetooth debug log(v4.2)

See merge request espressif/esp-idf!17616
2022-04-11 10:53:40 +08:00
KonstantinKondrashov
dffcb3d0fb efuse: Fix 3/4 coding scheme UTs 2022-04-08 17:13:23 +08:00
morris
ffe304268d Merge branch 'bugfix/modbus_add_task_affinity_and_callbacks_v42' into 'release/v4.2'
freemodbus: add task affinity and callbacks (backport v4.2)

See merge request espressif/esp-idf!14542
2022-04-08 15:59:33 +08:00
KonstantinKondrashov
3a4cf61318 efuse: Improve messages during burn operation 2022-04-07 22:25:06 +08:00
Michael (XIAO Xufeng)
2ec7449c37 Merge branch 'bugfix/phy_regi2c_critical_section_v4.2' into 'release/v4.2'
esp_phy: use spinlock to avoid regi2c access conflicts (v4.2)

See merge request espressif/esp-idf!17693
2022-04-07 20:19:33 +08:00
morris
c226560f6b Merge branch 'bugfix/flash_mmap_output_psram_arg_v4.2' into 'release/v4.2'
mmap: fixed the issue mmap cannot be called with pointers to psram (v4.2)

See merge request espressif/esp-idf!17699
2022-04-07 10:54:08 +08:00
KonstantinKondrashov
08a06865ec efuse: Burn func can return an error
esp_efuse_utility_burn_chip()
2022-04-06 23:42:26 +08:00
KonstantinKondrashov
26619521fb efuse: Validates data after burning and re-burnes it if necessary
It checks the content of the written data and encoding errors.
2022-04-06 20:02:46 +08:00
Michael (XIAO Xufeng)
50b87ff953 mmap: fixed the issue mmap cannot be called with pointers to psram 2022-04-06 17:23:42 +08:00
Anton Maklakov
66d65e66fd Merge branch 'feature/add_component_manager_python_dependency_v4.2' into 'release/v4.2'
Build System: Add idf-component-manager python dependency (v4.2)

See merge request espressif/esp-idf!15986
2022-04-06 16:31:26 +08:00
Michael (XIAO Xufeng)
cb0b143cb3 esp_phy: use spinlock to avoid regi2c access conflicts 2022-04-06 15:01:35 +08:00
Michael (XIAO Xufeng)
171096e856 regi2c: use safe version of spinlock, instead of ISR ver 2022-04-06 14:47:10 +08:00
Michael (XIAO Xufeng)
69c95bf983 Merge branch 'bugfix/spi_free_crash_uninitialized_v4.2' into 'release/v4.2'
spi: fixed crash when calling spi_bus_free when not initialized (v4.2)

See merge request espressif/esp-idf!17610
2022-04-01 11:17:54 +08:00
Michael (XIAO Xufeng)
e7d95dc787 Merge branch 'bugfix/gpio_example_config_struct_zero_init_v4.2' into 'release/v4.2'
example: fixed the issue that config struct is not properly initialized (v4.2)

See merge request espressif/esp-idf!17589
2022-04-01 11:17:17 +08:00
Michael (XIAO Xufeng)
c7c7d5d01d Merge branch 'bugfix/fix_x32k_startup_slow_bug_v4.2' into 'release/v4.2'
bugfix: Fix xtal 32k not oscillate or oscillate too slowly issue for esp32 (v4.2)

See merge request espressif/esp-idf!17591
2022-03-30 17:54:41 +08:00
chaijie
b2e08332e3 ESP32: Fix xtal 32k not oscillate or oscillate too slowly issue
ESP32 in revision0 and revision1 uses touchpad to provide
current to oscillate xtal 32k. But revision2 and revision3
do not need to do that.
Note: touchpad can not work and toupad/ULP wakeup sources
are not available when toupad provides current to xtal 32k
2022-03-30 15:27:03 +08:00
songruojing
affb956da5 esp_system: fix the bug that some peripheral clocks are being disabled during cpu reset for esp32s2 2022-03-29 03:42:34 +00:00
songruojing
9e79d0e06f 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-03-29 03:42:06 +00:00
songruojing
01547c4bd8 ledc: 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-03-29 03:42:06 +00:00
me-no-dev
198ce9095a Fix USB with swapped pins not working
(cherry picked from commit 0aa1c13027)
2022-03-29 03:41:28 +00:00
songruojing
4c267ef0a6 gpio: Fix some gpio pin num errors on esp32s2 2022-03-29 03:40:54 +00:00
xiongweichao
b8c9bb4247 Add some bluetooth debug log 2022-03-28 11:28:50 +08:00
Michael (XIAO Xufeng)
49231ae961 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:41:09 +08:00
Michael (XIAO Xufeng)
75f856ac37 example: fixed the issue that config struct is not properly initialized 2022-03-25 01:11:55 +08:00
Michael (XIAO Xufeng)
680710df2f Merge branch 'test/remove_spi_flash_perf_thr_v4.2' into 'release/v4.2'
spi_flash_test: remove threshold from unit test (v4.2)

See merge request espressif/esp-idf!16824
2022-03-19 02:36:18 +08:00
morris
84effb1708 Merge branch 'bugfix/sleep_wrong_log_lvl_v4.2' into 'release/v4.2'
Sleep: fix wrong debug level (backport v4.2)

See merge request espressif/esp-idf!17300
2022-03-16 17:10:53 +08:00
Michael (XIAO Xufeng)
16629eaf99 Merge branch 'bugfix/bootloader_uart_custom_gpio_v4.2' into 'release/v4.2'
bootloader: fixed the issue custom_uart_gpio doesn't take effect (v4.2)

See merge request espressif/esp-idf!17309
2022-03-16 11:39:36 +08:00
Jiang Jiang Jian
550872d629 Merge branch 'bugfix/assoc_comeback_fail_issue_v4.2' into 'release/v4.2'
Fix assoc comeback causing invalid state (Backport v4.2)

See merge request espressif/esp-idf!17174
2022-03-16 10:47:48 +08:00
Jiang Jiang Jian
ebee6f3c3f Merge branch 'bugfix/dual_core_pm_lock_issue_backport_v4.2' into 'release/v4.2'
System: fix pm lock issue in dual core mode(backport v4.2)

See merge request espressif/esp-idf!17263
2022-03-16 10:33:29 +08:00
Michael (XIAO Xufeng)
26cf75cb44 spi_flash_test: remove threshold from unit test 2022-03-15 15:22:55 +00:00
Michael (XIAO Xufeng)
67fea1b6bf test_utils: allow printint multiple argument in the performance log 2022-03-15 15:22:55 +00:00
Michael (XIAO Xufeng)
c2d2d58ff1 Merge branch 'bugfix/esp_flash_write_temp_buffer_lifetime_v4.2' into 'release/v4.2'
esp_flash: fix write issue using buffer on stack out of lifetime (v4.2)

See merge request espressif/esp-idf!17206
2022-03-15 22:14:57 +08:00
Michael (XIAO Xufeng)
6c21202065 Merge branch 'fix/sdio_slave_recv_intr_unhandled_v4.2' into 'release/v4.2'
sdio_slave: fixed the issue that interrupt may be cleared with finished trans unhandled (v4.2)

See merge request espressif/esp-idf!17150
2022-03-15 22:06:19 +08:00
Michael (XIAO Xufeng)
608e189a53 Merge branch 'ci/enable_default_ut_s2' into 'release/v4.2'
ci: enable unit test for S2 by default

See merge request espressif/esp-idf!17114
2022-03-15 22:03:07 +08:00
Omar Chebib
ba3266e2ec Sleep: fix wrong debug level
Fix usage of ESP_LOGD in sleep_modes.c which triggers a panic when
used in debug log level.
2022-03-15 11:18:42 +00:00
Roland Dobai
cc230188ea Merge branch 'bugfix/flash_from_monitor_on_windows_v4.2' into 'release/v4.2'
Tools: IDF Monitor should flash with the unmodified port (v4.2)

See merge request espressif/esp-idf!17259
2022-03-12 23:19:06 +08:00
Wang Meng Yang
09a8221d31 Merge branch 'feature/update_hfp_hf_version_v4.2' into 'release/v4.2'
component_bt: Update HFP_HF version to 1.7.2(v4.2)

See merge request espressif/esp-idf!17393
2022-03-10 20:20:08 +08:00
Wang Meng Yang
093fc90b92 Merge branch 'bugfix/a2dp_sniff_v4.2' into 'release/v4.2'
Fix crash when host exit sniff mode(v4.2)

See merge request espressif/esp-idf!17342
2022-03-10 14:09:03 +08:00
Krzysztof Budzynski
219c579084 Merge branch 'docs/fix_broken_links_4.2' into 'release/v4.2'
docs: fix broken links in queue.h file (v4.2)

See merge request espressif/esp-idf!17182
2022-03-09 19:12:40 +08:00
morris
cc518c3d05 Merge branch 'bugfix/i2s_write_failed_in_32bit_slave_mode_v4.2' into 'release/v4.2'
i2s: fix write failure issue in slave mode (backport v4.2)

See merge request espressif/esp-idf!15082
2022-03-09 19:10:56 +08:00
xiongweichao
5e8b07bdea Update HFP_HF version to 1.7.2 2022-03-08 11:11:58 +08:00
Armando
e9bbe44d19 spi_master: fix master HD mode cannot correctly receive data issue when using DMA 2022-03-07 13:54:25 +08:00
Armando
e6c97308b9 sleep: restore analog calibration registers after waking up from light sleep 2022-03-07 11:18:21 +08:00
Jiang Jiang Jian
3c9cc070dd Merge branch 'update/version_4_2_3' into 'release/v4.2'
Update version to 4.2.3

See merge request espressif/esp-idf!17349
2022-03-04 19:00:02 +08:00
Ivan Grokhotkov
bb29e93ddf versions: Update version to 4.2.3 2022-03-03 14:44:57 +01:00
xiongweichao
306df682cc Fix crash when host exit sniff mode 2022-03-03 16:31:43 +08:00
laokaiyao
0c71604b80 i2s: fix write failure issue in slave mode (backport v4.2) 2022-03-03 15:16:53 +08:00
songruojing
3d13370968 uart: fixed incorrect channel number on ESP32S2, S3 and C3 2022-03-02 10:53:30 +08:00
Michael (XIAO Xufeng)
d87d385e6f bootloader: fixed the issue custom_uart_gpio doesn't take effect 2022-03-02 10:53:30 +08:00
jingli
8dd7662696 fix pm lock issue in dual core mode 2022-02-23 22:00:36 +08:00
Roland Dobai
95eb9626a4 Tools: IDF Monitor should flash with the unmodified port
Closes https://github.com/espressif/esp-idf/issues/8432
2022-02-23 13:50:18 +01:00
Jiang Jiang Jian
d503c23d7a Merge branch 'bugfix/update_stack_init_check_4.2' into 'release/v4.2'
Nimble: Updated checks of stack initialization status before executing stack command

See merge request espressif/esp-idf!17198
2022-02-22 09:12:00 +00:00
Jiang Jiang Jian
147f37d6a2 Merge branch 'bugfix/fix_ble_adv_underrun_error_v4.2' into 'release/v4.2'
components/bt: Fix ble adv_underrun issue(backport v4.2)

See merge request espressif/esp-idf!17166
2022-02-22 09:11:16 +00:00
Michael (XIAO Xufeng)
ea6f4fd2ff esp_flash: fix write issue using buffer on stack out of lifetime 2022-02-20 03:24:59 +08:00
Isha Pardikar
05f7dd1d28 Merge branch 'bugfix/update_stack_init_check_4.2' into 'release/v4.2'
Nimble: Updated checks of stack initialization status before executing stack command
2022-02-17 15:09:52 +05:30
intern
e954c47abd docs: fix broken links 2022-02-16 14:24:22 +08:00
xiewenxiang
e39a101aaa components/bt: Fix ble adv_underrun issue
components/bt: Fix LLCP collision for channel map update
2022-02-16 00:28:45 +08:00
Nachiket Kukade
9f85fb2843 esp_wifi: Update wifi lib
Fix assoc comeback causing invalid state
2022-02-15 18:11:41 +05:30
Jiang Jiang Jian
473d39e6e6 Merge branch 'feature/refactor_phy_access_v4.2' into 'release/v4.2'
esp_wifi: refactor PHY access (Backport v4.2)

See merge request espressif/esp-idf!16975
2022-02-15 10:36:56 +00:00
Darian Leung
a0666b9be8 TWAI: FIFO overrun handling and errata workarounds
This commit adds handling for FIFO overruns and
adds workarounds for HW erratas on the ESP32.

Closes https://github.com/espressif/esp-idf/issues/2519
Closes https://github.com/espressif/esp-idf/issues/4276
2022-02-15 14:16:53 +08:00
Darian Leung
90ee294139 TWAI: Track HW state in HAL
This commit refactors the TWAI HAL such that it now tracks
the harwdare's state instead of at the driver layer.
Some HAL and LL cleanup was also done.
2022-02-15 14:16:53 +08:00
zhangyanjiao
c4ae443171 esp_wifi: refactor modem sleep access phy 2022-02-15 11:48:03 +08:00
Xia Xiaotian
cf2093be03 esp_wifi: store PHY digital registers before disabling PHY and load
them after enabling PHY
2022-02-15 11:43:10 +08:00
zhangyanjiao
8920361ff3 make esp32 same to esp32s2 in esp_phy_enable() 2022-02-15 11:43:10 +08:00
Xia Xiaotian
d472641430 esp_wifi: refactor PHY access
- Simplify PHY access API
- Move coexist initializing and deinitializing out from PHY API
  to Wi-Fi and Bluetooth
- Remove coexist pause and resume for they are no longer needed.
2022-02-15 11:43:10 +08:00
Zim Kalinowski
e70c238be0 Merge branch 'bugfix/enterprise_certs_weak_md_v4.2' into 'release/v4.2'
esp_wifi: Fixed issue of weak md for certificates in wifi_enterprise example.(v4.2)

See merge request espressif/esp-idf!16990
2022-02-15 03:39:45 +00:00
Zim Kalinowski
15a20d8100 Merge branch 'bugfix/sdio_slave_dma_desc_int_v4.2' into 'release/v4.2'
sdio_slave: Fixed the issue that DMA descriptors allocated to non-DMA capable area (v4.2)

See merge request espressif/esp-idf!17139
2022-02-15 03:38:38 +00:00
Zim Kalinowski
6f2d77ed2c Merge branch 'bugfix/mdns_null_deref_fuzzer_v4.2' into 'release/v4.2'
mdns: Fix potential null deref reported by fuzzer test(v4.2)

See merge request espressif/esp-idf!17145
2022-02-15 03:37:55 +00:00
Jiang Jiang Jian
3055474491 Merge branch 'bugfix/usb_device_struct_cleanup_v4.2' into 'release/v4.2'
USB: Cleanup device side struct and fix incorrect DM pulldown configuration (v4.2)

See merge request espressif/esp-idf!17102
2022-02-15 03:28:01 +00:00
Jiang Jiang Jian
128f228169 Merge branch 'bugfix/rmt_s2_doesnt_support_rx_wrap_v4.2' into 'release/v4.2'
rmt: do not support rx wrap on esp32s2 (v4.2)

See merge request espressif/esp-idf!17081
2022-02-15 03:07:16 +00:00
Jiang Jiang Jian
95f7e51af0 Merge branch 'bugfix/eap_client_crash_v4.2' into 'release/v4.2'
wpa_supplicant: Fix memory corruption (v4.2)

See merge request espressif/esp-idf!17130
2022-02-15 03:06:40 +00:00
Michael (XIAO Xufeng)
aed907c728 sdio_slave: fixed the issue that interrupt may be cleared with finished trans unhandled 2022-02-15 00:01:46 +08:00
Darian Leung
3e9eec1ebf 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-14 23:51:32 +08:00
David Cermak
3efd220463 mdns: Fix potential null deref reported by fuzzer test 2022-02-14 22:52:26 +08:00
Jiang Jiang Jian
7482ad5139 Merge branch 'bugfix/support_esp32s2_eco1_v4.2' into 'release/v4.2'
esp_phy: Update ESP32S2 phy lib to support eco1 chip(v4.2)

See merge request espressif/esp-idf!16722
2022-02-14 12:40:55 +00:00
Wang Meng Yang
faba034955 Merge branch 'bugfix/clear_whitelist_v4.2' into 'release/v4.2'
Nimble : Modify `ble_gap_wl_set` to support clearing complete whitelist

See merge request espressif/esp-idf!16942
2022-02-14 10:47:02 +00:00
Jiang Jiang Jian
7d376a36f0 Merge branch 'feature/pro_recv_hb_forv4.2' into 'release/v4.2'
provisioner receive heartbeat message(v4.2)

See merge request espressif/esp-idf!16640
2022-02-14 06:10:15 +00:00
Jiang Jiang Jian
9150716570 Merge branch 'bugfix/filter_repeated_packages_forv4.2' into 'release/v4.2'
filter repeated packages then send response(v4.2)

See merge request espressif/esp-idf!16820
2022-02-14 06:09:45 +00:00
Yuan Hong Hui
6f7badf942 filter repeated packages then send response(v4.2) 2022-02-14 06:09:44 +00:00
Jiang Jiang Jian
a5ce5002c0 Merge branch 'bugfix/modbus_fix_invalid_error_handling_for_duplicate_param_key_v42' into 'release/v4.2'
freemodbus: fix invalid error handling for duplicate param key (backport v4.2)

See merge request espressif/esp-idf!14787
2022-02-14 06:09:03 +00:00
Jiang Jiang Jian
a609fb0f02 Merge branch 'fix/gitlab_404_local_mirror_v4.2' into 'release/v4.2'
Handle gitlab 404 error (v4.2)

See merge request espressif/esp-idf!16960
2022-02-14 06:08:38 +00:00
Jiang Jiang Jian
893fae229c Merge branch 'bugfix/task_wdt_timeout_uint32_overflow_v4.2' into 'release/v4.2'
Task WDT: Fix overflow issue during timeout calculation (v4.2.3)

See merge request espressif/esp-idf!16983
2022-02-14 06:08:10 +00:00
Jiang Jiang Jian
82c529a773 Merge branch 'bugfix/mcpwm-deadtime-preset-config-backport_v4.2' into 'release/v4.2'
MCPWM/deadtime: fix and sync preset deadtime modes with well-known definition (backport v4.2)

See merge request espressif/esp-idf!14623
2022-02-14 06:02:37 +00:00
Li Hang Fan
54251cfada MCPWM/deadtime: fix and sync preset deadtime modes with well-known definition (backport v4.2) 2022-02-14 06:02:36 +00:00
Michael (XIAO Xufeng)
dbf33d7947 sdio_slave: fixed the issue DMA desc not capable 2022-02-14 12:57:57 +08:00
Michael (XIAO Xufeng)
4d9a68e091 Merge branch 'flash/add_th_support_v4.2' into 'release/v4.2'
spi_flash: add support for th 1M flash(backport v4.2)

See merge request espressif/esp-idf!16717
2022-02-14 04:45:59 +00:00
Michael (XIAO Xufeng)
b4862d1ba2 Merge branch 'feature/support_new_psram_v4.2' into 'release/v4.2'
psram: add ESP32-D0WD-R2-V3 support(backport v4.2)

See merge request espressif/esp-idf!16709
2022-02-13 14:45:30 +00:00
morris
c7b5d3494c rmt: do not support rx wrap on esp32s2
Closes https://github.com/espressif/esp-idf/issues/8354
2022-02-13 12:20:20 +08:00
Michael (XIAO Xufeng)
a7c053c28d Merge branch 'bugfix/add_hw_flow_ctrl_for_uart_test_v4.2' into 'release/v4.2'
driver: add diagnostic information into UART test, enable flow control (v4.2)

See merge request espressif/esp-idf!17115
2022-02-12 20:03:30 +00:00
Kapil Gupta
eec9d6db94 wpa_supplicant: Fix invalid memory dereference 2022-02-12 10:36:00 +05:30
Marius Vikhammer
9c81bceb0e Task WDT: Fix overflow issue during timeout calculation
Closes https://github.com/espressif/esp-idf/issues/8239
2022-02-11 15:57:33 +08:00
Ivan Grokhotkov
dd67f769d9 driver: add diagnostic information into UART test, enable flow control 2022-02-11 13:47:06 +08:00
Rahul Tank
3e1efffd8a Nimble : Modify ble_gap_wl_set to support clearing complete whitelist 2022-02-11 10:35:01 +05:30
Michael (XIAO Xufeng)
067678bdf9 ci: enable unit test for S2 by default 2022-02-11 04:09:17 +00:00
Jiang Jiang Jian
9e7811b95e Merge branch 'bugfix/rd_rem_ext_feats_delayed_cs_4.2' into 'release/v4.2'
bugfix/fix cs event for rd_rem_ext_feats delayed issue (v4.2)

See merge request espressif/esp-idf!16892
2022-02-11 02:59:01 +00:00
Roland Dobai
8fed5801f7 Merge branch 'bugfix/add_dummy_to_total_size_v4.2' into 'release/v4.2'
Tools: fix bug with total size calculation issue (v4.2)

See merge request espressif/esp-idf!16862
2022-02-10 14:04:35 +00:00
Roland Dobai
d090020409 Merge branch 'bugfix/rm_copyright_ignore_list_v4.2' into 'release/v4.2'
CI: Remove unused copyright ignore list (v4.2)

See merge request espressif/esp-idf!16967
2022-02-10 14:03:58 +00:00
Roland Dobai
14038003be Merge branch 'bugfix/win_rename_delay_v4.2' into 'release/v4.2'
Tools: Use delay between rename attempts on Windows in the installer (v4.2)

See merge request espressif/esp-idf!17058
2022-02-10 14:03:42 +00:00
Michael (XIAO Xufeng)
dc50f0e828 Merge branch 'bugfix/fix_spi_cs_hold_time_issue_v4.2' into 'release/v4.2'
spi_master: fix spi cs_ena_posttrans issue (v4.2)

See merge request espressif/esp-idf!16688
2022-02-10 09:37:34 +00:00
Jiang Jiang Jian
d1ada53a7d Merge branch 'bugfix/wps_fixes_v4.2' into 'release/v4.2'
wpa_supplicant: Add WPS Fixes (backport V4.2)

See merge request espressif/esp-idf!17062
2022-02-10 08:14:23 +00:00
jincheng
17b8fbfc1b fix cs evt for rd_rem_ext_feats delayed issue 2022-02-10 15:28:26 +08:00
chenjianxing
10c604475d esp_phy: Update ESP32S2 phy lib to support eco1 chip 2022-02-10 14:00:53 +08:00
Kapil Gupta
eb90d9bf18 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.
2022-02-08 17:13:01 +05:30
Roland Dobai
6a2255a18b Tools: Use delay between rename attempts on Windows in the installer 2022-02-08 11:09:15 +01:00
Sergei Silnov
018524ec7e examples: Add the component manager example 2022-02-02 16:44:44 +01:00
Sergei Silnov
3a4218156c docs: Add component manager documentation 2022-02-02 16:44:43 +01:00
Sergei Silnov
5594a511c9 Build System: Don't track dependencies.lock 2022-02-02 16:44:43 +01:00
Sergei Silnov
d955043aea Add idf-component-manager python dependency 2022-02-02 16:44:43 +01:00
aditi_lonkar
ef8a76c667 esp_wifi: Fixed issue of weak md for certificates in wifi_enterprise example. 2022-01-28 15:31:18 +05:30
simon.chupin
ddb8c8ddfd add test for checking memory segments with esptool.py 2022-01-27 15:07:38 +01:00
Roland Dobai
69e04fc263 CI: Remove unused copyright ignore list 2022-01-27 12:51:58 +01:00
Tomas Sebestik
7c3878b288 Handle gitlab 404 error
ci: do not retry on 404 when LOCAL_GITLAB_HTTPS_HOST not set
2022-01-27 11:44:44 +01:00
simon.chupin
d72fa4e62a tools/idf_size: Fixed bug with wrong memory calculation 2022-01-19 18:13:32 +01:00
Jiang Jiang Jian
fcce82ea53 Merge branch 'bugfix/modbus_port_fix_lgpl_licensed_files_v4.2' into 'release/v4.2'
freemodbus: fix port contains lgpl licensed files (v4.2)

See merge request espressif/esp-idf!16551
2022-01-19 08:23:42 +00:00
Jiang Jiang Jian
0e42db7ca8 Merge branch 'bugfix/fix_tbtt_and_phy_issues_v4.2' into 'release/v4.2'
esp_wifi: fix tbtt and phy issues (Backport v4.2)

See merge request espressif/esp-idf!16829
2022-01-19 05:01:12 +00:00
zhangyanjiao
2df406b6ce esp_wifi:
1. fix the issue that no tbtt is generated in station+softap mode when maximum modem sleep is enabled
2. store PHY digital registers before disabling PHY and load them after enabling PHY
3. update libphy.a to V4670 719f9f6_20210218 for esp32
4. update libphy.a to V1500 20210225_0a54a2f for esp32s2
2022-01-18 13:18:36 +08:00
Xia Xiaotian
c98745a5aa esp_wifi: store PHY digital registers before disabling PHY and load
them after enabling PHY
2022-01-18 13:18:36 +08:00
Jiang Jiang Jian
615ba73c4e Merge branch 'bugfix/fix_wifi_bugs_20220114_v4.2' into 'release/v4.2'
esp_wifi: fix some wifi bugs (Backport v4.2)

See merge request espressif/esp-idf!16795
2022-01-18 05:16:34 +00:00
aditi_lonkar
459674c444 esp_wifi: Fixed null pointer dereference 2022-01-14 15:00:52 +08:00
zhangyanjiao
c01c7acdab esp_wifi:
1. Fixed sniffer fcs error crash issue
2. Added support of SHA256 AKM without PMF enabled
3. Added station based check for auth frame formation
2022-01-14 14:57:51 +08:00
xiehang
69b8e2af84 example: Fix espnow stuck issue 2022-01-14 14:26:02 +08:00
ronghulin
f70ac4e529 fix phy init memory leak 2022-01-14 14:26:02 +08:00
28a340af37 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-01-14 14:26:02 +08:00
ronghulin
fa0edda538 Bugfix: Connect example to add scan mode config 2022-01-14 14:26:02 +08:00
Jiang Jiang Jian
909db7cd91 Merge branch 'mesh/bugfix_fix_layer2_node_connection_issue_v4.2' into 'release/v4.2'
esp_wifi_mesh: fix the issue that layer2 node connect to lower-layer node when FIXED-ROOT root disappeared(backport_v4.2)

See merge request espressif/esp-idf!15730
2022-01-14 05:32:46 +00:00
Jiang Jiang Jian
0336c5f525 Merge branch 'bugfix/wpa3_memory_leak_v4.2' into 'release/v4.2'
esp_wifi: Fixes memory leak in wpa3 connection.(v4.2)

See merge request espressif/esp-idf!16561
2022-01-14 04:42:53 +00:00
Jiang Jiang Jian
cf5d7befaf Merge branch 'bugfix/PRs_on_esp_hid_v4.2' into 'release/v4.2'
bugfix/handle_2_esp_hid_PRs (v4.2)

See merge request espressif/esp-idf!16710
2022-01-14 03:12:41 +00:00
Jiang Jiang Jian
9b53301b4d Merge branch 'bugfix/fix_spp_open_err_bda_v4.2' into 'release/v4.2'
Component_bt/Fix SPP acceptor open with wrong remote address[backport 4.2]

See merge request espressif/esp-idf!16615
2022-01-14 03:12:03 +00:00
Jiang Jiang Jian
85a36b86d0 Merge branch 'bugfix/touch_ll_get_sleep_time_v4.2' into 'release/v4.2'
Fixed error in "touch_ll_get_sleep_time" function for ESP32 (v4.2)

See merge request espressif/esp-idf!16249
2022-01-14 03:05:00 +00:00
Jiang Jiang Jian
9bf6cf5ed4 Merge branch 'bugfix/alarm_update_invalid_v4.2' into 'release/v4.2'
timer: stop alarm if alarm value doesn't change in ISR callback (v4.2)

See merge request espressif/esp-idf!16534
2022-01-14 03:04:36 +00:00
Jiang Jiang Jian
6683751579 Merge branch 'bugfix/gpio_uninstall_isr_service_intr_wdt_crash_v4.2' into 'release/v4.2'
gpio: Bugfix - Move esp_intr_free() out of the critical section in gpio_uninstall_isr_service() (backport v4.2)

See merge request espressif/esp-idf!16597
2022-01-14 03:04:15 +00:00
Jiang Jiang Jian
8f836882d4 Merge branch 'bugfix/fix_smartconfig_setopt_fail_v4.2' into 'release/v4.2'
smartconfig: Fix smartconfig set socket option fail (backport v4.2)

See merge request espressif/esp-idf!16773
2022-01-14 03:03:37 +00:00
Ivan Grokhotkov
7ad199d14a Merge branch 'feature/oocd_ver_upgrade_v4.2' into 'release/v4.2'
tools: Updates OpenOCD version to 'v0.11.0-esp32-20211220' (v4.2)

See merge request espressif/esp-idf!16767
2022-01-13 16:23:16 +00:00
yuanjm
1ebd52f36a smartconfig: Fix smartconfig set socket option fail 2022-01-13 11:00:13 +08:00
Roland Dobai
698efba393 Merge branch 'bugfix/fix_modbus_rs485_rts_en_fail_v42' into 'release/v4.2'
Bugfix/fix modbus rs485 rts en fail (backport v4.2)

See merge request espressif/esp-idf!11566
2022-01-12 08:44:05 +00:00
Zim Kalinowski
5f2f1c013a Merge branch 'bugfix/app_compatible_with_3_1_bootloader_v4.2' into 'release/v4.2'
esp_system: Fix RTC_WDT protection in esp_restart_noos (v4.2)

See merge request espressif/esp-idf!16742
2022-01-12 08:37:55 +00:00
Alexey Gerenkov
57c429e618 tools: Updates OpenOCD version to 'v0.11.0-esp32-20211220' 2022-01-12 09:30:24 +01:00
Krzysztof Budzynski
476a0eb26d Merge branch 'fix/remove_deprecated_macro_SPI_TRANS_SET_CD_v4.2' into 'release/v4.2'
Remove a deprecated macro: SPI_TRANS_SET_CD (v4.2)

See merge request espressif/esp-idf!16690
2022-01-12 05:50:53 +00:00
Michael (XIAO Xufeng)
aa445dceeb Merge branch 'bugfix/adc_power_issue_4.2' into 'release/v4.2'
adc: fix adc power issue (4.2)

See merge request espressif/esp-idf!14280
2022-01-12 03:38:19 +00:00
Wang Meng Yang
9b5e0fb672 Merge branch 'bugfix/a2dp_source_congest_v4.2' into 'release/v4.2'
component_bt: Fixed a2dp source audio data packet congestion causing choppy audio in a2dp sink(v4.2)

See merge request espressif/esp-idf!16708
2022-01-11 02:41:55 +00:00
Wang Meng Yang
3516d536ca Merge branch 'bugfix/config_parse_crash_after_flash_erase_v4.2' into 'release/v4.2'
component_bt: fixed config parse crash after flash_erase(v4.2)

See merge request espressif/esp-idf!16696
2022-01-11 02:39:23 +00:00
KonstantinKondrashov
18f2078c5c 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:58:01 +08:00
Krzysztof Budzynski
ddb7d6c4a0 Merge branch 'docs/fixed_typos_in_esp32-s2-saola-1_user_guide' into 'release/v4.2'
Docs: Fixed typos in ESP32-S2-Saola-1 user guide (backport v4.2)

See merge request espressif/esp-idf!16695
2022-01-10 09:54:42 +00:00
Cao Sen Miao
e59e7e1432 spi_flash: add support for th 1M flash 2022-01-10 11:53:37 +08:00
Cao Sen Miao
dfa736b0e3 psram: add ESP32-D0WD-R2-V3 support 2022-01-10 11:06:25 +08:00
xiongweichao
f41d77cce9 btc_a2dp_control_set_datachnl_stat is only used by a2dp sink 2022-01-10 11:01:41 +08:00
xiongweichao
45b9b12c04 remove btc_a2dp_dispatch_datapath_evt and event 2022-01-10 11:00:59 +08:00
xiongweichao
cf2f2a44c7 Fixed the crash caused by calling esp_a2d_media_ctrl(ESP_A2D_MEDIA_CTRL_START) after stream started 2022-01-10 11:00:03 +08:00
xiongweichao
190bd80f3d Fixed a2dp source audio data packet congestion causing choppy audio in a2dp sink 2022-01-10 10:59:43 +08:00
aleks
239e56541c freemodbus: fix uart_wait_tx_done() reenable tx_done interrupt 2022-01-07 16:45:47 +00:00
aleks
9ac8205208 freemodbus: fix rts enable fail when transmit frame 2022-01-07 16:45:47 +00:00
aleks
4c5099d194 freemodbus: fix modbus rs485 rts enable fail v42 2022-01-07 16:45:47 +00:00
aleks
bf8bff9870 freemodbus: fix invalid error handling for duplicate param_key 2022-01-07 16:09:25 +00:00
xiongweichao
ae676e3491 fixed config parse crash after flash_erase
Closes https://github.com/espressif/esp-idf/issues/6170
2022-01-07 17:13:03 +08:00
Wang Ning
a30cfb2ef3 docs/fixed_typos_in_esp32-s2-saola-1_user_guide 2022-01-07 17:01:53 +08:00
Wang Fang
fec6e140fb fix: remove a deprecated macro: SPI_TRANS_SET_CD 2022-01-07 16:39:31 +08:00
Zim Kalinowski
9f0c9ff2f0 Merge branch 'doc/target_specifc_doxygen_header_v4.2' into 'release/v4.2'
docs: change some header path to use IDF_TARGET (v4.2)

See merge request espressif/esp-idf!15804
2022-01-07 07:49:26 +00:00
Armando
ca6636c33e spi_master: fix spi cs_ena_posttrans issue 2022-01-07 14:28:57 +08:00
Marius Vikhammer
2f02a80d31 docs: change some header path to use IDF_TARGET
Some header path were using hardcoded esp32 paths, when they should be
target dependent.
2022-01-07 11:16:30 +08:00
Jiang Jiang Jian
2b95a627be Merge branch 'bugfix/set_authmode_by_switching_number_to_string_v4.2' into 'release/v4.2'
CI: set authmode by switching number to string (backport v4.2)

See merge request espressif/esp-idf!16555
2022-01-06 10:09:30 +00:00
Armando
a129933ccd adc: apply adc power API to adc driver 2022-01-06 11:42:55 +08:00
Roland Dobai
56cfd0b86b Merge branch 'bugfix/idf_tools_test_without_versions_v4.2' into 'release/v4.2'
Tools: Load tool versions automatically for IDF Tools tests (v4.2)

See merge request espressif/esp-idf!16512
2022-01-04 09:48:09 +00:00
Yuan Hong Hui
8a47cdeb2d add cmd to publish and recv heartbeat message 2022-01-04 15:56:45 +08:00
Zim Kalinowski
dca26e3fe9 Merge branch 'bugfix/psram_fix_bootloader_v4.2' into 'release/v4.2'
bootloader: disable psram cache bug fix for bootloader (v4.2)

See merge request espressif/esp-idf!15806
2022-01-02 06:13:12 +00:00
liqigan
4b3b77e4e8 fix SPP open with wrong remote bd_addr 2021-12-31 15:46:15 +08:00
songruojing
7ef8012019 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)
2021-12-30 14:45:13 +08:00
Murray Fordyce
000599986f Fixed left right key confusion in comments.
"Left" and "Right" were swapped in some comments.
2021-12-30 11:02:54 +08:00
Robin Krens
e9714eaaa5 spacing styling correction 2021-12-30 11:02:54 +08:00
Robin Krens
c115194e88 minor styling changes 2021-12-30 11:02:54 +08:00
Robin Krens
77c3a113bf 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 11:02:54 +08:00
Zim Kalinowski
5f137204b1 Merge branch 'bugfix/ringbuf_read_pointer_wrap_v4.2' into 'release/v4.2'
ringbuf: Fix bug where comparision between a signed and unsigned operand resulted in incorrect free size for no-split/allow-split buffers (v4.2)

See merge request espressif/esp-idf!15883
2021-12-30 02:22:05 +00:00
Zim Kalinowski
f94ce9f51d Merge branch 'bugfix/fix_select_timeout_v4.2' into 'release/v4.2'
VFS: `select` function's timeout is now POSIX compliant (backport v4.2)

See merge request espressif/esp-idf!16191
2021-12-30 02:20:31 +00:00
aditi_lonkar
0b98671385 esp_wifi: Fixes memory leak in wpa3 connection. 2021-12-28 11:37:23 +05:30
huchaoru
fac6a5af5b bugfix: set authmode by switching number to string (backport v4.2) 2021-12-27 20:00:33 +08:00
aleks
394c2c100f 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-12-27 11:12:32 +01:00
Sudeep Mohanty
c6134337a6 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:14:17 +08:00
Sudeep Mohanty
31327caaf5 Merge branch 'bugfix/ringbuf_send_semaphore_release_order_v4.2' into 'release/v4.2'
esp_ringbuf: Fix order of semaphore release in xRingbufferSend (v4.2)

See merge request espressif/esp-idf!16231
2021-12-24 06:16:47 +00:00
morris
93c784e1c8 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 13:08:33 +08:00
Jiang Jiang Jian
775701d610 Merge branch 'feature/mbedtls-2.16.12-integration_v4.2' into 'release/v4.2'
mbedtls: upgrade to release v2.16.12 (v4.2)

See merge request espressif/esp-idf!16485
2021-12-24 03:20:34 +00:00
RichFalk
6df7b049a3 esp_ringbuf: Fix assertion xQueueGenericSend queue.c
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-23 15:53:48 +08:00
shenjun
5ed4a3dbfb esp_wifi_mesh: fix the device can not receive IP_EVENT_STA_GOT_IP when the router restarted
1. fix the device can not receive IP_EVENT_STA_GOT_IP when the router restarted
2. fix the issue that layer2 node connect to lower-layer node when FIXED-ROOT root disappeared
2021-12-23 11:19:19 +08:00
Jiang Jiang Jian
9273f5045e Merge branch 'bugfix/fix_rx_fragment_error_issue_v4.2' into 'release/v4.2'
esp_wifi: fix fragment issue and PMF compatible for faulty APs(Backport v4.2)

See merge request espressif/esp-idf!16398
2021-12-22 17:33:54 +00:00
Roland Dobai
1699624dff Tools: Load tool versions automatically for IDF Tools tests 2021-12-22 10:37:01 +01:00
Mahavir Jain
1319034019 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:03:30 +05:30
Mahavir Jain
50df004292 mbedtls: small documentation update 2021-12-21 14:03:30 +05:30
Wang Meng Yang
e7687c7688 Merge branch 'bugfix/fix_spp_listen_err_v4.2' into 'release/v4.2'
Component_bt/Fix SPP cannot malloc slot bugs[backport v4.2]

See merge request espressif/esp-idf!16385
2021-12-21 05:28:25 +00:00
Jiang Jiang Jian
0c15051452 Merge branch 'bugfix/wpa_supplicant_logs_release_v4.2' into 'release/v4.2'
esp_wifi: Change the verbosity of wpa_supplicant logs. (Backport v4.2)

See merge request espressif/esp-idf!16347
2021-12-21 03:36:28 +00:00
Mahavir Jain
b4d4cbdd41 Merge branch 'bugfix/address_already_used_exception_in_ota_tests_v4.2' into 'release/v4.2'
Fix 'address already in use' exception in OTA tests (v4.2)

See merge request espressif/esp-idf!16418
2021-12-20 07:11:53 +00:00
Wang Meng Yang
db669217ac Merge branch 'feature/support_ble_direct_ind_low_adv_v4.2' into 'release/v4.2'
components/bt: Support low duty cycle directed advertising(backport release/v4.2)

See merge request espressif/esp-idf!16379
2021-12-20 03:11:22 +00:00
Harshit Malpani
46b58b5934 Fix for advanced_ota_redirect_url example failure in CI 2021-12-16 12:26:17 +05:30
Jiang Jiang Jian
769099dd64 Merge branch 'bugfix/lwip_config_dhcp_client_id_v4.2' into 'release/v4.2'
lw-ip: Add config for DHCP client id; Fix DNS server idx assert issue (v4.2)

See merge request espressif/esp-idf!16174
2021-12-16 06:43:41 +00:00
Harshit Malpani
a687c3413e 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:33:27 +05:30
Jiang Jiang Jian
33a6effd3e Merge branch 'feature/support_eap_fast_release_v4.2' into 'release/v4.2'
Feature/support eap fast release v4.2

See merge request espressif/esp-idf!16142
2021-12-16 03:37:49 +00:00
Jiang Jiang Jian
0204aea35b Merge branch 'bugfix/fix_blufi_encryption_fail_v4.2' into 'release/v4.2'
components/bt: fix blufi encryption fail(backport release/v4.2)

See merge request espressif/esp-idf!16316
2021-12-16 03:33:51 +00:00
David Cermak
0eb18951be 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/7912
2021-12-15 13:17:03 +01:00
Konstantin Kondrashov
0877949237 Merge branch 'bugfix/fix_esp32h2_efuse_get_ext_mac_v4.2' into 'release/v4.2'
efuse_table_gen: Fixes wrong joining fields with omitted names  (v4.2)

See merge request espressif/esp-idf!15739
2021-12-14 14:07:39 +00:00
NikLeberg
8c3b358abf 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())
2021-12-14 19:44:31 +08:00
Shang Zhou
6f8ad7eb5e docs: Update miswritten and abbreviated words and syntax errors for initialize WiFi section in esp_wifi.h header file 2021-12-14 19:43:54 +08:00
muhaidong
6baac84d4a 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
2021-12-14 19:28:31 +08:00
Hrudaynath Dhabe
bab60d20af esp_wifi: Add an example for EAP-FAST. 2021-12-14 12:45:04 +05:30
nishanth.radja
69ca323a74 esp_wifi: Add support for EAP-FAST authentication method 2021-12-14 12:37:26 +05:30
xiewenxiang
146bbe95be components/bt: Fix high duty cycle directed advertising will not be stopped when timeout 2021-12-14 14:10:29 +08:00
xiewenxiang
b3adae9b40 components/bt: Support low duty cycle directed advertising 2021-12-14 14:10:29 +08:00
liqigan
6c2d8ea653 fix SPP server bugs when the BTC layer can not allocate a slot for the listen port 2021-12-14 11:16:42 +08:00
Vikram
c327a0016e Merge branch 'feature/local_control_sec1_v4.2' into 'release/v4.2'
Added support for security1 in local control (backport v4.2)

See merge request espressif/esp-idf!15280
2021-12-09 16:55:22 +00:00
Roland Dobai
01ebb72f0a Merge branch 'bugfix/remove_PIP_USER_v4.2' into 'release/v4.2'
tools: Add check for PIP_USER variable (backport v4.2)

See merge request espressif/esp-idf!16336
2021-12-09 08:10:10 +00:00
Vikram Dattu
f278db260e esp_local_ctrl: Added documentation to chose protocom security
Signed-off-by: Vikram Dattu <vikram.dattu@espressif.com>
2021-12-09 15:26:14 +08:00
Vikram Dattu
3af5f20da1 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-12-09 15:26:14 +08:00
Hrudaynath Dhabe
c3e66a4ba2 esp_wifi: Change the verbosity of wpa_supplicant logs. 2021-12-09 12:55:32 +05:30
Jiang Jiang Jian
2fa5cee80d Merge branch 'bugfix/fix_some_wifi_bugs_20211202_v4.2' into 'release/v4.2'
fix wifi bugs 20211202 (backport v4.2)

See merge request espressif/esp-idf!16256
2021-12-09 06:19:06 +00:00
Juraj Sadel
a43a21a761 tools: Add check for PIP_USER variable
Closes https://github.com/espressif/esp-idf/issues/7910
2021-12-08 16:18:39 +01:00
xiewenxiang
ab7ad4e771 components/bt: fix blufi encryption fail 2021-12-08 14:09:29 +08:00
Mahavir Jain
5cc2eb15c9 Merge branch 'bugfix/bootloader_debug_buffers_v4.2' into 'release/v4.2'
bootloader_support: Fix and re-enable bootloader_debug_buffer function (v4.2)

See merge request espressif/esp-idf!16075
2021-12-07 02:34:42 +00:00
Jiang Jiang Jian
e694ffd5af Merge branch 'bugfix/link_spi_flash_rom_func_in_bootloader_stage_v4.2' into 'release/v4.2'
esp_rom: link rom spi flash functions in bootloader stage (v4.2)

See merge request espressif/esp-idf!15258
2021-12-06 03:57:55 +00:00
Jiang Jiang Jian
6317335174 Merge branch 'feature/add_coex_hci_command_v4.2' into 'release/v4.2'
Add hci command to set coexistence status (v4.2)

See merge request espressif/esp-idf!16055
2021-12-06 03:57:11 +00:00
Jiang Jiang Jian
38714c37d1 Merge branch 'feature/adds_fault_injection_protection_for_check_anti_rollback_v4.2' into 'release/v4.2'
bootloader_support: Adds fault injection protection for check_anti_rollback (v4.2)

See merge request espressif/esp-idf!16181
2021-12-06 03:56:33 +00:00
Jiang Jiang Jian
36574af3c9 Merge branch 'reduce_bootup_time_when_using_usb-serial-jtag_v4.2' into 'release/v4.2'
rtc_clk: reduce bootup time when using usb-serial-jtag(backport v4.2)

See merge request espressif/esp-idf!16262
2021-12-06 03:55:21 +00:00
Jiang Jiang Jian
06db6f510f Merge branch 'feature/add_dhcp_option_v4.2' into 'release/v4.2'
lw-ip: Add macro to disable vendor class option(backport v4.2)

See merge request espressif/esp-idf!15982
2021-12-06 03:54:59 +00:00
jingli
417711c390 reduce bootup time when using usb-serial-jtag 2021-12-03 21:01:02 +08:00
zhangyanjiao
aa5e034c52 eps_wifi:
1. Fix airkiss and esptouch find channel crash issue
2. Fix RF singal test without 9M rate issue
3. Fix issue of setting invalid size to nvs misc log even after erasing it
4. Fix WEP connection and crash issue
2021-12-03 17:59:31 +08:00
xiehang
a249794640 esp_wifi: Add beacon timeout event 2021-12-03 15:37:06 +08:00
Axel Lin
721fe216e7 wpa_supplicant: Fix wps_free_pins to remove all pins
Current code does not correctly free all pins in wps_free_pins due to the
semicolon at the end of dl_list_for_each_safe(). Fix it.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
2021-12-03 14:35:55 +08:00
Sergey Gorban
f74b5accf3 Fixed error in "touch_ll_get_sleep_time" function for ESP32
Merges https://github.com/espressif/esp-idf/pull/6895
2021-12-03 12:41:31 +08:00
Mahavir Jain
37634f09b2 Merge branch 'fix/remove_warning_when_disabling_rom_dl_mode_v4.2' into 'release/v4.2'
secure_boot: Fix warning when UART ROM DL mode is disabled (v4.2)

See merge request espressif/esp-idf!16239
2021-12-03 04:27:14 +00:00
Jiang Jiang Jian
b656c406bf Merge branch 'bugfix/enable_gpio_20_v4.2' into 'release/v4.2'
gpio: Enable IO20 on ESP32 (backport v4.2)

See merge request espressif/esp-idf!15023
2021-12-03 03:39:47 +00:00
Jiang Jiang Jian
19643f715c Merge branch 'bugfix/fix_memory_leak_controller_deinit_v4.2' into 'release/v4.2'
ESP32: Fix memory leak in controller deinit function v4.2

See merge request espressif/esp-idf!15970
2021-12-03 03:32:18 +00:00
Roland Dobai
c3eb64ef85 Merge branch 'feature/oocd_ver_upgrade_v4.2' into 'release/v4.2'
tools: Updates OpenOCD version to 'v0.10.0-esp32-20211111' (v4.2)

See merge request espressif/esp-idf!16001
2021-12-02 17:28:37 +00:00
Alexey Gerenkov
3c3711dcc3 idf_tools: Adds 'linux-armhf' platform support 2021-12-02 16:53:28 +03:00
Alexey Gerenkov
c2ffbaf683 tools: Updates OpenOCD version to 'v0.10.0-esp32-20211111' 2021-12-02 16:53:23 +03:00
Aditya Patwardhan
bffa30785b secure_boot: Fix warning when UART ROM DL mode is disabled
*Additionally use updated calls to enable rom secure download mode
2021-12-02 21:40:49 +08:00
Mahavir Jain
adda59cc97 bootloader: add anti-FI checks around secure version in anti-rollback scheme 2021-12-02 21:17:27 +08:00
Anton Maklakov
392a126b05 Merge branch 'bugfix/ci_fix_clean_dir' into 'release/v4.2'
ci: Fix build system tests to clean the dir

See merge request espressif/esp-idf!16221
2021-12-02 12:08:49 +00:00
Sergei Silnov
b5d459ee05 ci: Fix build system tests to clean the dir 2021-12-01 18:29:42 +01:00
Gustavo Henrique Nihei
8ffd02be29 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:02:23 +08:00
Omar Chebib
53daf3dbbf 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:22:55 +08:00
Roland Dobai
a4ced2bf55 Merge branch 'bugfix/coredump_esp_panic_reason_v4.2' into 'release/v4.2'
coredump: Fixes ESP-specific panic reasons handling (v4.2)

See merge request espressif/esp-idf!16069
2021-11-26 11:00:41 +00:00
Roland Dobai
77a46fd122 Merge branch 'bugfix/doskey_v4.2' into 'release/v4.2'
tools: fix export.bat /tools/idf.py not found issue (v4.2)

See merge request espressif/esp-idf!16050
2021-11-26 10:09:04 +00:00
Mahavir Jain
d8f9e53504 Merge branch 'feature/remove_component_manager_tests_v4.2' into 'release/v4.2'
ci: Remove component manager test from build system tests (v4.2)

See merge request espressif/esp-idf!16108
2021-11-26 05:17:43 +00:00
Anton Maklakov
fccaf93a87 Merge branch 'feature/docker_build_use_git_mirror_v4.2' into 'release/v4.2'
ci: use LOCAL_GIT_MIRROR in docker build job, if set (v4.2)

See merge request espressif/esp-idf!16112
2021-11-25 05:33:45 +00:00
Ivan Grokhotkov
ccb1afa97a 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:45:02 +01:00
Sergei Silnov
eee3af33d6 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:13:14 +01:00
Roland Dobai
792bc9a587 Merge branch 'feature/json_schema_for_idf_size_v4.2' into 'release/v4.2'
tools: add json schema for idf_size (v4.2)

See merge request espressif/esp-idf!15961
2021-11-24 09:00:43 +00:00
yuanjm
3cfcf2b4fd lwip: Add macro to disable vendor class option 2021-11-23 19:37:50 +08:00
Alexey Gerenkov
6d7aa57177 coredump: Fixes core dump private header inclusion guard 2021-11-23 13:06:18 +03:00
Alexey Gerenkov
0473ddffa7 coredump: Fixes ESP-specific panic reasons handling 2021-11-23 13:06:03 +03:00
Jiang Jiang Jian
d4c247dac6 Merge branch 'bugfix/fix_static_check_error_mr_4.2' into 'release/v4.2'
Fix the high-impact issues from the code analysis report from customer.

See merge request espressif/esp-idf!16046
2021-11-23 07:27:18 +00:00
Jiang Jiang Jian
440d1aeb25 Merge branch 'bugfix/leedarson_v4.2' into 'release/v4.2'
component_bt: Fix some code logic errors (v4.2)

See merge request espressif/esp-idf!16030
2021-11-23 07:26:55 +00:00
Jiang Jiang Jian
c1f7f216e3 Merge branch 'bugfix/register_non_32bit_access_v4.2' into 'release/v4.2'
hal: avoid non-32bit access to registers (v4.2)

See merge request espressif/esp-idf!15617
2021-11-23 07:26:31 +00:00
xiongweichao
3beae7c8ef Add hci command to set coexistence status 2021-11-23 11:48:39 +08:00
Ivan Grokhotkov
999abf403e 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 23:08:49 +01:00
“YangZhao”
4200865dd1 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:55:03 +08:00
xiongweichao
6ab925eaa0 Missing break in switch 2021-11-22 11:48:21 +08:00
xiongweichao
163dfb1091 already defined in bt_target.h 2021-11-22 11:47:00 +08:00
Wang Meng Yang
028a4c93ff Merge branch 'bugfix/fix_modem_sleep_hw_error_mr_4.2' into 'release/v4.2'
fix modem sleep hw error

See merge request espressif/esp-idf!16019
2021-11-22 03:46:30 +00:00
xiongweichao
1733159b08 Dereference after null check 2021-11-22 11:46:30 +08:00
xiongweichao
a8c653b094 Dereference before null check 2021-11-22 11:43:35 +08:00
xiongweichao
0ef796bfc2 Logically dead code 2021-11-22 11:43:05 +08:00
Yang Zhao
14cdcae482 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.
2021-11-19 16:17:31 +08:00
Anton Maklakov
e74f0665fc Merge branch 'feature/ci_runner_failure_retries_v4.2' into 'release/v4.2'
ci: runner system failure retries (v4.2)

See merge request espressif/esp-idf!15724
2021-11-19 08:02:26 +00:00
Wang Meng Yang
05b1f873bd Merge branch 'bugfix/fix_custmoer_issues_v4.2' into 'release/v4.2'
bugfix/fix_3_controller_issues_v4.2

See merge request espressif/esp-idf!15978
2021-11-19 03:36:07 +00:00
Rahul Tank
c2a94ba1aa 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.
2021-11-17 20:42:29 +08:00
Roland Dobai
88e3ec6f03 Merge branch 'bugfix/create_dir_idf_env_v4.2' into 'release/v4.2'
tools: Create the ".espressif" directory on the first run on clean system (v4.2)

See merge request espressif/esp-idf!15857
2021-11-16 15:47:47 +00:00
jincheng
160afee96c - fix HCI_Read_Clock error
- fix HCI_Create_Connection_Cancel error
- fix ASSERT_WARN during epr
2021-11-16 17:10:30 +08:00
simon.chupin
3c69e6c990 tools: add json schema for idf_size 2021-11-15 18:45:08 +01:00
Mahavir Jain
a1b16acf7a Merge branch 'bugfix/efuse_stdbool_v4.2' into 'release/v4.2'
efuse: Add missing stdbool.h include file (v4.2)

See merge request espressif/esp-idf!15937
2021-11-15 15:39:03 +00:00
Jing Li
ccef7c1712 Merge branch 'bugfix/fix_ota_crash_backport_v4.2' into 'release/v4.2'
spi_flash: fix app crash when OTA because the OTA task's stack is in rtc fast memory(backport v4.2)

See merge request espressif/esp-idf!15861
2021-11-15 02:32:54 +00:00
Ondrej Kosta
f84e55bea2 Merge branch 'bugfix/LAN8720_reset_assertion_v4.2' into 'release/v4.2'
Increased LAN8720 ETH-PHY reset assertion time (v4.2)

See merge request espressif/esp-idf!15827
2021-11-14 21:49:08 +00:00
Gustavo Henrique Nihei
32d7f8e6f1 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:24 -03:00
Gustavo Henrique Nihei
d2da4598f5 efuse: Add missing stdbool.h include file
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-12 13:30:24 -03:00
Mahavir Jain
047a5bf2f7 Merge branch 'bugfix/aes_unaligned_access_v4.2' into 'release/v4.2'
aes: fix unaligned access (v4.2)

See merge request espressif/esp-idf!15803
2021-11-12 04:27:17 +00:00
Roland Dobai
ed6f72142f Merge branch 'bugfix/archive_details_always_run_like_diff_v4.2' into 'release/v4.2'
tools: fix bug with idf_size argument archive_details (v4.2)

See merge request espressif/esp-idf!15776
2021-11-11 12:34:14 +00:00
Frank Sautter
a8ed7f44bb 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-10 21:59:00 +01:00
Xie Wen Xiang
08c79908fb Merge branch 'bugfix/fix_crash_when_shutdown_bt_v4.2' into 'release/v4.2'
component/bt: fix crash when shutdown bt(backport v4.2)

See merge request espressif/esp-idf!15710
2021-11-10 06:31:40 +00:00
jingli
b6b227e6cc fix: app crash when OTA because the OTA task's stack is in rtc fast memory 2021-11-10 14:05:54 +08:00
Marius Vikhammer
a7a495f796 aes: fix potential unaligned access of buffers
https://github.com/espressif/esp-idf/issues/7236
2021-11-10 10:01:45 +08:00
simon.chupin
97873dbedc change --archive_details output 2021-11-09 14:30:11 +01:00
Roland Dobai
719207446f 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:20 +01:00
Wang Meng Yang
fab8e9d1bc Merge branch 'bugfix/hfp_demo_audio_not_sine_v4.2' into 'release/v4.2'
Bugfix/hfp demo audio not sine v4.2

See merge request espressif/esp-idf!15750
2021-11-09 03:05:25 +00:00
boarchuz
0fe219a3f3 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:39 +08:00
xiewenxiang
6ee20240ed component/bt: fix crash when shutdown bt(backport v4.2) 2021-11-08 10:37:31 +08:00
Island
125cf671e7 Merge branch 'bugfix/ble_mesh_host_init_v4.2' into 'release/v4.2'
ble_mesh: nimble: return error if init host twice (v4.2)

See merge request espressif/esp-idf!15789
2021-11-05 03:10:46 +00:00
Island
78fc16d1d3 Merge branch 'bugfix/sig_ble_mesh_errata_e16350_v4.2' into 'release/v4.2'
ble_mesh: stack: Apply the errata E16350 from Bluetooth SIG (v4.2)

See merge request espressif/esp-idf!15785
2021-11-05 03:09:15 +00:00
Chinmay Chhajed
890114733f Merge branch 'bugfix/ble_conn_latency_max_value_v4.2' into 'release/v4.2'
BLE: Set connection max latency value to 499.

See merge request espressif/esp-idf!15756
2021-11-04 08:55:15 +00:00
Marius Vikhammer
49c1dc43f1 Merge branch 'bugfix/define__DOXYGEN___v4.2' into 'release/v4.2'
docs: define __DOXYGEN__ for doxygen builds (v4.2)

See merge request espressif/esp-idf!15681
2021-11-04 05:57:07 +00:00
Marius Vikhammer
2f511cfaef 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:15 +08:00
Marius Vikhammer
86c5d3136e docs: define __DOXYGEN__ for doxygen builds
Some docs depended on __DOXYGEN__ but this was never defined anywhere.
2021-11-04 10:22:21 +08:00
lly
8106a823bd ble_mesh: nimble: return error if init host twice 2021-11-03 19:22:12 +08:00
lly
b32d6c355a ble_mesh: stack: Apply the errata E16350 from Bluetooth SIG 2021-11-03 19:06:49 +08:00
simon.chupin
fbf1df22b7 tools: fix bug with idf_size argument archive_details 2021-11-02 14:24:02 +01:00
Chinmay Chhajed
e0ea44fa46 BLE: Set connection max latency value to 499. 2021-11-01 16:37:46 +05:30
jincheng
c0fc6500cf fix hfp_ag demo audio not sine_v4.1 2021-11-01 12:26:40 +08:00
Yuan Jian Min
f370d5089f Merge branch 'bugfix/fix_cplusplus_miss_in_dhcp_v4.2' into 'release/v4.2'
dhcpserver: support cplusplus (backport v4.2)

See merge request espressif/esp-idf!15447
2021-10-30 06:21:43 +00:00
KonstantinKondrashov
939f4dfbc0 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:37:21 +08:00
Mahavir Jain
7097d3c2f4 Merge branch 'bugfix/sdcard_example_format_timeout_v4.2' into 'release/v4.2'
CI: [Examples/Storage] provide sufficient timeout for SD card formatting (v4.2)

See merge request espressif/esp-idf!14912
2021-10-29 09:44:04 +00:00
Yuan Jian Min
4f1b5cdb8a Merge branch 'bugfix/fix_http_head_request_v4.2' into 'release/v4.2'
esp_http_client: Fix HEAD request will affect the all next HTTP requests unless we close the HTTP request(backport v4.2)

See merge request espressif/esp-idf!15713
2021-10-29 07:53:49 +00:00
Martin Vychodil
51e00ec105 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-10-29 15:44:53 +08:00
Anton Maklakov
f97fd4e04e ci: Add retries on runner system failures 2021-10-29 13:50:47 +07:00
Kapil Gupta
fe505c5d1b Merge branch 'bugfix/eap_client_iot_issues_v4.2' into 'release/v4.2'
ESP_WiFi: Fix some wpa enterprise issue (backport V4.2)

See merge request espressif/esp-idf!15573
2021-10-29 04:44:45 +00:00
yuanjm
cb343db4c9 ci: Remove public headers check exceptions for dhcp 2021-10-29 10:34:08 +08:00
yuanjm
40b28a958c dhcpserver: support cplusplus
Closes https://github.com/espressif/esp-idf/issues/7494

Merges https://github.com/espressif/esp-idf/pull/7526
2021-10-29 10:34:08 +08:00
yuanjm
f2347ff434 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-10-29 10:20:04 +08:00
Kapil Gupta
345fe24460 wpa_supplicant: Add missing cflag for legacy makefile 2021-10-28 17:03:06 +05:30
Kapil Gupta
7c402bd790 wpa_supplicant: Update internal tls client with sha384/sha512 support 2021-10-28 17:02:51 +05:30
Kapil Gupta
73933d50e8 esp_wifi: Fix interoperability issue with windows 2008 2021-10-28 16:07:33 +08:00
Mahavir Jain
a790d96441 Merge branch 'bugfix/select_boot_app_v4.2' into 'release/v4.2'
partition_table: Fix case when a few similar to otadata partitions in the table (v4.2)

See merge request espressif/esp-idf!15649
2021-10-28 05:38:28 +00:00
Island
f9c75d82e2 Merge branch 'bugfix/heartbeat_filter_with_acceptlist_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix heartbeat filter with accept list (v4.2)

See merge request espressif/esp-idf!15677
2021-10-28 02:58:36 +00:00
Jiang Jiang Jian
016b848caf Merge branch 'bugfix/remove_assert_when_inq_done_4.2' into 'release/v4.2'
component_bt: fix crash after inquiry has finished (v4.2)

See merge request espressif/esp-idf!15671
2021-10-27 11:28:02 +00:00
wangjialiang
41c0ba2ed0 ble_mesh: stack: Fix heartbeat filter with accept list 2021-10-27 16:39:24 +08:00
xiongweichao
5a4d4a01db Remove assert when inq done
Closes https://github.com/espressif/esp-idf/issues/6759
Closes https://github.com/espressif/esp-idf/issues/7551
2021-10-27 14:26:43 +08:00
Anton Maklakov
5f46abd281 Merge branch 'bugfix/support_py34-35_cffi_v4.2' into 'release/v4.2'
Tools: Constrain the cffi package for older pythons (v4.2)

See merge request espressif/esp-idf!15608
2021-10-26 13:48:03 +00:00
KonstantinKondrashov
fc0f90e8aa 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:48:25 +08:00
Sergei Silnov
7f7bc4078a Tools: Constrain the cffi package for older pythons 2021-10-25 20:14:19 +08:00
Wang Meng Yang
eaf738fae9 Merge branch 'feature/add_README_for_controller_hci_uart_demo_v4.2' into 'release/v4.2'
[document] add README.md for demo controller_hci_uart_demo for v4.2

See merge request espressif/esp-idf!15563
2021-10-25 08:13:37 +00:00
Wang Meng Yang
78e345debc Merge branch 'bugfix/fix_ble_scan_failed_issue_master_4.2' into 'release/v4.2'
[Bluetooth] Fix the ble scan failed issue

See merge request espressif/esp-idf!15589
2021-10-25 07:55:14 +00:00
morris
30355d3c0c hal: avoid non-32bit access to registers 2021-10-25 12:05:55 +08:00
Wu Zheng Hui
3a9a2bcfc3 Merge branch 'bugfix/fix_stuck_in_rtc_clk_calibration_backport_v4.2' into 'release/v4.2'
[bugfix] Fix stuck in rtc clk calibration (backport v4.2)

See merge request espressif/esp-idf!15525
2021-10-21 13:22:20 +00:00
wuzhenghui
fe1d3401d9 fix stuck in rtc_clk_cal 2021-10-21 19:15:33 +08:00
Yang Zhao
c1edb161e7 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:59:57 +08:00
Anton Maklakov
10c0bb1bc0 Merge branch 'bugfix/retry_download_submodule_v4.2' into 'release/v4.2'
ci: retry download from Gitlab on error 500 (v4.2)

See merge request espressif/esp-idf!15533
2021-10-20 03:35:11 +00:00
jincheng
75789bef8b add README.md for demo controller_hci_uart_demo 2021-10-19 22:00:46 +08:00
Anton Maklakov
3e9f15b12d Merge branch 'ci/fix_deploy_docs_preview_url_v4.2' into 'release/v4.2'
ci: update docs preview url (v4.2)

See merge request espressif/esp-idf!15509
2021-10-19 11:52:55 +00:00
Michael (XIAO Xufeng)
cb58226c5e Merge branch 'bugfix/fix_touch_sensor_measure_start_wait_time_backport_v4.2' into 'release/v4.2'
Bugfix(Touch): fix the touch sensor wait cycle after wakeup from sleep (backport v4.2)

See merge request espressif/esp-idf!13641
2021-10-18 16:58:30 +00:00
Roland Dobai
4498749f38 Merge branch 'backport/v4.2/dockerfile_multiarch' into 'release/v4.2'
Dockerfile working on x64/ARM (v4.2)

See merge request espressif/esp-idf!15520
2021-10-18 14:17:16 +00:00
Ivan Grokhotkov
672d112395 ci: revert type annotations in gitlab_api.py to python2 compatible 2021-10-18 14:42:35 +07:00
Ivan Grokhotkov
3b957bb67e ci: retry Gitlab operations on error 500 2021-10-18 14:42:35 +07:00
Fu Hanxi
46ef92abee ci: retry download artifacts 2021-10-18 14:42:35 +07:00
Ivan Grokhotkov
6b3f2ea744 ci: fetch submodules from mirror, if enabled 2021-10-18 14:42:35 +07:00
Fu Hanxi
1418efe7a4 ci: retry download if catched IOError/EOFError 2021-10-18 14:42:35 +07:00
Wang Meng Yang
de22cc8ca7 Merge branch 'bugfix/btdm_ble_data_length_update_fail_v4.2' into 'release/v4.2'
Fix data length update failed(release v4.2)

See merge request espressif/esp-idf!15503
2021-10-18 03:08:04 +00:00
Jiang Jiang Jian
8f8a88d5ec Merge branch 'bugfix/fix_efuse_err_address_backport4.2' into 'release/v4.2'
fix efuse err address in block0 (backport v4.2)

See merge request espressif/esp-idf!14813
2021-10-15 05:44:10 +00:00
Tomas Sebestik
7e663430ea Dockerfile working on x64/ARM 2021-10-14 13:11:25 +02:00
Marius Vikhammer
c72ab6944e ci: update docs preview url 2021-10-14 14:23:54 +08:00
Michael (XIAO Xufeng)
5cee2b34d6 Merge branch 'backport/v4.2/8_16bits_periph_access' into 'release/v4.2'
avoid generating 8/16 bits instructions for register accessing (backport v4.2)

See merge request espressif/esp-idf!15455
2021-10-13 17:55:09 +00:00
xiewenxiang
0dbd8701b5 component/bt: fix data length update failed 2021-10-13 19:43:47 +08:00
suda-morris
db956cdeca twai: update register struct file 2021-10-12 11:10:40 +08:00
SalimTerryLi
72bb572df1 hal: avoid generate 8/16 bits intruction for register access 2021-10-12 11:06:55 +08:00
Ivan Grokhotkov
5595042c16 Merge branch 'feature/windows_installer_moved_to_github_backport_4.2' into 'release/v4.2'
tools: Windows Installer project moved to github.com/espressif/idf-installer - backport v4.2

See merge request espressif/esp-idf!15475
2021-10-11 13:50:51 +00:00
Juraj Michálek
85427a8110 tools: remove dependency on Windows installer - backport 2021-10-11 12:26:55 +02:00
Roland Dobai
bf62154b18 Merge branch 'bugfix/constrain_cryptography_v4.2' into 'release/v4.2'
Tools: Constrain the cryptography package version in order to avoid breaking changes (v4.2)

See merge request espressif/esp-idf!15462
2021-10-11 07:19:10 +00:00
Mahavir Jain
1a50ddc2a3 Merge branch 'fix/update_https_example_root_certificate_v4.2' into 'release/v4.2'
Updated the root certificate of https examples (v4.2)

See merge request espressif/esp-idf!15438
2021-10-11 04:00:46 +00:00
Bao Hong De
600ef45abe Merge branch 'feature/sync_bt_lib_with_hli_v4.2' into 'release/v4.2'
components/bt: Sync bt lib with the high level interrupt version

See merge request espressif/esp-idf!15328
2021-10-11 03:15:09 +00:00
Roland Dobai
0f2d385a5a 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-10 19:26:11 +02:00
Mahavir Jain
8269fb23d7 Merge branch 'feature/github-7632_v4.2' into 'release/v4.2'
esp_crt_bundle: remove EC-ACC certificate (v4.2)

See merge request espressif/esp-idf!15435
2021-10-10 11:35:08 +00:00
baohongde
4a80c40c0c components/bt: Sync bt lib with the high level interrupt version 2021-10-08 14:17:49 +08:00
Harshit Malpani
9b0132387e Update example test for esp_http_client 2021-10-07 17:58:51 +05:30
Harshit Malpani
1aac3c64b5 Updated the root certificate of https examples 2021-10-07 17:54:06 +05:30
Victor Morales
b41f432262 esp_crt_bundle: remove EC-ACC certificate
Fixes bug #7631
2021-10-07 13:14:38 +05:30
Mahavir Jain
7caff8d13c Merge branch 'feature/upgrade_nghttp2_component_v4.2' into 'release/v4.2'
nghttp2: upgrade to v1.41.0 release (v4.2)

See merge request espressif/esp-idf!15343
2021-09-30 04:08:04 +00:00
Jiang Jiang Jian
fa6a77a5dc Merge branch 'cherry-pick-e8360fe0-3' into 'release/v4.2'
wpa_supplicant: clean tls client state machine (backport v4.2)

See merge request espressif/esp-idf!15039
2021-09-29 11:47:22 +00:00
Krzysztof Budzynski
8eca11af23 Merge branch 'docs/update_esp32-s2_devkit_user_guide_backport_v4.2' into 'release/v4.2'
Docs/Update two ESP32-S2 devkit user guides (backport v4.2)

See merge request espressif/esp-idf!15306
2021-09-29 07:26:21 +00:00
Roland Dobai
6f77c529ac Merge branch 'bugfix/idf_size_nan_in_json_v4.2' into 'release/v4.2'
Tools: fix appearing NaN value when calling idf_size.py --json (v4.2)

See merge request espressif/esp-idf!15353
2021-09-27 12:37:09 +00:00
Roland Dobai
4b469fb5e4 Merge branch 'bugfix/idf_tools_virtualenv_seeder_v4.2' into 'release/v4.2'
tools/idf_tools.py: Changed default AppData seeder to seeder pip (backport v4.2)

See merge request espressif/esp-idf!15350
2021-09-27 12:33:33 +00:00
Michael (XIAO Xufeng)
0e10bf11e3 Merge branch 'bugfix/uart_driver_obj_into_sram_v4.2' into 'release/v4.2'
uart: put driver object into sram(v4.2)

See merge request espressif/esp-idf!14753
2021-09-26 01:33:52 +00:00
Michael (XIAO Xufeng)
c00e51b11a Merge branch 'bugfix/wavegen_disable_iram_isr_backport4.2' into 'release/v4.2'
Bugfix/wavegen disable iram isr (backport v4.2)

See merge request espressif/esp-idf!15335
2021-09-26 01:21:10 +00:00
simon.chupin
df016b17f0 Tools: fix appearing NaN value when calling idf_size.py --json 2021-09-24 18:28:05 +02:00
Juraj Sadel
513c558f13 tools/idf_tools.py: Changed default AppData seeder to seeder pip 2021-09-24 15:00:04 +02:00
Mahavir Jain
385a299069 nghttp2: upgrade to v1.41.0 release
Detailed changelog:
https://github.com/nghttp2/nghttp2/releases/tag/v1.41.0

Closes: https://github.com/espressif/esp-idf/issues/4883
Closes IDFGH-2821
2021-09-24 17:47:02 +05:30
David Čermák
017b30bcee Merge branch 'bugfix/ping_iface_v4.2' into 'release/v4.2'
lw ip: Fix ICMP Ping on specific iface (GitHub PR) (v4.2)

See merge request espressif/esp-idf!15146
2021-09-24 06:54:42 +00:00
Krzysztof Budzynski
1ed132bf87 Merge branch 'docs/update_getStarted_CN_trans_V4.2' into 'release/v4.2'
docs: update CN translation for get-started V4.2

See merge request espressif/esp-idf!15308
2021-09-24 04:58:06 +00:00
SalimTerryLi
6d3bd3a48e bugfix by disabling IRAM attr on ISR 2021-09-24 11:00:26 +08:00
Zim Kalinowski
6501045d80 Merge branch 'feature/esp32c3_support_brownout_v4.2' into 'release/v4.2'
esp32c3: Adds support BROWNOUT reset (v4.2)

See merge request espressif/esp-idf!14963
2021-09-23 15:16:23 +00:00
Konstantin Kondrashov
f8e2eadc51 esp32c3: Adds support BROWNOUT reset (v4.2) 2021-09-23 23:16:16 +08:00
Jiang Jiang Jian
2453447940 Merge branch 'bugfix/stack_init_check_v4.2' into 'release/v4.2'
NimBLE: Check stack status before executing stack command

See merge request espressif/esp-idf!15026
2021-09-23 04:32:25 +00:00
Wang Meng Yang
41ff381a72 Merge branch 'feature/btdm_add_clear_white_list_API_v4.2' into 'release/v4.2'
component/bt: add clear white list API(backport v4.2)

See merge request espressif/esp-idf!15299
2021-09-23 03:21:46 +00:00
Wang Ning
d5eea66bbb docs/update_esp32-s2_devkit_user_guides 2021-09-22 19:12:28 +08:00
daiziyan
65540b991e docs: update CN translation and keep line number consistent for all documents in get-started section 2021-09-22 17:44:03 +08:00
zhiweijian
cc8ef6b8d2 component/bt: add clear white list API 2021-09-22 15:59:45 +08:00
morris
9b6d4c4015 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 12:01:04 +08:00
morris
5253a6c916 uart: format driver code by astyle 2021-09-22 12:01:04 +08:00
Mahavir Jain
61d5e5a93e Merge branch 'bugfix/http_client_eagain_v4.2' into 'release/v4.2'
esp_http_client: Fixed handling of EAGAIN return (backport v4.2)

See merge request espressif/esp-idf!15274
2021-09-21 11:50:56 +00:00
Vikram Dattu
718d2e5f19 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:49:11 +05:30
Mahavir Jain
295624d5a3 Merge branch 'fix/esp_mbedtls_write_api_v4.2' into 'release/v4.2'
Fix esp_mbedtls_write API (v4.2)

See merge request espressif/esp-idf!15215
2021-09-20 11:34:23 +00:00
Roland Dobai
4ccfbf5138 Merge branch 'feature/gcov_dump_in_thread_v4.2' into 'release/v4.2'
backport/gcov dump in thread to v4.2

See merge request espressif/esp-idf!15207
2021-09-20 09:37:20 +00:00
Mahavir Jain
0dea76b299 Merge branch 'docs/flash_enc_only_s2_v4.2' into 'release/v4.2'
docs: fix S2 specific flash encryption cmds in ESP32 docs

See merge request espressif/esp-idf!15139
2021-09-16 14:31:38 +00:00
wuzhenghui
1d63988db2 fix s2 efuse err address in block0 2021-09-16 20:16:52 +08:00
Marius Vikhammer
33663461c0 docs: fix S2 specific flash encryption cmds in ESP32 docs
Closes https://github.com/espressif/esp-idf/issues/7537
2021-09-16 19:39:16 +08:00
Aditya Patwardhan
a0b107fe3d Fix esp_mbedtls_write API
Fix esp_wolfssl_write API
Closes https://github.com/espressif/esp-idf/issues/7461
2021-09-16 09:02:34 +05:30
Erhan Kurubas
e4fdf07acb esp_ipc: fix race condition in ipc task 2021-09-15 22:57:02 +03:00
Erhan Kurubas
e662d90e9f gcov: enable single core tests 2021-09-15 22:57:02 +03:00
Erhan Kurubas
dc25973825 ipc: enable ipc task at single core for gcov dump 2021-09-15 22:57:02 +03:00
Erhan Kurubas
5ad1e020ce gcov: add stub table size entry 2021-09-15 22:57:02 +03:00
Erhan Kurubas
886ea8d33b gcov: add gcov callback into the ipc task 2021-09-15 22:57:02 +03:00
Erhan Kurubas
d63ff8cb7a gcov: readme update for ESP32-S2 2021-09-15 22:57:02 +03:00
Erhan Kurubas
67fc5183dc gcov: dump in a special thread 2021-09-15 22:57:02 +03:00
Erhan Kurubas
e43fedb3f4 gcov: added dbg stub capabilites and magic number entry to keep backward compatible 2021-09-15 22:57:02 +03:00
Krzysztof Budzynski
87e9a54f63 Merge branch 'docs/fix_adc_pad_typo_MOSI_typo_and_broken_link_v4.2' into 'release/v4.2'
Fix ADC pad and MOSI typo, update esp32c3 rom elf link (v4.2)

See merge request espressif/esp-idf!15188
2021-09-14 08:46:26 +00:00
Wang Fang
9814e9afd7 docs: Fix ADC pad and MOSI typo, update esp32c3 rom elf link 2021-09-14 11:28:58 +08:00
morris
78ff78c789 Merge branch 'bugfix/config_data_interface_early_v4.2' into 'release/v4.2'
initialize data interface early (v4.2)

See merge request espressif/esp-idf!15090
2021-09-09 08:45:54 +00:00
Roland Dobai
4f319f26f9 Merge branch 'feature/oocd_ver_upgrade_v4.2' into 'release/v4.2'
tools: Updates OpenOCD version to 'v0.10.0-esp32-20210902' (v4.2)

See merge request espressif/esp-idf!15133
2021-09-09 07:40:43 +00:00
ivmarkov
4b8492d46f lwip: Fix ICMP Ping on specific iface
Fix broken parentheses in setsockopt call

Merges https://github.com/espressif/esp-idf/pull/7397
2021-09-09 07:43:00 +02:00
He Yin Ling
4e6c12bf30 Merge branch 'bugfix/switch_icmp_unit_test_from_baidu_to_taobao_v4.2' into 'release/v4.2'
unit_test: increase icmp unit test timeout configuration (v4.2)

See merge request espressif/esp-idf!14937
2021-09-09 01:38:00 +00:00
Roland Dobai
ae21087d7e CI: Fix idf_tools.py tests with the updated openocd version 2021-09-08 21:01:22 +03:00
Roland Dobai
35bdf4bee8 CI: Check the number of detected cores of apptrace 2021-09-08 21:00:14 +03:00
Alexey Gerenkov
046626de9a tools: Updates OpenOCD version to 'v0.10.0-esp32-20210902' 2021-09-08 20:56:25 +03:00
Roland Dobai
6f4d973f13 Merge branch 'bugfix/idf_size_wrong_memory_calculations_v4.2' into 'release/v4.2'
Tools: Fix memory calculations of idf_size.py (v4.2)

See merge request espressif/esp-idf!14934
2021-09-08 11:51:17 +00:00
Roland Dobai
d221750223 Merge branch 'feature/installing_tools_for_IDF_TARGET_v4.2' into 'release/v4.2'
tools: Installing tools for given IDF_TARGET (v4.2)

See merge request espressif/esp-idf!14709
2021-09-08 10:31:39 +00:00
Wang Meng Yang
a5984fd939 Merge branch 'bugfix/controller_hci_uart_sdkconfig_v4.2' into 'release/v4.2'
controller_hci_uart: fixed the sdkconfig.defaults in the example(backport v4.2)

See merge request espressif/esp-idf!14808
2021-09-08 06:05:52 +00:00
Wang Meng Yang
f9632200fb Merge branch 'bugfix/hf_disc_acl_no_disc_v4.2' into 'release/v4.2'
bugfix/acl can't disconnect when hfp_client disconnect [release/v4.2]

See merge request espressif/esp-idf!15057
2021-09-07 10:13:57 +00:00
Mahavir Jain
afc74ae36a Merge branch 'bugfix/fix_ws_handle_big_messages_v4.2' into 'release/v4.2'
esp_http_server: Fix ws server handle length over 1440(MTU) messages incorrectly(backport v4.2)

See merge request espressif/esp-idf!15014
2021-09-07 08:21:40 +00:00
Mahavir Jain
3ca7a2220f Merge branch 'feature/update_expat_v4.2' into 'release/v4.2'
expat: Update library from 2.2.9 to 2.4.1(backport v4.2)

See merge request espressif/esp-idf!15068
2021-09-07 08:18:13 +00:00
Liu Han
be4b8e547a expat: Update library from 2.2.9 to 2.4.1 2021-09-06 19:59:55 +08:00
morris
2e0f907656 eth: dont warn nego timeout if link is down 2021-09-06 18:45:15 +08:00
morris
83018bf05f emac: configure data interface early 2021-09-06 18:44:37 +08:00
Wang Meng Yang
d933aba6a1 Merge branch 'bugfix/bt_spp_timer_collision_v4.2' into 'release/v4.2'
fix timer collision in role switch(v4.2)

See merge request espressif/esp-idf!14819
2021-09-06 08:23:26 +00:00
Mahavir Jain
8dcf216034 Merge branch 'feature/update_cjson_submodule_v4.2' into 'release/v4.2'
cJSON: Update submodule to v1.7.15 (v4.2)

See merge request espressif/esp-idf!15075
2021-09-06 06:37:52 +00:00
Omar Chebib
f65845ef51 Merge branch 'bugfix/add_critical_section_in_uart_driver_v4.2' into 'release/v4.2'
UART: add missing critical section wrappers around rx_buffered_len (backport v4.2)

See merge request espressif/esp-idf!14775
2021-09-06 02:26:17 +00:00
jincheng
6da584270c fix timer collision in role switch
Closes https://github.com/espressif/esp-idf/issues/7203
2021-09-06 10:15:10 +08:00
Shubham Kulkarni
87a4f82d73 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-09-06 07:42:32 +05:30
Omar Chebib
60ce887308 uart: cleaner way of handling error in a critical section
Some critical sections have also been added, making the code more
symetric accross the similar functions.

Closes https://github.com/espressif/esp-idf/pull/6396
2021-09-03 15:20:33 +08:00
Luca Burelli
3691fb9f48 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-03 15:20:33 +08:00
jincheng
1dcde9c74f fix acl can not disconnect when hf_client disconnect 2021-09-03 10:58:55 +08:00
Wang Meng Yang
b132b61181 Merge branch 'bugfix/btdm_fix_some_Document_Description_Error_v4.2' into 'release/v4.2'
component/bt: fix some ble document description error(backport v4.2)

See merge request espressif/esp-idf!14824
2021-09-03 01:40:16 +00:00
simon.chupin
8de953e7b9 Tools: Fix memory calculations of idf_size.py 2021-09-01 16:33:42 +02:00
XieWenxiang
7ea602838f component/bt: fix some ble document description error 2021-09-01 20:44:20 +08:00
Kapil Gupta
80a4d20462 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:16:31 +08:00
Rahul Tank
c7320b2d1d NimBLE: Check stack status before executing stack command 2021-08-31 18:30:06 +05:30
Alberto García Hierro
e2c35ca35b 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:33:13 +08:00
yuanjm
420aedbe3d 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:23:10 +08:00
yuanjm
f6d2932953 Revert "Merge branch 'bugfix/fix_ws_handle_big_messages_error_v4.2' into 'release/v4.2'"
This reverts commit 5ca91eb54e, reversing
changes made to 192d42c8b8.
2021-08-31 14:12:24 +08:00
Michael (XIAO Xufeng)
cf457bce0d 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-08-27 18:32:33 +02:00
Ondrej Kosta
436517fb7f Merge branch 'docfix/eth_events_4.2' into 'release/v4.2'
Added warning when to init user Eth handlers (release/v4.2)

See merge request espressif/esp-idf!14952
2021-08-27 09:15:40 +00:00
Mahavir Jain
df213946c6 Merge branch 'fixes/secure_boot_v4.2' into 'release/v4.2'
secure_boot/esp32s2: Disable read protecting of efuses (v4.2)

See merge request espressif/esp-idf!14961
2021-08-26 10:11:26 +00:00
Sachin Parekh
527e5abae0 secure_boot/esp32s2: Disable read protecting of efuses
When secure boot is enabled, disable the ability to read protect
efuses that contain the digest.
2021-08-26 12:05:39 +05:30
Ondrej Kosta
933567d440 Added warning when to init user Eth handlers 2021-08-25 11:27:05 +02:00
morris
bfa51a9a68 unit_test: switch icmp test server to taobao 2021-08-25 08:34:14 +02:00
Zim Kalinowski
e5da87933c Merge branch 'bugfix/fix_deep_sleep_miss_bug_mr_v4.2' into 'release/v4.2'
Fix controller may miss the sleep time

See merge request espressif/esp-idf!14738
2021-08-24 08:01:10 +00:00
David Čermák
6bb35ddf85 Merge branch 'bugfix/fix_ping_sock_return_error_v4.2' into 'release/v4.2'
ping_sock: Fix esp_ping_new_session may return ESP_OK when the error occured(backport v4.2)

See merge request espressif/esp-idf!14846
2021-08-23 06:30:54 +00:00
Wang Meng Yang
94cdecde30 Merge branch 'component_bt/add_spp_faq_v4.2' into 'release/v4.2'
Component_bt/Add FAQ in SPP Demo README[backport v4.2]

See merge request espressif/esp-idf!14797
2021-08-23 05:16:29 +00:00
Wang Ning
78a08714ba Merge branch 'docs/add_ESP32-S2-DevKitC-1_user_guide_backport_v4.2' into 'release/v4.2'
Docs: Add ESP32-S2-DevKitC-1 user guide (backport v4.2)

See merge request espressif/esp-idf!14876
2021-08-20 08:27:35 +00:00
Wang Ning
d81bd941ff docs/add_esp32-s2-devkitc-1_user_guide 2021-08-20 14:16:31 +08:00
Jiang Jiang Jian
7c3acadabe Merge branch 'bugfix/spp_memory_leak_v4.2' into 'release/v4.2'
Fix spp memory leak(v4.2)

See merge request espressif/esp-idf!14861
2021-08-20 02:50:19 +00:00
xiongweichao
5abc5f6748 components/bt: fix spp memory leak
Closes https://github.com/espressif/esp-idf/issues/7238
2021-08-19 14:35:53 +08:00
Zim Kalinowski
f075275cd1 Merge branch 'feature/update_efuses_for_esp32s2_v4.2' into 'release/v4.2'
efuse(esp32s2): Added flash_ver, psram_ver, pkg_ver efuses (v4.2)

See merge request espressif/esp-idf!14771
2021-08-19 06:28:50 +00:00
Mahavir Jain
48c9f47247 Merge branch 'fix/warning_in_wifi_prov_mgr_v4.2' into 'release/v4.2'
provisioning: fix wifi warning in wifi_prov_mgr application (v4.2)

See merge request espressif/esp-idf!14764
2021-08-19 04:09:18 +00:00
David Čermák
16be7d056d Merge branch 'bugfix/cmake_compiler_warn_write_string_v4.2' into 'release/v4.2'
Build: Fix CMake to pass -Wwrite-string compiler flag if enabled (v4.2)

See merge request espressif/esp-idf!14427
2021-08-18 16:02:28 +00:00
Island
2b2c1f5e65 Merge branch 'bugfix/ble_mesh_cve_recommendation_v4.2' into 'release/v4.2'
ble_mesh: Update the SIG recommendations for CVE issues (v4.2)

See merge request espressif/esp-idf!14842
2021-08-18 12:41:17 +00:00
David Cermak
1c59050209 panic/memprot: Fix minor const string correction on panic print 2021-08-18 19:29:32 +08:00
David Cermak
9b23491339 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:32 +08:00
David Cermak
fcf1419626 Build: Fix CMake to pass -Wwrite-string compiler flag if enabled 2021-08-18 19:29:32 +08:00
Harshit Malpani
d96dd2c002 provisioning: fix wifi warning in wifi_prov_mgr application
Scan configuration parameters should not modify in co-existence mode.
2021-08-18 18:34:46 +08:00
Zim Kalinowski
e3df8293a9 Merge branch 'bugfix/remove_bt_get_mac_v4.2' into 'release/v4.2'
bt: Remove unused function esp_bt_get_mac. (v4.2)

See merge request espressif/esp-idf!14836
2021-08-18 05:05:07 +00:00
Mahavir Jain
e821df501e Merge branch 'bugfix/libsodium_build_with_gnu_make_v4.2' into 'release/v4.2'
libsodium: fix build issues with GNU Make (v4.2)

See merge request espressif/esp-idf!14759
2021-08-18 04:38:31 +00:00
yuanjm
04be80124c 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:53:09 +08:00
lly
06196f347a ble_mesh: Update the SIG recommendations for CVE issues 2021-08-18 10:58:18 +08:00
He Yin Ling
fce11704f0 Merge branch 'test/update_ble_mesh_console_files_for4.2' into 'release/v4.2'
test: fix ble mesh send problem (v4.2)

See merge request espressif/esp-idf!14274
2021-08-18 02:20:40 +00:00
Chinmay Chhajed
afe3f26fca bt: Remove unused function esp_bt_get_mac. 2021-08-17 18:53:05 +05:30
liqigan
cda9fc98e7 add FAQ in SPP demo README 2021-08-17 15:17:31 +08:00
Mahavir Jain
1472bf8780 libsodium: fix source directory names to address build issues with Make 2021-08-17 11:10:34 +05:30
Wang Meng Yang
bb0dbab859 Merge branch 'bugfix/btdm_auto_update_PPCP_attribute_value_v4.2' into 'release/v4.2'
component/bt: fix bluedroid host auto update PPCP attribute value(backport v4.2)

See merge request espressif/esp-idf!14749
2021-08-17 02:08:01 +00:00
Kelvie Wong
ace5ba77f4 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:27:35 +02:00
Marek Fiala
8b31c7d576 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:27:35 +02:00
wangmengyang
cbfbc705eb controller_hci_uart: fixed the sdkconfig.defaults in the example 2021-08-16 16:56:10 +08:00
Anton Maklakov
cb9391a1cc Merge branch 'ci/change_perf_key_v4.2' into 'release/v4.2'
ci: update performance test key to db compatible format (v4.2)

See merge request espressif/esp-idf!14655
2021-08-16 06:13:21 +00:00
KonstantinKondrashov
6f0ad5662a efuse(esp32s2): Added flash_ver, psram_ver, pkg_ver efuses 2021-08-12 18:45:45 +05:00
XieWenxiang
921ec124ee component/bt: fix bluedroid host auto update PPCP attribute value 2021-08-11 18:04:53 +08:00
Yang Zhao
33f2bcec4c 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:23:16 +08:00
Michael (XIAO Xufeng)
de7fd4e93e Merge branch 'bugfix/spi_master_crash_cache_disabled_v4.2' into 'release/v4.2'
spi_master: fix the crash when using interrupt mode when cache is disabled (v4.2)

See merge request espressif/esp-idf!14682
2021-08-10 02:39:39 +00:00
Zim Kalinowski
059a3fa1be Merge branch 'feature/skip_known_failure_cases_v4.2' into 'release/v4.2'
CI: Ignore Known Failure Cases Result (v4.2)

See merge request espressif/esp-idf!14649
2021-08-10 02:23:31 +00:00
Fu Hanxi
7089f62dab feat(tiny_test_fw): ignore known failure cases result
py
2021-08-10 10:23:26 +08:00
Mahavir Jain
e1d33a7fa1 Merge branch 'bugfix/xtensa_extra_info_register_values_v4.2' into 'release/v4.2'
espcoredump.py: Parse EPS and EPC register values using register index (v4.2)

See merge request espressif/esp-idf!14565
2021-08-06 05:10:33 +00:00
Michael (XIAO Xufeng)
d91d6945d7 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:22:15 +08:00
Yuan Hong Hui
e1af4a398b update ble mesh console files 2021-08-05 17:52:28 +08:00
Zim Kalinowski
45330303d6 Merge branch 'bugfix/freertos_ut_suspend_v4.2' into 'release/v4.2'
freertos: Increases delta for UT - Test suspend-resume CPU. The number of... (v4.2)

See merge request espressif/esp-idf!14631
2021-08-05 05:13:24 +00:00
Fu Hanxi
6b95f3bddd ci: update performance test key to db compatible format 2021-08-04 12:28:42 +08:00
Zim Kalinowski
57eeeef433 Merge branch 'feature/change_factory_reset_pin_range_v4.2' into 'release/v4.2'
bootloader: Change range of the factory reset pin in Kconfig for ESP32-S2 (v4.2)

See merge request espressif/esp-idf!14638
2021-08-03 14:24:14 +00:00
KonstantinKondrashov
5893641482 freertos: Increases delta for UT - Test suspend-resume CPU. The number of tick_hook should be the same for both CPUs 2021-08-03 16:07:03 +05:00
KonstantinKondrashov
f5897efa4f bootloader: Change range of the factory reset pin in Kconfig
Closes: https://github.com/espressif/esp-idf/issues/5489
2021-08-03 14:40:29 +05:00
Zim Kalinowski
a9a917b8d7 Merge branch 'doc/fix_secure_boot_v4.2' into 'release/v4.2'
doc/secure_boot_v2: Fix the steps mentioned for enabling secure boot (v4.2)

See merge request espressif/esp-idf!14589
2021-08-03 07:47:09 +00:00
Zim Kalinowski
f9af4a66f0 Merge branch 'bugfix/uart_sw_sw_flow_error_typo_v4.2' into 'release/v4.2'
uart: fix typo in error message (v4.2)

See merge request espressif/esp-idf!14614
2021-08-03 02:42:46 +00:00
Marius Vikhammer
2f02863fff uart: fix typo in error message
Closes https://github.com/espressif/esp-idf/issues/7360
2021-08-03 09:28:39 +08:00
Jiang Jiang Jian
f4a2c5b520 Merge branch 'mesh/bugfix_fix_esp_mesh_send_block_issue_v4.2' into 'release/v4.2'
mesh/ps: esp_mesh_send is blocked in nodes(layer>=3), when a FIXED-ROOT root is duty master(backport_v4.2)

See merge request espressif/esp-idf!14086
2021-07-31 02:52:26 +00:00
Sachin Parekh
8a516aadae doc/secure_boot_v2: Fix the steps mentioned for enabling secure boot 2021-07-30 19:50:37 +05:30
David Čermák
4dc431b87b Merge branch 'bugfix/fix_eth2ap_example_crash_v4.2' into 'release/v4.2'
eth2ap: Fix eth2ap example crash issue (backport v4.2)

See merge request espressif/esp-idf!14561
2021-07-30 05:14:25 +00:00
Shubham Patil
c06d8f8521 espcoredump.py: Parse EPS and EPC register values using register index 2021-07-29 10:46:02 +05:30
yuanjm
d0d7fbf6b1 eth2ap: Fix eth2ap example crash issue
Closes https://github.com/espressif/esp-idf/issues/7260
2021-07-29 11:12:40 +08:00
aleks
68e7ecec67 freemodbus: add affinity option for modbus stack tasks 2021-07-28 08:46:52 +02:00
Zim Kalinowski
764f0db002 Merge branch 'bugfix/freemodbus_change_max_task_prio_v42' into 'release/v4.2'
Bugfix/freemodbus change max task prio (backport v4.2)

See merge request espressif/esp-idf!13731
2021-07-27 21:19:14 +00:00
Vikram
2b42d78a3f Merge branch 'bugfix/smtp_client_attachment_newline_v4.2' into 'release/v4.2'
Add newline separator to fix wrong attachment sent (v4.2)

See merge request espressif/esp-idf!13729
2021-07-27 16:12:59 +00:00
Zim Kalinowski
87e9908506 Merge branch 'bugfix/fix_supplicant_log_v4.2' into 'release/v4.2'
wpa_supplicant: Fix compilation when debug prints are enabled

See merge request espressif/esp-idf!14227
2021-07-27 12:04:50 +00:00
Zim Kalinowski
bc8d2ebcbf Merge branch 'bugfix/wps_wfa_cert_fixes_v4.2' into 'release/v4.2'
wpa_supplicant: Add WPS strict in config option(backport v4.2)

See merge request espressif/esp-idf!14230
2021-07-27 10:44:12 +00:00
Zim Kalinowski
4a12179e0c Merge branch 'bugfix/ttfw_fix_flush_index_error_v4.2' into 'release/v4.2'
test: TTFW fix flush index error (v4.2)

See merge request espressif/esp-idf!14261
2021-07-27 10:44:00 +00:00
Anton Maklakov
def7fd7611 Merge branch 'feature/idf_tools_darwin_arm64_v4.2' into 'release/v4.2'
tools: idf_tools.py: allow macOS x86_64 tools to be installed on arm64 (v4.2)

See merge request espressif/esp-idf!14072
2021-07-27 08:16:21 +00:00
Michael (XIAO Xufeng)
b2be91d98b Merge branch 'feature/regi2c_add_lock_v4.2' into 'release/v4.2'
regi2c: add a spinlock for accessing (reg)I2C devices (backport v4.2)

See merge request espressif/esp-idf!13713
2021-07-27 07:32:35 +00:00
David Čermák
0d0d31bcf3 Merge branch 'bugfix/esp_netif_dhcps_state_v4.2' into 'release/v4.2'
esp_netif: Fix dhcps state transitions (v4.2)

See merge request espressif/esp-idf!14424
2021-07-27 07:23:45 +00:00
Krzysztof Budzynski
325eee68e4 Merge branch 'enhance/update-vscode-setup-docs-v4.2' into 'release/v4.2'
docs: Fix vscode extension setup links (backport v4.2)

See merge request espressif/esp-idf!13323
2021-07-27 03:53:42 +00:00
Brian Alberto Ignacio Reyes
728f3eab6c docs: Fix vscode extension setup links (backport v4.2) 2021-07-27 11:53:38 +08:00
Zim Kalinowski
60e4bfae90 Merge branch 'bugfix/fatfs_alloc_extram_first_v4.2' into 'release/v4.2'
fatfs: fix SPIRAM allocation not used due to Kconfig option name error (v4.2)

See merge request espressif/esp-idf!14049
2021-07-26 07:59:16 +00:00
Zim Kalinowski
5c82ebce35 Merge branch 'bugfix/fix_esp32s2_deep_sleep_timer_wake_up_fail_backport_v4.2' into 'release/v4.2'
rtc: fix esp32s2 fall into sleep forever when deep-sleep time is set to 0(backport v4.2)

See merge request espressif/esp-idf!13562
2021-07-26 07:39:16 +00:00
Zim Kalinowski
6fba03f681 Merge branch 'fix/memory_leaks_identified_by_cppcheck_v4.2' into 'release/v4.2'
Fix/memory leaks identified by cppcheck (v4.2)

See merge request espressif/esp-idf!14502
2021-07-26 06:43:27 +00:00
Aditya Patwardhan
e5b4d5f348 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-26 14:43:21 +08:00
Ivan Grokhotkov
f39dc35d92 tools: idf_tools.py: allow macOS x86_64 tools to be installed on arm64
Until arm64 tool binaries are available, we can run existing x86_64
ones under emulation.

Suggested in https://github.com/espressif/esp-idf/issues/6113.
2021-07-26 14:35:47 +08:00
Zim Kalinowski
e9198247a0 Merge branch 'bugfix/ci_fix_test_build_system_cmake_v4.2' into 'release/v4.2'
ci: Fix concurrency issues for macOS build system tests (v4.2)

See merge request espressif/esp-idf!14400
2021-07-26 06:30:25 +00:00
shenjun
416dc98ed8 mesh/ps: esp_mesh_send is blocked in nodes(layer>=3), when a FIXED-ROOT root is duty master 2021-07-26 14:14:08 +08:00
He Yin Ling
15b8981f48 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-26 11:30:35 +08:00
Vikram Dattu
458dbaf0f1 Fixed content type of attachment
Signed-off-by: Vikram Dattu <vikram.dattu@espressif.com>
2021-07-26 10:15:47 +08:00
Vikram Dattu
81de14b505 Add newline separator to fix wrong attachment sent
Issue:

Missing newline between header and attachment

Issue seen with email clients viz., AppleMail and YahooMail. Attachment is not renderable.
Some clients like Google mail, Samsung mail tolerate the issue.

Fix:
Added newline between header and attachment.

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

Signed-off-by: Vikram Dattu <vikram.dattu@espressif.com>
2021-07-26 10:15:47 +08:00
Zim Kalinowski
0832580661 Merge branch 'bugfix/spp_connect_20_fail_v4.2' into 'release/v4.2'
component_bt: fix spp acceptor deadlock

See merge request espressif/esp-idf!14106
2021-07-26 01:43:06 +00:00
Ivan Grokhotkov
cc366cc3c7 fatfs: fix SPIRAM allocation not used due to Kconfig option name error
Closes https://github.com/espressif/esp-idf/issues/5756
2021-07-26 09:40:39 +08:00
aditi_lonkar
6f016def84 wpa_supplicant: Fix compilation when debug prints are enabled. 2021-07-26 09:38:21 +08:00
aditi_lonkar
71b9121c7d 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 declare esp device as single band mobile device otherwise
WFA sniffer was not able to identify it in the certification setup.
2021-07-26 09:37:28 +08:00
David Cermak
2b65b82bd6 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-26 09:33:32 +08:00
Sergei Silnov
d18793f695 ci: Fix concurrency issues for macos buildsystem tests 2021-07-26 09:07:17 +08:00
Zim Kalinowski
ac5443b68a Merge branch 'doc/power_management_esp32s2_v4.2' into 'release/v4.2'
docs: describe power management logic for ESP32-S2, fix translation (v4.2)

See merge request espressif/esp-idf!14048
2021-07-26 00:49:30 +00:00
aleks
ea101ecb38 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-26 08:46:25 +08:00
Omar Chebib
d7687ce6fa 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-07-26 06:46:21 +08:00
David Čermák
ec196ae74b Merge branch 'bugfix/ci_move_udp_socket_tests_to_eth_runners_v4.2' into 'release/v4.2'
CI: Adjust UDP socket tests to be more reliable (v4.2)

See merge request espressif/esp-idf!14421
2021-07-23 15:01:46 +00:00
Krzysztof Budzynski
473194039d Merge branch 'docs/fix_UART_default_pin_error_and_provide_a_link_to_ESP_PROG_v4.2' into 'release/v4.2'
docs: fix uart default pin error and provide more information about ESP-Prog board (v4.2)

See merge request espressif/esp-idf!13969
2021-07-23 11:18:55 +00:00
Wang Meng Yang
12ce70a583 Merge branch 'bugfix/a2dp_deint_crash_v4.2' into 'release/v4.2'
component_bt: fix a2dp deinit crash(v4.2)

See merge request espressif/esp-idf!14418
2021-07-23 07:26:22 +00:00
Jakob Hasse
7f2da36c33 Merge branch 'bugfix/setjmp_longjmp_4.2' into 'release/v4.2'
[system]: Made longjmp save for context switch (backport v4.2)

See merge request espressif/esp-idf!13501
2021-07-23 03:52:55 +00:00
Zim Kalinowski
9e9efc4d92 Merge branch 'bugfix/fix_idf_monitor_unicode_path_crash_v4.2' into 'release/v4.2'
tools: handle exception in case of logging Unicode characters (v4.2)

See merge request espressif/esp-idf!13042
2021-07-23 01:09:44 +00:00
Roland Dobai
ea2b6898fb Merge branch 'feature/gcov_extest_improvements_v4.2' into 'release/v4.2'
Follow-up improvements for the gcov example test (v4.2)

See merge request espressif/esp-idf!14463
2021-07-22 19:11:52 +00:00
Roland Dobai
b717a0d3e1 Follow-up improvements for the gcov example test 2021-07-22 15:23:27 +02:00
Roland Dobai
c0ad291dc4 Merge branch 'ci/rename_test_log_path_v4.2' into 'release/v4.2'
CI: rename log path of IT jobs (v4.2)

See merge request espressif/esp-idf!14453
2021-07-22 13:21:14 +00:00
Zim Kalinowski
1bd6c102a4 Merge branch 'docs/fix_readme_links_v4.2' into 'release/v4.2'
docs: fixed dead readme links (v4.2)

See merge request espressif/esp-idf!14465
2021-07-22 02:44:44 +00:00
Marius Vikhammer
bcb1086410 docs: fixed dead readme link 2021-07-21 17:35:47 +08:00
Zim Kalinowski
4722c36926 Merge branch 'feature/upgrade_mbedtls_to_v4.2' into 'release/v4.2'
mbedtls: upgrade to release v2.16.11 (v4.2)

See merge request espressif/esp-idf!14438
2021-07-21 06:55:14 +00:00
Mahavir Jain
754e742344 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-21 14:55:09 +08:00
Zim Kalinowski
39a8dc30ea Merge branch 'bugfix/esp_event_any_id_unregister_4.2' into 'release/v4.2'
ESP Event: fix unregister documentation (backport 4.2)

See merge request espressif/esp-idf!14436
2021-07-21 04:07:34 +00:00
Zim Kalinowski
9f3cf98d4e Merge branch 'bugfix/fix_scan_timeout_mr_4.2' into 'release/v4.2'
Fix the scan timeout report

See merge request espressif/esp-idf!14446
2021-07-21 04:00:40 +00:00
He Yin Ling
59d0da0b33 CI: rename log path of IT jobs 2021-07-21 10:24:52 +08:00
Jakob Hasse
aabdb2c7a1 [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-07-21 09:48:48 +08:00
Yang Zhao
0fe0bea65a 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:37:08 +08:00
Shubham Kulkarni
88b3e0d8d8 Merge branch 'bugfix/fix_truncated_headers_for_esp_http_client_v4.2' into 'release/v4.2'
esp_http_client: Fix header truncated when responded header length over buffer_size (backport v4.2)

See merge request espressif/esp-idf!14384
2021-07-20 12:17:11 +00:00
Yuan Jian Min
5ca91eb54e Merge branch 'bugfix/fix_ws_handle_big_messages_error_v4.2' into 'release/v4.2'
esp_http_server: Fix ws server handle length over 1440(MTU) messages incorrectly(backport v4.2).

See merge request espressif/esp-idf!14345
2021-07-20 11:55:08 +00:00
Hrishikesh Dhayagude
192d42c8b8 Merge branch 'feature/protocomm_mfg_data_v4.2' into 'release/v4.2'
Provisioning BLE: Add API to set manufacturer data in advertisement (scan response) packets (v4.2)

See merge request espressif/esp-idf!14367
2021-07-20 10:50:21 +00:00
Jakob Hasse
d3ffdc79fd [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-07-20 15:47:37 +08:00
Zim Kalinowski
1b87cfc565 Merge branch 'bugfix/esp32s2_disable_bss_extram_v4.2' into 'release/v4.2'
esp32s2: disable bss extram option, clean up spiram init code a bit (v4.2)

See merge request espressif/esp-idf!13735
2021-07-20 07:24:38 +00:00
Angus Gratton
1d64638333 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-20 15:24:32 +08:00
yuanjm
fc937e257b esp_http_server: Fix ws server handle length over 1440(MTU) messages incorrectly.
Closes https://github.com/espressif/esp-idf/issues/7202
2021-07-20 14:27:10 +08:00
Krzysztof Budzynski
c106151cc6 Merge branch 'docs/update_docs_for_doc_751_v4.2' into 'release/v4.2'
docs: update the documents based on customer feedbacks (v4.2)

See merge request espressif/esp-idf!13959
2021-07-20 06:25:52 +00:00
Darian
86f808ef2b Merge branch 'bugfix/twai_low_speed_bit_rates_v4.2' into 'release/v4.2'
TWAI: Fix incorrect configuration initializers for low speed bit rates (backport v4.2)

See merge request espressif/esp-idf!14413
2021-07-20 05:12:59 +00:00
Zim Kalinowski
9896fc0aef Merge branch 'bugfix/otatool_imported_as_lib_v4.2' into 'release/v4.2'
otatool: Fix a crash when imported as external python lib (v4.2)

See merge request espressif/esp-idf!13667
2021-07-20 03:25:20 +00:00
Wang Fang
8eb2ec4fb5 docs: update the documents based on customer feedbacks 2021-07-20 11:07:50 +08:00
Jakob Hasse
2d83369184 Merge branch 'bugfix/missing_extern_c_4.2' into 'release/v4.2'
[test_utils]: added extern C decl to ccomp (backport 4.2)

See merge request espressif/esp-idf!14327
2021-07-20 02:33:26 +00:00
Zim Kalinowski
90ff580de5 Merge branch 'bugfix/read_ota_partition_required_output_arg_v4.2' into 'release/v4.2'
otatool: Fixes read_ota_partition cmd, required output arg (v4.2)

See merge request espressif/esp-idf!13673
2021-07-19 14:01:16 +00:00
David Cermak
07596559dd CI/socket examples: Add UDP operation retries, wait until server is up 2021-07-19 14:58:20 +02:00
xiongweichao
f83bacd2b5 Not initialized or in the process of de-initialization, calling API will return ERR 2021-07-19 20:13:32 +08:00
xiongweichao
3ba13749d3 fix a2dp deinit crash 2021-07-19 20:12:57 +08:00
Darian Leung
7ca2688378 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:33:58 +08:00
Wang Meng Yang
1e2d7ea792 Merge branch 'bugfix/SCO_connect_fail_after_peer_not_accept_sniff_v4.2' into 'release/v4.2'
bugfix/unable to initiate SCO connection when peer device not accept sniff mode (v4.2)

See merge request espressif/esp-idf!14394
2021-07-19 07:24:58 +00:00
morris
a45146c87d Merge branch 'bugfix/delete_i2c_cmd_mux_semaphore_more_cleanly_v4.2' into 'release/v4.2'
dreiver/i2c: delete i2c cmd mux semaphore more cleanly (backport 4.2)

See merge request espressif/esp-idf!13401
2021-07-19 04:54:44 +00:00
KonstantinKondrashov
dd06800d7b otatool: Fix a crash when imported as external python lib
Closes: https://github.com/espressif/esp-idf/issues/6733
2021-07-19 12:41:17 +08:00
KonstantinKondrashov
12f666f303 otatool: Fixes read_ota_partition cmd, required output arg
Closes: https://github.com/espressif/esp-idf/issues/6559
2021-07-19 12:40:32 +08:00
Zim Kalinowski
469be5f7be Merge branch 'bugfix/newlib_FD_ISSET_v4.2' into 'release/v4.2'
newlib: Fix a case in FD_ISSET macro when n==-1 (v4.2)

See merge request espressif/esp-idf!13691
2021-07-19 04:32:55 +00:00
Jakob Hasse
9ba590cd47 [test_utils]: added extern C decl to ccomp
Closes https://github.com/espressif/esp-idf/issues/7121
2021-07-19 10:52:32 +08:00
wangmengyang
036a045b86 component/bt: fix some bugs in bluetooth controller(2fcbe897)
1. Fixed the crash when using scan parameter: window = 4 slots, interval = 5 slots
2. Fixed BLE ACL tx flush issue during reset
3. Added remove sniff when peer not accepted sniff mode
2021-07-19 08:12:48 +08:00
Mahavir Jain
5bb0706083 Merge branch 'bugfix/update_ota_cert_v4.2' into 'release/v4.2'
OTA examples: Update server certificate (v4.2)

See merge request espressif/esp-idf!14355
2021-07-18 14:17:50 +00:00
laokaiyao
8872c6a3ac driver/i2c: add notes to i2c deleteing function 2021-07-16 14:26:48 +08:00
Melissa LeBlanc-Williams
59d08d4467 dreiver/i2c: delete i2c cmd_mux semaphore more cleanly
Merges https://github.com/espressif/esp-idf/pull/6847
2021-07-16 14:26:48 +08:00
Zim Kalinowski
4663d3ec11 Merge branch 'docs/spi_max_transfer_sz_limit_v4.2' into 'release/v4.2'
spi_docs: Fixed the default value of max_transfer_sz_limit (backport v4.2)

See merge request espressif/esp-idf!14253
2021-07-16 06:24:15 +00:00
Zim Kalinowski
77b12f0659 Merge branch 'nimble/fix_broadcaster_role_v4.2' into 'release/v4.2'
NimBLE: Fix build error for broadcaster role and bug in peer_dev_record (v4.2)

See merge request espressif/esp-idf!14301
2021-07-16 06:18:18 +00:00
Shubham Kulkarni
e8a09a0135 OTA examples: Updated server certificate 2021-07-16 13:47:46 +08:00
yuanjm
c764c59893 esp_http_client: Optimize code structure 2021-07-15 16:26:43 +08:00
Clickau
7188eaaebf 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:26:39 +08:00
KonstantinKondrashov
1214dcea3a newlib: Fix a case in FD_ISSET macro when n==-1 2021-07-15 11:18:45 +08:00
Prasad Alatkar
bcdedf5501 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:25:20 +05:30
Chen Yi Qun
20e41d6265 fix esp32s2 fall into sleep forever when deep-sleep time is set to 0(backport v4.2) 2021-07-14 17:46:20 +08:00
Angus Gratton
21f4f460ca Merge branch 'bugfix/panic_handler_disable_wdts_early_v4.2' into 'release/v4.2'
esp_system: Reconfigure the WDTs at the start of the panic handler (v4.2)

See merge request espressif/esp-idf!14231
2021-07-14 08:47:15 +00:00
fuzhibo
0679862de2 Driver(Touch sensor): fix the touch sensor wait cycle after wakeup from sleep 2021-07-14 14:47:07 +08:00
Roland Dobai
68b6bc661b Merge branch 'bugfix/idf_tools_not_found_issue_v4.2' into 'release/v4.2'
tools: Catch OSError which is raised when the tool is not available (v4.2)

See merge request espressif/esp-idf!14134
2021-07-13 15:42:46 +00:00
Prasad Alatkar
b50711eec1 NimBLE: Fix build error for broadcaster role and bug in peer_dev_record (v4.2)
* Fix bug in nvs deletion of `ble_dev_record`.
* Update NimBLE submodule to nimble-1.2.0-idf.
2021-07-13 13:58:06 +08:00
Roland Dobai
4e0b8678e4 Merge branch 'bugfix/broken_virtualenv_v4.2' into 'release/v4.2'
tools: Reinstall virtualenv if it is broken (v4.2)

See merge request espressif/esp-idf!12952
2021-07-12 15:28:50 +00:00
Mahavir Jain
b3e2c714a7 Merge branch 'bugfix/pthread_join_debug_log_v4.2' into 'release/v4.2'
pthread: Fix possible deadlock when using pthread_join() and Debug log level (v4.2)

See merge request espressif/esp-idf!13777
2021-07-12 11:34:53 +00:00
Zim Kalinowski
96406ea6a5 Merge branch 'bugfix/prefetch_invalid_v4.2' into 'release/v4.2'
soc: add dummy bytes to ensure instr prefetch always valid (v4.2)

See merge request espressif/esp-idf!12994
2021-07-09 08:09:48 +00:00
Anton Maklakov
0f095e4732 Merge branch 'bugfix/cmake_export_ver_during_reqs_expansion_v4.2' into 'release/v4.2'
cmake: set IDF_VERSION_* variables at requirement expansion stage (v4.2)

See merge request espressif/esp-idf!14044
2021-07-09 05:41:11 +00:00
morris
49d1dc0fd3 Merge branch 'bugfix/timer_example_crashed_not_calling_timer_group_set_alarm_value_in_isr_v4.2' into 'release/v4.2'
driver/timer: fixed auto reload problem in default isr callback  (backport to 4.2)

See merge request espressif/esp-idf!13530
2021-07-06 12:44:07 +00:00
Angus Gratton
d685449314 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 11:55:08 +10:00
Michael (XIAO Xufeng)
45984aceb3 spi_docs: Fixed the default value of max_transfer_sz.
(cherry picked from commit e89fabb963)
2021-07-05 14:05:04 +08:00
Michael (XIAO Xufeng)
1fe9b428f5 Merge branch 'bugfix/fix_bit_error_in_ledc_struct_backport_v4.2' into 'release/v4.2'
LEDC: fix bit error in ledc_struct.h(backport v4.2)

See merge request espressif/esp-idf!14163
2021-07-04 07:49:23 +00:00
Wang Meng Yang
884b8d319f Merge branch 'bugfix/attack_crash_for_release_v4.2' into 'release/v4.2'
bugfix/fix crash when lmp flooding

See merge request espressif/esp-idf!13825
2021-07-02 13:05:03 +00:00
Michael (XIAO Xufeng)
5684196707 Merge branch 'bugfix/i2s_apll_disable_issue_v4.2' into 'release/v4.2'
i2s: fix driver uninstall issue (backport v4.2)

See merge request espressif/esp-idf!14000
2021-07-02 10:55:47 +00:00
liaowenhao
65e19c0d1a bugfix/fix crash when lmp flooding 2021-07-01 20:07:45 +08:00
Krzysztof Budzynski
8ee8dcb3c5 Merge branch 'docs/windows_installer_2.9_backport_4.2' into 'release/v4.2'
docs: update Windows Tools 2.9 installation - backport 4.2

See merge request espressif/esp-idf!14190
2021-07-01 11:08:50 +00:00
Juraj Michálek
2bea91d089 docs: update Windows Tools 2.9 installation 2021-06-30 12:45:19 +02:00
Wang Meng Yang
f8470e8336 Merge branch 'bugfix/fix_data_length_callback_param_err_v4.2' into 'release/v4.2'
Fixed data length update callback parameters error (backport v4.2)

See merge request espressif/esp-idf!14172
2021-06-30 05:58:01 +00:00
Anton Maklakov
e3100dbecf Merge branch 'bugfix/gdbstub_threads_and_tests_v4.2' into 'release/v4.2'
gdbstub: fix thread list generation, add tests (v4.2)

See merge request espressif/esp-idf!14053
2021-06-30 04:28:22 +00:00
Angus Gratton
fbd2b60f52 Merge branch 'test/flash_perf_thr_update_by_grafana_avg_v4.2' into 'release/v4.2'
ci: adjust spi_flash performance value according to more test data (v4.2)

See merge request espressif/esp-idf!14117
2021-06-30 02:34:20 +00:00
Michael (XIAO Xufeng)
1d19a237b4 Update components/idf_test/include/esp32/idf_performance_target.h 2021-06-29 16:42:11 +08:00
Michael (XIAO Xufeng)
f7755f4175 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-29 16:42:11 +08:00
zwj
a8e8eead70 - fix data length update failed
- fix no callback when the value being used is the same as the value to be set
2021-06-28 14:59:17 +08:00
Angus Gratton
bd9a6f32dd Merge branch 'bugfix/esp32s2_rom_address_range_backport_v4.2' into 'release/v4.2'
soc: Fix SOC_IROM_MASK_HIGH address (backport v4.2)

See merge request espressif/esp-idf!13662
2021-06-28 05:57:32 +00:00
Marius Vikhammer
54383f684f 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-06-26 08:54:46 +08:00
Chen Yi Qun
23c7a2c628 LEDC: fix bit error in ledc_struct.h(backport v4.2) 2021-06-25 20:51:04 +08:00
Jiang Jiang Jian
efa6eca8b8 Merge branch 'bugfix/update_esp32_phy_max_tx_power_v4.2' into 'release/v4.2'
esp_wifi: update esp32 phy max tx power(v4.2)

See merge request espressif/esp-idf!14140
2021-06-25 02:49:05 +00:00
Angus Gratton
cdb8690e63 Merge branch 'feature/ci_release_zips_v4.2' into 'release/v4.2'
ci: Use GitHub Actions to generate recursive source code zips for releases (v4.2)

See merge request espressif/esp-idf!13199
2021-06-24 23:42:56 +00:00
David Čermák
93921e042c Merge branch 'bugfix/mdns_one_shot_multicast_v4.2' into 'release/v4.2'
mdns: Support for One-Shot mDNS queries (v4.2)

See merge request espressif/esp-idf!14131
2021-06-24 18:48:23 +00:00
David Čermák
fa05924bc2 Merge branch 'bugfix/mqtt_examples_certificates_update_v4.2' into 'release/v4.2'
bugfix/mqtt examples: Updates the CA certificates used. (v4.2)

See merge request espressif/esp-idf!13126
2021-06-24 18:11:08 +00:00
David Čermák
0f5628a63d Merge branch 'bugfix/mdns_interface_del_crash_v4.2' into 'release/v4.2'
mdns: Fix of crash when wifi interface get deleted and mdns receives the packets(Backport v4.2)

See merge request espressif/esp-idf!13856
2021-06-24 16:23:53 +00:00
David Čermák
b694d36b7e Merge branch 'feature/mqtt_intro_new_modes_v4.2' into 'release/v4.2'
MQTT:  Update submodule reference to support new config modes (v4.2)

See merge request espressif/esp-idf!13708
2021-06-24 15:08:11 +00:00
Roland Dobai
54da845d7c tools: Reinstall virtualenv if it is broken
Closes https://github.com/espressif/esp-idf/issues/6656
2021-06-24 09:26:43 +02:00
Roland Dobai
68c1999df3 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:16:56 +02:00
chenjianxing
96736a1cbd esp_wifi: update esp32 phy max tx power 2021-06-24 14:41:19 +08:00
Jiang Jiang Jian
c23a132698 Merge branch 'test/wifi_connect_with_full_scan_in_examples_v4.2' into 'release/v4.2'
example: set example wifi scan method to all channel (v4.2)

See merge request espressif/esp-idf!13913
2021-06-24 06:13:44 +00:00
Jiang Jiang Jian
60ccb3fecc Merge branch 'bugfix/fix_amsdu_fragment_vulnerability_v4.2' into 'release/v4.2'
esp_wifi: fix amsdu & fragment vulnerabilities(v4.2)

See merge request espressif/esp-idf!14099
2021-06-24 06:02:48 +00:00
David Cermak
af7f75268c MQTT: Update submodule reference to support new config modes
* Queueing publish messages to outbox when the client is not connected (default=off -> messages are queued if disconnected)
* Use of incremental msg-id instead of random id (default=off -> msg-id uses platform_random())
* Posting a new event-id if a queued message gets deleted from the outbox (default=off -> events are not posted)

Detailed description of included `esp-mqtt` changes
(da850b0add1e71b3659bfac5d797cc834dc3e89b...9ea804e0ab5368d5ab53ae2301a5fec9d1f12f1a)
* mqtt: Remove unused mqtt_header_state_t
  - esp-mqtt commit: b7158a4aea
  - esp-mqtt MR: espressif/esp-mqtt!84
  - Merges https://github.com/espressif/esp-mqtt/pull/180
* Cleanup public include dirs
  - esp-mqtt commit: f65d5d05db
  - esp-mqtt MR: espressif/esp-mqtt!85
* Config: Add a new option to use incremental message id
  - esp-mqtt commit: 8bb4a26f46
  - esp-mqtt MR: espressif/esp-mqtt!85
  - Closes https://github.com/espressif/esp-mqtt/issues/176
* Publish: Add new API to enqueue qos>0 messages
  - esp-mqtt commit: dc7fd5c0b1
  - esp-mqtt MR: espressif/esp-mqtt!85
  - Closes https://github.com/espressif/esp-mqtt/issues/155
* Config: Add a new option to disable publishing when disconnected
  - esp-mqtt commit: f44dcb1c26
  - esp-mqtt MR: espressif/esp-mqtt!85
  - Related https://github.com/espressif/esp-mqtt/issues/177
* Events: Add new event to report deleted messages from outbox
  - esp-mqtt commit: 2e35d4d4d5
  - esp-mqtt MR: espressif/esp-mqtt!85
* Publish: Allow for qos=0 messages to be stored using esp_mqtt_client_enqueue()
  - esp-mqtt commit: e2de0f3e3e
  - esp-mqtt MR: espressif/esp-mqtt!85
2021-06-24 14:01:35 +08:00
Euripedes Rocha
33416006d3 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-06-24 13:57:49 +08:00
Mahavir Jain
131ab4b92b Merge branch 'bugfix/http_client_test_memcorupt_v4.2' into 'release/v4.2'
ci/test: Fix esp_http_client test not to use pointer after free (v4.2)

See merge request espressif/esp-idf!13701
2021-06-24 05:52:27 +00:00
David Cermak
df752f4c46 mdns: Support for One-Shot mDNS queries 2021-06-24 06:59:11 +02:00
Jiang Jiang Jian
c6e0decf0a Merge branch 'bugfix/lwip_docs_delete_while_select_v4.2' into 'release/v4.2'
lw-IP: Add docs about not supported delete of task while blocked on select (v4.2)

See merge request espressif/esp-idf!13677
2021-06-24 04:04:07 +00:00
David Cermak
3810be0df5 ci/test: Fix esp_http_client test not to use pointer after free 2021-06-23 20:31:37 +02:00
David Cermak
b71752f41b lwip: Add docs about not supported delete of task while blocked on select 2021-06-24 02:00:39 +08:00
Anton Maklakov
f4b556fdf9 Merge branch 'bugfix/mqtt_test_publish_less_data_v4.2' into 'release/v4.2'
ci: Make the mqtt example test to send only portion of the partition (v4.2)

See merge request espressif/esp-idf!14112
2021-06-23 15:18:23 +00:00
Suren Gabrielyan
0a387f98de 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 22:52:26 +08:00
David Cermak
afaff3bca3 ci: Make the mqtt example test to send only portion of the partition
This makes the test faster and more robust in very a busy WiFi environment
(our CI) and still exercises the scenario of fragmenting the message on
both mqtt and ssl levels (binary size to send > mqtt buffer size)
2021-06-23 08:27:44 +02:00
Angus Gratton
b20c5e3756 Merge branch 'feature/codeowners_v4.2' into 'release/v4.2'
add simplified CODEOWNERS file for older release branches (v4.2)

See merge request espressif/esp-idf!14091
2021-06-23 05:39:11 +00:00
Angus Gratton
54ac548cd4 Merge branch 'bugfix/esp32_u4wdh_quad_io_v4.2' into 'release/v4.2'
bootloader: Fix selection of Quad I/O modes on ESP32-U4WDH chip (v4.2)

See merge request espressif/esp-idf!13877
2021-06-23 05:37:51 +00:00
Wang Meng Yang
007bb3f9ed Merge branch 'bugfix/ble_set_scan_param_error' into 'release/v4.2'
Fix the bug when ble setting scan param

See merge request espressif/esp-idf!13973
2021-06-23 05:10:08 +00:00
xiongweichao
77f880ff2b fix spp acceptor deadlock 2021-06-23 11:01:17 +08:00
He Yin Ling
de2baf098b 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 10:17:48 +08:00
Jiang Jiang Jian
ebbc093fd2 Merge branch 'bugfix/fix_a2dp_sink_blocked_v4.2' into 'release/v4.2'
Bugfix/Fix a2dp Sink Blocked Bugs[backport v4.2]

See merge request espressif/esp-idf!14011
2021-06-22 13:12:03 +00:00
ChenJianxing
12ed1b2ab5 esp_wifi: fix amsdu & fragment vulnerabilities 2021-06-22 20:42:09 +08:00
Angus Gratton
036356ccba Merge branch 'bugfix/override_cmake_python_v4.2' into 'release/v4.2'
cmake: Minor Python CMake build fixes (v4.2)

See merge request espressif/esp-idf!13195
2021-06-22 07:45:17 +00:00
Ivan Grokhotkov
6f382600e4 add simplified CODEOWNERS file for older release branches 2021-06-22 09:21:51 +02:00
Angus Gratton
23a0ecedbf Merge branch 'feature/prevent_unwind_code_linking_4.2' into 'release/v4.2'
[C++]: prevent unwind code linking (backport 4.2)

See merge request espressif/esp-idf!13801
2021-06-22 04:48:45 +00:00
Angus Gratton
d938ab8fd4 Merge branch 'feature/update_libsodium_submodule_v4.2' into 'release/v4.2'
libsodium: Update library to v1.0.18 (v4.2)

See merge request espressif/esp-idf!13082
2021-06-22 03:06:44 +00:00
Anton Maklakov
3c4cfdfcd6 Merge branch 'bugfix/ci_socket_tests_v4.2' into 'release/v4.2'
ci: Made socket example tests more robust (v4.2)

See merge request espressif/esp-idf!13707
2021-06-22 02:05:01 +00:00
Angus Gratton
d8b921c438 Merge branch 'bugfix/link_gcov_rtio_backport_v4.2' into 'release/v4.2'
Bugfix/link gcov rtio backport v4.2

See merge request espressif/esp-idf!13832
2021-06-22 00:43:01 +00:00
Angus Gratton
0b45e84e2a Merge branch 'bugfix/ldgen_ignore_nonexistent_archives_and_obj_v4.2' into 'release/v4.2'
ldgen: Check mappings (v4.2)

See merge request espressif/esp-idf!13994
2021-06-21 23:20:59 +00:00
David Cermak
90b6780b1e ci: Made socket tests more robust
Added common timeout
Added debug logs for both addr families
Renamed example tests to have different names
2021-06-22 01:10:42 +08:00
Michael (XIAO Xufeng)
cb1a2642b6 Merge branch 'bugfix/spi_flash_cs_setup_v4.2' into 'release/v4.2'
spi_flash: fix cs line setup to make the flash driver more stable(backport v4.2)

See merge request espressif/esp-idf!13965
2021-06-21 14:33:02 +00:00
liqigan
a4f6af013c 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:14:34 +08:00
Island
9ac6689a5d Merge branch 'feat/ble_mesh_make_unprov_beacon_interval_configurable_v4.2' into 'release/v4.2'
Feat/ble mesh make unprov beacon interval configurable (v4.2)

See merge request espressif/esp-idf!14062
2021-06-21 11:39:41 +00:00
Anton Maklakov
dcf4d1fa8c Merge branch 'bugfix/loadable_elf_test_eco3_v4.2' into 'release/v4.2'
tests: gdb_loadable_elf: adjust the breakpoint location for ESP32 ECO3 (v4.2)

See merge request espressif/esp-idf!14040
2021-06-21 04:39:04 +00:00
wangjialiang
00008a3bf5 ble_mesh: stack: Fix crash for net_key_del when subnet is NULL 2021-06-21 11:24:13 +08:00
wangjialiang
f227f0ebe6 ble_mesh: stack: Make unprovisioned beacon interval configurable.
Closes https://github.com/espressif/esp-idf/issues/6722
2021-06-21 11:24:00 +08:00
Island
ea7b487807 Merge branch 'bugfix/AuthValue_leak_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix AuthValue Leak and Predictable AuthValue in Bluetooth... (v4.2)

See merge request espressif/esp-idf!14023
2021-06-21 03:08:53 +00:00
Ivan Grokhotkov
0adf0f85dd gdbstub: fix thread list generation
This commit fixes an issue with gdbstub, where it would list threads
with TIDs 1 to N in qfThreadInfo/qsThreadInfo responses, and then
would tell GDB that the current TID is 0 in the qC response. This
caused an assertion failure in GDB, because it couldn't find the
thread structure corresponding to TID 0:

src/gdb/gdb/thread.c:93: internal-error: thread_info* inferior_thread(): Assertion `tp' failed.

The issue was caused by the logic of qfThreadInfo/qsThreadInfo.
If the "paniced" task index was 1, the code would report it in the
response to qfThreadInfo, and then mistakenly skip task with index 0
in qsThreadInfo, due to the use of pre-increment instead of a
post-increment.

With that issue fixed, GDB assertion doesn't happen anymore. However
the code contained a deeper problem, which manifested itself in the
fact that GDB would incorrectly show task index 0 as the current task,
after the above fix.

Previous version of the code assumed that when GDB requests the thread
list, it uses the first thread returned by the target as the "default"
thread, and subsequently shows the user that the program is stopped
in that thread. This assumption was incorrect. In fact, after
connecting to a remote target, GDB obtains information about the
"default" or "current" thread from two sources:
1. the 'thread' special register indicated in the status response
   ($T00thread;00000001#ee)
2. if the target has only sent the plain stop response ($T00#ee), GDB
   would ask for the current thread using a qC packet.
With that in mind, it is not necessary to report the paniced task as
the first task in qfThreadInfo response. We can simply returns the
tasks in their natural order, and then indicate the current task in
the qS packet response.

However even that change does not fully resolve the issues with task
list. The previous version of this code also incorrectly interpreted
the meaning of GDB TIDs -1 and 0. When GDB sends an "Hg0" command
early in the connection process, it doesn't expect the server to set
task 0 as the current task, as the code assumed. Rather, it tells the
server to "set any (arbitrary) task as the current one", and the most
logical thing to do for the server that is already in "stopped" state
is to keep the current task selection.

Since TID 0 has a special meaning in GDB remote protocol, gdbstub code
is now modified to map task indices (which start from 0) to GDB TIDs.
GDB TIDs are arbitrary, and for simplicity we keep the same order and
start counting them from 1.

The summary of all the above changes is:

1. Use "task index + 1" as the TID reported to GDB
2. Report the tasks in natural order; don't complicate the code to
   make the paniced task first in the list.
3. Centralize modification of 'current_task_index' and 'regfile'
   in the new 'set_active_task' function, to improve encapsulation.
2021-06-18 16:02:10 +02:00
Ivan Grokhotkov
55f233b945 docs: describe power management logic for ESP32-S2, fix translation 2021-06-18 15:40:35 +02:00
Ivan Grokhotkov
19121e2f6f cmake: set IDF_VERSION_* variables at requirement expansion stage
Currently IDF_VERSION_* variables are not available to the component
CMakeLists.txt files at the requirements expansion stage. This makes
it harder to write component CMakeLists files compatible with
different IDF versions.

Include version.cmake from the requirements expansion script, add a
build system test.
2021-06-18 15:27:33 +02:00
Ivan Grokhotkov
2a81167470 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 15:09:47 +02:00
Krzysztof Budzynski
d7acee288d Merge branch 'feature/link_idf_common_docs_v4.2' into 'release/v4.2'
docs: Linking to a page to help navigate to documentation for specific ESP32-x chip (v4.2)

See merge request espressif/esp-idf!13843
2021-06-18 10:06:12 +00:00
Aditya Patwardhan
1cdf60c914 libsodium: Update library to v1.0.18 2021-06-18 16:40:15 +08:00
Angus Gratton
681e71cb10 Merge branch 'bugfix/elf_sha256_first_byte_skip_v4.2' into 'release/v4.2'
app_update: fix incorrect first byte from esp_ota_get_app_elf_sha256 (v4.2)

See merge request espressif/esp-idf!13663
2021-06-18 08:00:18 +00:00
wangjialiang
3212d62b2b ble_mesh: stack: Fix AuthValue Leak and Predictable AuthValue in Bluetooth Mesh Provisioning Leads to MITM 2021-06-18 14:21:02 +08:00
Island
7166428ac0 Merge branch 'bugfix/impersonation_attacks_and_AuthValue_disclosure_v4.2' into 'release/v4.2'
ble_mesh: stack: Add check the value of Provisioning Random & Confirmation... (v4.2)

See merge request espressif/esp-idf!13923
2021-06-18 06:11:46 +00:00
He Yin Ling
333b9d7873 Merge branch 'bugfix/example_test_socket_issue_4.2' into 'release/v4.2'
CI: example test socket issue (4.2)

See merge request espressif/esp-idf!13905
2021-06-18 06:04:42 +00:00
Krzysztof Budzynski
b0a51f30bb Merge branch 'docs/add_esp32-s2-devkitm-1_user_guide_backport' into 'release/v4.2'
Add ESP32-S2-DevKitM-1 User Guide (backport master)

See merge request espressif/esp-idf!13860
2021-06-18 06:01:03 +00:00
Krzysztof Budzynski
dd27b49891 Merge branch 'doc/nvs_get_used_entry_count__clarify_4.2' into 'release/v4.2'
[doc]: NVS documentation updates (backport 4.2)

See merge request espressif/esp-idf!13824
2021-06-18 05:59:08 +00:00
Angus Gratton
9b48e5a024 Merge branch 'bugfix/ci_ble_wifi_example_test_v4.2' into 'release/v4.2'
Fix for ble and wifi example test (v4.2)

See merge request espressif/esp-idf!13803
2021-06-18 05:39:38 +00:00
Angus Gratton
cd8173bc13 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-06-18 13:37:31 +08:00
Angus Gratton
a637d6f3d7 Merge branch 'ci/unify_all_target_test_artifacts_paths_v4.2' into 'release/v4.2'
ci: unify target test artifacts to all .log file and $LOG_PATH (v4.2)

See merge request espressif/esp-idf!13849
2021-06-18 05:37:30 +00:00
Angus Gratton
2d72e916ac Merge branch 'update/version_4_2_2' into 'release/v4.2'
Update version to 4.2.2

See merge request espressif/esp-idf!13984
2021-06-18 05:23:04 +00:00
Itay Perl
881909ecda app_update: fix incorrect first byte from esp_ota_get_app_elf_sha256
At -O2 optimization level, GCC seems to optimize out the copying of the
first byte of the checksum, assuming it is zero. This "miscompilation"
happens because the esp_app_desc struct is declared const, but then modified
post-compilation. Casting to volatile disables the optimization.

Closes: https://github.com/espressif/esp-idf/pull/6389
2021-06-17 17:32:31 +08:00
morris
813931720e i2s: fix driver uninstall issue 2021-06-17 14:18:21 +08:00
Renz Bagaporo
eed6eed909 components: fix ldgen check errors 2021-06-17 12:36:34 +10:00
laokaiyao
9a14cf083f driver/timer: only re-enable alarm in callback when auto reload is true
closes https://github.com/espressif/esp-idf/issues/7001
2021-06-17 10:30:44 +08:00
Renz Bagaporo
ea7d9c6368 ci: exempt upstream libmbedtls mapping for sha256 2021-06-17 12:21:53 +10:00
Renz Bagaporo
711048bce0 ldgen: fix sections info parsing
Fixes an issure where the first part of an object file name is not
included, due to matching the rule for a section entry previously.

Reduce depedency on matching literal strings in sections which might
change depending on toolchain (ex. matching 'elf32-xtensa-le')

Make sure parsing rule succeeds for the entirety of the sections info
string by adding 'parseAll=True'.

Add test for sections info parsing.
2021-06-17 12:21:53 +10:00
Renz Bagaporo
2c1c4999f5 ci: enabled ldgen mapping check in ci 2021-06-17 12:20:58 +10:00
Renz Bagaporo
5aa09271d8 ldgen: allow checking mappings 2021-06-17 12:18:02 +10:00
wangjialiang
34bfff424a ble_mesh: stack: Add check the value of Provisioning Random & Confirmation sent and received by provisioner 2021-06-16 21:29:02 +08:00
He Yin Ling
7ab8f793ca versions: Update version to 4.2.2 2021-06-16 14:49:39 +08:00
Yang Zhao
24578ac17b bugfix:Set address resolution enable. If not set enable and the filter
policy is 2 or 3, the controller will reply with invalid param error.
2021-06-15 16:14:23 +08:00
Wang Fang
1bb087d6af docs: Correct uart default pin names and provid more information about ESP-Prog board 2021-06-15 15:37:05 +08:00
Cao Sen Miao
8c16b4bcb3 spi_flash: fix cs line setup to make the flash driver more stable 2021-06-15 15:24:35 +08:00
Jiang Jiang Jian
1e36383909 Merge branch 'bugfix/handling_public_action_frame_v4.2' into 'release/v4.2'
esp_wifi: Fix SoftAP crash by handling public action frames.

See merge request espressif/esp-idf!13927
2021-06-11 05:19:05 +00:00
aditi_lonkar
1e8fca74f2 esp_wifi: Fix SoftAP crash by adding NULL check for handling publc action frames.
Closes https://github.com/espressif/esp-idf/issues/7109
2021-06-10 18:47:27 +05:30
Jiang Jiang Jian
32c63fca90 Merge branch 'bugfix/fix_pmf_ba_issue_v4.2' into 'release/v4.2'
fix pmf ba issue ( v4.2)

See merge request espressif/esp-idf!13901
2021-06-10 12:20:49 +00:00
Angus Gratton
f23c9d94ae bootloader: Fix selection of Quad I/O modes on ESP32-U4WDH chip
Closes https://github.com/espressif/esp-idf/issues/6191
2021-06-09 05:10:21 +00:00
Island
4921446d3d Merge branch 'bugfix/btdm_enable_gattc_cache_will_crash_v4.2' into 'release/v4.2'
component/bt: fix enable gattc nvs cache lead to crash

See merge request espressif/esp-idf!13889
2021-06-09 03:46:27 +00:00
Chen Yudong
443c9ff276 test: fix socket issue in iperf example test 2021-06-08 17:11:38 +08:00
He Yin Ling
06c7cde836 test: fix iperf example errors:
1. fix TypeError when running with python3
2. fix throughput chart x/y axis label error
3. make test case compatibile with iperf bin on earlier release branches
2021-06-08 17:08:29 +08:00
Chen Yudong
c26317ac90 CI: fix connection failures in asio example tests 2021-06-08 17:05:04 +08:00
He Yin Ling
96a00e59f4 example: set PMF capable to connect to PMF required APs 2021-06-08 16:07:09 +08:00
chenjianxing
36c2ef2828 esp_wifi: fix Block Ack issue when pmf enable 2021-06-08 16:06:24 +08:00
xiewenxiang
8491705b63 component/bt: fix enable gattc nvs cache lead to crash 2021-06-07 17:34:47 +08:00
Island
2c5f35fa8a Merge branch 'bugfix/bt_impersonation_passkey_fix_v4.2' into 'release/v4.2'
Bluedroid: Check only x component of passkey to avoid passkey impersonation attack. (v4.2)

See merge request espressif/esp-idf!13759
2021-06-07 07:24:00 +00:00
Ivan Grokhotkov
e632f2b366 Merge branch 'feature/IDF-2612_human_readable_error_v4.2' into 'release/v4.2'
export.bat/install.bat: print human-readable error message if Git or Python are not in PATH (v4.2)

See merge request espressif/esp-idf!13227
2021-06-07 06:08:15 +00:00
Ivan Grokhotkov
72f4f9542c Merge branch 'feature/installed_tool_failed_v4.2' into 'release/v4.2'
tools: Warning about tool being installed but failed to run. (v4.2)

See merge request espressif/esp-idf!13231
2021-06-07 06:07:54 +00:00
Ivan Grokhotkov
cbe42f1132 Merge branch 'bugfix/gdbgui_v4.2' into 'release/v4.2'
tools: Add various fixes for idf.py gdbgui (v4.2)

See merge request espressif/esp-idf!13417
2021-06-07 06:07:13 +00:00
Ivan Grokhotkov
8aa7eaa646 Merge branch 'bugfix/idfpy_global_action_callbacks_order_v4.2' into 'release/v4.2'
idf.py: Run global_action_callbacks in predictable order (v4.2)

See merge request espressif/esp-idf!13682
2021-06-07 06:06:54 +00:00
Ivan Grokhotkov
d21e948381 Merge branch 'feature/idf_tools_github_mirror_v4.2' into 'release/v4.2'
Add GitHub mirror option for IDF tools installs (v4.2)

See merge request espressif/esp-idf!13765
2021-06-07 06:06:31 +00:00
Ivan Grokhotkov
b50a8e0878 Merge branch 'bugfix/dfu_split_large_bins_v4.2' into 'release/v4.2'
tools: Split up large binaries into smaller chunks in the DFU binary (v4.2)

See merge request espressif/esp-idf!13794
2021-06-07 06:05:46 +00:00
Wang Ning
a5ffdaa962 Add ESP32-S2-DevKitM-1 User Guide
Update 1 based on comments

Fix typo

Add annotation to UFL connector

Add UFL connector to description table
2021-06-04 11:01:29 +08:00
Fu Hanxi
95f4bba736 ci: unify target test artifacts to all .log file and $LOG_PATH 2021-06-03 17:34:03 +08:00
Krzysztof
a954243875 docs: Linking to a page that helps navigate to documentation for specific ESP32-x chip 2021-06-03 08:13:03 +02:00
Angus Gratton
fa734e6af8 Merge branch 'bugfix/partition_table_integrity_check_v4.2' into 'release/v4.2'
paritition_table: Verify the partition table md5sum when loading in the app (v4.2)

See merge request espressif/esp-idf!13583
2021-06-03 02:19:11 +00:00
Angus Gratton
ca44fb1528 Merge branch 'bugfix/rtc_retain_mem_addr_v4.2' into 'release/v4.2'
bootloader: Fix "skip validate in deep sleep" on ESP32 & ESP32-S2 (v4.2)

See merge request espressif/esp-idf!13813
2021-06-03 02:18:59 +00:00
Alexey Gerenkov
0a5fbc1b8c gcov: Fixes not linked gcov rtio functions 2021-06-02 21:48:29 +03:00
Jakob Hasse
5dbca18324 [doc]: NVS documentation updates
* Better comment of nvs_get_used_entry_count()
* Mention C++ example in API reference
* WIP: 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 IDF-1563
* Closes IDF-859
* Closes https://github.com/espressif/esp-idf/issues/6123
2021-06-02 15:46:13 +08:00
Angus Gratton
f8b9cb2864 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-06-02 06:35:45 +00:00
Roland Dobai
7b70154566 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-06-01 15:11:12 +02:00
Angus Gratton
fd50bcf704 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:07:15 +10:00
Shivani Tipnis
be960bc3dc ble-wifi-example-tests: Add fixes and cleanups to ble and wifi tests
(cherry picked from commit 2d22374460)
2021-06-01 12:43:59 +05:30
Jakob Hasse
dd08575c29 [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 15:09:46 +08:00
Chinmay Chhajed
c1e204634f Bluedroid: Check only x component of passkey to avoid passkey impersonation attack. 2021-05-31 05:10:59 +00:00
daiziyan
96d00c5fa5 add CN translation for index.rst in get started section for MR10616 2021-05-31 11:05:04 +10:00
Anton Maklakov
054d3b81a6 tools: windows installer: Modify IDF's archive mirror link 2021-05-31 11:05:04 +10:00
Ivan Grokhotkov
daeaa8092b tools: windows installer: add support for IDF_GITHUB_ASSETS
Adds a checkbox to download tools from dl.espressif.com mirror.
2021-05-31 11:05:04 +10:00
Angus Gratton
56b4596b53 tools: Use GitHub download URLs for all files that can be downloaded from GitHub 2021-05-31 11:05:04 +10:00
Angus Gratton
bebc75af48 idf_tools: Add option to replace all GitHub tools download URLs with dl.espressif.com
Via new IDF_GITHUB_ASSETS environment variable.
2021-05-31 11:04:00 +10:00
Angus Gratton
71cf821659 Merge branch 'bugfix/calc_8m_freq_test_v4.2' into 'release/v4.2'
rtc: increase CI acceptance range for calc 8M test (v4.2)

See merge request espressif/esp-idf!13086
2021-05-30 23:46:14 +00:00
Jiang Jiang Jian
652e214f55 Merge branch 'mesh/esp_mesh_send_block_time_v4.2' into 'release/v4.2'
esp_wifi_mesh: add esp_mesh_send_block_time to set blocking time of esp_mesh_send(backport v4.2)

See merge request espressif/esp-idf!13409
2021-05-27 10:50:28 +00:00
shenjun
345e6acf80 esp_wifi_mesh: add esp_mesh_send_block_time
1. Ignore dirtyBuf check when buffer size is larger than 4092
2. Add esp_mesh_send_block_time to set blocking time of esp_mesh_send
2021-05-27 08:27:39 +00:00
Jiang Jiang Jian
e8e6021ada Merge branch 'docs/add_rf_calib_docs_v4.2' into 'release/v4.2'
docs: add RF calibration docs for ESP32-S2(v4.2)

See merge request espressif/esp-idf!13723
2021-05-27 08:06:12 +00:00
Jiang Jiang Jian
df0ca79bdb Merge branch 'bugfix/btdm_set_discoverable_after_create_server_v4.2' into 'release/v4.2'
components/bt: Set discoverable after create server

See merge request espressif/esp-idf!13726
2021-05-26 08:26:30 +00:00
Jiang Jiang Jian
ca77bdddbf Merge branch 'bugfix/fix_uart_handler_call_inline_func_v42' into 'release/v4.2'
Bugfix/fix uart handler call inline func (backport v4.2)

See merge request espressif/esp-idf!13005
2021-05-26 03:45:29 +00:00
Jiang Jiang Jian
e459f7b498 Merge branch 'bugfix/cmake_ulp_reserved_size_v4.2' into 'release/v4.2'
ulp: Fix bug where ULP linker script not regenerated for new config (v4.2)

See merge request espressif/esp-idf!13629
2021-05-26 03:43:55 +00:00
Jiang Jiang Jian
841aca897c Merge branch 'feature/extmem_alloc_for_s2_v4.2' into 'release/v4.2'
External memory allocation policy support  for ESP32-S2 (GitHub PR) (v4.2)

See merge request espressif/esp-idf!13620
2021-05-26 03:43:13 +00:00
Jiang Jiang Jian
b860069c10 Merge branch 'bugfix/start_emac_after_phy_reset_v4.2' into 'release/v4.2'
esp_eth: restart negotiation in esp_eth_start (v4.2)

See merge request espressif/esp-idf!13699
2021-05-26 03:36:38 +00:00
baohongde
bb1aa0ed5e components/bt: Set discoverable after create server 2021-05-26 11:35:07 +08:00
Jiang Jiang Jian
481da3143d Merge branch 'bugfix/ds_invalidate_assert_v4.2' into 'release/v4.2'
esp32s2 ds: Fix invalidating Digital Signature key from HMAC peripheral if assertions are disabled (v4.2)

See merge request espressif/esp-idf!12906
2021-05-26 03:30:45 +00:00
Jiang Jiang Jian
536d6eea61 Merge branch 'bugfix/aes_dma_completion_v4.2' into 'release/v4.2'
mbedtls: Fix AES dma completion race condition (v4.2)

See merge request espressif/esp-idf!12904
2021-05-26 03:30:18 +00:00
He Yin Ling
176ea97dd0 Merge branch 'test/support_multiple_targets_for_iperf_example_test_v4.2' into 'release/v4.2'
test: support multiple targets for iperf example test (v4.2)

See merge request espressif/esp-idf!13618
2021-05-26 03:11:56 +00:00
He Yin Ling
ca2a15dca7 Merge branch 'ci/ttfw_fix_dut_exception_not_added_to_junit_report_v4.2' into 'release/v4.2'
ttfw: fix DUT exception not added to junit report (v4.2)

See merge request espressif/esp-idf!12142
2021-05-26 03:11:26 +00:00
chenjianxing
5d88861dba docs: add RF calibration docs for ESP32-S2 2021-05-26 10:58:38 +08:00
Jiang Jiang Jian
f8e633a352 Merge branch 'ajust_espnow_channel_config_range_v4.2' into 'release/v4.2'
adjust espnow channel range

See merge request espressif/esp-idf!13689
2021-05-25 15:41:16 +00:00
Jiang Jiang Jian
9e40c13d4e Merge branch 'bugfix/invalid_feat_page_exec_v4.2' into 'release/v4.2'
bt controller: Fixed handling for invalid feature page.

See merge request espressif/esp-idf!13572
2021-05-25 14:51:24 +00:00
Angus Gratton
6e0c046bd9 mbedtls tests: Add optional debug log output to AES stream tests 2021-05-25 14:36:47 +00:00
Angus Gratton
9e1324fbbb mbedtls aes dma: Fix bug where DMA would complete when the first output descriptor was done, not the last 2021-05-25 14:36:47 +00:00
Jiang Jiang Jian
95c118171a Merge branch 'bugfix/backport_some_lwip_bugs_0428_v4.2' into 'release/v4.2'
lw-ip:backport bugfix lwip for v4.2(backport v4.2)

See merge request espressif/esp-idf!13378
2021-05-25 14:27:42 +00:00
Angus Gratton
2af8fac1d9 esp32s2 ds: Fix invalidating Digital Signature key from HMAC peripheral if assertions are disabled 2021-05-25 14:22:55 +00:00
Jiang Jiang Jian
93c28d1fac Merge branch 'bugfix/phy_calib_data_to_nvs_for_c3_s3_v4.2' into 'release/v4.2'
esp_wifi: re-enable phy calibration data to nvs for esp32s2

See merge request espressif/esp-idf!13626
2021-05-25 14:19:54 +00:00
Jiang Jiang Jian
97ed80f415 Merge branch 'nimble/fix_ble_sm_sc_pub_key_v4.2' into 'release/v4.2'
NimBLE: Fix MITM vulnerability and free AES context (v4.2)

See merge request espressif/esp-idf!13597
2021-05-25 14:17:55 +00:00
Jiang Jiang Jian
b18f37b2e2 Merge branch 'bugfix/ag_use_dynamic_memory_error_v4.2' into 'release/v4.2'
Fix ag use dynamic memory error

See merge request espressif/esp-idf!13551
2021-05-25 14:17:18 +00:00
Prasad Alatkar
0ca5134d5f NimBLE: Fix MITM vulnerability and free AES context (v4.2) 2021-05-25 09:21:12 +00:00
xueyunfei
a7c17edc8a backport bugfix lwip for v4.2 2021-05-25 09:06:28 +00:00
Jiang Jiang Jian
bab80796ca Merge branch 'bugfix/remove_redundant_other_core_cache_disable_v4.2' into 'release/v4.2'
[system]: Remove redundant othercore cache disable (backport v4.2)

See merge request espressif/esp-idf!13357
2021-05-25 09:05:33 +00:00
Jiang Jiang Jian
c219c9dcb2 Merge branch 'bugfix/fix_set_channel_error_after_wifi_stop_v4.2' into 'release/v4.2'
esp_wifi: Fix setting channel error after WiFi stop (backport v4.2)

See merge request espressif/esp-idf!13447
2021-05-25 08:09:39 +00:00
morris
e892fed593 esp_eth: restart negotiation in esp_eth_start 2021-05-25 15:17:48 +08:00
Michael (XIAO Xufeng)
18a262a6fa Merge branch 'ci/decrease_flash_performance_thr_4.2' into 'release/v4.2'
ci: decrease the flash performance threshold (4.2)

See merge request espressif/esp-idf!13632
2021-05-25 07:11:14 +00:00
baohongde
7988705558 components/bt: Delete BLE ADV priority high 2021-05-25 15:10:49 +08:00
xiongweichao
8e7f7dfe59 Remove btc_hf_idx_by_bdaddr in both btc_hf_init and btc_hf_deinit functions 2021-05-25 07:06:22 +00:00
xiongweichao
b257ad7d9e fix ag use dynamic memory error 2021-05-25 07:06:22 +00:00
Chinmay Chhajed
4d95ffcca2 bt controller: Fixed handling for invalid feature page. 2021-05-25 10:39:25 +05:30
wangmengyang
adb20fb2f3 components/bt: fix PATH of libbtdm_app.a in build script 2021-05-25 10:39:25 +05:30
dongyou
a8227a1d13 adjust espnow channel range 2021-05-25 11:21:53 +08:00
Michael (XIAO Xufeng)
d2715324e5 Merge branch 'bugfix/fix_touch_sensor_power_source_v4.2' into 'release/v4.2'
touch_sensor: fix esp32s2 touch sensor default power source (Backport v4.2)

See merge request espressif/esp-idf!13485
2021-05-25 03:13:32 +00:00
Sergei Silnov
2deea3b1b0 Run global_action_callbacks in predictable order 2021-05-24 18:14:44 +02:00
Darian Leung
f837b298e6 soc: Fix SOC_IROM_MASK_HIGH address
The high address limit IROM on the esp32s2 is incorrect, thus
causing backtrace printing to think valid function PCs are invalid.
2021-05-24 15:22:16 +08:00
He Yin Ling
e60640ab04 ttfw: fix DUT exception not added to junit report 2021-05-21 08:37:28 +00:00
Michael (XIAO Xufeng)
899c7852a4 ci: decrease the flash performance threshold 2021-05-21 13:03:36 +08:00
Angus Gratton
be74e06e50 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-05-21 10:56:05 +10:00
chenjianxing
d3e730ff57 esp_wifi: re-enable phy calibration data to nvs for esp32s2 2021-05-20 22:13:39 +08:00
Marcel Kottmann
06bf491f13 mbedtls: Allow external mem alloc for ESP32-S2
Closes https://github.com/espressif/esp-idf/pull/6998
Closes IDFGH-5226
2021-05-20 15:22:07 +05:30
He Yin Ling
54bf4dccfa test: support multiple targets for iperf example test 2021-05-20 17:09:53 +08:00
Island
d9ec7df393 Merge branch 'nimble/fix_host_flow_ctrl_v4.2' into 'release/v4.2'
NimBLE: Fix host flow control in NimBLE porting layer and host (release/v4.2)

See merge request espressif/esp-idf!13571
2021-05-19 08:52:23 +00:00
Angus Gratton
71cddbdf8f Merge branch 'bugfix/fe_example_test_args' into 'release/v4.2'
ci: fix flash encryption example test esptool args (4.2)

See merge request espressif/esp-idf!13539
2021-05-19 06:58:48 +00:00
Angus Gratton
a699475df2 Merge branch 'bugfix/fix_ppos_ci_python3' into 'release/v4.2'
CI: fix ppos test app python3 error (v4.2)

See merge request espressif/esp-idf!13592
2021-05-19 06:58:41 +00:00
Marius Vikhammer
b5976a7167 CI: fix error when running pppos test app with python3
Socket.sendall expects bytes in python3, not strings
2021-05-19 11:42:42 +08:00
Prasad Alatkar
1c7340d229 NimBLE: Update submodule to fix host flow control bugs. 2021-05-18 18:10:19 +05:30
Prasad Alatkar
b3e1829f10 NimBLE: Fix host flow control in NimBLE porting layer.
- Register `ble_hs_flow_acl_free` callback in NimBLE porting layer.
2021-05-17 14:16:19 +05:30
Kang Zuoling
2515cd72c1 touch_sensor: fix esp32s2 touch sensor default power source 2021-05-15 13:52:37 +08:00
Jiang Jiang Jian
8a841d7cdf Merge branch 'bugfix/gtk_reinstallation_fix_v4.2' into 'release/v4.2'
wpa_supplicant: Prevent reinstallation of an already in-use group key (v4.2)

See merge request espressif/esp-idf!13182
2021-05-13 04:30:53 +00:00
Hrudaynath Dhabe
31d05a5072 wpa_supplicant: Group key reinstallation fixes
This commit reverts previous commit for GTK reinstallation fix
and corrects original fix.
2021-05-13 12:30:44 +08:00
Jiang Jiang Jian
bfb7c66a9f Merge branch 'bugfix/timer_spinlock_iram_v4.2' into 'release/v4.2'
timer: add IRAM_ATTR to spinlock give/take API (v4.2)

See merge request espressif/esp-idf!13512
2021-05-13 04:30:02 +00:00
Marius Vikhammer
3bb84e7738 ci: fix flash encryption example test esptool args
Esptool submodule got updated which changed the function signature for EncryptFlashDataArgs.

Update example test script to reflect the new function signature
2021-05-13 11:05:32 +08:00
Marius Vikhammer
ff4ca61cc6 timer: add IRAM_ATTR to spinlock give/take API
Closes https://github.com/espressif/esp-idf/issues/6824
2021-05-11 15:32:37 +08:00
Angus Gratton
f195a1d8ae Merge branch 'bugfix/otatool_wrong_switch_ota_partition_slots_v4.2' into 'release/v4.2'
otatool: Fix incorrect using otadata.seq&crc in switch_ota_partition cmd (v4.2)

See merge request espressif/esp-idf!13368
2021-05-11 01:27:53 +00:00
Angus Gratton
d52331849e Merge branch 'bugfix/flash_rodata_any_alignement_v4.2' into 'release/v4.2'
build: Fix cache issue and add dedicated section for (Custom) App version info (backport v4.2)

See merge request espressif/esp-idf!13465
2021-05-11 01:03:12 +00:00
Jiang Jiang Jian
d29cce7f0a Merge branch 'bugfix/fix_some_pm_issue_v4.2' into 'release/v4.2'
esp_pm: add an interface to get pm configuration (backport to v4.2)

See merge request espressif/esp-idf!13124
2021-05-10 03:45:55 +00:00
Jiang Jiang Jian
6b47fcdbdc Merge branch 'bugfix/correct_cod_check_v4.2' into 'release/v4.2'
esp-idf: Corrected check of Class of Device for discovered devices (v4.2)

See merge request espressif/esp-idf!13020
2021-05-10 03:45:35 +00:00
Jiang Jiang Jian
9a2362b5c7 Merge branch 'nimble/add_error_prints_acl_buf_v4.2' into 'release/v4.2'
NimBLE: Add error prints for ACL buffer exhaustion in NPL (v4.2)

See merge request espressif/esp-idf!12969
2021-05-10 03:45:08 +00:00
Jiang Jiang Jian
abe7a9d020 Merge branch 'bugfix/wifi_softap_deep_sleep_current_opt_v4.2' into 'release/v4.2'
backport v4.2: optimize deep sleep current in wifi softap mode

See merge request espressif/esp-idf!13393
2021-05-10 03:44:29 +00:00
Jiang Jiang Jian
9f63baf061 Merge branch 'bugfix/generate_value_0_when_prov_auth_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix provisioning input or output count number should be at least 1 (v4.2)

See merge request espressif/esp-idf!13479
2021-05-10 03:42:24 +00:00
Omar Chebib
bf4320ba68 ci: fix flasher_args.json parser (iterate over dictionary)
Closes IDFCI-347
2021-05-10 11:18:09 +08:00
Omar Chebib
5c175721e9 ci: use "encrypted" information in flasher_args.json
Take into account the new field "encrypted" that is part of the
partition entries in flasher_args.json file
Closes IDF-2231
2021-05-10 11:18:09 +08:00
Omar Chebib
78ea042e7d esptool: Update esptool to have merge adjacent sections feature 2021-05-10 11:18:09 +08:00
Ivan Grokhotkov
af7b21851e 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-10 11:18:09 +08:00
Omar Chebib
974b8dd4c4 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
Closes https://github.com/espressif/esp-idf/issues/6976
2021-05-10 11:17:58 +08:00
Jiang Jiang Jian
87da4bccd4 Merge branch 'bugfix/btdm_fix_multi-con_pair_failed_and_cancle_con_state_err_v4.2' into 'release/v4.2'
fix multi con pair failed and cancel con state err (backport v4.2)

See merge request espressif/esp-idf!13475
2021-05-08 12:53:35 +00:00
wangjialiang
c68f520389 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:49:25 +08:00
Krzysztof Budzynski
232786235b Merge branch 'docs/update_CN_buildsystem_v4.2' into 'release/v4.2'
update CN translation for build-system for v4.2

See merge request espressif/esp-idf!13291
2021-05-08 03:36:01 +00:00
Dai Zi Yan
61fdb62c54 update CN translation for build-system for v4.2 2021-05-08 11:35:56 +08:00
Island
c4155d4b47 Merge branch 'bugfix/endianness_in_output_or_input_oob_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix endianness error in output or input oob data of number (v4.2)

See merge request espressif/esp-idf!13255
2021-05-07 13:45:15 +00:00
zwj
34e8265821 update con state when getting connection cancle complete 2021-05-07 20:47:34 +08:00
zwj
3ebcb25fb1 fix multi-connection pair failed 2021-05-07 20:46:50 +08:00
Wang Meng Yang
7223c8db5b Merge branch 'bugfix/btdm_incorrectly_spelled_v4.2' into 'release/v4.2'
component/bt: fix Spelling mistakes (release v4.2)

See merge request espressif/esp-idf!12816
2021-05-07 08:10:02 +00:00
Angus Gratton
fc7bf950f3 Merge branch 'bugfix/freertos_addition_overflow_v4.2' into 'release/v4.2'
freertos: Fix addition overflow (v4.2)

See merge request espressif/esp-idf!13423
2021-05-07 07:52:31 +00:00
wangjialiang
c37b15fa22 ble_mesh: stack: Fix endianness error in output or input oob data of number
Closes https://github.com/espressif/esp-idf/issues/6862
2021-05-07 03:33:59 +00:00
Michael (XIAO Xufeng)
e3fd4b097b Merge branch 'bugfix/spi_fix_duplex_switch_v4.2' into 'release/v4.2'
spi_master: fix duplex mode switch issue for multi devices (4.2)

See merge request espressif/esp-idf!11233
2021-05-06 07:43:40 +00:00
xiehang
86141ad01c esp_wifi: Fix setting channel error after WiFi stop 2021-05-06 11:40:57 +08:00
He Yin Ling
223cf48c26 Merge branch 'bugfix/python3_target_test_4.2' into 'release/v4.2'
ci: run target test with python3

See merge request espressif/esp-idf!12755
2021-05-06 02:19:19 +00:00
Angus Gratton
6d9d40e888 Merge branch 'bugfix/fix_bootloader_time_too_long_bug_v4.2' into 'release/v4.2'
esp32s2: decrease boot up and cpu start up time (backport v4.2)

See merge request espressif/esp-idf!12729
2021-05-06 02:03:10 +00:00
Angus Gratton
45c90be913 Merge branch 'update/version_4_2_1' into 'release/v4.2'
Update version to 4.2.1

See merge request espressif/esp-idf!13390
2021-05-05 23:12:32 +00:00
Krzysztof Budzynski
e7dc6eb8da Merge branch 'bugfix/doxygen_input_file_bug_v4.2' into 'release/v4.2'
docs: fix doxygen compile warnings for doxygen 1.9.1 (v4.2)

See merge request espressif/esp-idf!13076
2021-05-05 10:14:19 +00:00
Marius Vikhammer
56e7cb0c70 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-05-05 18:14:19 +08:00
Krzysztof Budzynski
ad095f555b Merge branch 'docs/update_ESP32-S2-Kaluga-Kit_user_guide' into 'release/v4.2'
Update kaluga user guides for v1.3

See merge request espressif/esp-idf!12895
2021-05-05 10:11:36 +00:00
chaijie
e349f1b484 esp32s2: Decrease boot up time by delete useless slow clock calibration 2021-05-05 06:57:05 +00:00
Angus Gratton
be8295a918 Merge branch 'bugfix/ttfw_example_test_fails_port_remains_open_v4.2' into 'release/v4.2'
ci: Fix CI issue if one example test fails, and if serial port returns some noise (v4.2)

See merge request espressif/esp-idf!12381
2021-05-04 23:25:45 +00:00
Angus Gratton
c8912b79a6 freertos: Check for arithmetic overflows on queue creation
Addition overflow check is from FreeRTOS kernel commit 47338393f1f79558f6144213409f09f81d7c4837
2021-05-04 18:35:04 +10:00
Angus Gratton
5b932aa144 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:54:20 +00:00
Angus Gratton
c52417eaba cmake: Set IDFTOOL variable using the correct PYTHON interpreter variable 2021-05-04 07:54:20 +00:00
Angus Gratton
48d075f87b 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:54:20 +00:00
Mahavir Jain
ec510fdf18 Merge branch 'bugfix/deep_sleep_skip_verify_rtc_mem_heap_v4.2' into 'release/v4.2'
Fix bootloader "skip validate on exiting deep sleep" option if "use RTC memory as heap" is enabled (v4.2)

See merge request espressif/esp-idf!13097
2021-05-03 13:44:06 +00:00
Mahavir Jain
e8f5b76112 Merge branch 'bugfix/fix_mbedtls_send_alert_crash_v4.2' into 'release/v4.2'
mbedtls: fix mbedtls dynamic resource memory leaks and mbedtls_ssl_send_alert_message crash due to ssl->out_iv is NULL[backport v4.2]

See merge request espressif/esp-idf!13301
2021-05-03 13:37:36 +00:00
Mahavir Jain
0f0cfb2cbc Merge branch 'bugfix/esp_http_client_read_v4.2' into 'release/v4.2'
Fix esp_http_client_read for file size aligned to 289 bytes (v4.2)

See merge request espressif/esp-idf!13306
2021-05-03 13:36:51 +00:00
Roland Dobai
62589fa251 tools: Add various fixes for idf.py gdbgui
Closes https://github.com/espressif/esp-idf/issues/5968
2021-05-03 11:43:36 +02:00
Angus Gratton
1cffa733a5 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-03 04:19:49 +00:00
Li Shuai
f16e8cb48e deep sleep: optimize sleep current in wifi softap mode 2021-04-29 10:51:42 +08:00
He Yin Ling
21ecef5c56 versions: Update version to 4.2.1 2021-04-29 10:13:07 +08:00
yuanjm
532912b025 mbedtls: Fix mbedtls_ssl_send_alert_message crash due to ssl->out_iv is NULL 2021-04-28 09:11:15 +00:00
Dong Heng
176d6fa4d0 fix(mbedtls): fix mbedtls dynamic resource memory leaks and RSA cert drop earlier
RX process caches the session information in "ssl->in_ctr" not in "ssl->in_buf".
So when freeing the SSL, can't free the "ssl->in_ctr", because the "ssl->in_buf"
is empty.

Make the RX process like TX process, and cache the session information in
"ssl->in_buf", so that the cache buffer can be freed when freeing the SSL.

Closes https://github.com/espressif/esp-idf/issues/6104
2021-04-28 09:11:15 +00:00
Shubham Kulkarni
7ad3837244 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:01:11 +00:00
KonstantinKondrashov
e7f75e6559 otatool: Fix incorrect using otadata.seq&crc in switch_ota_partition cmd
Closes: https://github.com/espressif/esp-idf/issues/6773
2021-04-27 19:39:50 +08:00
wuzhenghui
03e6d07b50 remove othercore cache disable 2021-04-27 14:39:49 +08:00
Marek Fiala
c71b1f6d4d 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:12:07 +02:00
Marek Fiala
40b7ea1f95 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 13:57:45 +02:00
Natasha
48d3badc0f update kaluga user guides for v1.3 2021-04-26 07:07:54 +00:00
Chen Yudong
fa270d72c7 ci: using python3 to tun target test 2021-04-26 06:35:42 +00:00
Angus Gratton
baaf4de703 ci: Fix missing sys.stdout.encoding in python2 runners
Regression in fed98cd6ad
2021-04-23 23:09:58 +00:00
Angus Gratton
34a84c829c ci: ttfw: Encode serial port data to whatever the console encoding is
This is a bit of a hack, but gives us a way to always log it
2021-04-23 23:09:58 +00:00
Angus Gratton
340e2dff12 ci: Log failure to close any DUT 2021-04-23 23:09:58 +00:00
Angus Gratton
c8d15588e5 Merge branch 'bugfix/rtc_fast_memory_force_on_in_use_for_heap_backport_v4.2' into 'release/v4.2'
Bugfix/rtc fast memory force on in use for heap (backport v4.2)

See merge request espressif/esp-idf!12873
2021-04-23 09:06:40 +00:00
David Čermák
deaad551c4 Merge branch 'bugfix/mdns_configure_strict_mode_v4.2' into 'release/v4.2'
mdns: Fix mdns to correctly answer non-strict queries (+ additional fixes) (v4.2)

See merge request espressif/esp-idf!13122
2021-04-22 11:09:58 +00:00
David Cermak
19634e34e9 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-22 08:32:43 +00:00
David Cermak
4f4640b1df 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-22 08:32:43 +00:00
David Cermak
92e511a5b6 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-22 08:32:43 +00:00
suren.gabrielyan
7064eb9729 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-22 08:32:43 +00:00
Jiang Jiang Jian
a7b419b652 Merge branch 'bugfix/e8192_and_assert_param_v4.2' into 'release/v4.2'
Modify E8192 ELx200 ELx40 log level to LOGD

See merge request espressif/esp-idf!13148
2021-04-21 08:48:00 +00:00
baohongde
6ed64c2a2d Synchronize multiple branch of bt lib(release/v4.1 ~ master) 2021-04-21 04:07:59 +00:00
xiongweichao
ac179dcd99 Modify E8192 ELx200 ELx40 log level to LOGD 2021-04-21 04:07:59 +00:00
Angus Gratton
82801321e8 Merge branch 'bugfix/secure_boot_v2_had_zeros_blk2_after_en' into 'release/v4.2'
secure_boot_v2: Fix case when BLOCK2 is left blank

See merge request espressif/esp-idf!13243
2021-04-21 01:15:40 +00:00
KonstantinKondrashov
4200af3e26 secure_boot_v2: Fix case when BLOCK2 is left blank
Closes: https://github.com/espressif/esp-idf/issues/6886
2021-04-20 23:23:32 +00:00
Angus Gratton
46560be284 Merge branch 'bugfix/ci/ci_fetch_submodule_fully_match_return_first_v4.2' into 'release/v4.2'
fix(ci): ci_fetch_submodule return full match name first (v4.2)

See merge request espressif/esp-idf!13211
2021-04-20 23:22:21 +00:00
Fu Hanxi
bbc05c5095 fix(ci): ci_fetch_submodule return full match name first 2021-04-19 20:21:07 +08:00
Angus Gratton
8de16142a5 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-16 10:50:55 +10:00
ninh
e378ecd6cf esp_pm: add an interface to get pm configuration (backport to v4.2) 2021-04-13 17:15:35 +08:00
Marius Vikhammer
d20b442af2 rtc: increase CI acceptance range for calc 8M test 2021-04-09 15:06:20 +08:00
Juraj Michálek
e74fbf6608 tools: handle exception in case of logging Unicode characters 2021-04-06 19:16:39 +02:00
Rahul Tank
726ce37b14 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:31 +05:30
aleks
df079d4ca9 soc/uart: update uart low level functions used in isr with force inline attribute 2021-03-31 17:46:17 +02:00
Prasad Alatkar
2ec1b7434e NimBLE: Add error prints for ACL buffer exhaustion in NPL 2021-03-31 10:43:19 +05:30
Michael (XIAO Xufeng)
cf53feff6f Merge branch 'bugfix/touch_sensor_reading_error_in_light_sleep_process_backport_v4.2' into 'release/v4.2'
Bugfix/touch sensor reading error in light sleep process (backport v4.2)

See merge request espressif/esp-idf!12880
2021-03-26 16:01:47 +00:00
fuzhibo
2f5eba9263 driver(touch): fix touch sensor false trigger in sleep mode 2021-03-26 10:57:50 +08:00
Michael (XIAO Xufeng)
f4e11dce34 Merge branch 'bugfix/clear_interrupt_in_touch_sensor_initialization_backport_v4.2' into 'release/v4.2'
Bugfix/clear interrupt in touch sensor initialization (backport v4.2)

See merge request espressif/esp-idf!12883
2021-03-25 11:04:44 +00:00
fuzhibo
a866f0d8f6 fix: clear interrupt in touch sensor initialization 2021-03-25 11:14:24 +08:00
Michael (XIAO Xufeng)
dd56e9523b Merge branch 'bugfix/fix_driver_dac_ci_fail_backport_v4.2' into 'release/v4.2'
bugfix(dac): fix testcase fail for dac (backport v4.2)

See merge request espressif/esp-idf!12882
2021-03-25 01:21:54 +00:00
Michael (XIAO Xufeng)
e66ac8b2e5 Merge branch 'bugfix/freemodbus_fix_mbm_event_processing_v42' into 'release/v4.2'
Bugfix/freemodbus fix mbm event processing (backport v4.2)

See merge request espressif/esp-idf!12823
2021-03-25 01:18:45 +00:00
Michael (XIAO Xufeng)
a607e0651c Merge branch 'bugfix/uart_read_o2_v4.2' into 'release/v4.2'
hal: workaround for UART FIFO read on ESP32 with -O2 optimization (backport v4.2)

See merge request espressif/esp-idf!12658
2021-03-25 01:17:14 +00:00
Michael (XIAO Xufeng)
b06b8273ee Merge branch 'bugfix/fix_rtc_wdt_in_light_sleep_process_backport_v4.2' into 'release/v4.2'
bugfix: rtc: compile the regi2c_ctrl.c code to iram (backport v4.2)

See merge request espressif/esp-idf!12881
2021-03-24 16:06:50 +00:00
Michael (XIAO Xufeng)
7dbd5e1855 Merge branch 'bugfix/fix_uart_module_enable_issue_v4.2' into 'release/v4.2'
driver(uart): fix uart module reset issue (release V4.2)

See merge request espressif/esp-idf!11969
2021-03-24 11:05:00 +00:00
Jiang Jiang Jian
dbaee379ba Merge branch 'bugfix/fix_coex_reset_last_wait_lose_iram_attr_4_2' into 'release/v4.2'
bugfix/btdm:Fix IRAM_ATTR missing. Backports v4.2

See merge request espressif/esp-idf!12073
2021-03-24 10:27:24 +00:00
fuzhibo
4fb18da50b bugfix(dac): fix testcase fail for dac 2021-03-24 15:50:31 +08:00
fuzhibo
60b604ae6d rtc: compile the regi2c_ctrl.c code to iram 2021-03-24 15:43:47 +08:00
Jiang Jiang Jian
f2f42c4bfc Merge branch 'bugfix/fix_some_wifi_bugs_0323_v4.2' into 'release/v4.2'
esp_wifi: Fix some WiFi bugs (backport v4.2)

See merge request espressif/esp-idf!12859
2021-03-24 07:39:29 +00:00
Jiang Jiang Jian
74649219f4 Merge branch 'bugfix/adc_full_scale_voltages_v4.2' into 'release/v4.2'
docs: Update full-scale voltages for ESP32-S2 chip (v4.2)

See merge request espressif/esp-idf!12208
2021-03-24 04:14:44 +00:00
Ivan Grokhotkov
1c6ab10a70 hal: workaround for UART FIFO read on ESP32 with -O2 optimization 2021-03-24 04:12:42 +00:00
Hou Wen Xiang
c8ef66abad driver(uart): fix uart module reset issue (release V4.2) 2021-03-24 04:10:39 +00:00
Jiang Jiang Jian
c04489cede Merge branch 'bugfix/dport_init_min_stack_size_v4.2' into 'release/v4.2'
freertos: Increase minimum task stack size when stack smashing checker is enabled (v4.2)

See merge request espressif/esp-idf!12799
2021-03-24 04:06:45 +00:00
fuzhibo
9cb875949c fix: RTC_FAST_MEM always power on if used for heap 2021-03-24 11:52:55 +08:00
xiehang
8507f1f777 esp_wifi: Fix some WiFi bugs
1. Unlock mutex for esp_wifi_80211_tx when out of memory.
2. Fix issue that esp_wifi_80211_tx can't be used in ap mode.
3. Clear hotspot bss when auth timeout happens.
4. Fix PMK not saved in NVS for SoftAP for PSK mode.
5. Fix the bug for esptouch find hidden AP fail.
6. Fix not connect to open AP when WPA3 auth fail.
7. Fix issue with hidden AP scans after connecting AP.
8. Fix the watchdog issue when receiving action frame.
9. Fix the issue that the parameters obtained form RAM cannot be saved to NVS.
10.Modify not to store the default value in NVS.
11.Delete interface STATIONAP_IF.
12.Modify the _do_wifi_start and _do_wifi_stop parameters to mode.
13.Fixed issue of reason code change from 15 to 204 when provide wrong password.
14.Fix set config return value error.
15.Fix ampdu age timer memory leak.
2021-03-24 03:40:01 +00:00
Jiang Jiang Jian
bb067c0883 Merge branch 'bugfix/btdm_assert_without_sw_coex_enable_v4.2' into 'release/v4.2'
components/bt: Fix assert without sw coexist enabled

See merge request espressif/esp-idf!12527
2021-03-24 03:23:58 +00:00
Jiang Jiang Jian
0c1ff94823 Merge branch 'bugfix/wpa_supplicant_coverity_issue_fixes_v4.2' into 'release/v4.2'
Bugfix/wpa supplicant coverity issue fixes v4.2

See merge request espressif/esp-idf!12849
2021-03-23 16:04:03 +00:00
Jiang Jiang Jian
def9153200 Merge branch 'mesh/ps_duty_signaling_backport_v4.2' into 'release/v4.2'
mesh/ps: network duty signaling (backport v4.2)

See merge request espressif/esp-idf!12810
2021-03-23 16:02:56 +00:00
XieWenxiang
bfa07bb9d8 component/bt: Modify some ambiguous descriptions (release v4.2) 2021-03-23 23:10:51 +08:00
Jiang Jiang Jian
f8307bcd4e Merge branch 'bugfix/spp_data_send_delay_v4.2' into 'release/v4.2'
Bugfix/spp data send delay v4.2

See merge request espressif/esp-idf!11772
2021-03-23 08:42:05 +00:00
Jiang Jiang Jian
1d227bbb2e Merge branch 'bugfix/crash_on_enabling_verbose_logs_v4.2' into 'release/v4.2'
Fixes issue of crashing when verbose logs are enabled.(v4.2)

See merge request espressif/esp-idf!12845
2021-03-23 08:41:41 +00:00
gengyuchao
d7ea6266b7 Fix coex IRAM missing and Fix C2H flow control issue 2021-03-23 15:47:50 +08:00
shenjun
ad5ef10343 mesh/ps: network duty signaling 2021-03-23 14:57:17 +08:00
Jiang Jiang Jian
20256c5dfd Merge branch 'bugfix/btdm_controller_task_watchdog_in_wifi_test_v4.2' into 'release/v4.2'
Fix controller task watchdog in Wi-Fi test

See merge request espressif/esp-idf!12708
2021-03-23 06:54:00 +00:00
aditi_lonkar
c083d7278d esp_http_client: Fix some memory leak issues by coverity static analyzer. 2021-03-23 11:11:20 +05:30
aditi_lonkar
d417ba0c11 esp_local_ctrl: Fix some memory leak issues by coverity static analyzer. 2021-03-23 11:10:58 +05:30
aditi_lonkar
d734c533a5 wifi_provisioning: Fix some memory leak issues by coverity static analyzer. 2021-03-23 11:10:36 +05:30
aditi_lonkar
c9f2790474 wpa_supplicant: Fix some memory leak issues by coverity static analyzer. 2021-03-23 11:09:52 +05:30
aditi_lonkar
98d19efe6f tcp_transport: Fix some memory leak issues by coverity static analyzer. 2021-03-23 11:09:21 +05:30
aditi_lonkar
4407c9eb83 fatfs: Fix some memory leak issues by coverity static analyzer. 2021-03-23 11:08:12 +05:30
aditi_lonkar
f8c691faaf esp_wifi: Fixes issue of crashing when verbose logs are enabled. 2021-03-23 10:30:32 +05:30
Anton Maklakov
5151fb52ec Merge branch 'bugfix/test_sha_psram' into 'release/v4.2'
CI: disable performance check for PSRAM config

See merge request espressif/esp-idf!12829
2021-03-23 03:53:59 +00:00
Jiang Jiang Jian
399ab25967 Merge branch 'bugfix/fix_wifi_interface_use_v4.2' into 'release/v4.2'
esp_wifi: Modify ESP_IF_WIFI_STA to WIFI_IF_STA (backport v4.2)

See merge request espressif/esp-idf!12166
2021-03-22 14:34:24 +00:00
xiehang
f90b14175c esp_wifi: Modify ESP_IF_WIFI_AP to WIFI_IF_AP 2021-03-22 09:09:58 +00:00
xiehang
1ef10dc284 esp_wifi: Modify ESP_IF_WIFI_STA to WIFI_IF_STA 2021-03-22 09:09:58 +00:00
Jiang Jiang Jian
59d3116e41 Merge branch 'bufix/ag_deep_copy_crash_v_4_2' into 'release/v4.2'
components/bt: Fix crash in btc_hf_arg_deep_copy when name or number is NULL

See merge request espressif/esp-idf!12789
2021-03-22 08:01:23 +00:00
Jiang Jiang Jian
b58d888b77 Merge branch 'bugfix/ping_zero_interval_cause_to_assert_reset_v4.2' into 'release/v4.2'
lw-ip: Fixed ping assert reset when ping interval is 0 (v4.2)

See merge request espressif/esp-idf!12174
2021-03-22 07:59:16 +00:00
Anton Maklakov
e4c021757c Merge branch 'ci/ignore_check_link_result_v4.2' into 'release/v4.2'
CI: ignore result from check_doc_links (v4.2)

See merge request espressif/esp-idf!12783
2021-03-22 03:40:17 +00:00
Marius Vikhammer
fa62dfd5f9 CI: disable performance check for PSRAM config
The cache compensated timer performance check ocasionally
wrong result for psram_2 config. Disabled CI test for now.
2021-03-22 11:39:49 +08:00
Jiang Jiang Jian
fd032425f1 Merge branch 'mesh/support_for_chain_topology_backport_v4.2' into 'release/v4.2'
mesh: support for chain topology (backport v4.2)

See merge request espressif/esp-idf!12806
2021-03-22 03:27:49 +00:00
Chen Wu
c8f8def780 lwip: Fixed ping assert reset when ping interval is 0 2021-03-22 03:26:42 +00:00
aleks
d340fa68aa freemodbus: fix event processing after merge 2021-03-19 15:05:27 +01:00
Jiang Jiang Jian
c9cf7bcb0e Merge branch 'bugfix/fix_some_wifi_bugs_0105_v4.2' into 'release/v4.2'
Bugfix/fix some wifi bugs 0105 v4.2 (backport v4.2)

See merge request espressif/esp-idf!11921
2021-03-19 12:09:01 +00:00
Mahavir Jain
98e703340b Merge branch 'feature/update_wifi_provisioning_readme_v4.2' into 'release/v4.2'
provisioning: Update README.md to explain QR code format [backport v4.2]

See merge request espressif/esp-idf!12803
2021-03-19 10:33:56 +00:00
yuanjm
9ca4799b20 provisioning: update README.md 2021-03-19 06:08:12 +00:00
mjcross
66c533b3d5 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 06:08:12 +00:00
Angus Gratton
9bd9e939ba 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-03-19 12:21:14 +08:00
Angus Gratton
7fc2f91841 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-03-19 12:19:58 +08:00
Jiang Jiang Jian
eedcb8c97f Merge branch 'bugfix/fix_iperf_example_exception_handling_for_no_ap_found_v4.2' into 'release/v4.2'
bugfix/fix_iperf_example_exception_handling_for_no_ap_found_v4.2

See merge request espressif/esp-idf!12268
2021-03-19 04:04:00 +00:00
Jiang Jiang Jian
e305c09b12 Merge branch 'bugfix/pm_dump_format_v4.2' into 'release/v4.2'
esp_pm: fix formatting issues in esp_pm_dump_locks (backport v4.2)

See merge request espressif/esp-idf!12022
2021-03-19 04:01:46 +00:00
Jiang Jiang Jian
0d5286471a Merge branch 'component_bt/optimize_spp_stop_server_v4.2' into 'release/v4.2'
component_bt/Optimize SPP Stop Server API[backport v4.2]

See merge request espressif/esp-idf!12620
2021-03-19 04:01:17 +00:00
shenjun
42fc36ef17 mesh: support for chain topology 2021-03-19 11:37:20 +08:00
xiehang
50bc7db63a esp_wifi: Update WiFi lib
1. Change wifi scan duration from 120ms to 100ms
2. Using deport reg instead of ahb
3. Revert to report specific reason code when receiving deauth during 4-way-handshark
4. Fix the bug that tx ampdu parameter is not from peer device
5. Faster WiFi station connect improvement, avoid 100ms passive scan
6. Add FCS failed packets filter
7. Fix country code last byte to space instead of NULL
8. Fix softap cannot forward A-MSDU
9. Fix max tx power to 20dBm
10. Fix the issue that the esp_wifi_sta_get_ap_info can't get country
11. Update esp32 phy lib to v4660
12. Update esp32s2 phy lib to v1300
13. Fix the bug that esp32s2 can't get CSI info
2021-03-19 03:02:26 +00:00
xiehang
07ca98b5f0 esp_wifi: ESP32 phy add [sections:phy_iram] 2021-03-19 03:02:26 +00:00
ChenJianxing
4650db0841 esp_wifi: optimize phy version log 2021-03-19 03:02:26 +00:00
ronghulin
349b0b5ec5 bugfix: fix some wifi bugs
1. fix max tx power to 20dBm
2. fix the issue that the esp_wifi_sta_get_ap_info can't get country

Closes https://github.com/espressif/esp-idf/issues/6267
2021-03-19 03:02:26 +00:00
xiongweichao
f6f644bf81 components/bt: Fix crash in btc_hf_arg_deep_copy when name or number is NULL 2021-03-18 20:20:19 +08:00
Jiang Jiang Jian
8b0ac7f81e Merge branch 'bugfix/extern_c_decl_4.2' into 'release/v4.2'
[cxx]: fixed extern "C" declarations (backport v4.2)

See merge request espressif/esp-idf!12742
2021-03-18 07:29:20 +00:00
Marius Vikhammer
7aeaf604c2 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:17:46 +08:00
Jiang Jiang Jian
747ecb27d0 Merge branch 'bugfix/idf_size_total_size_without_bss_v4.2' into 'release/v4.2'
tools: Don't count BSS into the total image size (v4.2)

See merge request espressif/esp-idf!12576
2021-03-18 04:32:42 +00:00
Jiang Jiang Jian
359784f0b6 Merge branch 'bugfix/fix_arp_buffer_error_in_smart_config_v4.2' into 'release/v4.2'
bugfix/fix_arp_buffer_error_in_smart_config_v4.2

See merge request espressif/esp-idf!12254
2021-03-18 04:17:36 +00:00
Jiang Jiang Jian
1e1fc92fc2 Merge branch 'bugfix/fatfs_v4.2' into 'release/v4.2'
spi_flash: fix the issue of ext_flash_fatfs_example(backport v4.2)

See merge request espressif/esp-idf!12667
2021-03-18 04:15:35 +00:00
Jiang Jiang Jian
8a26bc72be Merge branch 'bugfix/ip_mesh_transmit_wrap_v4.2' into 'release/v4.2'
esp_mesh: Fix internal ip mesh example to use transmit wrap function (v4.2)

See merge request espressif/esp-idf!12530
2021-03-18 04:14:33 +00:00
Jiang Jiang Jian
caa7dc187d Merge branch 'bugfix/fix_i2s_pdm_config_4.2' into 'release/v4.2'
fix PDM Fp and Fs config error (4.2)

See merge request espressif/esp-idf!10687
2021-03-18 04:13:36 +00:00
Jiang Jiang Jian
2e03275406 Merge branch 'bugfix/freemodbus_fix_event_processing_after_destroy_v4.2' into 'release/v4.2'
freemodbus: fix event processing failure after destroy (backport v4.2)

See merge request espressif/esp-idf!9327
2021-03-18 04:12:03 +00:00
Jiang Jiang Jian
b517b64a30 Merge branch 'bugfix/fix_deepsleep_x32k_wakeup_bug_v4.2' into 'release/v4.2'
Fix esp_hw_support bug (backport v4.2)

See merge request espressif/esp-idf!11835
2021-03-18 04:11:18 +00:00
Jiang Jiang Jian
c4c500e241 Merge branch 'bugfix/deep_sleep_stub_heap_rtc_fast_mem_v4.2' into 'release/v4.2'
deep sleep: Calculate RTC CRC without using any stack or other RTC heap memory (v4.2)

See merge request espressif/esp-idf!10883
2021-03-18 04:09:50 +00:00
Jiang Jiang Jian
aafcc2ca60 Merge branch 'bugfix/flash_encryption_v4.2' into 'release/v4.2'
ota: fix ota with flash encryption(backport v4.2)

See merge request espressif/esp-idf!12701
2021-03-18 04:09:45 +00:00
Jiang Jiang Jian
e027f962df Merge branch 'bugfix/bta_hf_client_sco_co_out_data_v4.2' into 'release/v4.2'
bugfix/if bta_hf_client_sco_co_out_data is called, it will crash when sco disconnected [backport v4.2]

See merge request espressif/esp-idf!12560
2021-03-18 04:04:17 +00:00
Jiang Jiang Jian
4f4cd08aad Merge branch 'bugfix/avrc_set_player_value_cmd_event_unhandle_v_4_2' into 'release/v4.2'
bugfix/fix unhandle RC vendor PDU when tg receive set_player_app_value cmd[backport v4.2]

See merge request espressif/esp-idf!12099
2021-03-18 04:03:49 +00:00
Jiang Jiang Jian
9f3750cee7 Merge branch 'bugfix/btdm_backport_ble_bugs_21_01_29_v4.2' into 'release/v4.2'
Bugfix/btdm backport ble bugs  for v4.2

See merge request espressif/esp-idf!12197
2021-03-18 03:55:04 +00:00
Krzysztof Budzynski
f4c56216e5 Merge branch 'doc/embed_example_v4.2' into 'release/v4.2'
doc: Update the link to an example that embeds a file (v4.2)

See merge request espressif/esp-idf!12656
2021-03-16 08:31:47 +00:00
William Ferguson
be3fc35533 [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
2021-03-15 18:42:19 +08:00
Cao Sen Miao
068dfcf1ba ota: fix ota with flash encryption 2021-03-12 16:45:43 +08:00
Angus Gratton
ce2c615bb3 Merge branch 'bugfix/deepsleep_disable_brownout_s2_v4.2' into 'release/v4.2'
deep_sleep: on S2 disable the brown out detector before deep sleeping (v4.2)

See merge request espressif/esp-idf!12500
2021-03-11 10:49:30 +00:00
baohongde
6c2489682f Fix controller task watchdog in Wi-Fi test 2021-03-11 17:19:16 +08:00
Cao Sen Miao
f80f4cbf2d ci: move freerom/sdmmc repo to psram3 for saving ram 2021-03-11 13:54:15 +08:00
Cao Sen Miao
54b817a59e flash_encryption: Quick fixed the issue that block when flash_encryption_write, Related https://github.com/espressif/esp-idf/issues/6322, Related https://github.com/espressif/esp-idf/issues/6254 2021-03-11 13:52:28 +08:00
Jiang Jiang Jian
fa2c4fe622 Merge branch 'bugfix/fix_a2dp_underrun_issue_4_2' into 'release/v4.2'
Fix A2DP Underrun Issue [backport v4.2]

See merge request espressif/esp-idf!12277
2021-03-10 14:30:28 +00:00
Michael (XIAO Xufeng)
00e2f2e880 Merge branch 'feat/spi_flash_override_size_v4.2' into 'release/v4.2'
spi_flash: add config option to override flash size in bootloader header (v4.2)

See merge request espressif/esp-idf!12452
2021-03-10 10:13:39 +00:00
Cao Sen Miao
e5830907ca spi_flash: fix flash issue of ext_flash_fatfs_example 2021-03-09 18:33:30 +08:00
Angus Gratton
32b0264529 Merge branch 'doc/flash_enc_update_v4.2' into 'release/v4.2'
docs: update flash encryption docs for S2

See merge request espressif/esp-idf!12324
2021-03-09 06:41:53 +00:00
daiziyan
5b6e62d2c4 update CN translation based on reviewers' comments 2021-03-09 10:34:29 +11:00
daiziyan
fdfef114ae api-guides: update CN translation for build-system and build-system-legacy,and fix line break in the EN version 2021-03-09 10:33:44 +11:00
Angus Gratton
c8900823d8 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:33:44 +11:00
Jiang Jiang Jian
37a8c8ce6c Merge branch 'bugfix/btdm_crash_when_esp_restart_v4.2' into 'release/v4.2'
components/bt: Fix crash in Bluetooth when esp_restart

See merge request espressif/esp-idf!12567
2021-03-05 12:27:43 +00:00
Jiang Jiang Jian
2289d4fcc0 Merge branch 'bugfix/fix_csa_channel_crash_v4.2' into 'release/v4.2'
esp_wifi: fix CSA and BAR crash issue(v4.2)

See merge request espressif/esp-idf!12549
2021-03-05 12:24:33 +00:00
Jiang Jiang Jian
e1f1d11b76 Merge branch 'feature/add_init_and_deinit_evt_for_a2dp_4_2' into 'release/v4.2'
feature/ Add A2DP Init and Deinit Complete Evt [backport v4.2]

See merge request espressif/esp-idf!12150
2021-03-05 12:19:18 +00:00
Mahavir Jain
24157cc60a Merge branch 'fix/esp_tls_prevent_freeing_global_CA_store_after_each_request_v4.2' into 'release/v4.2'
fix(esp_tls): prevent freeing global CA store after each request (v4.2)

See merge request espressif/esp-idf!12631
2021-03-05 08:52:38 +00:00
Aditya Patwardhan
a2ccb3c0ac protocomm: Fixed NULL check of allocated memory
Fixes one part of - https://github.com/espressif/esp-idf/issues/6440
2021-03-05 10:06:18 +05:30
Aditya Patwardhan
a2e6db19e6 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:06:10 +05:30
Aditya Patwardhan
d66ad18853 Fix esp_tls: Prevent freeing of global ca store after each connection
when dynamic ssl buffers are enabled
2021-03-05 09:55:10 +05:30
Michael (XIAO Xufeng)
e7435a75f5 Merge branch 'bugfix/phy_xpd_v4.2' into 'release/v4.2'
wifi: add set_xpd_sar override(backport v4.2)

See merge request espressif/esp-idf!11540
2021-03-04 08:41:17 +00:00
Mahavir Jain
10d40bd526 Merge branch 'bugfix/correct_logging_timestamp_format_v4.2' into 'release/v4.2'
log: correct timestamp formatting to unsigned integer type (v4.2)

See merge request espressif/esp-idf!12611
2021-03-04 07:39:33 +00:00
liqigan
60b6968e80 add API esp_spp_stop_srv_scn to stop a specific server 2021-03-04 15:33:47 +08:00
Mahavir Jain
a177897f4d log: correct timestamp formatting to unsigned integer type
Closes https://github.com/espressif/esp-idf/issues/6226

Closes IDFGH-4393
2021-03-04 11:54:30 +05:30
ChenJianxing
1f3b6b2e6d esp_wifi: fix CSA and BAR crash issue. 2021-03-02 11:51:01 +08:00
Roland Dobai
2c85d01603 tools: Don't count BSS into the total image size 2021-03-01 14:39:42 +01:00
KonstantinKondrashov
33236c9593 doc: update S2 flash encryption & secure boot docs 2021-03-01 17:48:17 +08:00
baohongde
70de8f5158 components/bt: Fix crash in Bluetooth when esp_restart 2021-03-01 14:43:45 +08:00
Mahavir Jain
77a78a22f6 Merge branch 'bugfix/esp_wifi_deinit_v4.2' into 'release/v4.2'
esp_wifi_deinit: Return ESP_ERR_WIFI_NOT_STOPPED if wifi is not stopped (v4.2)

See merge request espressif/esp-idf!12540
2021-03-01 05:32:08 +00:00
liaowenhao
8375bb94a4 bugfix/if bta_hf_client_sco_co_out_data is called, it will crash when sco disconnected 2021-03-01 11:34:15 +08:00
Shubham Kulkarni
9689f87887 esp_wifi_deinit: Return ESP_ERR_WIFI_NOT_STOPPED if wifi is not stopped
Add test case to test this workflow
2021-02-26 14:53:59 +05:30
David Cermak
66c89f1093 examples, esp_mesh: Fix internal ip mesh example to use transmit wrap function
Fixed regression caused by recent refactoring of WiFi Tx. If  wasn't defined all transmits end up in a crash.

Closes https://github.com/espressif/esp-idf/issues/6067
2021-02-26 07:50:00 +01:00
baohongde
76b0097103 components/bt: Fix assert without sw coexist enabled 2021-02-26 14:29:34 +08:00
Marius Vikhammer
da809e92b7 docs: update S2 flash encryption docs 2021-02-26 01:42:04 +08:00
Marius Vikhammer
cf87e114cb 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 14:58:50 +08:00
Angus Gratton
af8bc4c436 Merge branch 'bugfix/SECURE_DISABLE_ROM_DL_MODE_does_not_work_v4.2' into 'release/v4.2'
bootloader: SECURE_ENABLE_SECURE_ROM_DL_MODE cannot be y when SECURE_DISABLE_ROM_DL_MODE=y (v4.2)

See merge request espressif/esp-idf!12341
2021-02-24 09:40:44 +00:00
liaowenhao
bfb14130ac bugfix:unhandle event when tg receive set_player_app_value cmd 2021-02-24 07:47:08 +00:00
Michael (XIAO Xufeng)
807e864d7d Merge branch 'revert-983220e2_v4.2' into 'release/v4.2'
ci: enable RS485 related tests again (v4.2)

See merge request espressif/esp-idf!12463
2021-02-24 06:45:58 +00:00
Krzysztof Budzynski
d960752cd9 Merge branch 'docs/remove_rtd_pdf_link_v4.2' into 'release/v4.2'
docs: remove rtd pdf link (v4.2)

See merge request espressif/esp-idf!12466
2021-02-23 10:45:37 +00:00
Marius Vikhammer
c0ae1f03a4 docs: remove RTD download PDF links
PDF download is available from the version selector menu.
Read the docs links are out of date.
2021-02-23 11:39:33 +08:00
Michael (XIAO Xufeng)
c4fe55d42a Revert "ci: temporarily disable RS485 related tests"
This reverts commit 983220e216
2021-02-23 11:00:37 +08:00
Michael (XIAO Xufeng)
15f406ddb7 spi_flash: add config option to override flash size in bootloader header
Sometimes the flash size read from bootloader is not correct. This may
forbid SPI Flash driver from reading the the area larger than the size
in bootloader header.

When the new config option is enabled, the latest configured
ESPTOOLPY_FLAHSIZE in the app header will be used to override the value
read from bootloader header.
2021-02-22 23:18:17 +08:00
Michael (XIAO Xufeng)
e511dd58b3 Merge branch 'bugfix/freemodbus_fix_parity_propagation_issue_v42' into 'release/v4.2'
Bugfix/freemodbus fix parity propagation issue (Backport v4.2)

See merge request espressif/esp-idf!12389
2021-02-22 05:23:02 +00:00
Ivan Grokhotkov
af1ebd7e01 Merge branch 'bugfix/eclipse_make_decode_v4.2' into 'release/v4.2'
tools: Fix Eclipse build: “UnicodeDecodeError: 'ascii' codec can't decode byte” (v4.2)

See merge request espressif/esp-idf!12358
2021-02-19 15:55:37 +00:00
Ivan Grokhotkov
9ebdeea54e Merge branch 'feature/prefer_python3_in_installer_v4.2' into 'release/v4.2'
tools: Prefer python3 during install and export (v4.2)

See merge request espressif/esp-idf!12377
2021-02-19 15:52:45 +00:00
Mahavir Jain
cbe966135e Merge branch 'bugfix/fix_enable_reset_provision_cause_device_crash_v4.2' into 'release/v4.2'
provisioning: Fix enable CONFIG_EXAMPLE_RESET_PROVISIONED will cause device crash [backport v4.2]

See merge request espressif/esp-idf!12352
2021-02-19 12:57:27 +00:00
yuanjm
9240750bf4 provisioning: Fix enable CONFIG_EXAMPLE_RESET_PROVISIONED will cause device crash 2021-02-19 11:31:51 +00:00
Island
cd9237f871 Merge branch 'bugfix/ignore_null_valued_comb_key_4_2' into 'release/v4.2'
Bugfix/ignore null valued comb key 4 2

See merge request espressif/esp-idf!12346
2021-02-18 13:58:25 +00:00
zwj
1b1c917321 add connection parameter check 2021-02-18 09:39:01 +00:00
zwj
171e2c5b1e fix ble connection maximum latency is 499 2021-02-18 09:39:01 +00:00
zwj
6d8a3f0d94 disable bluedroid congest error log print 2021-02-18 09:39:01 +00:00
zhiweijian
c759dade01 fix read multi char failed(GATT_27001) 2021-02-18 09:39:01 +00:00
zhiweijian
2e949ca9ac fix add white list failed 2021-02-18 09:39:01 +00:00
zwj
5d514fdb35 fix bluedroid repair faild if the two most significant bits of public address is '01' 2021-02-18 09:39:01 +00:00
zwj
d5951d3c9e - fix congest return value
- fix system no rsp when doing disconnect
- fix no congest event when ssc do writing performance
2021-02-18 09:39:01 +00:00
zwj
70589fc49d fix ble read multi char err when the number of handles is more than 10 2021-02-18 09:39:01 +00:00
zwj
66b1f37c8b fix scan rsp length err 2021-02-18 09:39:01 +00:00
zwj
c5afe0ea2d fix vendor hci memory leak 2021-02-18 09:39:01 +00:00
Chinmay Chhajed
8455518127 component/bt: Added check for NULL valued combination key. 2021-02-18 06:12:17 +00:00
Chinmay Chhajed
24291f7a3b Bluedroid: Do not initiate/accept connection with device having same BDADDR.
Added BD_ADDR comparison in l2cu_lcp_allocate and removed check from
security connection request handler as it's handled in l2cu_lcp_allocate
for both connection request and create connection.
2021-02-18 06:12:17 +00:00
Chinmay Chhajed
359509ccdc bt: removed esp_bt_get_mac()
There was no need for this function as there is already a way present to
fetch own mac address. Own mac addr can be fetched by calling
controller_get_interface().
2021-02-18 06:12:17 +00:00
Angus Gratton
ceb11fd543 Merge branch 'bugfix/cmake_example_sdkconfig_path_v4.2' into 'release/v4.2'
cmake/example: Move idf_as_lib sdkconfig path to project, document configuring project (v4.2)

See merge request espressif/esp-idf!10859
2021-02-17 22:45:21 +00:00
aleks
be68c0e8d8 freemodbus: fix mb controller parity propagation issues
Closes https://github.com/espressif/esp-idf/issues/6377
2021-02-17 12:40:34 +01:00
Roland Dobai
2c66dfc089 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 19:05:33 +01:00
Mahavir Jain
391b2ebcf0 Merge branch 'bugfix/softap_prov_cookies_v4.2' into 'release/v4.2'
protocomm_httpd: Use HTTP cookies to track session (v4.2)

See merge request espressif/esp-idf!12265
2021-02-11 10:42:42 +08:00
Patryk Krzywdziński
3b5b61f402 Fix eclipse build: “UnicodeDecodeError: 'ascii' codec can't decode byte”
Closes https://github.com/espressif/esp-idf/pull/6505
2021-02-10 12:49:56 +01:00
Piyush Shah
d228fc826c protocomm security1: Restart security session if SESSION_STATE_CMD0 is received
With the introduction of cookies to track a session, it is possible that the
clients restart the provisioning on the same session, specifically when a user
cancels a current provisioning attempt. This can result in an error as the state
on the device side and client side will go out of sync.

This has now been changed such that if SESSION_STATE_CMD0 is received on
an existing session, the state is reset and flow allowed to continue.
2021-02-10 15:47:29 +05:30
Piyush Shah
328254c631 protocomm_httpd: Use HTTP cookies to track session
Earlier, a "socket connection" was being considered as a protocomm "session".
However, for HTTP, we cannot expect clients to necessarily use the same
socket for all requests of a given transaction. This was indeed causing
some failures for Wi-Fi provisioning from Android phones.

So, we have introduced http cookies to track a session even if the socket
connection does not stay intact throughout the transaction.
This change is backward compatible. If the client does not use cookies, the
socket connection will be considered as the session.

Closes: https://github.com/espressif/esp-idf/issues/6316
Reference: https://github.com/espressif/esp-idf/pull/6330
2021-02-10 15:47:28 +05:30
Angus Gratton
2dd5a87cf1 Merge branch 'bugfix/websocket_example_error_handling_v4.2' into 'release/v4.2'
ci: Fix websocket example test error handling

See merge request espressif/esp-idf!11657
2021-02-10 15:51:32 +08:00
Yann Pomarède
4abc541d6f bootloader: SECURE_ENABLE_SECURE_ROM_DL_MODE cannot be y when SECURE_DISABLE_ROM_DL_MODE=y
Closes: https://github.com/espressif/esp-idf/pull/6442
2021-02-09 16:34:30 +08:00
Island
1df0c17b98 Merge branch 'bugfix/ble_mesh_server_model_deinit_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix deinit server models with no matching id (v4.2)

See merge request espressif/esp-idf!12314
2021-02-09 16:25:39 +08:00
Angus Gratton
660f41772c ci: Fix websocket example test error handling
If connection fails for websocket test, a second exception was generated in
__exit__
2021-02-09 06:59:56 +00:00
Angus Gratton
ea476f1731 Merge branch 'bugfix/SECURE_ENABLE_SECURE_ROM_DL_MODE_v4.2' into 'release/v4.2'
bootloader: Fix warnings caused by security features (v4.2)

See merge request espressif/esp-idf!12286
2021-02-09 11:06:50 +08:00
Angus Gratton
6514009b8a soc esp32: Removes parentheses from RTC_MEM_xyz macros that expand directly to single numbers
Not necessary in these cases, and prevents parens from expanding into the
assembly code added in the parent commit - a pattern which is accepted
by GCC assembler but illegal syntax for LLVM assembler.
2021-02-08 09:59:22 +11:00
Angus Gratton
7c5afa262d deep sleep: Calculate RTC CRC immediately before deep sleep, without using RAM
Fix for issues where RTC FAST memory is updated as part of going into deep
sleep. Very high risk if heaps are in RTC memory - in particular task stacks
may be in RTC memory, but also other variables.

Also fixes potential concurrency problems as RTC FAST memory is not accessible
by CPU during the CRC calculation itself.

Method:
- Disable interrupts (currently for single core only, will need update for S3)
- Load all registers before calculating CRC or going to sleep
2021-02-08 09:59:22 +11:00
Angus Gratton
bf9b9c5a97 esp_system: Add test case for using deep sleep wake stub when stack is in RTC memory
This test currently fails on ESP32 & ESP32-S2, fix will be in next commit.
2021-02-08 09:59:22 +11:00
lly
4070a6dc70 ble_mesh: stack: Fix deinit server models with no matching id 2021-02-07 11:18:31 +08:00
Jiang Jiang Jian
0ab739f72c Merge branch 'bugfix/ble_mesh_wifi_coexit_example_v4.2' into 'release/v4.2'
bugfix: Delete local variables to avoid null global variables (backport v4.2)

See merge request espressif/esp-idf!11372
2021-02-05 20:21:58 +08:00
Island
3f46cb9789 Merge branch 'bugfix/ble_mesh_mbedtls_aes_fix_v4.2' into 'release/v4.2'
Bugfix/ble mesh mbedtls aes fix (v4.2)

See merge request espressif/esp-idf!12270
2021-02-05 14:46:00 +08:00
lly
c74c7fdb5a ble_mesh: stack: Fix mbedtls aes ctx not deallocated 2021-02-05 03:26:26 +00:00
lly
02d3d358b5 ble_mesh: stack: Fix mbedtls aes ctx not initialized 2021-02-05 03:26:26 +00:00
Ivan Grokhotkov
74e1613b17 Merge branch 'bugfix/nvs_close_nukes_all_handles_v4.2' into 'release/v4.2'
NVS: fixed deinit other partition's handles (v4.2)

See merge request espressif/esp-idf!11497
2021-02-05 10:06:37 +08:00
Ivan Grokhotkov
89cab3140d Merge branch 'bugfix/idf_monitor_baudrate_arg_crash_v4.2' into 'release/v4.2'
idf monitor: fix crash when monitor baudrate argument set (Backport v4.2)

See merge request espressif/esp-idf!9758
2021-02-05 10:06:07 +08:00
Mahavir Jain
040f5c8e0a Merge branch 'bugfix/reenable_encrypted_partition_write_v4.2' into 'release/v4.2'
Re-enable encrypted flash read/writes even if flash encryption is disabled (v4.2)

See merge request espressif/esp-idf!12190
2021-02-05 01:05:04 +08:00
Mahavir Jain
aa3efa6cf1 Merge branch 'bugfix/protocomm_http_print_v4.2' into 'release/v4.2'
protocomm_httpd: Change an info print to debug print as it isn't really required in the logs (v4.2)

See merge request espressif/esp-idf!12261
2021-02-04 23:09:28 +08:00
KonstantinKondrashov
a8df2af065 bootloader: Fix warnings caused by security features
Closes: https://github.com/espressif/esp-idf/issues/6198
2021-02-04 22:24:25 +08:00
weitianhua
d254804a62 Fix A2DP Underrun Issue 2021-02-04 19:33:14 +08:00
dongyou
7da388e52a add exception handling for iperf example's scan when no ap was found 2021-02-04 17:37:43 +08:00
Piyush Shah
5c6b9d0625 protocomm_httpd: Change an info print to debug print as it isn't really required in the logs 2021-02-04 15:02:52 +05:30
dongyou
024aaeb201 fix smartconfig issue when router reply arp late 2021-02-04 11:23:06 +08:00
Mahavir Jain
79aa9636b9 unit-test-app: disable encrypted flash read/write in psram config to fix build failure 2021-02-03 09:07:36 +00:00
Mahavir Jain
19b7705b8d spi_flash: add config option to enable encrypted partition read/write
This feature can be disabled to save some IRAM (approx 1KB) for cases
where flash encryption feature is not required.
2021-02-03 09:07:36 +00:00
Mahavir Jain
294fe8238c Revert "esp_partition: disable encrypted reads/writes if flash encryption is disabled"
This reverts commit bf35ef1ce7.

It has been noticed that there are scenarios where even though firmware is not enabled
with flash encryption config feature, it should be able to write to encrypted partitions.

This revert adds the feature back which was removed around v4.0 timelines, and same
change will be backported to all releases (upto v4.0) for consistency.
2021-02-03 09:07:36 +00:00
Michael (XIAO Xufeng)
0382c2e04e Merge branch 'bugfix/mcpwm_can_set_two_falut_signal_v4.2' into 'release/v4.2'
mcpwm: fix second fault line broken issue (v4.2)

See merge request espressif/esp-idf!12171
2021-02-03 14:49:16 +08:00
Anton Maklakov
81680a633f Merge branch 'bugfix/ttfw_idf_find_artifacts_inaccurate_with_same_prefix_path_v4.2' into 'release/v4.2'
CI: fix the bug returns wrong artifact path when app_name is a subset of a longer one (v4.2)

See merge request espressif/esp-idf!12228
2021-02-03 11:34:34 +08:00
David Čermák
6fd3557d99 Merge branch 'feature/support_transport_keepalive_v4.2' into 'release/v4.2'
Feature/support transport keepalive v4.2 [backport v4.2]

See merge request espressif/esp-idf!12157
2021-02-03 03:46:24 +08:00
Krzysztof Budzynski
f697f475e5 Merge branch 'doc/uart_num_fix_v4.2' into 'release/v4.2'
docs: fix uart number naming error (v4.2)

See merge request espressif/esp-idf!12068
2021-02-02 16:08:33 +08:00
Fu Hanxi
d9455d8587 CI: fix the bug returns wrong artifact path when app_name is a subset of a longer one 2021-02-02 11:14:06 +08:00
Mahavir Jain
2ea3519964 Merge branch 'bugfix/update_howsmyssl_cert_v4.2' into 'release/v4.2'
examples/protocols: update www.howsmyssl.com certificate to fix test failures (v4.2)

See merge request espressif/esp-idf!12211
2021-02-01 20:25:00 +08:00
Mahavir Jain
0dedf0e1f5 examples/protocols: update www.howsmyssl.com certificate to fix test failures 2021-02-01 11:01:35 +05:30
Krzysztof
250805d991 docs: Update full-scale voltages for ESP32-S2 chip 2021-02-01 11:22:49 +08:00
morris
48dc6e9347 mcpwm: fix second fault line broken
Closes: https://github.com/espressif/esp-idf/issues/6053
2021-01-27 14:56:33 +08:00
morris
87b051c87a mcpwm: fix wrong capture edge 2021-01-27 14:56:33 +08:00
Michael (XIAO Xufeng)
10f16c5d72 Merge branch 'bugfix/soc_caps_implicit_inc_v4.2' into 'release/v4.2'
HAL: explicitly include soc_caps.h  (v4.2)

See merge request espressif/esp-idf!11896
2021-01-27 10:33:42 +08:00
yuanjm
fd5f65a2d4 Make OTA example support keepalive 2021-01-26 14:09:13 +08:00
Shubham Kulkarni
90218b4e9b Add options for esp_http_client and esp_websocket_client to support keepalive 2021-01-26 14:09:01 +08:00
yuanjm
cbca521e28 Modify esp-tls and tcp_transport to support keep alive for tcp and ssl connection 2021-01-26 14:08:45 +08:00
weitianhua
186ebc61e7 Add init & deinit event for a2dp 2021-01-26 10:51:47 +08:00
Mahavir Jain
c4d0a384b0 Merge branch 'fix/esp_tls_fix_memory_leak_v4.2' into 'release/v4.2'
Fix/esp tls fix memory leak v4.2

See merge request espressif/esp-idf!12085
2021-01-22 21:37:58 +08:00
Mahavir Jain
be26d45d78 Merge branch 'bugfix/httpd_session_close_lru_v4.2' into 'release/v4.2'
esp_http_server: Add flag in sock_db to identify httpd_sess_close is called from httpd_session_close_lru (v4.2)

See merge request espressif/esp-idf!12112
2021-01-22 21:22:11 +08:00
Shubham Kulkarni
6b054fb4a6 Enable lru_purge_enable in simple HTTP server example 2021-01-22 15:33:57 +05:30
Mahavir Jain
ecbf436de4 Merge branch 'bugfix/http_client_buffer_overread_v4.2' into 'release/v4.2'
esp_http_client: Fix buffer overread, update https_request example to use HTTP/1.1 (v4.2)

See merge request espressif/esp-idf!12108
2021-01-22 17:45:31 +08:00
Mahavir Jain
4d1ada8ab5 Merge branch 'bugfix/misc_secure_boot_v4.2' into 'release/v4.2'
Bugfix/misc secure boot v2 (v4.2)

See merge request espressif/esp-idf!11743
2021-01-22 16:27:10 +08:00
Shubham Kulkarni
1c732d7556 esp_http_server: Add lru_socket flag in sock_db to indicate httpd_sess_close is called from httpd_sess_close_lru 2021-01-22 11:16:10 +05:30
Shubham Kulkarni
29feb17636 esp_http_client.c: Clear raw_len for response buffer after dispatching HTTP_EVENT_ON_FINISH event
Closes: https://github.com/espressif/esp-idf/issues/6146
2021-01-22 11:03:23 +05:30
Angus Gratton
7ceaac64bf Merge branch 'bugfix/secure_boot_sig_failed_crash_v4.2' into 'release/v4.2'
secure boot: Fix crash if signature verification fails in app (v4.2)

See merge request espressif/esp-idf!11924
2021-01-22 07:58:24 +08:00
Aditya Patwardhan
84219fe844 esp_tls_wolfssl: Move order of crt_bundle check to match that in
esp_tls_mbedtls
2021-01-21 10:45:42 +05:30
Aditya Patwardhan
a5cf243ea0 esp-tls: Fix mem leak when global_ca_store is freed 2021-01-21 10:45:18 +05:30
Island
56de4bbc4d Merge branch 'bugfix/ble_mesh_node_set_name_status_check_v4.2' into 'release/v4.2'
ble_mesh: stack: Remove node set device name return status check (v4.2)

See merge request espressif/esp-idf!12081
2021-01-21 11:07:58 +08:00
Island
7c9be015aa Merge branch 'bugfix/ble_mesh_proxy_client_net_resend_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix proxy client may fail to resend msg (v4.2)

See merge request espressif/esp-idf!12079
2021-01-21 11:07:27 +08:00
Island
54d8a1f76b Merge branch 'bugfix/ble_mesh_prov_use_diff_rand_v4.2' into 'release/v4.2'
ble_mesh: stack: Use different random for each provisioning (v4.2)

See merge request espressif/esp-idf!12077
2021-01-21 11:07:02 +08:00
lly
4510332e96 ble_mesh: stack: Remove node set device name return status check 2021-01-20 21:11:21 +08:00
lly
370e65ec8a ble_mesh: stack: Fix proxy client may fail to resend msg 2021-01-20 21:10:18 +08:00
lly
962b14d653 ble_mesh: stack: Use different random for each provisioning 2021-01-20 21:09:09 +08:00
Marius Vikhammer
d8ba0f9b0e docs: fix uart number naming error 2021-01-20 17:55:07 +08:00
Ivan Grokhotkov
967c07b6ae Merge branch 'bugfix/nvs_check_external_partition' into 'release/v4.2'
NVS: ensuring default partition

See merge request espressif/esp-idf!8934
2021-01-20 07:44:28 +08:00
David Čermák
ad47ed5ef1 Merge branch 'bugfix/mdns_txt_length_collision_v4.2' into 'release/v4.2'
mDNS: Fix of text length calculation when detecting a collision(Backport v4.2)

See merge request espressif/esp-idf!12029
2021-01-19 22:15:05 +08:00
Island
db2ddebc23 Merge branch 'bugfix/ble_mesh_log_macro_v4.2' into 'release/v4.2'
ble_mesh: stack: Add prefix for log macros (v4.2)

See merge request espressif/esp-idf!12052
2021-01-19 17:34:05 +08:00
lly
f56fe3f877 ble_mesh: stack: Fix compile warning when log is disabled 2021-01-19 14:04:45 +08:00
lly
571da869f5 ble_mesh: ci: Add disable log sdkconfig test files 2021-01-19 14:04:45 +08:00
lly
d545f1223f ble_mesh: stack: Add prefix BLE_MESH_ for log related macros 2021-01-19 14:04:44 +08:00
David Čermák
8cd16b60f5 Merge branch 'bugfix/ppp_deinit_failure_v4.2' into 'release/v4.2'
esp_modem: Fixed race condition on exiting PPP mode (v4.2)

See merge request espressif/esp-idf!11870
2021-01-19 02:42:50 +08:00
Island
a4525284bd Merge branch 'update/ble_mesh_set_hsl_states_v4.2' into 'release/v4.2'
ble_mesh: stack: Enable updating lighting hsl state (v4.2)

See merge request espressif/esp-idf!12036
2021-01-18 19:10:31 +08:00
Island
e36282787e Merge branch 'bugfix/ble_mesh_build_error_c3_merge_master_v4.2' into 'release/v4.2'
Bugfix/ble mesh build error merge master (v4.2)

See merge request espressif/esp-idf!12038
2021-01-18 19:10:21 +08:00
Jiang Jiang Jian
b24ccd8a20 Merge branch 'bugfix/fix_iperf_example_crash_issue_v4.2' into 'release/v4.2'
Bugfix/fix iperf example crash issue v4.2 (backport v4.2)

See merge request espressif/esp-idf!12024
2021-01-18 19:09:37 +08:00
lly
c44dc1f262 ble_mesh: stack: Fix compile warning with BIT macro 2021-01-18 14:07:30 +08:00
lly
de166facd7 ble_mesh: stack: Update mesh max conn macro when using bluedroid 2021-01-18 14:07:24 +08:00
lly
71f4c476cb ble_mesh: stack: Enable updating lighting hsl state 2021-01-18 14:01:39 +08:00
Island
b4735859d6 Merge branch 'bugfix/bluedroid_avoid_same_bdaddr_conn_v4.2' into 'release/v4.2'
Bluedroid: Do not connect if peer BD_ADDR is same as own BD_ADDR. (v4.2)

See merge request espressif/esp-idf!11990
2021-01-18 14:01:31 +08:00
David Čermák
28371f45a4 Merge branch 'bugfix/ppp_netif_free_v4.2' into 'release/v4.2'
esp-modem: Remove esp-netif destroy from modem network glue code (v4.2)

See merge request espressif/esp-idf!11872
2021-01-16 00:57:15 +08:00
David Cermak
84039dc77d esp_modem: Fixed race condition on exiting PPP mode
esp_modem_stop_ppp() stops both ppp netif and switches the modem back to
command mode. IF these two actions are not synchronised, we might
experience issues of
* active PPP session trying to send/receive uart-data
* command mode already active before modem switched to it
both resulting in crashes.
Fixed by introducing the transition mode and running these actions in sequence
* set esp-modem to transition mode
* enter command mode, wait for the reply or re-sync
* close the PPP netif
* wait until the netif closes
Other fixes include ignoring certain events if modem component not ready
or not in appropriate mode:
* ignoring all UART events comming from DTE with no DCE attached
* ignore pattern detection in PPP mode
2021-01-15 17:38:30 +01:00
David Čermák
67a3ff8a4b Merge branch 'bugfix/esp_netif_ppp_event_data_v4.2' into 'release/v4.2'
esp-netif: Fix PPP netif event posting to include esp_netif data (v4.2)

See merge request espressif/esp-idf!11868
2021-01-15 23:48:27 +08:00
suren.gabrielyan
500edd412a mDNS: Fix of text length calculation when detecting a collision 2021-01-15 17:11:14 +04:00
suren.gabrielyan
cc0ad534e9 mDNS: Fix of collision detection during txt length calculation
Closes https://github.com/espressif/esp-idf/issues/6114
2021-01-15 17:10:35 +04:00
xiehang
b78fbdab12 example: Scan failure should not cause system crash 2021-01-15 20:21:35 +08:00
xiehang
30becdfaab example: do not check the return value of esp_wifi_connect() 2021-01-15 20:20:17 +08:00
Ivan Grokhotkov
95c360fcbd esp_pm: fix formatting issues in esp_pm_dump_locks
- line was truncated because 64 characters were not sufficient
- length passed to snprintf should be full buffer length, not -1
- make the width of lock name field fixed
- fix alignment of lock type column
2021-01-15 13:18:06 +01:00
David Čermák
7ff123562b Merge branch 'bugfix/mdns_resolve_nonstrict_answers_v4.2' into 'release/v4.2'
mdns: Allow resolve (it's own) non-strict answers (v4.2)

See merge request espressif/esp-idf!11818
2021-01-15 19:51:04 +08:00
David Cermak
53fc156adb esp-modem: Remove esp-netif destroy from modem network glue code
To be in line with other interfaces, when deleting the driver and it's glue layer to esp-netif, we DO NOT delete the related esp-netif (since is was allocated and created outside of the glue code and it works the same way in esp-eth and esp-wifi driver/glue layers).

Closes https://github.com/espressif/esp-idf/issues/5486
2021-01-15 11:48:26 +00:00
Marius Vikhammer
cf7bea6dff idf monitor: fix crash when monitor baudrate argument set
Closes IDF-1902
2021-01-15 09:09:49 +00:00
Island
67fb958b8c Merge branch 'bugfix/ble_mesh_macro_OR_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix using wrong | for OR between macros (v4.2)

See merge request espressif/esp-idf!11997
2021-01-15 11:04:47 +08:00
lly
cd1fbfdee1 ble_mesh: stack: Fix using wrong | for OR between macros 2021-01-14 19:03:00 +08:00
Island
8911c29122 Merge branch 'feat/ble_mesh_support_ble_scan_v4.2' into 'release/v4.2'
ble_mesh: stack: Add BLE scan callback when mesh is enabled (v4.2)

See merge request espressif/esp-idf!11963
2021-01-14 19:01:05 +08:00
lly
a3fa7dda33 ble_mesh: ci: Add ble & ble mesh coex sdkconfig test files 2021-01-14 07:30:47 +00:00
lly
c8890a40e4 ble_mesh: stack: Support reporting normal ble adv packets 2021-01-14 07:30:47 +00:00
lly
a91addb716 ble_mesh: stack: Add a btc file for ble coex functions
Previously if starting/stopping BLE advertising when BLE Mesh
is enabled, the corresponding events will be notified through
the callback registered by esp_ble_mesh_register_prov_callback().

With this commit, the func esp_ble_mesh_register_ble_callback()
needs to be invoked for resgitering the callback used for BLE
coexistence related functionalities (i.e. ADV/SCAN).
2021-01-14 07:30:47 +00:00
lly
396c6a3bc5 ble_mesh: stack: Move ble scan funcitons to a single file 2021-01-14 07:30:47 +00:00
lly
96182bdc43 ble_mesh: stack: Optimize handling received mesh adv packets 2021-01-14 07:30:47 +00:00
Chinmay Chhajed
4cfece437d Bluedroid: Do not connect if peer BD_ADDR is same as own BD_ADDR. 2021-01-14 12:22:30 +05:30
Angus Gratton
73023f7ff7 Merge branch 'ci/increase_build_example_parallel_count' into 'release/v4.2'
ci: Add 1 parallel count for building example

See merge request espressif/esp-idf!11976
2021-01-14 14:33:26 +08:00
lly
bd0f520a95 ci: Add 1 parallel count for building example 2021-01-13 16:21:15 +08:00
Mahavir Jain
e5553b964d Merge branch 'fix/esp_tls_add_warning_if_ca_chain_has_invalid_cert_v4.2' into 'release/v4.2'
esp_tls: Add warning if the CA chain provided contains invalid cert (v4.2)

See merge request espressif/esp-idf!11939
2021-01-12 23:26:32 +08:00
Supreet Deshpande
7453507d93 Secure boot v2: Fixes the issue of passing the flash calculated digest for ota verification. 2021-01-12 11:16:23 +00:00
Supreet Deshpande
b979dacc6c Secure Boot v2: Fix the double padding of the image length during flash encryption
Fixes https://github.com/espressif/esp-idf/issues/6236
2021-01-12 11:16:23 +00:00
Island
21eac48ea0 Merge branch 'optimize/ble_mesh_miscellaneous_v4.2' into 'release/v4.2'
Optimize/ble mesh miscellaneous (v4.2)

See merge request espressif/esp-idf!11948
2021-01-12 19:13:08 +08:00
lly
fe6103c088 ble_mesh: stack: Move bt_mesh_rand to mesh_common.c 2021-01-11 19:26:49 +08:00
lly
f031dc6d29 ble_mesh: stack: Remove useless BT_DBG_ENABLED in a few files 2021-01-11 19:26:49 +08:00
lly
85de3a84e1 ble_mesh: Replace zephyr integer types with C99 types [Zephyr] 2021-01-11 19:26:46 +08:00
lly
3f361cc262 ble_mesh: stack: Update ARRAY_SIZE definition 2021-01-11 19:25:52 +08:00
Island
8f20b9dc8a Merge branch 'feat/ble_mesh_multiple_nvs_namespace_v4.2' into 'release/v4.2'
ble_mesh: stack: Provisioner supports multiple nvs namespaces (v4.2)

See merge request espressif/esp-idf!11935
2021-01-11 18:55:22 +08:00
Aditya Patwardhan
e33cfbaef9 esp_tls: Add warning if the CA chain provided contains one/more invalid
cert
2021-01-11 12:02:30 +05:30
Mahavir Jain
60a808372e Merge branch 'feature/upgrade_mbedtls_to_v4.2' into 'release/v4.2'
mbedtls: upgrade to v2.16.9 release (v4.2)

See merge request espressif/esp-idf!11899
2021-01-11 14:01:11 +08:00
lly
3a1018f603 ble_mesh: ci: Add settings sdkconfig test files 2021-01-11 10:08:00 +08:00
lly
c5d9601e69 ble_mesh: stack: Provisioner supports multiple nvs namespaces
Now Provisioner can use different NVS namespaces to store
different instances of mesh information, for example, for
different user accounts.
2021-01-11 10:07:55 +08:00
Island
2aafcd9b1f Merge branch 'feat/ble_mesh_provisioner_recv_hb_support_v4.2' into 'release/v4.2'
Feat/ble mesh provisioner recv hb support (v4.2)

See merge request espressif/esp-idf!11913
2021-01-08 18:30:35 +08:00
Morozov-5F
0e4f43ddde secure boot v2: Fix crash if signature verification fails in app
sha_handle is "finished" when verify_secure_boot_signature() returns and
should be nulled out.

Alternative version of fix submitted in https://github.com/espressif/esp-idf/pull/6210

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

Signed-off-by: Angus Gratton <angus@espressif.com>
2021-01-08 18:45:49 +11:00
Anton Maklakov
0c3c09e7ef Merge branch 'bugfix/icmp_echo_test_v4.2' into 'release/v4.2'
CI: change icmp example test address to ci.espressif.cn (v4.2)

See merge request espressif/esp-idf!11903
2021-01-08 11:16:15 +08:00
lly
1efa401884 ble_mesh: ci: Add enabling hb recv sdkconfig file 2021-01-08 09:32:23 +08:00
lly
0432d11509 ble_mesh: stack: Provisioner supports receiving heartbeat 2021-01-08 09:32:23 +08:00
Marius Vikhammer
8c4839e9e6 CI: change icmp example test address
Use a server that is inside the great firewall of china for CI test.
This avoid issues due to proxies, network configs etc.
2021-01-07 14:49:29 +08:00
Mahavir Jain
ce72deea7f mbedtls: upgrade to v2.16.9 release
For details release notes please refer to:
https://github.com/ARMmbed/mbedtls/releases/tag/v2.16.9
2021-01-07 11:15:42 +05:30
Armando
929632739a spi: fix duplex mode switch issue for multi devices 2021-01-07 11:56:16 +08:00
Marius Vikhammer
5e9783f4a6 hal: include pcnt_caps.h
Some HAL files depend on x_caps.h, but didnt explicitly include it

Fixes issue where only 4 PCNT (out of 8) could be used on ESP32

Closes https://github.com/espressif/esp-idf/issues/6366
2021-01-07 03:01:55 +00:00
Island
474224d668 Merge branch 'bugfix/ble_mesh_node_id_adv_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix Node ID adv with wrong timeout (v4.2)

See merge request espressif/esp-idf!11877
2021-01-06 17:08:21 +08:00
lly
53935d5933 ble_mesh: stack: Fix Node ID adv with wrong timeout 2021-01-06 05:33:41 +00:00
Jiang Jiang Jian
47aa7408f5 Merge branch 'bugfix/fix_tx_issue_after_esp_restart_v4.2' into 'release/v4.2'
components/bt: Shutdown Bluetooth before esp_restart. (V4.2)

See merge request espressif/esp-idf!11755
2021-01-06 12:32:33 +08:00
Jiang Jiang Jian
70ecd0e92c Merge branch 'bugfix/btdm_blufi_send_custom_data_will_congested_after_connection_is_broken_v4.2' into 'release/v4.2'
component/bt: fix Blufi sends customer data will congested when connection is broken(backport v4.2)

See merge request espressif/esp-idf!11847
2021-01-06 12:29:44 +08:00
Jiang Jiang Jian
caddd5d9fa Merge branch 'bugfix/fix_spp_vfs_dynamic_memory_bugs_v4.2' into 'release/v4.2'
component_bt/fix spp vfs demo crash when use dynamic memory[backport v4.2]

See merge request espressif/esp-idf!11726
2021-01-06 12:20:22 +08:00
David Cermak
c5b2252e03 esp-netif: Fix PPP netif event posting to include esp_netif data
Closes https://github.com/espressif/esp-idf/issues/6009
2021-01-04 16:41:25 +01:00
baohongde
f3c9a71138 components/bt: Add API to config QoS 2021-01-04 11:53:04 +08:00
XieWenxiang
5da8c3f8de component/bt: fix Blufi sends customer data will congested when connection is broken 2020-12-31 15:38:49 +08:00
Mahavir Jain
248857bf91 Merge branch 'fix/i2c_pm_lock_v4.2' into 'release/v4.2'
i2c: Acquire PM lock after acquiring mutex (v4.2)

See merge request espressif/esp-idf!11830
2020-12-31 12:33:36 +08:00
Mahavir Jain
6216f99265 Merge branch 'fix/wolfssl_domain_name_check_v4.2' into 'release/v4.2'
esp_tls_wolfssl : Add domain name check (v4.2)

See merge request espressif/esp-idf!11816
2020-12-30 21:48:31 +08:00
chaijie
6d6fbc3860 1. Optimize 32k xtal configure param to get optimal startup time for ESP32S2;
2. Solve bug of wakeup fail when pd peripheral for ESP32S2;
3. clear rtc force pu configuration when goto deepsleep after lightsleep.
2020-12-30 16:47:41 +08:00
Sachin Parekh
14587e7e73 i2c: Acquire PM lock after acquiring mutex 2020-12-30 13:24:38 +05:30
David Cermak
9f9013c8c3 mdns: Allow resolve its own non-strict answers
the mDNS responder should not repeat questions when replying, however resolvers
must ignore these questions field if they are present. esp-idf mDNS
library does include questions in answering packets (thus not strictly
following the RFC6762) so the resolver did not correctly resolved
another instance host name.

Closes https://github.com/espressif/esp-idf/issues/6190
2020-12-29 19:05:11 +01:00
Aditya Patwardhan
076ad543fb esp_tls_wolfssl : Add domain name check 2020-12-29 21:11:08 +05:30
Ivan Grokhotkov
24f98bf80b Merge branch 'bugfix/crt_bundle_bad_md_v4.2' into 'release/v4.2'
esp_crt_bundle: allow weak hash algorithm for trusted certificate (backport v4.2)

See merge request espressif/esp-idf!11655
2020-12-28 22:30:16 +08:00
Ivan Grokhotkov
4360410107 Merge branch 'bugfix/tools_python_subprocess_capture_output_v4.2' into 'release/v4.2'
tools: Avoid subprocess.run(capture_output) argument for Python <3.7 compatibility (v4.2)

See merge request espressif/esp-idf!11506
2020-12-28 07:45:51 +08:00
Jiang Jiang Jian
68095a65ac Merge branch 'bugfix/bt_bluedroid_same_public_key_attack_v4.2' into 'release/v4.2'
Bluedroid: Fixes for some Bluetooth vulnerabilities. (v4.2)

See merge request espressif/esp-idf!11763
2020-12-25 23:35:15 +08:00
Chinmay Chhajed
235628355f Bluedroid: Fixes for some vulnerabilities.
This commit fixes 'Impersonation in Passkey entry protocol'
(CVE-2020-26558) and suggests fixes for other vulnerabilites like
'Impersonation in the Pin Pairing Protocol' (CVE-2020-26555) and
'Authentication of the LE Legacy Pairing Protocol'

CVE-2020-26558 can be easily implemented if the peer device can
impersonate our public key. This commit adds a check by comparing our
and received public key and returns failed pairing if keys are same.

This commit also adds comments suggesting to use secure connection when
supported by all devices.
2020-12-25 16:01:11 +05:30
baohongde
567562a0fb components/bt: Add QOS for SPP, to decrease the delay from slave to master 2020-12-25 14:51:15 +08:00
baohongde
d694036789 components/bt: Shutdown Bluetooth before esp_restart. 2020-12-25 14:06:22 +08:00
Jakob Hasse
26ba5e1b51 nvs_flash: fixed deinit other partition's handles
* When deinitializing or erasing a partition,
  nvs used to close all handles instead of only
  the current partition's handles.
  This is fixed now
* Added a unit test for that case
* Unit tests clean up after each test case now

Closes FCS-533
2020-12-24 19:20:04 +08:00
Anton Maklakov
ecc2dd4b23 Merge branch 'bugfix/ci_retries_when_download_v4.2' into 'release/v4.2'
CI: retry shell commands when download (v4.2)

See merge request espressif/esp-idf!9888
2020-12-24 16:20:12 +08:00
Angus Gratton
774fb48f9e Merge branch 'bugfix/spiram_reserve_size_pr5373_v4.2' into 'release/v4.2'
SPIRAM reserved memory size fixes (v4.2)

See merge request espressif/esp-idf!11516
2020-12-24 13:55:35 +08:00
liqigan
40873d2026 fix spp vfs demo crash when use dynamic memory 2020-12-23 15:06:34 +08:00
Jiang Jiang Jian
ac5b7be7c2 Merge branch 'bugfix/fix_some_wifi_bugs_1222_v4.2' into 'release/v4.2'
esp_wifi: fix some wifi bugs 1222 (backport v4.2)

See merge request espressif/esp-idf!11711
2020-12-23 12:04:22 +08:00
Jiang Jiang Jian
c09a265f32 Merge branch 'bugfix/fix_crash_of_divide_zero_4_2' into 'release/v4.2'
Fix crash caused by dividing zero [backport v4.2]

See merge request espressif/esp-idf!11418
2020-12-23 11:20:48 +08:00
weitianhua
ef84e386e4 Fix divided by zero err & clear timer after remote reject when respond the parameters update 2020-12-22 16:37:31 +08:00
zhangyanjiao
44b1c3b307 esp_wifi: update wifi lib 2020-12-22 16:05:39 +08:00
zhangyanjiao
3acd9861bf wpa_supplicant: Use WPA3 flag to reduce code size
Flag ESP32_WIFI_ENABLE_WPA3_SAE from Menuconfig is used to
control the stack size required by WPA3. Use the same flag
to compile out the WPA3 code and control the code size.
With this flag disabled code footprint reduces by about 7.7kB
in libwpa_supplicant.a
Update WiFi libs with added checks to cleanly handle disabling
of WPA3 callbacks.
2020-12-22 15:50:52 +08:00
dongyou
0bd758c0b1 WIFI: Iperf example's parameter opt was uninitialized, may leads setsockoption invalide if it equal to 0 2020-12-22 15:46:36 +08:00
dongyou
12eb9d6d80 esp_wifi:
1. Add description for esp_wifi_set_inactive_time()
2. Add documentation to avoid using WiFi modem sleep for WiFi/BT coexistence
3. Remove description of unusable API esp_wifi_restart()
4. Update esp_now_fetch_peer discription
5. Update table format prblm for esp_wifi_set_max_tx_power()
6. Update description for ssid and password
2020-12-22 15:44:07 +08:00
kapil.gupta
33c296b78e wpa_supplicant: Replace internal RSA APIs by mbedtls APIs
Curretly wpa_supplicant uses internal APIs for RSA operations
which internally uses lots of big num operations.

Big num operations are CPU expensive and can take a lot of time
which can cause watchdog timer to tigger.

This can be optimize by using mbedtls APIs which uses
hardware blocks for big num operations.

To fix this, write new crypto_mbedtls-rsa.c which has APIs
similar to crypto_internal-rsa.c but uses mbedtls APIs.
2020-12-22 15:37:38 +08:00
Anton Maklakov
e6d74b2d7e Merge branch 'ci/disable_dev_push_pipelines_v4.2' into 'release/v4.2'
CI: Disable pipelines generated by push on dev branches (v4.2)

See merge request espressif/esp-idf!11592
2020-12-22 13:11:49 +08:00
Jiang Jiang Jian
866399cbf7 Merge branch 'bugfix/pmf_tx_rx_routine_v4.2' into 'release/v4.2'
esp_wifi: Always register pmf tx/rx routines (backport v4.2)

See merge request espressif/esp-idf!11447
2020-12-22 00:02:31 +08:00
Mahavir Jain
573708ea1e Merge branch 'fix/update_tls_sockfd_after_freeing_internally_v4.2' into 'release/v4.2'
esp-tls : (Fix) update tls->sockfd value after socket is freed internally (v4.2)

See merge request espressif/esp-idf!11695
2020-12-21 15:59:44 +08:00
Aditya Patwardhan
4c66d146eb esp-tls : (Fix) update tls->sockfd value after socket is freed internally
Closes https://github.com/espressif/esp-idf/issues/6163
2020-12-21 11:23:22 +05:30
Jiang Jiang Jian
cfd234da3a Merge branch 'bugfix/exl200_reset_and_adv_v4.2' into 'release/v4.2'
Bugfix/exl200 reset and adv v4.2

See merge request espressif/esp-idf!11671
2020-12-18 21:54:06 +08:00
Krzysztof Budzynski
fd68c06824 Merge branch 'bugfix/doxygen_warnings_v4.2' into 'release/v4.2'
Docs: fix doxygen warnings (backport v4.2)

See merge request espressif/esp-idf!11674
2020-12-18 15:59:39 +08:00
Marius Vikhammer
d9cea5dfdb Docs: fix doxygen warnings 2020-12-18 14:27:17 +08:00
wangcheng
98a536894d components/bt:fix exl200, add btdm_disable_adv_delay, fix RPA addr update error. 2020-12-18 11:34:34 +08:00
wangcheng
9ca6aee845 components/bt: Fixed the problem of early release of pointer(p_ccb) in funcion 2020-12-18 11:32:31 +08:00
David Čermák
b1b673eaa2 Merge branch 'feature/lwip_tcp_isn_hook_v4.2' into 'release/v4.2'
lw-ip: enable TCP ISN hook (v4.2)

See merge request espressif/esp-idf!11062
2020-12-18 00:18:36 +08:00
Mahavir Jain
a57576cec4 esp_netif: initialize TCP ISN hook if enabled in configuration 2020-12-17 13:42:01 +00:00
Mahavir Jain
7d226ce542 lwip: provide configuration option to enable TCP ISN hook 2020-12-17 13:42:01 +00:00
Mahavir Jain
4fb4178f06 tcp_isn: use ROM APIs for md5 calculations 2020-12-17 13:42:01 +00:00
Mahavir Jain
aa416a377b lwip: add custom TCP ISN hook implementation
Source:
https://git.savannah.nongnu.org/cgit/lwip/lwip-contrib.git/
2020-12-17 13:42:01 +00:00
Ivan Grokhotkov
2b88ed8827 Merge branch 'bugfix/idf_gdb_no_openocd_crash_v4.2' into 'release/v4.2'
idf.py: Fixed gdb target to exit cleanly when no openocd watch task (v4.2)

See merge request espressif/esp-idf!10808
2020-12-17 18:40:31 +08:00
David Čermák
0386b19d8b Merge branch 'bugfix/mdns_query_id_v4.2' into 'release/v4.2'
mdns: Responding: Fix query ID, add questions if not strict mode (v4.2)

See merge request espressif/esp-idf!10806
2020-12-17 18:37:18 +08:00
Jiang Jiang Jian
683d0f4edb Merge branch 'nimble/fix_misc_coverity_issue_v4.2' into 'release/v4.2'
Nimble: Fix misc issues in NimBLE NVS, `ble_eddystone`, recursive call and  L2CAP CoC (v4.2)

See merge request espressif/esp-idf!11390
2020-12-17 16:53:46 +08:00
Jiang Jiang Jian
4bca971865 Merge branch 'bugfix/free_acl_rx_buf_in_em_4_2' into 'release/v4.2'
Free ACL RX Buf in EM when disconnection [backport v4.2]

See merge request espressif/esp-idf!11612
2020-12-17 16:47:46 +08:00
Wei Tian Hua
c1d5ad61b5 Free ACL RX Buf in EM when disconnection [backport v4.2] 2020-12-17 16:47:43 +08:00
Artem Godlevskyi
d315bf722f Added missing MYNEWT_VAL_BLE_L2CAP_COC_MPS definition
Signed-off-by: Prasad Alatkar <prasad.alatkar@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/5825
2020-12-17 07:21:02 +00:00
Prasad Alatkar
210bd3787d NimBLE: Fix misc coverity issues in NimBLE host
- NimBLE NVS : Additional check to account for NVS operation failure
- NimBLE host: Fix minor bug in ble_eddystone_set_adv_data_gen
- NimBLE host: remove recursive call, upstream PR: https://github.com/apache/mynewt-nimble/pull/857
2020-12-17 07:21:02 +00:00
Marius Vikhammer
dceb9b4a22 esp_crt_bundle: add additional unit tests
Add unit test for:
 * Trusted certificate with weak hash algorithm signature
 * Certificate with wrong signature

Merges https://github.com/espressif/esp-idf/pull/6117
2020-12-17 02:41:59 +00:00
Jeff Epler
a1d5fcfece esp_crt_bundle: Allow verify_callback to correct BADCERT_BAD_MD 2020-12-17 02:41:59 +00:00
Jiang Jiang Jian
211a2a9957 Merge branch 'fixbug/baidu_tcp_recv_assert_for_4.2' into 'release/v4.2'
lw-ip:fix bug for tcp recv assert(backport 4.2)

See merge request espressif/esp-idf!11601
2020-12-16 17:31:42 +08:00
Ivan Grokhotkov
b1b19495a1 Merge branch 'test/disable_twai_example_ci_v4.2' into 'release/v4.2'
Temporarily disable TWAI network example test (backport v4.2)

See merge request espressif/esp-idf!11561
2020-12-16 04:20:26 +08:00
David Čermák
6a723ad1e7 Merge branch 'bugfix/lwip_netdb_cpp_guards_v4.2' into 'release/v4.2'
lw-IP: Changed to C linkage in netdb.h for fixing bug when using mixed C/C++ code (v4.2)

See merge request espressif/esp-idf!11089
2020-12-16 04:13:12 +08:00
Ivan Grokhotkov
a82d0cf9f1 Merge branch 'bugfix/panic_instr_fetch_prohibited_v4.2' into 'release/v4.2'
panic: don't interrupt the backtrace for InstrFetchProhibited exceptions (v4.2)

See merge request espressif/esp-idf!10293
2020-12-16 04:09:37 +08:00
Ivan Grokhotkov
8224c75211 Merge branch 'bugfix/parttool_example_test_fail_v4.2' into 'release/v4.2'
examples/parttool: fix the test to work on parallel test runner (backport v4.2)

See merge request espressif/esp-idf!10373
2020-12-16 04:09:03 +08:00
Ivan Grokhotkov
e64934be6b Merge branch 'bugfix/docker_gdb_python_v4.2' into 'release/v4.2'
tools/docker: Add libpython2.7 in order to satisfy GDB dependencies (backport v4.2)

See merge request espressif/esp-idf!10307
2020-12-16 04:07:40 +08:00
David Cermak
e95f97d40e mdns test: Add test to resolve esp32 hostname with DiG 2020-12-15 19:01:33 +00:00
David Cermak
05211963ee examples: Common connect component: Unregister shutdown handler on disconnection
To be able to connect smoothly after disconnecting, we have to unregister all handlers including shutdown handler on disconnection
2020-12-15 19:01:33 +00:00
David Cermak
e1e481f438 mdns: Support queries in responses in mDNS non-strict mode
By default adds original queries to responses in order to be resolved by some resolvers, such as lwIP mdns library. This functionality however is discouraged by the RFC6762, so it could be disabled in menuconfig if MDNS_STRICT_MODE configured

Closes https://github.com/espressif/esp-idf/issues/5521
2020-12-15 19:01:33 +00:00
David Cermak
faef936581 mdns: Fix include query ID in reponses
Closes https://github.com/espressif/esp-idf/issues/5574
2020-12-15 19:01:33 +00:00
David Čermák
26bca96029 Merge branch 'bugfix/fix_transport_ssl_blocking_v4.2' into 'release/v4.2'
transport: fix transport ssl blocking (v4.2)

See merge request espressif/esp-idf!10691
2020-12-16 02:59:03 +08:00
David Čermák
a1e1470447 Merge branch 'bugfix/fix_esp_modem_mode_switch_timeout_v4.2' into 'release/v4.2'
fix esp_modem switch mode timeout (v4.2)

See merge request espressif/esp-idf!11395
2020-12-16 02:57:44 +08:00
Anton Maklakov
9fb05897db Merge branch 'bugfix/ci_py2_warnings_fix_v4.2' into 'release/v4.2'
ci: Python 2 warnings fix (v4.2)

See merge request espressif/esp-idf!11617
2020-12-15 19:06:33 +08:00
Ivan Grokhotkov
c8d1b18a3c Merge branch 'bugfix/py2_socketio_v4.2' into 'release/v4.2'
tools: Fix requirements incompatible with Python 2 (v4.2)

See merge request espressif/esp-idf!11604
2020-12-15 18:38:43 +08:00
David Čermák
99cb0f25eb Merge branch 'bugfix/pppos_ignored_modem_start_return_v4.2' into 'release/v4.2'
pppos client: modem netif fix ignoring potential modem-start error (v4.2)

See merge request espressif/esp-idf!11394
2020-12-15 16:15:27 +08:00
David Čermák
99be1aca73 Merge branch 'bugfix/fix_netsuite_tx_wrap_v4.2' into 'release/v4.2'
CI: esp_netif tests: Fix netsuite driver layer per wifi optimization changes (v4.2)

See merge request espressif/esp-idf!11388
2020-12-15 16:14:45 +08:00
David Čermák
7fcb8ffe0a Merge branch 'feature/mqtt_submodule_update_23c8e1ec_v4.2' into 'release/v4.2'
MQTT: Update submodule reference to da850b (config, error flags, minor fixes) (v4.2)

See merge request espressif/esp-idf!11312
2020-12-15 16:13:03 +08:00
David Čermák
cbd0af7217 Merge branch 'bugfix/mdns_src_addr_cpy_v4.2' into 'release/v4.2'
mdns: Fix wrong mdns source address if lwIP IPv6 zoning disabled (v4.2)

See merge request espressif/esp-idf!11310
2020-12-15 16:10:55 +08:00
David Čermák
3b63476e31 Merge branch 'bugfix/backport_v4.2_fix_websocket_issue' into 'release/v4.2'
websocket_client: fix some issues for websocket client (backport v4.2)

See merge request espressif/esp-idf!11276
2020-12-15 16:10:12 +08:00
mathiasbredholt
440b5f6e7b lwip: Changed to C linkage for fixing bug when using mixed C/C++ code
Merges https://github.com/espressif/esp-idf/pull/5900
2020-12-15 08:09:14 +00:00
Michael (XIAO Xufeng)
97cd07007d ci: define ESP_PLATFORM macro during public header check 2020-12-15 08:09:14 +00:00
xutao
c0e3aa1ef8 transport: fix transport ssl blocking
In SSL mode, if `esp_transport_poll_read` function is used, the cache data in mebdtls will be blocked
2020-12-15 08:07:18 +00:00
Anton Maklakov
e1d62cda5f Merge branch 'feature/ci_fix_docker_build_v4.2' into 'release/v4.2'
ci: Use git mirror for docker image (v4.2)

See merge request espressif/esp-idf!10445
2020-12-15 14:55:07 +08:00
Anton Maklakov
8c3526d91f Merge branch 'bugfix/build_docs_pdf_job_v4.2' into 'release/v4.2'
docs: seperate build_docs html and pdf CI jobs (Backport v4.2)

See merge request espressif/esp-idf!10549
2020-12-15 14:54:00 +08:00
Anton Maklakov
f5f91a4d05 tools: Redirect some warnings to stderr 2020-12-15 13:16:50 +07:00
Anton Maklakov
3a5de540f1 ci: Ignore Python 2 deprecation warning 2020-12-15 13:16:03 +07:00
Mahavir Jain
48cd4d65e6 Merge branch 'bugfix/redirection_v4.2' into 'release/v4.2'
esp_http_client: Skip check for redirection counter if status code is success, fix issue with digest auth, configurable user agent string. (v4.2)

See merge request espressif/esp-idf!11597
2020-12-14 20:03:03 +08:00
Cao Sen Miao
12a0f93f87 adc_i2s: solve the i2s_adc issue when using wifi 2020-12-14 19:33:35 +08:00
Roland Dobai
9ff5f94233 tools: Fix requirements incompatible with Python 2 2020-12-14 10:48:00 +01:00
xueyunfei
72dbf03b6c fix bug for tcp recv assert 2020-12-14 17:42:51 +08:00
Scott Shell
fad8a27cf7 Make the UserAgent string in esp-http-client configurable
Signed-off-by: Shubham Kulkarni <shubham.kulkarni@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/6044
2020-12-14 14:02:50 +05:30
Shubham Kulkarni
465d911052 http_auth.c: Fix crash when opaque field is not present in challenge string
Closes: https://github.com/espressif/esp-idf/issues/5888
2020-12-14 13:58:29 +05:30
Shubham Kulkarni
b951b5adec esp_http_client: Skip check for redirection counter if status code is success.
Set disable_auto_redirect in esp_http_client example to validate this condition in CI
2020-12-14 13:58:28 +05:30
kapil.gupta
9fce81f9af esp_wifi: Update WiFi lib
1. Fixes the issue when PMF packets are not sent after mode change.
2. Add support for 802.1x sha256 auth key mode
2020-12-14 14:51:52 +08:00
Fu Hanxi
4167401a00 CI: Disable pipelines generated by push on dev branches 2020-12-14 14:01:44 +08:00
Jiang Jiang Jian
18a1bc9e7f Merge branch 'bugfix/decouple_wifi_bt_with_coex_v4.2' into 'release/v4.2'
esp_wifi: decouple Wi-Fi and bluetooth with coexist to reduce binary file size(backport v4.2)

See merge request espressif/esp-idf!11542
2020-12-14 12:17:23 +08:00
Island
a23449ee23 Merge branch 'optimize/ble_mesh_provision_dev_uuid_check_v4.2' into 'release/v4.2'
ble_mesh: stack: Need uuid when adding device for provisioning (v4.2)

See merge request espressif/esp-idf!11577
2020-12-14 10:15:44 +08:00
Ivan Grokhotkov
a46d8b2831 Merge branch 'bugfix/verify-directory-exists_v4.2' into 'release/v4.2'
Bugfix: add check for existence build directory (v4.2)

See merge request espressif/esp-idf!11581
2020-12-12 01:43:15 +08:00
lly
6510fbb66d ble_mesh: ci: Add PB-ADV & PB-GATT sdkconfig test files 2020-12-11 13:15:54 +00:00
lly
5f2a5cdcab ble_mesh: stack: Need uuid when adding device for provisioning 2020-12-11 13:15:54 +00:00
Island
938b9f3098 Merge branch 'feat/ble_mesh_node_local_data_func_v4.2' into 'release/v4.2'
ble_mesh: stack: Add node local netkey/appkey func (v4.2)

See merge request espressif/esp-idf!11575
2020-12-11 21:13:57 +08:00
martin.gano
5bb0237860 Add checking if the build directory exists and move expression after docstring 2020-12-11 13:13:50 +01:00
Krzysztof Budzynski
c923c99f09 Merge branch 'feature/python2-deprecation-warn_v4.2' into 'release/v4.2'
Tools: Add Python 2 deprecation warning (v4.2)

See merge request espressif/esp-idf!11524
2020-12-11 17:26:06 +08:00
lly
7505e1458f ble_mesh: stack: Fix wrong declaration of node bind AppKey func 2020-12-11 17:19:02 +08:00
lly
d4575ccfe9 ble_mesh: stack: Add node local netkey/appkey func 2020-12-11 17:18:22 +08:00
Ivan Grokhotkov
71e7f000c4 Merge branch 'bugfix/log-error-run-esptool_v4.2' into 'release/v4.2'
parttool.py: Add file stream parameter and log stdout and stderr to same stream (v4.2)

See merge request espressif/esp-idf!10516
2020-12-11 16:51:48 +08:00
Island
58afa32a1a Merge branch 'optimize/ble_mesh_reduce_code_size_v4.2' into 'release/v4.2'
Optimize/ble mesh reduce code size (v4.2)

See merge request espressif/esp-idf!11518
2020-12-11 16:50:51 +08:00
daiziyan
81eb9f280f add CN translation for adding python2 deprecation warning(MR 11115) 2020-12-11 09:16:18 +01:00
martin.gano
d0d7c53ee1 Tools: add Python 2 deprecation warning 2020-12-11 09:14:57 +01:00
Darian Leung
19e6434f37 twai: Temporarily disable network example test
Disabling network example test due to issue with synchronizing the
start of each DUT
2020-12-10 21:27:46 +08:00
lly
6f104362c7 ble_mesh: example: Update sdkconfig test files for disabling Health Server model 2020-12-10 09:32:10 +00:00
lly
da8a577408 ble_mesh: stack: Add a Kconfig option to make Health Server model optional 2020-12-10 09:32:10 +00:00
lly
2b2abcd6f9 ble_mesh: stack: Split model Kconfig menu into foundation and others 2020-12-10 09:32:10 +00:00
lly
5fd4d53922 ble_mesh: example: Fix fast provisioning compile error 2020-12-10 09:32:10 +00:00
lly
7f1a0e1552 ble_mesh: ci: Add disabling mesh model sdkconfig test files 2020-12-10 09:32:10 +00:00
lly
e4451376f3 ble_mesh: stack: Add Kconfig options to make server models optional 2020-12-10 09:32:10 +00:00
lly
2602f26753 ble_mesh: stack: Use Kconfig option to make client models optional 2020-12-10 09:32:10 +00:00
lly
9c8c56f081 ble_mesh: stack: Make some internal static functions inline 2020-12-10 09:32:10 +00:00
lly
7e945e5fa8 ble_mesh: ci: Add disabling mesh deinit sdkconfig test files 2020-12-10 09:32:10 +00:00
lly
f27a151478 ble_mesh: stack: Add a Kconfig option to make deinit optional 2020-12-10 09:32:10 +00:00
lly
01d0843c4d ble_mesh: stack: Introduce a new header file mesh_config.h 2020-12-10 09:32:10 +00:00
Angus Gratton
1771aea076 Merge branch 'bugfix/increase_ci_build_example_parallel' into 'release/v4.2'
ci: Add 1 parallel count for building example

See merge request espressif/esp-idf!11554
2020-12-10 17:09:47 +08:00
lly
c3c0ca0aff ci: Add 1 parallel count for building example 2020-12-10 13:59:36 +08:00
Jiang Jiang Jian
22b33adb2f Merge branch 'optimization/AP_STAIPASSIGNED_passes_IP_send_through_event_data_for_4.2' into 'release/v4.2'
esp-event:AP_STAIPASSIGNED now passes the IP through 'event_data'(backport 4.2)

See merge request espressif/esp-idf!11241
2020-12-09 22:32:19 +08:00
Jiang Jiang Jian
e287e3ef9d Merge branch 'bugfix/backport_some_lwip_bugs_1120_v4.2' into 'release/v4.2'
lw-ip:backport bugfix lwip for v4.2(backport 4.2)

See merge request espressif/esp-idf!11307
2020-12-09 22:31:32 +08:00
Jiang Jiang Jian
f03d543139 Merge branch 'bugfix/blufi_config_potential_double_free_v4.2' into 'release/v4.2'
Bugfix/blufi config potential double free v4.2

See merge request espressif/esp-idf!11163
2020-12-09 22:26:19 +08:00
Xia Xiaotian
5a17387c3d esp_wifi: decouple Wi-Fi and bluetooth with coexist to reduce binary file size 2020-12-09 20:42:35 +08:00
Krzysztof Budzynski
996e270f90 Merge branch 'doc/update_CN_translation_for_relase/v4.2' into 'release/v4.2'
update CN translation for index.rst and vscode-setup.rst in get-started folder (v4.2)

See merge request espressif/esp-idf!11522
2020-12-09 19:13:25 +08:00
Dai Zi Yan
4ff9a93490 update CN translation for index.rst and add CN translation for vscode-setup.rst in get-started folder 2020-12-09 19:13:25 +08:00
Island
f5c45576cf Merge branch 'feature/btdm_support_some_ble_new_features_v4.2' into 'release/v4.2'
components/bt: backport some new features for Bluedroid BLE(release v4.2)

See merge request espressif/esp-idf!11448
2020-12-09 10:28:56 +08:00
Island
2532ddd9f4 Merge branch 'bugfix/ble_mesh_proxy_cfg_replay_v4.2' into 'release/v4.2'
Bugfix/ble mesh proxy cfg replay (v4.2)

See merge request espressif/esp-idf!11509
2020-12-08 15:00:51 +08:00
negativekelvin
d1a9f9ec74 Fix reserved psram region
Closes https://github.com/espressif/esp-idf/pull/5373

Closes https://github.com/espressif/esp-idf/issues/5821
2020-12-08 17:42:36 +11:00
lly
e2cb5ee379 ble_mesh: stack: Store kr phase after value changed [Zephyr] 2020-12-08 11:51:28 +08:00
lly
0c8cf83131 ble_mesh: stack: Fix rpl not check by proxy cfg [Zephyr] 2020-12-08 11:51:23 +08:00
Krzysztof Budzynski
2ef417df5f Merge branch 'docs/update_rtc_clock_source_description_in_api_references_backport_v4.2' into 'release/v4.2'
docs: update the description for RTC Clock Sources for esp32 and esp32s2 (backport/v4.2)

See merge request espressif/esp-idf!11329
2020-12-08 10:47:42 +08:00
Krzysztof Budzynski
452992bcd5 Merge branch 'bugfix/remove_shortcut_to_build_instructions_v4.2' into 'release/v4.2'
doc: Getting Started Guide, remove shortcuts to 'build toolchain from scratch' instructions (v4.2)

See merge request espressif/esp-idf!10597
2020-12-08 10:46:42 +08:00
Island
c2f08b3e35 Merge branch 'bugfix/ble_mesh_node_deinit_v4.2' into 'release/v4.2'
ble_mesh: stack: Persistent storage misc fixes (v4.2)

See merge request espressif/esp-idf!11503
2020-12-08 10:28:46 +08:00
Angus Gratton
49dde3ca91 Merge branch 'bugfix/cast_int_to_size_t_in_cpu_ll_v4.2' into 'release/v4.2'
soc: cast int to size_t in cpu_ll (v4.2)

See merge request espressif/esp-idf!11135
2020-12-08 09:10:19 +08:00
Angus Gratton
cf644d4de3 Merge branch 'bugfix/check_doc_links_no_deploy_v4.2' into 'release/v4.2'
CI: Only run check_doc_links if we actually deployed (v4.2)

See merge request espressif/esp-idf!10955
2020-12-08 09:08:03 +08:00
Angus Gratton
fb81c46999 Merge branch 'bugfix/esp_idf_version_v4.2' into 'release/v4.2'
Add __ASSEMBLER__ flag in esp_idf_version.h to fix build failure with assembly files (v4.2)

See merge request espressif/esp-idf!10899
2020-12-08 09:07:51 +08:00
Angus Gratton
addabc392d Merge branch 'bugfix/ldgen_unicode_path_v4.2' into 'release/v4.2'
tools/ldgen: Parse paths with Unicode characters in archives & fix parsing of section names on Windows (v4.2)

See merge request espressif/esp-idf!10964
2020-12-08 09:07:47 +08:00
Angus Gratton
8a47006b72 Merge branch 'bugfix/backport_v4.2_fix_pthread_priority_inheritance' into 'release/v4.2'
pthread: fix the priority inheritance (backport v4.2)

See merge request espressif/esp-idf!11260
2020-12-08 09:07:23 +08:00
Angus Gratton
1591141237 Merge branch 'bugfix/err_to_name_paths_windows_v4.2' into 'release/v4.2'
tools: fix path handling errors in gen_esp_err_to_name.py for Windows (v4.2)

See merge request espressif/esp-idf!10895
2020-12-08 09:06:59 +08:00
Angus Gratton
74c7a84c4c Merge branch 'bugfix/secure_boot_v2_manual_enablement_v4.2' into 'release/v4.2'
Secure Boot V2: Fix an issue leading to manual enablement of Secure Boot v2. (v4.2)

See merge request espressif/esp-idf!11228
2020-12-08 09:06:29 +08:00
Angus Gratton
5cc8660a32 Merge branch 'bugfix/rtc_clk_cal_cycles_add_default_vals_for_all_sources_v4.2' into 'release/v4.2'
esp32xx: Fix default values for all RTC sources in RTC_CLK_CAL_CYCLES option (v4.2)

See merge request espressif/esp-idf!11412
2020-12-08 09:06:21 +08:00
Angus Gratton
82bcdcaeaf Merge branch 'bugfix/fix_partition_table_in_flash_encryption_example_v4.2' into 'release/v4.2'
example/flash_encryption: Fix partition table (v4.2)

See merge request espressif/esp-idf!10851
2020-12-08 09:06:07 +08:00
Angus Gratton
117be7a870 Merge branch 'bugfix/blecent_example_test_4.2' into 'release/v4.2'
Fix CI blecent example test (backport v4.2)

See merge request espressif/esp-idf!11271
2020-12-08 09:01:45 +08:00
Angus Gratton
244922a3e3 tools: Avoid subprocess.run(capture_output) argument for Python <3.7 compatibility
In Python 3.5 and 3.6 the equivalent to capture_output=True is to set stdout
and stderr arguments to subprocess.PIPE
2020-12-08 09:44:31 +11:00
lly
922abdc51b ble_mesh: stack: Persistent storage misc fixes
* Fix the issue that deinit node with "erase_flash"
  set to true, but info is not erased from nvs
* Reuse bt_mesh_cfg_reset() when deinit node
* Optimize Provisioner related erase operations
* No store pending timeout will be used when Node
  is not provisioned OR Provisioner is disabled
  and erase operation is performed
* Change the default timeout for settings operation
  to 0, and rpl store rate to 0
2020-12-07 12:05:56 +00:00
Island
59ad2b48ee Merge branch 'bugfix/fix_node_test_func_not_set_role_v4.2' into 'release/v4.2'
ble_mesh: test: Fix node test function not update role flag (v4.2)

See merge request espressif/esp-idf!11040
2020-12-07 19:56:55 +08:00
Island
0c75a3a8e7 Merge branch 'bugfix/ble_mesh_autorsp_description_v4.2' into 'release/v4.2'
esp_ble_mesh: api: fixed comment about autoresp (v4.2)

See merge request espressif/esp-idf!10888
2020-12-07 19:56:52 +08:00
Island
c667af2683 Merge branch 'optimize/ble_mesh_gattc_conn_param_v4.2' into 'release/v4.2'
ble_mesh: stack: Update connection parameters used by Central (v4.2)

See merge request espressif/esp-idf!11328
2020-12-07 19:55:51 +08:00
Mahavir Jain
305bc4983f Merge branch 'fix/protocomm_simple_ble_v4.2' into 'release/v4.2'
Protocomm/simple_ble: Fix gatt table map size to number of handles received (v4.2)

See merge request espressif/esp-idf!11264
2020-12-07 16:18:07 +08:00
Mahavir Jain
171eddcd01 Merge branch 'feature/esp_cryptoauthlib_sub_update_v4.2' into 'release/v4.2'
esp-cryptoauthlib: Update submodule pointer to add a new feature. (v4.2)

See merge request espressif/esp-idf!10830
2020-12-07 16:15:13 +08:00
Michael (XIAO Xufeng)
7dc03f16e7 Merge branch 'bugfix/twai_backport_accumulated_fixes_v4.2' into 'release/v4.2'
TWAI backport accumulated fixes (backport v4.2)

See merge request espressif/esp-idf!11459
2020-12-07 15:52:04 +08:00
Angus Gratton
c40f2590bf Merge branch 'featrue/remove_esp32-S2_preview_v4.2' into 'release/v4.2'
docs: ESP-IDF v4.2 fully supports ESP32-S2, remove documentation that describe preview support (v4.2)

See merge request espressif/esp-idf!11467
2020-12-04 08:33:44 +08:00
Krzysztof
1f3d8588ae docs: ESP-IDF v4.2 fully supports ESP32-S2, remove documentation that describe preview support 2020-12-04 10:09:07 +11:00
Darian Leung
a0bb9b2f57 TWAI: ISR runs when cache is disabled
This commit adds the feature where the TWAI ISR will continue to
run even if the cache is disabled. Whilst cache is disabled, any
received messages will go into the RX queue, and any pending TX
messages in the TX queue will be transmitted. This feature should
be enabled using the CONFIG_TWAI_ISR_IN_IRAM option.
2020-12-03 19:41:59 +08:00
xiewenxiang
9dbf59af9c component/bt: support BLE Read Attribute value by UUID 2020-12-03 15:19:44 +08:00
xiewenxiang
4e8d383d01 component/bt: refactor ble random address setting 2020-12-03 15:19:35 +08:00
XieWenxiang
8533c452a1 component/bt: support BLE Application Layer Encryption key size check 2020-12-03 15:19:27 +08:00
XieWenxiang
82b65d5de0 component/bt: support BLE Authorization 2020-12-03 15:19:17 +08:00
xiewenxiang
0740090682 component/bt: fix incorrect encryption flag setting 2020-12-03 15:19:02 +08:00
Jiang Jiang Jian
901dce43d0 Merge branch 'bugfix/update_release_v4.2_bt_lib' into 'release/v4.2'
components/bt: backport requires commit to release v4.2

See merge request espressif/esp-idf!11426
2020-12-03 11:22:13 +08:00
Darian Leung
fa7c5fcd42 TWAI: Fix BRP field initialization onf ESP32 ECO3
This commit zero initializes the brp_div field on ESP32 ECO3
to prevent incorrect timing configuration.
2020-12-02 21:27:12 +08:00
Darian Leung
1160da7fdf TWAI: Fix ESP32-S2 register field name 2020-12-02 21:27:12 +08:00
Darian Leung
e1b7a02786 TWAI: Simplify caps header
This commit simplifies the defines made in the _caps.h header. Kconfig
option dependencies were moved into the LL, and the check for a
valid BRP has bee simplified.
2020-12-02 21:26:33 +08:00
wangcheng
d780e5b31d components/bt: backport requires commit to release v4.2 2020-12-01 19:29:05 +08:00
Shivani Tipnis
4c533a1e53 ci: Fix blecent example test
(cherry picked from commit fc146a98e4)
2020-11-30 22:44:52 +05:30
KonstantinKondrashov
3d03264b0a esp32xx: Fix default values for all RTC sources in RTC_CLK_CAL_CYCLES option
Closes: https://github.com/espressif/esp-idf/issues/6037
2020-11-30 23:09:13 +08:00
morris
6270de58ad fix esp_modem switch mode timeout
Closes https://github.com/espressif/esp-idf/issues/3506
Closes https://github.com/espressif/esp-idf/issues/4324
2020-11-27 20:11:38 +01:00
David Cermak
99cb5a7c8d pppos client: modem netif fix ignoring potential modem-start error
esp-modem netif glue layer implements esp-netif attach callback to setup corresponding driver functions and start the modem. The error code of esp_modem_start_ppp() was ignored and ESP_OK returned in all cases. Fixed by passing esp_modem_start_ppp()'s error code to post_attach callback.

Closes https://github.com/espressif/esp-idf/issues/5430
2020-11-27 20:10:06 +01:00
David Cermak
bdc914bbf4 CI: esp_netif tests: Fix netsuite driver layer per wifi optimization changes
esp-wifi introcuded wifi tx optimization in !9147 . Update needed in netsuite to pass the tx data using  function

Closes https://github.com/espressif/esp-idf/issues/6161
2020-11-27 12:00:07 +01:00
InfiniteYuan
cd045c60d9 bugfix: Delete local variables to avoid null global variables 2020-11-25 20:52:27 +08:00
wangcheng
1be101f342 component/bt: Add a macro to control the compilation of blufi. 2020-11-24 10:44:57 +08:00
wangcheng
7097ff286c component/bt: Fix a potential double free error. 2020-11-24 10:44:56 +08:00
wangcheng
65c5a57033 blufi: fix an error caused by incorrect conn_id parameters. 2020-11-24 10:44:54 +08:00
Angus Gratton
f3ff3b3073 Merge branch 'ci/fix_annotated_tag_check_v4.2' into 'release/v4.2'
ci: Fix annotated tag check (v4.2)

See merge request espressif/esp-idf!11331
2020-11-23 17:30:21 +08:00
Angus Gratton
19bc67e146 ci: Fix annotated tag check
Regression in 1612f84
2020-11-23 17:27:12 +11:00
Wang Fang
e9dae152cd docs: update the description for RTC Clock Sources for esp32 and esp32s2 2020-11-23 11:37:15 +08:00
lly
e2b6ab00dc ble_mesh: stack: Update connection interval to 15ms 2020-11-23 08:59:23 +08:00
lly
92eebb885c ble_mesh: stack: Update connection parameters used by Central 2020-11-23 08:59:22 +08:00
David Cermak
c4e4a05002 MQTT: Update submodule reference: config, error handle, minor fixes
Updates esp-mqtt reference to include fixes below related mainly to:
* configuration update (disable keepalive, network timeout)
* minor fixes (size_t for all sizes, unbalanced lock, api for
  outbox-size)
* extended error handle to include socket's errno

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

Config: Added config value to disable keepalive mechanism
esp-mqtt commit: 8562437c8a
Related https://github.com/espressif/esp-mqtt/issues/179

Added esp_mqtt_client_get_outbox_size API
esp-mqtt commit: 0a1d9d0300
Related https://github.com/espressif/esp-mqtt/pull/178

mqtt_outbox: Removed unused retry_count field from outbox_item_t
esp-mqtt commit: 673086e13a

config: Fixed typo for configuring OUTBOX_EXPIRED_TIMEOUT_MS
esp-mqtt commit: 259baaec96

Fixed missing MQTT_API_UNLOCK in esp_mqtt_client_stop error path
esp-mqtt commit: 845c2a3a1e
Related https://github.com/espressif/esp-mqtt/issues/173
Related https://github.com/espressif/esp-mqtt/pull/174

Extended mqtt error handle to capture transport's socket errno (IDF
v4.3+)
esp-mqtt commit: 23c8e1ecf5

Config: Added configuration value to set network timeout
esp-mqtt commit: a03228ac46
Related https://github.com/espressif/esp-mqtt/pull/166

Used size_t for all lengths to allow for other architectures
esp-mqtt commit: b9db8d9020
2020-11-20 10:24:18 +01:00
David Cermak
405f2ee995 mdns: Fix wrong mdns source address if lwIP IPv6 zones disabled
The struct definition of ip6_addr_t in lwip and esp_ip6_addr_t
differs since zone could be possibly disabled in lwip. Using memcpy to copy the
address will cause wrong source address. Copy the entries manually
instead.

Merges https://github.com/espressif/esp-idf/pull/6055
2020-11-20 10:15:33 +01:00
xueyunfei
501fce7fdd backport bugfix lwip for v4.2 2020-11-20 14:44:13 +08:00
Armando
3c2367d158 i2s: fix i2s ll layer pdm config 2020-11-19 11:42:53 +00:00
xutao
2a4c338ac4 websocket_client: fix some issues for websocket client
1. will post twice disconnect event when read error
    2. will block `timeout` times when set disable_auto_connect
    3. When `esp_websocket_client_stop` before `esp_websocket_client_send*`,
    if the `esp_websocket_client_send*` fails, the status will change to
     'WEBSOCKET_STATE_WAIT_TIMEOUT', and the next `esp_websocket_client_start` will fail forever
2020-11-19 15:59:47 +08:00
Prasad Alatkar
6928e6b5b0 Protocomm/simple_ble: Make gatt table map size equal to number of handles received (v4.2)
- Fixes memcpy failure observed while adding 2 or more endpoints in
  wifi_provisioning.

 Closes IDF-2250
2020-11-17 14:59:46 +05:30
Angus Gratton
511965b269 Merge branch 'fix/esp_local_ctrl_update_expired_cert_v4.2' into 'release/v4.2'
esp_local_ctrl: Updated the expired cacert.pem (v4.2)

See merge request espressif/esp-idf!11206
2020-11-17 15:14:57 +08:00
xutao
cc10f1943c pthread: fix the priority inheritance
When `pthread_mutex_destroy` is used to release mutex, `pthread_mutex_lock_internal` is used,
     which results in the increase of `uxmutexehold` and no recovery base priority
2020-11-17 14:48:43 +08:00
israel
e0a02c1a7c AP_STAIPASSIGNED now passes the IP through 'event_data'
Signed-off-by: xueyunfei <xueyunfei@espressif.com>
2020-11-16 17:43:51 +08:00
Anton Maklakov
eae8933b85 ci: use the retry script to download 2020-11-16 11:30:47 +07:00
Supreet Deshpande
dd6405fcef Secure Boot V2: Fix an issue leading to manual enablement of Secure Boot v2.
Fixes https://github.com/espressif/esp-idf/issues/6050
2020-11-13 11:33:29 +05:30
Aditya Patwardhan
c2fbda0e6d esp_local_ctrl: Updated the expired cacert.pem 2020-11-12 10:16:22 +05:30
Angus Gratton
c688828362 Merge branch 'bugfix/efuse_change_burn_order_for_s2_s3_v4.2' into 'release/v4.2'
efuse: Fix the order of writing in batch mode (v4.2)

See merge request espressif/esp-idf!11123
2020-11-11 14:50:53 +08:00
Jiang Jiang Jian
9c239b9f77 Merge branch 'bugfix/fix_assert_in_passkey_reply_4_2' into 'release/v4.2'
Bugfix/fix assert in passkey reply [backport v4.2]

See merge request espressif/esp-idf!10974
2020-11-11 11:35:41 +08:00
Jiang Jiang Jian
5de9174ade Merge branch 'bugfix/fix_crash_caused_by_calling_deinit_directly_4_2' into 'release/v4.2'
Fix crash caused by calling a2dp_deinit directly [backport v4.2]

See merge request espressif/esp-idf!11130
2020-11-11 11:35:06 +08:00
Jiang Jiang Jian
abb7c529dc Merge branch 'bugfix/wpa3_pmkcache_expiry_workaround_v4.2' into 'release/v4.2'
wpa_supplicant: Increase PMK Lifetime to a very high value (Backport v4.2)

See merge request espressif/esp-idf!11170
2020-11-11 11:29:36 +08:00
Jiang Jiang Jian
fe78f2cf3b Merge branch 'bugfix/wifi_fix_beacon_dtim_count_error_v4.2' into 'release/v4.2'
Wi-Fi: set softap beacon DTIM count according to TSF timer(backport v4.2)

See merge request espressif/esp-idf!11155
2020-11-11 11:28:43 +08:00
weitianhua
ad31451594 Fix crash caused by calling deinit directly 2020-11-10 11:18:39 +00:00
weitianhua
0b51df615c Remove dummy assert when receive passkey request 2020-11-10 16:06:11 +08:00
Angus Gratton
bff3192080 Merge branch 'feature/update_key_name_of_secure_boot_v4.2' into 'release/v4.2'
bootloader: Secure_boot name replaced by secure_boot_v1 & secure_boot_v2 (v4.2)

See merge request espressif/esp-idf!10850
2020-11-10 15:56:26 +08:00
Jiang Jiang Jian
4e80dc2a77 Merge branch 'bugfix/fix_coex_ble_disconnect_issues_1105_v4_2' into 'release/v4.2'
bluetooth: Fix ble disconnect issue in coex mode backport v4.2

See merge request espressif/esp-idf!11146
2020-11-10 15:21:39 +08:00
Jiang Jiang Jian
8e4b919391 Merge branch 'bugfix/fix_spp_read_flow_control_v4.2' into 'release/v4.2'
component_bt/fix spp flow control and vfs write [backport 4.2]

See merge request espressif/esp-idf!11071
2020-11-10 15:19:48 +08:00
gengyuchao
5ca0f50231 Fix two bugs:
1.Fix supervision timeout in LLC DISC busy statue can not disconnect issue.
 2.Solve the problem that the ble terminate ack packet may lose with a high probability in coex mode.
2020-11-10 03:00:43 +00:00
Xia Xiaotian
0df8024219 Wi-Fi: set softap beacon DTIM count according to TSF timer 2020-11-09 19:33:27 +08:00
He Yin Ling
e31dd41e00 Merge branch 'bugfix/example_test_import_error_4.2' into 'release/v4.2'
bugfix: import error in example tests (4.2)

See merge request espressif/esp-idf!11048
2020-11-09 19:21:10 +08:00
Nachiket Kukade
2343aab4da wpa_supplicant: Increase PMK Lifetime to a very high value
For WPA3 connection nearing PMK lifetime expiry, PMK Cache
needs a re-authentication or the cache will expire. After
current expiry of 12 hours Station ends up sending a deauth
to the AP. An SAE re-authentication also cannot occur without
a disconnection with current implementation. So increase the
PMK lifetime to 100 days for now.
2020-11-09 15:40:08 +05:30
Jiang Jiang Jian
f936adf451 Merge branch 'high/fix_ble_scan_irq_by_timer_v4.2' into 'release/v4.2'
components/bt: fix hci timeout, add timer to monitor scan evt

See merge request espressif/esp-idf!11108
2020-11-06 17:45:27 +08:00
wangcheng
ffb4ff0e4b components/bt: fix hci timeout, add timer to monitor scan evt 2020-11-06 14:17:11 +08:00
Angus Gratton
03c72909a3 esptool: Update to v3.0 release version 2020-11-06 17:11:29 +11:00
Angus Gratton
e5aa2b1d73 Merge branch 'bugfix/esp32s2_define_correct_size_for_rtc_fast_mem_v4.2' into 'release/v4.2'
esp32s2: Fix missed features CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP and... (v4.2)

See merge request espressif/esp-idf!9965
2020-11-06 12:49:24 +08:00
liqigan
640083c8cb replace list and ringbuffer with fixed queue
use eventgroup to sync spp_vfs_write

each connection has a switch_delay_timer not sharing a one

revert functions like spp_find_slot_by_xxx

fix vfs read bug when peer close
2020-11-06 03:38:52 +00:00
liqigan
94093debab move flow control to btc layer
defer free slot in btc layer when receive BTA_JV_RFCOMM_CLOSE_EVT
2020-11-06 03:38:52 +00:00
liqigan
76f41cc5e0 add event when calling spp API failed 2020-11-06 03:38:52 +00:00
Jiang Jiang Jian
778fe654aa Merge branch 'bugfix/fix_ag_outging_callback_not_triggered_v4.2' into 'release/v4.2'
Bugfix/Fix Ag Example Outgoing Callback Not Triggered [backport v4.2]

See merge request espressif/esp-idf!11020
2020-11-06 11:08:26 +08:00
Jiang Jiang Jian
cd7bfd6d85 Merge branch 'bugfix/fix_TCP_timer_interval_v4.2' into 'release/v4.2'
lw-ip: fix TCP timer interval (backport v4.2)

See merge request espressif/esp-idf!11086
2020-11-06 11:06:52 +08:00
Jiang Jiang Jian
34665cb9f9 Merge branch 'bugfix/fix_clkn_overflow_issue_4_2' into 'release/v4.2'
Fix controller dead when clkn overflow [backport v4.2]

See merge request espressif/esp-idf!11035
2020-11-06 11:06:32 +08:00
FredrikFornstad
57571ae908 Bugfix: Casting int to size_t 2020-11-05 20:32:43 +05:30
Angus Gratton
b336cb954c esp32s2: Disable ADC calibration routine if running on FPGA 2020-11-05 15:06:33 +08:00
KonstantinKondrashov
ac04213299 efuse: Fix the order of writing in batch mode for esp32s2 and s3 2020-11-05 15:05:55 +08:00
He Yin Ling
4bb9bb95d0 Merge branch 'bugfix/ci_clone_https_v4.2' into 'release/v4.2'
ci: use HTTPS for cloning in IT jobs (v4.2)

See merge request espressif/esp-idf!11095
2020-11-05 09:55:58 +08:00
Ivan Grokhotkov
e07d2df67e ci: use HTTPS for cloning in IT jobs 2020-11-03 19:26:28 +08:00
ronghulin
a55db686b9 bugfix: fix TCP timer interval 2020-11-03 10:38:48 +08:00
Michael (XIAO Xufeng)
5e49f0b565 Merge branch 'bugfix/fix_spi_flash_clock_config_error_s2_4.2' into 'release/v4.2'
bootloader_support: fix fix spi flash clock config error (v4.2)

See merge request espressif/esp-idf!10892
2020-11-02 13:21:37 +08:00
Chen Yu Dong
9cf81750b9 bugfix: import error in example tests 2020-10-30 16:24:08 +08:00
lly
b2bd4d1cb7 ble_mesh: test: Fix node test function not update role flag 2020-10-29 15:50:00 +08:00
Roland Dobai
707dde46a8 tools/ldgen: Fix parsing of sections names on Windows 2020-10-29 08:46:03 +01:00
Roland Dobai
c09d3c6bac tools/ldgen: Parse paths with Unicode characters in archives
Closes https://github.com/espressif/esp-idf/issues/5996
2020-10-29 08:46:03 +01:00
weitianhua
000a533eaa Fix controller dead when clkn overflow 2020-10-29 14:54:20 +08:00
Jiang Jiang Jian
2b4124bced Merge branch 'bugfix/fix_crash_or_reboot_on_esp32s2_v4.2' into 'release/v4.2'
fix reboot or crash when enable lightsleep on esp32s2

See merge request espressif/esp-idf!11026
2020-10-29 00:31:10 +08:00
Jiang Jiang Jian
73e4a15889 Merge branch 'bugfix/resolve_esp32s2_rtc_gpio_reject_lightsleep_v4.2' into 'release/v4.2'
set clk_gate_en when enable rtc gpio wake up _backport_to_v4.2

See merge request espressif/esp-idf!11009
2020-10-28 22:20:44 +08:00
ninh
a6467d7683 fix reboot or crash when enable lightsleep on esp32s2 2020-10-28 22:20:41 +08:00
Jiang Jiang Jian
c5e75cb396 Merge branch 'bugfix/assert_10_9_when_AFPM_occur_v4.2' into 'release/v4.2'
Bugfix/assert 10 9 when afpm occur v4.2, Changed the check order for esp_bt_controller_init(release/v4.2)

See merge request espressif/esp-idf!10984
2020-10-28 22:15:59 +08:00
Jiang Jiang Jian
cd482f5e4b Merge branch 'mesh/bugfix_1023_backport_v4.2' into 'release/v4.2'
esp_wifi_mesh: update wifi mesh libs (backport v4.2)

See merge request espressif/esp-idf!11010
2020-10-28 22:14:43 +08:00
liqigan
783c5ecee2 fix ag example outgoing callback not triggered
Closes https://github.com/espressif/esp-idf/issues/4967
2020-10-28 20:25:43 +08:00
wangcheng
138e1319b1 components/bt: fixed memory damage caused by bluetooth memory release 2020-10-28 19:05:22 +08:00
wangcheng
44e40500da components/bt: fix assert(10, 9), when the AFPM happens. fix tx_prog insert error. 2020-10-28 19:05:12 +08:00
shenjun
6a0e8cc83a esp_wifi_mesh: update wifi mesh libs
1. Fix FIX-ROOT does not reconnect to router when disconnect reason is too many
2. Add API esp_mesh_print_scan_result
3. Modify not to reset mesh_xonseq of self and children when flush_upstream_packets
4. Fix not switch to a parent candidate which has the same layer and assoc as current parent
5. Fix not arm parent monitor when a parent candidate is cleared without sending an event to mesh layer
6. Fix the new voted root does not reconnect to router if rssi is weak
2020-10-28 15:02:29 +08:00
Jiang Jiang Jian
3d8f16e05d Merge branch 'bugfix/btdm_bluedroid_enable_takes_long_time_v4.2' into 'release/v4.2'
Bugfix/btdm bluedroid enable takes long time v4.2

See merge request espressif/esp-idf!10701
2020-10-28 13:38:51 +08:00
ninh
62aade0671 set clk_gate_en when enable rtc gpio wake up 2020-10-28 11:55:49 +08:00
Jiang Jiang Jian
ff52533260 Merge branch 'bugfix/update_toolchain_5.2.0_psram_final_v4.2' into 'release/v4.2'
esp_wifi: Update WiFi toolchain to 1.22.0-97-gc752ad5  (backport v4.2)

See merge request espressif/esp-idf!10640
2020-10-28 11:14:57 +08:00
Michael (XIAO Xufeng)
c245db59b6 bootloader_support: fix fix spi flash clock config error
Relates to: https://github.com/espressif/esp-idf/issues/5099
2020-10-28 01:38:14 +00:00
Jiang Jiang Jian
c97d4cde56 Merge branch 'feature/add_ipv6_ping_for_4.2' into 'release/v4.2'
lw-ip:add feature for ipv6 ping(backport 4.2)

See merge request espressif/esp-idf!10995
2020-10-27 22:36:57 +08:00
Jiang Jiang Jian
e8cee449ea Merge branch 'bugfix/nimble_host_rcv_pkt_length_check_v4.2' into 'release/v4.2'
NimBLE: host_rcv_pkt event buf size check. (v4.2)

See merge request espressif/esp-idf!10758
2020-10-27 18:49:43 +08:00
Jiang Jiang Jian
e40d3bb05d Merge branch 'optimize/ble_mesh_make_buf_config_invisible_v4.2' into 'release/v4.2'
ble_mesh: stack: Make mesh buf debug option invisible (v4.2)

See merge request espressif/esp-idf!10794
2020-10-27 18:48:37 +08:00
Jiang Jiang Jian
22f49e0fa9 Merge branch 'bugfix/ble_mesh_settings_fix_v4.2' into 'release/v4.2'
Bugfix/ble mesh settings fix (v4.2)

See merge request espressif/esp-idf!10784
2020-10-27 18:48:06 +08:00
Jiang Jiang Jian
dd3f1e346a Merge branch 'feat/ble_mesh_device_properties_v2_v4.2' into 'release/v4.2'
Feat/ble mesh device properties v2 (v4.2)

See merge request espressif/esp-idf!10787
2020-10-27 18:47:34 +08:00
Jiang Jiang Jian
a5c3bd3d04 Merge branch 'bugfix/wpa_supplicant_link_depth_v4.2' into 'release/v4.2'
wpa_supplicant: Fix failure to link under some circumstances (v4.2)

See merge request espressif/esp-idf!10976
2020-10-27 18:45:17 +08:00
Jiang Jiang Jian
2454ffc912 Merge branch 'bugfix/fix_bredr_read_rssi_delta_v4.2' into 'release/v4.2'
Bugfix/Fix Read Rssi Delta Bug in Bredr [backport v4.2]

See merge request espressif/esp-idf!10801
2020-10-27 18:44:50 +08:00
liqigan
e4e46b8384 1. fix read rssi delta bug in bredr
2. modify read rssi related function names

Closes https://github.com/espressif/esp-idf/issues/5660
2020-10-27 06:57:20 +00:00
xiehang
1d1b4f09b0 esp_wifi: Update WiFi toolchain to 1.22.0-97-gc752ad5 2020-10-27 14:43:57 +08:00
Krzysztof Budzynski
99fbd8a6e1 Merge branch 'doc/add_user_guide_kaluga_1.3_v4.2' into 'release/v4.2'
Add user guide kaluga 1.3 (backport v4.2)

See merge request espressif/esp-idf!10642
2020-10-27 12:40:58 +08:00
Kirill Chalov
fd95013d77 Add user guide kaluga 1.3 (backport v4.2) 2020-10-27 12:40:53 +08:00
Krzysztof Budzynski
a5ddeef60b Merge branch 'feature/explain_hello_world_files_v4.2' into 'release/v4.2'
docs: Add explanation of hello_world folder contents (v4.2)

See merge request espressif/esp-idf!10775
2020-10-27 12:39:13 +08:00
Krzysztof Budzynski
bd5332d368 Merge branch 'feature/guide_change_for_catalina_v4.2' into 'release/v4.2'
docs: Add profile file name used by zsh shell (v4.2)

See merge request espressif/esp-idf!10772
2020-10-27 12:37:40 +08:00
Jiang Jiang Jian
48ea5b465d Merge branch 'bugfix/pmf_softap_coex_issue_v4.2' into 'release/v4.2'
Fix issues related to PMF and WPA2-Enterprise (Backport v4.2)

See merge request espressif/esp-idf!10706
2020-10-27 10:58:11 +08:00
xueyunfei
e7e5884a77 lwip:add feature for ipv6 ping 2020-10-27 10:27:30 +08:00
Nachiket Kukade
c59eb27698 esp_wifi: Update wifi lib
1. Add STA checks during STA PMF operations
2. Fix WPA2-Ent issue with Open AP
3. Skip WPA-TKIP profile if PMF is required
4. Skip & clear Supplicant PMK Cache with mismatching AP config
2020-10-26 15:55:54 +08:00
Angus Gratton
5170ead2e6 wpa_supplicant: Fix failure to link under some circumstances
Depending on CMake internals, the wpa_supplicant library may need to be repeated
multiple times in the linker command line.

Closes https://github.com/espressif/esp-idf/issues/5641
2020-10-26 15:12:48 +11:00
Jiang Jiang Jian
8d213150c5 Merge branch 'bugfix/fix_TCP_retransmission_interval_v4.2' into 'release/v4.2'
fix TCP retransmission interval (backport v4.2)

See merge request espressif/esp-idf!10953
2020-10-26 11:25:15 +08:00
Jiang Jiang Jian
d85d336c86 Merge branch 'bugfix/wps_fail_reason_code_v4.2' into 'release/v4.2'
esp_wifi: Add Failures Reason code in all WPS failure send event(backport v4.2)

See merge request espressif/esp-idf!10928
2020-10-26 11:24:30 +08:00
Jiang Jiang Jian
e10e25981b Merge branch 'bugfix/fix_tsf_bug_v4.2' into 'release/v4.2'
WiFi: fix tsf bug (backport v4.2)

See merge request espressif/esp-idf!10947
2020-10-26 11:21:11 +08:00
He Yin Ling
4fbfac2670 Merge branch 'feature/move_auto_test_script_to_new_repo_4.2' into 'release/v4.2'
ci: move auto_test_script to new repo (backport 4.2)

See merge request espressif/esp-idf!10877
2020-10-24 09:24:38 +08:00
Chen Yu Dong
f12808533d ci: move auto_test_script to new repo (backport 4.2) 2020-10-24 09:24:38 +08:00
Jiang Jiang Jian
d5871e9602 Merge branch 'bugfix/ipv6_ping_error_when_src_ip_miss_for_4.2' into 'release/v4.2'
lw-ip:bugfix ipv6 ping error when src ip miss for 4.2(backport 4.2)

See merge request espressif/esp-idf!10932
2020-10-23 11:28:42 +08:00
Michael (XIAO Xufeng)
489c0b9aac Merge branch 'feature/esp32s2_bootloader_random_v4.2' into 'release/v4.2'
bootloader_support: Enable RNG entropy source for ESP32-S2 (v4.2)

See merge request espressif/esp-idf!10882
2020-10-22 23:08:11 +08:00
Marius Vikhammer
e05164cb4f CI: Only run check_doc_links if we actually deployed
Update the check_doc_links job run conditions to match
github/doc deploy as a lot of the links link to github files.
2020-10-22 18:26:46 +08:00
ronghulin
84e5aef540 fix TCP retransmission interval 2020-10-22 16:53:00 +08:00
zhangyanjiao
3c3bff6ebb esp_wifi: Fixed the bug for timestamp check, didn't disconnect AP when AP's timestamp decrease abnormally 2020-10-22 15:12:50 +08:00
KonstantinKondrashov
2592a0534d bootloader: Secure_boot name replaced by secure_boot_v1 & secure_boot_v2
- espefuse.py burn_key secure_boot is no longer used.
- Secure boot V1: espefuse.py burn_key secure_boot_v1 file.bin
- Secure boot V2: espefuse.py burn_key secure_boot_v2 file.bin
2020-10-22 05:57:46 +00:00
xueyunfei
6692f4119e bugfix ipv6 ping error when src ip miss for 4.2 2020-10-21 20:52:06 +08:00
kapil.gupta
379624de53 esp_wifi: Add WPS Reason code in all failures 2020-10-21 17:09:36 +05:30
Angus Gratton
b34c658554 esp32s2: Use regi2c registers to enable bootloader RNG 2020-10-21 15:09:22 +11:00
Michael (XIAO Xufeng)
87247d5672 Merge branch 'bugfix/adc_dma_test_value_4.2' into 'release/v4.2'
adc_test: fix the failure caused by low expected middle value (v4.2)

See merge request espressif/esp-idf!10887
2020-10-20 11:03:15 +08:00
Shubham Kulkarni
c0a9ef0e1d esp_idf_version.h: Add __ASSEMBLER__ flag to fix build failure with assembly files 2020-10-19 13:21:26 +05:30
Michael (XIAO Xufeng)
9f0f753a48 Merge branch 'bugfix/fix_i2s_reset_issue_v4.2' into 'release/v4.2'
driver(I2S): Fix I2S reset issue for release/v4.2

See merge request espressif/esp-idf!9582
2020-10-19 15:40:03 +08:00
Marius Vikhammer
978b54796f tools: fix path handling errors in gen_esp_err_to_name.py for Windows
Exclude paths that were specified with slash as a path separator were compared
as strings. This would fail on Windows which uses backslash as a path separator.
2020-10-19 14:17:19 +08:00
Michael (XIAO Xufeng)
68141a8844 adc_test: fix the failure caused by low expected middle value 2020-10-19 11:11:34 +08:00
andreachiara
882e924629 esp_ble_mesh: api: fixed comment about autoresp 2020-10-19 11:00:55 +08:00
Angus Gratton
3cdf0aa18a esp32s2: Enable 8M clock source for RNG also
Either of these options is sufficient to pass dieharder test suite with
bootloader random output, having both enabled is a bonus.
2020-10-19 10:24:37 +11:00
Angus Gratton
0c320bfb0e esp32s2: Support bootloader_random_enable() 2020-10-19 10:24:37 +11:00
Michael (XIAO Xufeng)
f0e87c933a Merge branch 'spi_dma_close_before_cpu_reset_v4.2' into 'release/v4.2'
spi: fix issue with closing DMA before CPU reset (4.2)

See merge request espressif/esp-idf!10811
2020-10-17 23:37:29 +08:00
Michael (XIAO Xufeng)
33443d80af Merge branch 'bugfix/spi_master_multiple_dev_with_diff_cs_lvl_4.2' into 'release/v4.2'
spi_master: correctly set cs polarity (4.2)

See merge request espressif/esp-idf!10391
2020-10-17 09:27:24 +08:00
Michael (XIAO Xufeng)
ae0bec8de0 Merge branch 'bugfix/fix_adc-dma_reading_gap_for_esp32_backport_v4.2' into 'release/v4.2'
bugfix(adc): missing ranges of ADC-DMA codes in ESP32 (backport v4.2)

See merge request espressif/esp-idf!10670
2020-10-17 09:21:38 +08:00
Michael (XIAO Xufeng)
eb540e3efa Merge branch 'bugfix/pcnt_interrupt_clear_v4.2' into 'release/v4.2'
pcnt: fix bug in clear interrupt status (v4.2)

See merge request espressif/esp-idf!10694
2020-10-16 14:51:17 +08:00
Michael (XIAO Xufeng)
189a2991b7 Merge branch 'doc/adc_grammar_stuff_backport_v4.2' into 'release/v4.2'
Bugfix(doc): minor modifications in the adc section  (backport v4.2)

See merge request espressif/esp-idf!10657
2020-10-16 14:42:36 +08:00
fuzhibo
95f353949a bugfix(adc): missing ranges of ADC codes in ESP32 2020-10-16 06:34:46 +00:00
houwenxiang
3fa779b463 driver(I2S): Fix I2S reset issue for release/v4.2
`i2s_start` reseting I2S in incorrect order causeing the word-order error.
2020-10-16 06:32:13 +00:00
Armando
4c7dca7105 spi: fix issue with closing DMA before CPU reset 2020-10-16 06:00:18 +00:00
Wielebny666
3dd5b574ee spi_master: correctly set cs polarity
All devices must be added to the same spi line before use.
2020-10-16 05:53:24 +00:00
Angus Gratton
a88c479160 cmake: Log the project sdkconfig path as part of normal CMake status output
As discussed in footnote to https://github.com/espressif/esp-idf/issues/5251#issuecomment-625563782
2020-10-16 10:11:39 +11:00
Angus Gratton
2a7dfb2320 examples: Move idf_as_lib sdkconfig file to the project directory
Also add some explanation about configuring the project in the README

Previously with the default build-esp32.sh script, the build directory was
deleted and recreated so the project would always be built with default config.
2020-10-16 10:11:39 +11:00
KonstantinKondrashov
df5399cfb5 esp32s2: Fix missed features CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP and CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC
Defines the correct size for RTC fast memory (the same as for ESP32).

Closes: IDF-1800
2020-10-15 22:33:12 +00:00
Angus Gratton
e5fe4ffb08 Merge branch 'feature/support_access_internal_i2c_register_backport_v4.2' into 'release/v4.2'
feature(rtc): add new APIs support access internal i2c register (backport v4.2)

See merge request espressif/esp-idf!10662
2020-10-16 06:32:04 +08:00
lly
2724e02faf ble_mesh: stack: Add mesh device properties v2 definitions
Also fixes wrong characteristic value length of some device
properties.
2020-10-15 12:17:54 +00:00
lly
3c1922864d ble_mesh: stack: Move device property to model common part 2020-10-15 12:17:54 +00:00
lly
86af10c529 ble_mesh: stack: Make mesh buf debug option invisible 2020-10-15 11:48:59 +00:00
lly
c0678d65da ble_mesh: stack: Use settings_core_erase when deinit 2020-10-15 11:48:14 +00:00
lly
2c8fc5f5d6 ble_mesh: stack: Fix storing next net_idx and app_idx 2020-10-15 11:48:14 +00:00
lly
5708d4a4e1 ble_mesh: stack: Continue restore even if failure happens
Previously we have used this solution for node info
restore. Here use the same solution for other mesh
information restore.
2020-10-15 11:48:14 +00:00
lly
094eeaf346 ble_mesh: stack: Split model settings store and clear 2020-10-15 11:48:14 +00:00
lly
c06ce57687 ble_mesh: stack: Erase netkey and appkey with key index 2020-10-15 11:48:14 +00:00
lly
ea0ff4e6d1 ble_mesh: stack: Add clear hb_pub in settings 2020-10-15 11:48:14 +00:00
lly
365c17614b ble_mesh: stack: Transport rx reset settings update
When reset the rx info of transport layer, the
rpl list will always cleared, and rpl stored
in the nvs will only be erased when erase flag
is true and BLE_MESH_SETTINGS is enabled.
Compared with the previous solution, it should
be more clear.
2020-10-15 11:48:14 +00:00
lly
3b9057311b ble_mesh: stack: Use erase settings functions 2020-10-15 11:48:14 +00:00
lly
2459b625f1 ble_mesh: stack: Use mutex for settings operation
Also expose the settings functions with the parameter
bt_mesh_nvs_handle_t, which will be used for further
updates.
2020-10-15 11:48:14 +00:00
lly
a47e89c4e4 ble_mesh: stack: Add role check before enabling device 2020-10-15 11:48:14 +00:00
lly
4b70056966 ble_mesh: stack: Define a type for mesh nvs handle 2020-10-15 11:48:14 +00:00
lly
147db2f700 ble_mesh: ci: Enable settings in sdkconfig.ci.xxx 2020-10-15 11:48:14 +00:00
Ivan Grokhotkov
514389681c examples: fix flash encryption example test
Commit 5e8795eebe has changed the partition table offset, which
has resulted in the ciphertext not matching the one expected in the
example test.
Fix by calculating the ciphertext using espsecure.py.
2020-10-15 18:39:45 +08:00
KonstantinKondrashov
f5475db6e1 example/flash_encryption: Fix partition table and sdkconfig.defaults
When the flash encryption is enabled then we do not need to change the partition table.
The partition_example.csv should not have fixed offsets for partitions because we want to move the whole table.
The fixed offsets in the table were cleared.
2020-10-15 18:36:17 +08:00
baohongde
9fe1469c70 components/bt: Fix waking up fail while sleeping 2020-10-15 09:13:22 +00:00
baohongde
f64d0ec873 components/bt: Make sleep avaliable in hli(for future use) 2020-10-15 09:13:22 +00:00
Angus Gratton
292e396846 Merge branch 'bugfix/spi_flash_yield_coredump_v4.2' into 'release/v4.2'
spi_flash: don't call vTaskDelay in non-os context (v4.2)

See merge request espressif/esp-idf!10297
2020-10-15 15:10:51 +08:00
Angus Gratton
747c9a4e44 Merge branch 'bugfix/returns_correct_flash_encryption_mode_v4.2' into 'release/v4.2'
bootloader: Fix esp_get_flash_encryption_mode() (v4.2)

See merge request espressif/esp-idf!10712
2020-10-15 15:06:42 +08:00
Aditya Patwardhan
9316961219 esp-cryptoauthlib: Update submodule pointer to add a new feature. 2020-10-15 05:16:38 +00:00
fuzhibo
bbef823a20 feature(rtc): rename i2c_xxx to regi2c_xxx 2020-10-15 03:34:59 +00:00
fuzhibo
d337559a17 rtc: support access internal i2c register 2020-10-15 03:34:59 +00:00
KonstantinKondrashov
af7d6f4d89 bootloader: Fix esp_get_flash_encryption_mode(). RELEASE = (CRYPT_CNT == max) or (CRYPT_CNT.write_protect == true)
If the CRYPT_CNT efuse is max it means the same as a write protection bit for this efuse.

Closes: https://github.com/espressif/esp-idf/issues/5747
2020-10-15 02:36:04 +00:00
Ivan Grokhotkov
7d8d2b982e Merge branch 'feature/oocd_ver_backport_v4.2' into 'release/v4.2'
tools: Updates OpenOCD version to 'v0.10.0-esp32-20200709' (backport v4.2)

See merge request espressif/esp-idf!8971
2020-10-15 02:55:08 +08:00
Krzysztof
eabd01e2ab docs: Add profile file name used by zsh shell 2020-10-14 07:31:34 +00:00
Soumesh Banerjee
3f011513b8 VSCode Extension Setup Guide 2020-10-14 07:22:09 +00:00
Krzysztof Budzynski
b25f3cd524 docs: Add explanation of hello_world folder contents (v4.2) 2020-10-14 07:22:09 +00:00
Angus Gratton
57ce9c2f06 Merge branch 'bugfix/bootloader_anti_rollback_mmap_v4.2' into 'release/v4.2'
bootloader_support: fix issue in memory mapping for getting app descriptor (v4.2)

See merge request espressif/esp-idf!10734
2020-10-14 10:44:00 +08:00
Ivan Grokhotkov
4b5146a4ad test_apps: add build test for !CONFIG_SPI_FLASH_YIELD_DURING_ERASE 2020-10-14 02:42:46 +00:00
Ivan Grokhotkov
7092be7422 test_apps: add coredump tests for int_wdt 2020-10-14 02:42:46 +00:00
Ivan Grokhotkov
4baf399f10 spi_flash: don't call vTaskDelay in non-os context
Fixes regression in core dump, when a crash happens in interrupt
context.
2020-10-14 02:42:46 +00:00
Angus Gratton
489f5c38b4 Merge branch 'bugfix/deepsleep_flush_uarts_correct_v4.2' into 'release/v4.2'
esp32s2/soc: Fix periph_ll_periph_enabled (v4.2)

See merge request espressif/esp-idf!10711
2020-10-14 10:42:13 +08:00
Angus Gratton
805a4d9b3f Merge branch 'bugfix/prov_retry_failures_v4.2' into 'release/v4.2'
ci: Add retries for all provisioning methods, some refactors (v4.2)

See merge request espressif/esp-idf!9387
2020-10-14 10:41:42 +08:00
Angus Gratton
8c7a8f146b Merge branch 'bugfix/embed_file_symbol_names_v4.2' into 'release/v4.2'
cmake: fix C identifier generation from embedded file (v4.2)

See merge request espressif/esp-idf!10664
2020-10-14 10:41:12 +08:00
Angus Gratton
359b6af07c Merge branch 'bugfix/UT_001-parallel-count' into 'release/v4.2'
Increase count of parallel jobs to get UT_001 run through CI

See merge request espressif/esp-idf!10799
2020-10-14 10:40:40 +08:00
Martin Stejskal
304ed67982 tools/docker: Add libpython2.7 in order to satisfy GDB dependencies
It was not possible to run xtensa-esp32-elf-gdb from container due to
missing libpython2.7 library.

Merges https://github.com/espressif/esp-idf/pull/5817
Closes https://github.com/espressif/esp-idf/issues/5284
2020-10-13 16:12:21 +00:00
David Cermak
09714a4f11 ci: add job for unit tests 2020-10-12 16:25:17 +02:00
David Cermak
f871186da3 idf.py: Fixed gdb target to exit cleanly when no openocd watch task
When idf.py gdb starts, it expects openocd was started in the background
and creates a thread to watch for openocd errors. when gdb target exits,
the debug_ext.py aims to cleanup all threads and processes, but fails
with traceback if openocd-watch thread not available, which could happen
if openocd started separately.
2020-10-12 13:30:15 +02:00
Krzysztof
e5d252f7cf Increase count of parallel jobs to get UT_001 run through CI 2020-10-12 15:13:28 +08:00
Chinmay Chhajed
d67e284c8d NimBLE: host_rcv_pkt event buf size check.
Check if the size of HCI event buffer is greater than the received HCI
packet. If not then abort with the error message.
2020-10-09 09:28:51 +05:30
Angus Gratton
e849a77675 Merge branch 'bugfix/ci_auto_checkout_revision_of_project_used_in_ci_v4.2' into 'release/v4.2'
CI: get git describe from annotated tags (v4.2)

See merge request espressif/esp-idf!10673
2020-10-08 16:44:55 +08:00
Angus Gratton
22a6e2160f Merge branch 'bugfix/secure_boot_v2_ota_verification_v4.2' into 'release/v4.2'
Secure Boot V2: Fixes the OTA regression with secure boot in ESP32-V3 (v4.2)

See merge request espressif/esp-idf!10612
2020-10-08 11:22:59 +08:00
Angus Gratton
16ed6a4574 Merge branch 'feature/switch_from_external_to_interanl_ram_v4.2' into 'release/v4.2'
esp32: Switch SPIRAM stack in esp_restart_noos() to internal stack (v4.2)

See merge request espressif/esp-idf!9966
2020-10-08 11:22:55 +08:00
Angus Gratton
144f459c81 ci: Check version tags are always annotated
Closes https://github.com/espressif/esp-idf/issues/3114
2020-10-07 13:58:21 +11:00
Angus Gratton
2e469b52ae build system: Also get IDF version from annotated tags only
Builds on previous commit.

Note: Getting the project version still pases --tags so still works with plain
tags, to keep compatibility for existing projects
2020-10-07 13:58:21 +11:00
Mahavir Jain
93aeac9728 bootloader_support: fix issue in memory mapping for getting app descriptor
For getting secure_version field in anti rollback case, bootloader tries
to map whole firmware partition but fails for cases where partition size
is beyond available MMU free pages capacity.

Fix here ensures to map only required length upto application descriptor
size in firmware partition.

Closes https://github.com/espressif/esp-idf/issues/5911
2020-10-06 08:49:49 +05:30
KonstantinKondrashov
be0444bf54 esp32s2/soc: Fix periph_ll_periph_enabled
Logs, before to go the deepsleep, were not completely flushed.
2020-10-01 03:58:23 +08:00
He Yin Ling
fcda778a11 CI: get git describe from annotated tags:
we should only parse IDF version from annotated tags
2020-09-30 11:32:25 +08:00
morris
dcb23c0bc8 pcnt: fix bug in clear interrupt status 2020-09-30 11:13:17 +08:00
Jiang Jiang Jian
8223278050 Merge branch 'bugfix/ble_mesh_check_stack_init_v4.2' into 'release/v4.2'
ble_mesh: stack: Check if mesh stack initialized before init vendor client (v4.2)

See merge request espressif/esp-idf!10481
2020-09-30 10:53:56 +08:00
Jiang Jiang Jian
8e62a6992e Merge branch 'optimize/ble_mesh_provisioner_delete_dev_v4.2' into 'release/v4.2'
ble_mesh: stack: Optimize Provisioner delete device function (v4.2)

See merge request espressif/esp-idf!10603
2020-09-30 10:52:48 +08:00
Jiang Jiang Jian
f1e43b274f Merge branch 'bugfix/coex_some_bugfix_about_ble_dyn_prio_v4.2' into 'release/v4.2'
components/coex: Some bugfix about ble dynamic prio v4.2

See merge request espressif/esp-idf!10596
2020-09-30 10:50:15 +08:00
baohongde
d101b15942 components/coex: Some bugfix about ble dynamic prio
Rewrite ble dynamic prio to fix ble disconn in conn_param_update/channel_map_update
Rewrite ble dynamic prio in connection establishment
Fix ble dynamic prio with latency
Fix status bit set error when conn fail
2020-09-29 14:12:39 +08:00
Jiang Jiang Jian
c5bb6c467f Merge branch 'bugfix/update_esp32_phy_v4500_v4.2' into 'release/v4.2'
esp_wifi: update esp32 phy v4500 (v4.2)

See merge request espressif/esp-idf!10624
2020-09-29 13:59:45 +08:00
lly
11108393f1 ble_mesh: stack: Optimize Provisioner delete device function
Since we have provided separate functions for deleting node
information with node's unicast address, device uuid, etc.
So we update the behavior of this function, which will only
be used to delete device information which is not provisioned
or just under provisioning.
2020-09-29 03:41:29 +00:00
lly
d312651c5c ble_mesh: stack: Check if mesh stack initialized before init vendor client 2020-09-29 03:41:19 +00:00
Jiang Jiang Jian
17fca6235b Merge branch 'bugfix/add_clear_bond_complete_evt_4_2' into 'release/v4.2'
componenet_bt/bugfix: add remove bond device complete event 4.2

See merge request espressif/esp-idf!10651
2020-09-29 11:15:55 +08:00
Jiang Jiang Jian
61e6e718e4 Merge branch 'bugfix/bredr_bugfix_release_for_qa_dummy_disconnect_4_2' into 'release/v4.2'
Bugfix/bredr bugfix release for qa dummy disconnect 4.2

See merge request espressif/esp-idf!10645
2020-09-29 11:15:30 +08:00
Island
d7317eaae1 Merge branch 'bugfix/channel_map_send_time_v4.2' into 'release/v4.2'
component/bt: Insert the llcp packet to the top of the tx_preg linked list.(backport 4.2)

See merge request espressif/esp-idf!10178
2020-09-29 10:40:26 +08:00
Wu Bo Wen
cb6299200c doc/adc: modifications in the adc documentation and adc headers 2020-09-28 21:55:42 +08:00
Michael (XIAO Xufeng)
a63bdf782f Merge branch 'bugfix/fix_dac_dma_driver_and_ut_backport_v4.2' into 'release/v4.2'
Driver(dac): fix DAC-DMA driver and unit test (backport v4.2)

See merge request espressif/esp-idf!10216
2020-09-28 21:43:11 +08:00
Michael (XIAO Xufeng)
cf16ae573c Merge branch 'cherry-pick-7876d7f5' into 'release/v4.2'
driver(adc): add adc-dma code for esp32   (backport v4.2)

See merge request espressif/esp-idf!10212
2020-09-28 21:11:11 +08:00
Renz Bagaporo
d41f856576 cmake: fix C identifier generation from embedded file 2020-09-28 21:08:56 +08:00
Michael (XIAO Xufeng)
847a697c93 Driver(dac): fix DAC-DMA driver and unit test 2020-09-28 19:35:07 +08:00
baohongde
2d90885e09 components/bt: Replace task post with btc_inter_profile_call, when post message from btc_dm to btc_gap 2020-09-28 15:09:37 +08:00
baohongde
2b4fae912c components/bt: Fix clear bond fail when connected without ble included 2020-09-28 14:57:27 +08:00
xiongweichao
fba62f5e2e add remove bond device complete event 2020-09-28 14:56:42 +08:00
ChenJianxing
cfa6db0fee esp_wifi: update esp32 phy v4500 (v4.2)
improve frequence offset feature.
2020-09-28 14:27:34 +08:00
Jiang Jiang Jian
0aaa7ffc28 Merge branch 'bugfix/fix_some_wifi_bugs_0924_v4.2' into 'release/v4.2'
esp_wifi: fix some wifi bugs 0924 (v4.2)

See merge request espressif/esp-idf!10648
2020-09-28 14:23:23 +08:00
Mahavir Jain
5bdded29a1 Merge branch 'bugfix/provisioning_example_warning_with_O2_optimization_v4.2' into 'release/v4.2'
provisioning: use memcpy instead of strncpy for copying SSID (v4.2)

See merge request espressif/esp-idf!10494
2020-09-28 12:44:41 +08:00
xiongweichao
7f8c121791 1.revert dummy command
2.fix send MEDIA_CTRL command in disconnect
2020-09-28 10:42:02 +08:00
xiongweichao
a6cdf4ed1e 1.fix test case dummy
2.fix sink send media control ESP_A2D_MEDIA_CHECK_SRC_RDY
2020-09-28 10:41:53 +08:00
Angus Gratton
314960ae31 Merge branch 'bugfix/window_spill_a0_corruption_v4.2' into 'release/v4.2'
freertos: don't clobber a4 while spilling register windows (backport v4.2)

See merge request espressif/esp-idf!10305
2020-09-28 09:15:14 +08:00
zhangyanjiao
466cd7ba22 esp_wifi:
1. Modify LR for esp32 and esp32s2
2. Fix esp32s2 RTS rate
3. Optimize some debug logs for probe response
4. Optimize phy and soc files
5. Add IPv6 DSCP
6. Fix classify AC to TID
7. Fix the bug that no event for connect
2020-09-27 19:50:58 +08:00
Krzysztof Budzynski
81bbc8c88d Merge branch 'doc/esp32s2_jtag_guide_v4.2' into 'release/v4.2'
docs: update JTAG debugging guide for ESP32-S2 (backport v4.2)

See merge request espressif/esp-idf!10311
2020-09-27 14:37:40 +08:00
Krzysztof Budzynski
4b10685fcc Merge branch 'doc/remove_lts_versions_v4.2' into 'release/v4.2'
docs: Update Versions file in line with the latest Support Policy document (v4.2)

See merge request espressif/esp-idf!10599
2020-09-27 14:31:31 +08:00
Krzysztof Budzynski
34209a30bd Merge branch 'feature/docs-add-python-clean_v4.2' into 'release/v4.2'
docs: Add solution for ImportError in idf.py into the documentation (v4.2)

See merge request espressif/esp-idf!10630
2020-09-27 14:27:11 +08:00
Jiang Jiang Jian
123aaf2280 Merge branch 'bugfix/fix_some_wifi_bugs_0916_v4.2' into 'release/v4.2'
eps_wifi: Fix some wifi bugs (backport v4.2)

See merge request espressif/esp-idf!10475
2020-09-27 11:17:53 +08:00
Jiang Jiang Jian
2db55a3b90 Merge branch 'bugfix/add_disconn_req_action_when_no_link_4.2' into 'release/v4.2'
Bugfix/add disconn req action when no link 4.2

See merge request espressif/esp-idf!10508
2020-09-27 11:17:43 +08:00
martin.gano
50e2d0b32d docs: add description of python-clean command 2020-09-27 00:03:38 +02:00
Ivan Grokhotkov
60e4c02963 ci: add unit test job 2020-09-25 16:29:58 +00:00
Ivan Grokhotkov
e2cb7ed9ca Revert "CXX: removed exception windowspill test"
This reverts commit f3e180de72.
2020-09-25 16:29:58 +00:00
Ivan Grokhotkov
f4ab2beaa8 freertos: don't clobber a4 while spilling register windows
Commit 891eb3b0 was fixing an issue with PS and EPC1 not being
preserved after the window spill procedure. It did so by saving PS in
a2 and EPC1 in a4. However the a4 register may be a live register of
another window in the call stack, and if it is overwritten and then
spilled to the stack, then the corresponding register value will end
up being corrupted. In practice the problem would show up as an
IllegalInstruction exception, when trying to return from a function
when a0 value was 0x40020.
Fix by using a0 register instead of a4 as scratch. Also fix a comment
about xthal_save_extra_nw, as this function in fact doesn't clobber
a4 or a5 because XCHAL_NCP_NUM_ATMPS is defined as 1.

Closes https://github.com/espressif/esp-idf/issues/5758
2020-09-25 16:29:58 +00:00
wangcheng
df301b89ec component/bt: Fix assert(9, 10), Insert the llcp packet to the top of the tx_preg linked list 2020-09-25 18:43:14 +08:00
Supreet Deshpande
a04d6e7f63 Secure Boot V2: Fixes the OTA regression with secure boot in ESP32-V3
Closes https://github.com/espressif/esp-idf/issues/5905
2020-09-25 14:21:07 +05:30
Angus Gratton
c7d602cc62 Merge branch 'bugfix/adjtime_return_outdelta_before_new_delta_set_v4.2' into 'release/v4.2'
newlib: Fix adjtime, returns the amount of time remaining from any previous adjustment (v4.2)

See merge request espressif/esp-idf!9971
2020-09-25 08:03:11 +08:00
Angus Gratton
6443a96834 Merge branch 'backport/shared_stack4.2' into 'release/v4.2'
Backport/shared stack4.2

See merge request espressif/esp-idf!10303
2020-09-25 08:02:55 +08:00
Angus Gratton
f817747727 Merge branch 'bugfix/efuse_test_stackoverflow_v4.2' into 'release/v4.2'
CI: Increase stack size for efuse unit test (Backport v4.2)

See merge request espressif/esp-idf!10543
2020-09-25 08:02:31 +08:00
Angus Gratton
dbdb1c1c23 docs: Update Versions file in line with the latest Support Policy document 2020-09-25 09:59:56 +10:00
Angus Gratton
7402e17838 Merge branch 'bugfix/openss_strict_verify_mode' into 'release/v4.2'
openssl: made verification mode conversion to mbetls modes more strict (v4.2)

See merge request espressif/esp-idf!10499
2020-09-25 07:40:52 +08:00
Angus Gratton
e610df5870 Merge branch 'bugfix/esp32s2_panic_handler_iram_v4.2' into 'release/v4.2'
esp_common: allow placing panic handler into IRAM on ESP32-S2 (v4.2)

See merge request espressif/esp-idf!10295
2020-09-25 07:40:06 +08:00
Angus Gratton
6a711671c6 Merge branch 'bugfix/spinlock_coredump_regressions_v4.2' into 'release/v4.2'
Revert "Merge branch 'feature/gdb_stub_task_state' into 'master'" (backport v4.2)

See merge request espressif/esp-idf!10296
2020-09-25 07:33:05 +08:00
Angus Gratton
3b400767f3 Merge branch 'bugfix/idf_py_disable_cmake_warnings_default_v4.2' into 'release/v4.2'
idf.py: disable cmake uninitialized variable warnings by default (v4.2)

See merge request espressif/esp-idf!10201
2020-09-25 07:32:22 +08:00
Angus Gratton
4ffe6c096a Merge branch 'bugfix/esp32s2_o2_op_v4.2' into 'release/v4.2'
freertos: fix build error at -O2 optimization level (v4.2)

See merge request espressif/esp-idf!10301
2020-09-25 07:31:58 +08:00
Angus Gratton
f536db1782 Merge branch 'feature/secure_boot_esp32s2_v4.2' into 'release/v4.2'
Feature/secure boot esp32s2 v4.2

See merge request espressif/esp-idf!9958
2020-09-25 07:31:45 +08:00
Jiang Jiang Jian
dd29046e88 Merge branch 'bugfix/can_mmap_after_get_enough_free_mmu_pages_v4.2' into 'release/v4.2'
flash_mmap: can mmap after get enough free MMU pages (backport v4.2)

See merge request espressif/esp-idf!10584
2020-09-24 22:36:51 +08:00
Krzysztof
fd2e2ac34f doc: Getting Started Guide, remove shortcuts to 'build toolchain from scratch' instructions 2020-09-24 18:32:50 +08:00
Victor Lamoine
0831d06dee Fix ccache documentation: environment variable is IDF_CCACHE_ENABLE
Merges https://github.com/espressif/esp-idf/pull/5753
2020-09-24 05:20:33 +00:00
Angus Gratton
722d67ea36 idf.py: Disable CMake --warn-uninitialized option by default
Can still be enabled by passing --cmake-warn-uninitialized on the command line

Prevents CMake warnings printed by default if IDF_PATH is underneath the CMake
project directory.

The reason for this is that CMake --warn-uninitialized only enables checks
inside the project directory (ie top-level CMakeLists.txt directory and
subdirectories), it doesn't enable for files included from other directories.

(The only way to enable warnings in other directories is to pass
--check-system-dirs and this looks like it's only useful for CMake's own
developers as it prints a lot of warnings from inside CMake otherwise - see
https://gitlab.kitware.com/cmake/cmake/-/issues/19645 )

Plan to follow up with a later commit to clean up most of the warnings (which
aren't problems for CMake execution), but we'll also disable this option by
default to avoid this unexpected triggering of IDF warnings.
2020-09-24 05:20:33 +00:00
Jiang Jiang Jian
3c2fd749f0 Merge branch 'bugfix/wifi_create_and_start_ap_v4.2' into 'release/v4.2'
Set default AP handlers in wifi_create_and_start_ap() v4.2

See merge request espressif/esp-idf!10458
2020-09-24 12:36:50 +08:00
Jiang Jiang Jian
7b30e467b4 Merge branch 'bugfix/confirmed_bugfix_from_baidu_proj_4.2' into 'release/v4.2'
Confirmed bugfix from Baidu project 4.2

See merge request espressif/esp-idf!10544
2020-09-24 12:31:52 +08:00
Jiang Jiang Jian
009956c5a7 Merge branch 'bugfix/wifi_spin_lock_allocation_in_PSRAM_v4.2' into 'release/v4.2'
wifi: Fix spin lock allocation in PSRAM bug(v4.2)

See merge request espressif/esp-idf!10553
2020-09-24 12:31:14 +08:00
Jiang Jiang Jian
88faf37a59 Merge branch 'bugfix/ipv6_send_data_error_when_src_ip_miss_for_4.2' into 'release/v4.2'
lw-ip:ipv6 send multicast data fail when src address is null (backport 4.2)

See merge request espressif/esp-idf!10558
2020-09-24 12:30:35 +08:00
jiangguangming
03a749a60e flash_mmap: restore interrupt and cache before err return 2020-09-24 09:49:39 +08:00
jiangguangming
98ce1fa080 flash_mmap: can mmap after get enough free MMU pages 2020-09-24 09:49:39 +08:00
Ivan Grokhotkov
9f0c564de4 Merge branch 'feature/toolchain_2020r3_v4.2' into 'release/v4.2'
Update toolchain to esp-2020r3 (backport v4.2)

See merge request espressif/esp-idf!10388
2020-09-23 20:26:24 +08:00
aleks
07bfb7cac9 freemodbus: fix event processing failure after destroy
Closes https://github.com/espressif/esp-idf/issues/5275
2020-09-23 07:04:52 +00:00
Supreet Deshpande
2d63354ec8 Secure Boot: Fixes the cpp macro in esp32 secure boot rom functions.
Closes https://github.com/espressif/esp-idf/issues/5878
2020-09-23 03:01:51 +05:30
xueyunfei
fd083f1e44 ipv6 send multicast data fail when src address is null for 4.2 2020-09-22 17:33:02 +08:00
dongyou
c06f0738c9 Fix spin lock allocation in PSRAM bug 2020-09-22 14:36:36 +08:00
xiehang
311d43d021 eps_wifi: Fix some wifi bugs
1. Drop receiving packets from myself
2. scan: Fix scan issue with WPA2-PSK-SHA256 AP
2020-09-22 14:23:43 +08:00
Marius Vikhammer
190f310ed1 docs: seperate build_docs html and pdf CI jobs
Due to eager_exclude, Sphinx jobs cannot use the doc cache (doctrees).

PDF and HTML building are now seperate CI jobs to avoid this issue.
PDF building will only be ran on deploy branches and when started
with build_docs tag to reduce CI load
2020-09-22 14:04:12 +08:00
Marius Vikhammer
d12eb31f42 CI: Increase stack size for efuse unit test
"Batch mode is thread-safe" case would occasionally cause a stackoverflow.
Increased stack size.
2020-09-22 11:54:08 +08:00
weitianhua
b7d4868a70 Confirmed bugfix from Baidu project 2020-09-22 11:44:09 +08:00
Jakob Hasse
071dc73954 NVS: ensuring default partition
* Also added encryption keys to CMakeLists.txt

Closes https://github.com/espressif/esp-idf/issues/5347
Closes IDFGH-3372
2020-09-21 12:44:57 +08:00
Ivan Grokhotkov
8749c46284 esp_common: allow placing panic handler into IRAM on ESP32-S2 2020-09-18 15:35:48 +00:00
martin.gano
278030ff3e add file stream parameter and log stdout and stderr to same stream 2020-09-18 10:38:33 +02:00
weitianhua
84cda60478 Redesign separating AVRC & A2DP
1. Add g_av_with_rc to avrc_tg_init function
2. Remove g_av_open_fail
3. Add comment in API files
4. Add a2dp init & deinit state variable to inidcate a2dp statement
2020-09-18 14:09:27 +08:00
weitianhua
e940e1d72a Add global header and change declaration position 2020-09-18 14:09:19 +08:00
weitianhua
b16deb4473 Remove uneccessary macro
Separate AVRC from A2DP when AVRC not Initialized
2020-09-18 14:09:10 +08:00
weitianhua
306c978195 Rewrite a2dp clean_up function 2020-09-18 14:09:02 +08:00
weitianhua
59234501dd Add bda_addr for esp_bt_a2dp_disconn_req API
1. Add reaction for a2dp snk & src disconn req when no link up
  2. Change state machine set before EVT upto APP layer in some cases
  3. Add bool open_fail to choose whether post disconnection evt to app layer
2020-09-18 14:08:53 +08:00
Jakob Hasse
26481c4a9d toolchain: C++ exception workaround
* disable C++ exception FDE sorting (saves RAM)

Closes IDF-1128
2020-09-18 12:32:34 +07:00
Anton Maklakov
88a62e8ae5 Update toolchain to esp-2020r3
Fixup more for PSRAM issue;
    Allow GDB work correctly with Privileged Registers;
    Based on GCC 8.4.0;
    Update a fix of C++ exception crashs from the GCC mainline;
    Fixup strptime_l() and some locale in libc;
2020-09-18 12:32:34 +07:00
Angus Gratton
83ec35f185 tool: Fix 'idf.py bootloader' error if Secure Boot is enabled
If Secure Boot is enabled, there's no bootloader flasher arguments in the
project (to encourage careful manual flashing), so this command would
fail with a KeyError.
2020-09-18 04:05:28 +05:30
Felipe Neves
223f800dd7 expression_with_stack: added a tweak on TCB stackpointers to avoid false trigger of stack overflow 2020-09-17 20:46:02 +00:00
Felipe Neves
3e9637a893 test/shared_stack_printf: improved printf with shared stack function test 2020-09-17 20:46:02 +00:00
Ivan Grokhotkov
a6f0b15d3e Revert "Merge branch 'feature/gdb_stub_task_state' into 'master'"
This reverts commit c41a0c1907, reversing
changes made to 5c1d317766.
2020-09-17 17:04:48 +00:00
David Cermak
521eee7384 openssl: made verification mode conversion to mbetls modes more strict 2020-09-17 13:22:36 +02:00
Mahavir Jain
6d37ad39aa provisioning: use memcpy instead of strncpy for copying SSID
Per WiFi library requirement, SSID can be non-null terminated string
if its length goes to 32 bytes (maximum). Use of strncpy in this case,
along with compiler optimization level -O2 results in some warnings
for potential use of non-null terminated strings.

Fix here ensures use of memcpy to copy SSID string upto appropriate
desired length. This helps to avoid compiler specific workaround
flags added earlier.

Closes https://github.com/espressif/esp-idf/issues/5866
Closes IDFGH-3983
2020-09-17 15:51:32 +05:30
Jiang Jiang Jian
dddcc2ede8 Merge branch 'bugfix/add_protection_for_spp_api_4.2' into 'release/v4.2'
Bugfix/add protection for spp api 4.2

See merge request espressif/esp-idf!10281
2020-09-16 14:06:28 +08:00
Jiang Jiang Jian
21b02a9302 Merge branch 'bugfix/update_esp32_phy_4390_v4.2' into 'release/v4.2'
update esp32 phy 4390.(backport v4.2)

See merge request espressif/esp-idf!10456
2020-09-16 11:57:47 +08:00
Angus Gratton
17525d6035 Merge branch 'bugfix/cxx_flag_operators_v4.2' into 'release/v4.2'
esp_eth: moved extern "C" after includes (v4.2)

See merge request espressif/esp-idf!10351
2020-09-15 16:12:42 +08:00
Angus Gratton
a4c3aebc3d Merge branch 'bugfix/ulp_as_version_v4.2' into 'release/v4.2'
ulp: fix ULP assembler version detection for localized systems (v4.2)

See merge request espressif/esp-idf!10393
2020-09-15 15:23:26 +08:00
Angus Gratton
7187a3a1eb Merge branch 'bugfix/eclipse_make_py3_v4.2' into 'release/v4.2'
tools: Fix Python 3 incompatibility for building with Eclipse on Windows (v4.2)

See merge request espressif/esp-idf!10398
2020-09-15 15:08:26 +08:00
Jiang Jiang Jian
86b07ef098 Merge branch 'bugfix/fix_ipv6_nd6_max_queue_num_4.2' into 'release/v4.2'
lw-ip IPv6 ND6 queue too much pkts(Backport v4.2)

See merge request espressif/esp-idf!10091
2020-09-15 15:07:03 +08:00
Angus Gratton
ac016da8ab Merge branch 'bugfix/bootloader_skip_verify_jtag_v4.2' into 'release/v4.2'
bootloader_support: don't check signature when JTAG is attached, fix signed partition table generation (v4.2)

See merge request espressif/esp-idf!10378
2020-09-15 14:58:01 +08:00
dongyou
ddedf25ca8 Set default AP handlers in wifi_create_and_start_ap() v4.2 2020-09-15 14:54:46 +08:00
Supreet Deshpande
7d57165922 Update to compatible crc & SBv2 enable check api's 2020-09-15 11:29:26 +05:30
Angus Gratton
d72350c0ce ci: Add test apps for ESP32-S2 Secure Boot 2020-09-15 11:23:51 +05:30
Angus Gratton
1c6c6eceb5 secure boot: Fixes for ESP32-S2 first boot logic 2020-09-15 11:23:51 +05:30
Supreet Deshpande
e7b1640c77 Split unit test configs to fit into ESP32s2's memory 2020-09-15 11:23:51 +05:30
Angus Gratton
762e8d5f84 bootloader esp32s2: Fix return type of ROM function signature verification 2020-09-15 11:23:51 +05:30
Angus Gratton
9856198112 bootloader esp32s2: Increase bootloader DRAM & IRAM allowance
Bootloader DRAM now ends at 0x3FFEAB00 which is the start of ROM
static RAM (reclaimable after app is running).

IRAM loader segment increased by 8KB.

Available total static RAM for the app is now reduced by 16KB.
2020-09-15 11:23:51 +05:30
Supreet Deshpande
b05213c327 Docs: Secure boot v2 support for ESP32-S2 2020-09-15 11:23:51 +05:30
Supreet Deshpande
0f82fe105c Secure boot v2 support for ESP32-S2 2020-09-15 11:23:51 +05:30
Jiang Jiang Jian
c4f4e15cc7 Merge branch 'cherry-pick-4dcaa0e6-3' into 'release/v4.2'
wpa_supplicant: Deinit wpa2 states in wifi deinit(backport v4.2)

See merge request espressif/esp-idf!10163
2020-09-15 12:06:49 +08:00
ChenJianxing
2cf032a4b6 update esp32 phy 4390.(backport v4.2) 2020-09-15 10:54:41 +08:00
ChenJianxing
a5907ee3fe lwip: fix IPv6 ND6 queue too much pkts cause no mem issue and add menuconfig item for this params. 2020-09-14 21:06:38 +08:00
Sergei Silnov
ef0db6f034 ci: Use git mirror for docker image 2020-09-14 12:49:05 +02:00
Michael (XIAO Xufeng)
b132ab2091 Merge branch 'bugfix/add_return_in_uart_wait_tx_done_bp4.2' into 'release/v4.2'
bugfix(UART): Add return in uart_wait_tx_done(backport v4.2)

See merge request espressif/esp-idf!10335
2020-09-14 14:26:00 +08:00
Ivan Grokhotkov
ced340a1a3 Merge branch 'bugfix/ci_ulp_adc_more_info_v4.2' into 'release/v4.2'
CI: Fix regex in ulp_adc example test (v4.2)

See merge request espressif/esp-idf!10431
2020-09-13 17:26:53 +08:00
Roland Dobai
4e27122ee5 CI: Fix regex in ulp_adc example test 2020-09-12 08:01:53 +02:00
Island
bec2dbcb84 Merge branch 'bugfix/ble_mesh_prov_iv_index_v4.2' into 'release/v4.2'
ble_mesh: stack: Using the latest iv_index for provisioning (v4.2)

See merge request espressif/esp-idf!10416
2020-09-11 20:08:39 +08:00
Krzysztof Budzynski
07acd74b04 Merge branch 'bugfix/get_started_inconsistency_backport_v4.2' into 'release/v4.2'
docs: Add missing target setting in step 7 of Getting Started documentation (Backport v4.2)

See merge request espressif/esp-idf!10405
2020-09-11 19:15:17 +08:00
lly
0fff4d46ec ble_mesh: stack: Using the latest iv_index for provisioning
Provisioner should always uses the latest IV Index for provisioning.
For example, if the current IV Index is 0x00000001, but prov->iv_index
is still initialized with 0x00000000, and if Provisioner uses prov->
iv_index for provisioning, this will cause the Provisioner failing to
control the node.
So here bt_mesh.iv_index is used instead of prov->iv_index.
2020-09-11 10:55:47 +08:00
Jiang Jiang Jian
073e855c73 Merge branch 'bugfix/btdm_spp_null_ptr_with_dynamic_memory_v4.2' into 'release/v4.2'
components/bt: Fix SPP using NULL point with dynamic memory

See merge request espressif/esp-idf!10322
2020-09-10 17:39:14 +08:00
Ivan Grokhotkov
0514496744 Merge branch 'feature/vs_allow_custom_part_4.2' into 'release/v4.2'
Feature/vs allow custom part 4.2

See merge request espressif/esp-idf!9514
2020-09-10 16:09:00 +08:00
Roland Dobai
d212c4673d tools: Fix Python 3 incompatibility for building with Eclipse on Windows 2020-09-10 09:45:37 +02:00
Roland Dobai
92ef27223d ulp: fix ULP assembler version detection for localized systems 2020-09-10 09:34:40 +02:00
Krzysztof Budzynski
ef19aac267 docs: Add missing target setting in step 7 of Getting Started documentation 2020-09-10 15:33:08 +08:00
Mahavir Jain
156afc0c05 Merge branch 'bugfix/secure_boot_v2_sign_cmake_copy_v4.2' into 'release/v4.2'
Add platform independent CMake copy during signing (v4.2)

See merge request espressif/esp-idf!9544
2020-09-10 14:41:42 +08:00
Island
c81b139479 Merge branch 'feat/ble_mesh_use_model_c_v4.2' into 'release/v4.2'
ble_mesh: stack: Use model callback for operations [Zephyr] (v4.2)

See merge request espressif/esp-idf!10362
2020-09-10 10:39:33 +08:00
Island
fa33addb4a Merge branch 'bugfix/ble_mesh_remove_assert_v4.2' into 'release/v4.2'
ble_mesh: stack: Avoid using assert in mesh stack (v4.2)

See merge request espressif/esp-idf!10358
2020-09-10 10:38:47 +08:00
Island
1f5f72af67 Merge branch 'bugfix/ble_mesh_nimble_ccc_handle_v4.2' into 'release/v4.2'
ble_mesh: nimble: Fix updating ccc handle with wrong value (v4.2)

See merge request espressif/esp-idf!10354
2020-09-10 10:37:59 +08:00
Ivan Grokhotkov
6f2e465ec9 partition_table: fix generation of signed partition table
Fixes the issue that signed partition table was not generated when
CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES was on, because
partition_table_bin depended on unsigned_partition_bin twice.
Regression from acb7a211.

Also use final_partition_bin variable in esptool_py_flash_target_image
arguments, to avoid issues in the future if final_partition_bin is
changed.
2020-09-09 23:39:51 +02:00
Ivan Grokhotkov
93a3beafb8 bootloader_support: don't check signature when JTAG is attached
If an insecure configuration is enabled (no hardware secure boot, just
software signature check), skip the signature check in bootloader if
JTAG debugger is attached. This allows the debugger to set breakpoints
in Flash before the application runs.

Closes https://github.com/espressif/esp-idf/issues/4734
Closes https://github.com/espressif/esp-idf/issues/4878
2020-09-09 23:39:51 +02:00
Ivan Grokhotkov
0e191cf70e examples/parttool: fix the test to work on parallel test runner
Pass the DUT port to parttool_example.py as an argument.
2020-09-09 18:35:07 +02:00
David Čermák
96ad552245 Merge branch 'feature/mqtt_sub_update_01594bf1_v4.2' into 'release/v4.2'
MQTT: Update submodule reference (Backport v4.2)

See merge request espressif/esp-idf!10230
2020-09-09 20:41:14 +08:00
He Yin Ling
5a23447452 Merge branch 'bugfix/remove_auto_conn_case_v4.2' into 'release/v4.2'
test: remove auto conn case because we do not support this anymore (v4.2)

See merge request espressif/esp-idf!9940
2020-09-09 15:54:42 +08:00
lly
61bb586244 ble_mesh: stack: Use model callback for operations [Zephyr]
- Previously when a model is initialized or deinitialized, in the
  access layer, we need to check the model id with the ids in the
  table in order to find the proper model operation function.
- Currently all the operation functions of each model will be set
  during the mesh initialization. When the model is found, we can
  directly use the corresponding callback for different operations.
- Currently only init/deinit operations are registered, later we
  will add more operations.
2020-09-09 13:59:32 +08:00
lly
1f9d289ee0 ble_mesh: stack: Avoid using assert in mesh stack 2020-09-09 10:57:07 +08:00
Jakob Hasse
a1c8b21928 esp_eth: moved extern "C" after includes 2020-09-09 10:19:03 +08:00
Krzysztof Budzynski
8b1e3c01a0 Merge branch 'bugfix/doc_main_readme_build_v4.2' into 'release/v4.2'
Fix the setup instructions in the main README (v4.2)

See merge request espressif/esp-idf!10337
2020-09-09 02:44:34 +08:00
lly
4eec2c64ee ble_mesh: nimble: Fix updating ccc handle with wrong value 2020-09-08 21:01:32 +08:00
Jiang Jiang Jian
b356d41bb1 Merge branch 'bugfix/fix_some_wifi_bugs_0902_v4.2' into 'release/v4.2'
Bugfix/fix some wifi bugs 0902 v4.2 (backport v4.2)

See merge request espressif/esp-idf!10246
2020-09-08 18:30:31 +08:00
Roland Dobai
4663b16779 Fix the setup instructions in the main README 2020-09-08 09:54:46 +02:00
Chen Yi Qun
a8a2ea7b38 UART: Add return in uart_wait_tx_done
uart_wait_tx_done quit due to timeout but without return ESP_ERR_TIMEOUT.
2020-09-08 15:00:53 +08:00
Ivan Grokhotkov
2854050835 Merge branch 'bugfix/pip_gdbgui_v4.2' into 'release/v4.2'
fix windows incompatibility with gdbgui>=0.14 (v4.2)

See merge request espressif/esp-idf!10326
2020-09-08 00:07:09 +08:00
Marek Ištok
1fef76cbce tools: fix windows incompatibility with gdbgui>=0.14
gdbgui intentionally (https://github.com/cs01/gdbgui/pull/346) introduced dependencies that are incompatible with windows, and don't seem to have plans to resolve them anytime soon

Closes https://github.com/espressif/esp-idf/issues/5782
Closes https://github.com/espressif/esp-idf/issues/5787
Merges https://github.com/espressif/esp-idf/pull/5794
2020-09-07 07:55:45 +00:00
baohongde
ad8b3e4274 components/bt: Fix SPP using NULL point with dynamic memory 2020-09-07 15:44:28 +08:00
Jiang Jiang Jian
ecab1d9b2e Merge branch 'bugfix/l2cap_link_timeout_llcp_prog_btu_wtd_v4.2' into 'release/v4.2'
Bugfix/l2cap link timeout llcp prog btu wtd v4.2

See merge request espressif/esp-idf!10255
2020-09-07 14:11:08 +08:00
morris
1f011c3b2a docs: translate idf.py debug target 2020-09-04 21:59:05 +02:00
Ivan Grokhotkov
8f78db8073 docs: jtag-debugging: update Chinese version 2020-09-04 21:59:05 +02:00
Ivan Grokhotkov
7ae490d908 docs: jtag-debugging: fix ups in English version 2020-09-04 21:59:05 +02:00
Ivan Grokhotkov
b58d74da45 docs: add placeholders for {esp32,esp32s2}.inc in JTAG debugging guide 2020-09-04 21:59:05 +02:00
Ivan Grokhotkov
ead33e155d docs: repurpose WROVER-KIT debugging guide for Kaluga-1 2020-09-04 21:59:05 +02:00
Ivan Grokhotkov
964f041269 tools: idf.py: default to board/esp32s2-kaluga-1.cfg for ESP32-S2
NFC. Kaluga-1 config is same as devkitj + esp32s2.
2020-09-04 21:59:05 +02:00
Ivan Grokhotkov
b7760cf269 docs: minor typos in JTAG debugging section 2020-09-04 21:59:05 +02:00
Ivan Grokhotkov
cfbd2566c1 docs: formatting fix in idf.py debugging section 2020-09-04 21:59:05 +02:00
Ivan Grokhotkov
b513dd11ce docs: move target-specific parts of JTAG guide into include files
{esp32,esp32s2}.inc files contain most of the bits and code snippets
which are different between targets. These bits are included from the
rest of the source files.

Also included is an update to the section about OpenOCD configuration
variables and files. This section wasn't updated when some of the
files and variables got renamed.
2020-09-04 21:59:05 +02:00
Ivan Grokhotkov
b181623d9b freertos: fix compilation warning at -O2 level
Closes https://github.com/espressif/esp-idf/issues/5525
2020-09-04 21:33:49 +02:00
Ivan Grokhotkov
acfe648367 ci: add startup test with -O2 optimization level 2020-09-04 21:33:49 +02:00
Ivan Grokhotkov
73813c6bac freertos: ensure the interrupt stack is aligned
CONFIG_FREERTOS_ISR_STACKSIZE was set to 2100 when ELF core dump was
enabled, which resulted in a non-16-byte-aligned interrupt stack
offset. This triggered "is SP corrupted" check in the backtrace,
terminating the backtrace early.

Fix the default value, and make sure that the stack is always aligned,
regardless of the value of CONFIG_FREERTOS_ISR_STACKSIZE.
2020-09-04 20:45:38 +02:00
Ivan Grokhotkov
c3d2942675 panic: skip over the first invalid PC in case of InstrFetchProhibited
InstrFetchProhibited usually occurs because of a jump to an invalid
pointer. In this case, PC in the exception frame is the address of
the jump destination. 'esp_ptr_executable' check in print_backtrace
function recognizes the first frame as invalid, and the backtrace is
interrupted. This prevents the user from finding the location where
the invalid pointer is dereferenced.

Bypass the 'esp_ptr_executable' check if the exception cause is
InstrFetchProhibited. Update the test case to no longer ignore this
issue.
2020-09-04 20:45:38 +02:00
David Čermák
87d96b2c29 Merge branch 'bugfix/ws_stop_deadlock_v4.2' into 'release/v4.2'
Websocket client: avoid deadlock if stop called from event handler (Backport 4.2)

See merge request espressif/esp-idf!10226
2020-09-04 22:51:46 +08:00
Island
5c8a85e839 Merge branch 'bugfix/ble_mesh_sensor_example_fix_v4.2' into 'release/v4.2'
ble_mesh: example: Fix sensor data wrong iteration (v4.2)

See merge request espressif/esp-idf!10273
2020-09-04 16:54:38 +08:00
wangcheng
a7d52dafa6 component/bt: Fixed the watchdog timeout of btu task during multi-connection 2020-09-04 16:27:03 +08:00
weitianhua
a7ddc9c125 Add protection for rfcomm close API in SPP 2020-09-04 14:40:27 +08:00
weitianhua
07e2d3ab0f Add some debug log for bt:
1. Add logs for SPP not enabled successfully
2. Add information to Applicatioin layer that the A2DP is connecting to peer device

Regular BTC and BTU Task name & Add BTC Init protection

1. Regular the BTC Task Name to Close a Github issue

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

2. Add BTC Init failure protection

3. Regular BTU Task Name with BTC

4. Correct the comment of
   a. SDP_ServiceSearchRequest and SDP_ServiceSearchRequest2
   b. l2cu_create_conn_after_switch

5. Correct comment of esp_bt_hf_vra();

6. Fix cpp compilier region
2020-09-04 14:40:19 +08:00
lly
8fe75ff3ce ble_mesh: example: Fix sensor data wrong iteration 2020-09-04 11:54:52 +08:00
David Čermák
b9f0500641 Merge branch 'bugfix/ws_server_async_send_fin_v4.2' into 'release/v4.2'
http_server example: WebSocket server to set final flag in async messages (v4.2)

See merge request espressif/esp-idf!10087
2020-09-03 14:11:13 +08:00
wangcheng
12633717f7 components/bt: Fixed the state not synchronized between controller and host when disconnected. 2020-09-02 21:43:57 +08:00
David Cermak
ec2262e5a4 http_server: WebSocket server to set flag in transmitted messages by default
Add logic to set `FIN` flag automatically for transmitted WS frames, but
if `fragmented` option set indicating an expert/manual mode, then the
`FIN` flag is set according to the `final` option.
2020-09-02 07:54:29 +00:00
David Cermak
4da38b6769 http_server example: WebSocket server to set final flag in async messages
Closes https://github.com/espressif/esp-idf/issues/5405
2020-09-02 07:54:29 +00:00
David Čermák
a0a0d34da6 Merge branch 'bugfix/ethernet_handle_early_rx_interrupt' into 'release/v4.2'
Bugfix/ethernet handle early rx interrupt (v4.2)

See merge request espressif/esp-idf!10098
2020-09-02 15:52:18 +08:00
Nachiket Kukade
d17e6a75e0 espnow/pmf: Implement ESPNOW + PMF Co-existance
H/W decryption of Mgmt frames was disabled for PMF and done through
S/W. If ESPNOW packets go through this path, it affects backward
compatibility since method of decrypting Mgmt packets is different in H/W.

To address PMF + ESPNOW Co-existance, CCMP decryption method is modified
for ESPNOW packets so that they can be decrypted correctly. Since Tx
of ESPNOW packets can still be done in H/W alongside PMF, no change
required in encryption method in S/W.

Co-Authored-By: Nachiket Kukade <nachiket.kukade@espressif.com>
Co-Authored-By: zhangyanjiao <zhangyanjiao@espressif.com>
Co-Authored-By: kapil.gupta <kapil.gupta@espressif.com>
2020-09-02 15:06:51 +08:00
zhangyanjiao
089b78b916 esp_wifi:
1. get primary channel from HT info
2. fix the bug that set_channel doesn't work for softAP when STA connects
2020-09-02 15:04:26 +08:00
aditi_lonkar
ddfb11e1c5 wifi: Fix esp_wifi log levels
Closes https://github.com/espressif/esp-idf/issues/5721
2020-09-02 15:02:52 +08:00
kapil.gupta
594a196364 esp_wifi: Fix null pointer dereferences in mgmt rx 2020-09-02 14:55:10 +08:00
xiehang
8757cefeec esp_wifi: add rf test long short support 2020-09-02 14:54:23 +08:00
liu zhifu
627a05d80e esp_wifi: optimize WiFi debug log
1. Add esp_wifi_statis_dump()
2. Optimize WiFi related debug log
2020-09-02 14:52:49 +08:00
liu zhifu
368d623e1a esp_wifi: optimize WiFi TX performance 2020-09-02 14:44:45 +08:00
Island
9cd0e2fd1a Merge branch 'bugfix/btdm_blufi_data_sequence_not_reset_after_disconnect_v4.2' into 'release/v4.2'
component/bt: fix Blufi sends data after disconnect the seq still increase(backport v4.2)

See merge request espressif/esp-idf!10241
2020-09-02 14:20:49 +08:00
XieWenxiang
82deea84eb component/bt: fix Blufi sends data after disconnect the seq still increase(backport v4.2) 2020-09-02 11:18:25 +08:00
Michael (XIAO Xufeng)
fb4a75110a Merge branch 'bugfix/touch_sensor_denoise_ci_for_esp32s2_backport_v4.2' into 'release/v4.2'
[High priority] Bugfix/touch sensor denoise ci for esp32s2 (backport v4.2)

See merge request espressif/esp-idf!10211
2020-09-01 21:50:59 +08:00
Island
73fd3608e0 Merge branch 'bugfix/ble_mesh_example_compile_warn_v4.2' into 'release/v4.2'
Bugfix/ble mesh example compile warn (v4.2)

See merge request espressif/esp-idf!10222
2020-09-01 19:16:43 +08:00
Marius Vikhammer
86d8f15a9a MQTT: Update submodule reference
SSL: add config option for skipping common name check
esp-mqtt commit: 5e8950e681)
Closes https://github.com/espressif/esp-mqtt/issues/158

SSL: add support for tls with secure element (ATECC608A)
esp-mqtt commit: a7ff9afa3f)
Closes https://github.com/espressif/esp-mqtt/issues/156

Websocket: Allow the query part of the uri to be a part of the path
esp-mqtt commit: 40b06deb10)
Closes https://github.com/espressif/esp-mqtt/issues/161

Config: Add check for consistency between config settings
esp-mqtt commit: 8a412c147d)

Add IDF version check for secure element feature
esp-mqtt commit: db4bce01ab)

Fix esp_mqtt_client_stop deadlock
esp-mqtt commit: 5e17dcaeb2)
Closes https://github.com/espressif/esp-mqtt/issues/163

Add dispatch error event for read errors
esp-mqtt commit: d4aaec08ff
Closes https://github.com/espressif/esp-idf/issues/5704

Cleanup expired messages when offline
esp-mqtt commit: bdadd77c6e
Closes https://github.com/espressif/esp-idf/issues/5668

esp_mqtt_client_publish now returns msg id for QoS > 0 when offline
esp-mqtt commit: f7325bfa10
2020-09-01 15:57:47 +08:00
Marius Vikhammer
70a67439bc Websocket client: avoid deadlock if stop called from event handler 2020-09-01 15:30:40 +08:00
lly
528747ac4c ble_mesh: example: Remove some useless included header files 2020-09-01 14:10:27 +08:00
Carlos Sobrinho
840b7f2de7 Fix compilation warnings about portmacro being already define. 2020-09-01 14:09:41 +08:00
Krzysztof Budzynski
a35ce7f959 Merge branch 'doc/local_build_version_note_v4.2' into 'release/v4.2'
docs: fix version specific note on local build (backport v4.2)

See merge request espressif/esp-idf!10148
2020-08-31 21:13:53 +08:00
Michael (XIAO Xufeng)
f3705832fd Merge branch 'bugfix/add_adc-dma_for_esp32' into 'master'
driver(adc): add adc-dma code for esp32

Closes IDF-1407

See merge request espressif/esp-idf!9139

(cherry picked from commit 7876d7f5a6)

bd92e951 driver(adc): add adc-dma code for esp32
2020-08-31 16:29:51 +08:00
fuzhibo
0f5bb06920 ut: fix touch sensor denoise ci fail 2020-08-31 16:01:50 +08:00
Michael (XIAO Xufeng)
06d1f69d84 Merge branch 'feature/vfs_uart_set_line_ending_v4.2' into 'release/v4.2'
feature: support vfs uart set line endings with specified uart number release/v4.2

See merge request espressif/esp-idf!9596
2020-08-30 22:34:47 +08:00
Michael (XIAO Xufeng)
1b0691f29a Merge branch 'feature/esp32s2_adc_calib_V1_bp4.2' into 'release/v4.2'
driver/adc: support for esp32s2 adc calibration scheme (backport 4.2)

See merge request espressif/esp-idf!10064
2020-08-29 23:22:47 +08:00
Angus Gratton
73040c3223 Merge branch 'bugfix/mfg_tool_v4.2' into 'release/v4.2'
mfg_util: Update file handling to maintain line endings across various OS (backport v4.2)

See merge request espressif/esp-idf!10174
2020-08-28 18:22:28 +08:00
Island
7d79d9f312 Merge branch 'bugfix/btdm_blufi_send_longer_custom_data_will_congested_v4.2' into 'release/v4.2'
component/bt: fix Blufi sends longer customer data  will will lead congested(backport v4.2)

See merge request espressif/esp-idf!9948
2020-08-28 13:55:46 +08:00
XieWenxiang
51ff44d96e component/bt: fix Blufi sends longer customer data will will lead congested(backport v4.2) 2020-08-28 10:20:19 +08:00
Shivani Tipnis
e42742891e mfg_util: Update file handling to maintain line endings across various OS
Fixes: https://github.com/espressif/esp-idf/issues/4888
2020-08-27 11:52:33 +05:30
Jiang Jiang Jian
e050feeb26 Merge branch 'bugfix/clean_wpa2_wifi_deinit' into 'master'
wpa_supplicant: Deinit wpa2 states in wifi deinit

See merge request espressif/esp-idf!10103

(cherry picked from commit 4dcaa0e6f4)

06bc7f1d wpa_supplicant: Deinit wpa2 states in wifi deinit
2020-08-26 16:55:04 +08:00
Jiang Jiang Jian
5f56329f00 Merge branch 'bugfix/fix_udp_tx_performance_issue_v4.2' into 'release/v4.2'
lw-ip: fix udp tx packet loss issue (backport v4.2)

See merge request espressif/esp-idf!10017
2020-08-26 12:38:37 +08:00
Jiang Jiang Jian
b498f0aebe Merge branch 'bugfix/buff_semaphore_not_free_v4.2' into 'release/v4.2'
component/bt: Fixed ble memory leak issue, buff_semaphore was not released.

See merge request espressif/esp-idf!9983
2020-08-24 17:30:54 +08:00
Marius Vikhammer
5f09ffce96 docs: fix version specific note on local build 2020-08-24 16:10:28 +08:00
Angus Gratton
a2d20f9412 Merge branch 'bugfix/bootloader_common_get_sha256_of_partition_v4.2' into 'release/v4.2'
bootloader_support: Fix bootloader_common_get_sha256_of_partition(), can handle a long image (v4.2)

See merge request espressif/esp-idf!9952
2020-08-24 13:36:09 +08:00
He Yin Ling
22221b073b Merge branch 'test/merge_ble_mesh_node_and_provioner_in_console_v4.2' into 'release/v4.2'
Test:merge ble mesh node and provioner in console

See merge request espressif/esp-idf!9913
2020-08-21 19:59:21 +08:00
Lu Chang Jie
63d2a19925 Test: merge ble mesh node and provioner in console 2020-08-21 19:59:20 +08:00
morris
2d19e56877 ethernet: support power on timeout
Closes https://github.com/espressif/esp-idf/issues/5425
2020-08-20 10:48:04 +08:00
morris
c54d599d0d ethernet: set DMA owner after all descriptors have configured 2020-08-20 10:47:08 +08:00
morris
d918e7ad8a ethernet: handle early rx interrupt 2020-08-20 10:47:08 +08:00
Wu Bo Wen
4cbed9b364 driver/adc: support for esp32s2 adc calibration scheme
ESP32 lets the user choose from using Vref, Lookup Table, and Two-Point Calibration. In ESP32S2 only two-point calibration is supported. This commit support these changes in idf.

Closes https://github.com/espressif/esp-idf/issues/5455
2020-08-17 14:43:41 +08:00
Angus Gratton
a8b8a1531e Merge branch 'feature/efuse_esp32s2_add_fields_in_table_v4.2' into 'release/v4.2'
efuse: Add some fields in efuse_table and update esp_efuse_get_pkg_ver() (v4.2)

See merge request espressif/esp-idf!9994
2020-08-17 12:50:49 +08:00
Angus Gratton
8a3ad87821 Merge branch 'bugfix/docs_building_on_windows_v4.2' into 'release/v4.2'
Docs building: added encoding check suitable for windows (v4.2)

See merge request espressif/esp-idf!10020
2020-08-17 12:12:18 +08:00
Jiang Jiang Jian
98d5b5dfd9 Merge branch 'feature/esp_spp_stop_srv_v4.2' into 'release/v4.2'
bugfix/Add API esp_spp_stop_srv and fix collection of SPP [backport v4.2]

See merge request espressif/esp-idf!9993
2020-08-15 15:46:54 +08:00
Jiang Jiang Jian
d0dae54263 Merge branch 'bugfix/update_esp32_phy_4370_v4.2' into 'release/v4.2'
esp_wifi: backport some wifi fix to v4.2

See merge request espressif/esp-idf!10024
2020-08-14 17:45:22 +08:00
wangcheng
a557746cdd component/bt: Fixed ble memory leak issue, buff_semaphore was not released. 2020-08-14 17:16:23 +08:00
houwenxiang
3967e1b6d2 vfs: support vfs uart set line endings with specified uart number (release/v4.2) 2020-08-14 16:01:14 +08:00
Jiang Jiang Jian
e169226d3b Merge branch 'bugfix/wifi_deinit_stop_crash_v4.2' into 'release/v4.2'
esp_wifi: fix the crash when wifi stop after deinit (v4.2)

See merge request espressif/esp-idf!10031
2020-08-13 13:47:49 +08:00
liqigan
6e94f6f9f4 add API esp_spp_stop_srv(), fix the error parameter in esp-idf/examples/bluetooth/bluedroid/classic_bt/bt_spp_initiator/main/example_spp_initiator_demo.c and fix collection of SPP
Closes https://github.com/espressif/esp-idf/issues/5409
Closes https://github.com/espressif/esp-idf/pull/5408

See merge request espressif/esp-idf!9114
2020-08-13 12:08:28 +08:00
ChenJianxing
a57fb727e7 esp_wifi: backport some wifi fix to v4.2
1.Fix WiFi fragment issue
2.fix the bug for softAP power save buffer issue
3.fix softap mode event issue
4.fix connect hidden AP doesn't update information
5.update esp32 phy v4370
2020-08-12 21:59:37 +08:00
ronghulin
0e24eacc81 bugfix: fix softap mode event issue
1. add sta connect again ap sent disconnect event
2. add set/get inactive time api

Closes https://github.com/espressif/esp-idf/issues/4401
Closes https://github.com/espressif/esp-idf/issues/4987
Closes https://github.com/espressif/esp-idf/issues/2375
2020-08-12 21:58:48 +08:00
Andrei Gramakov
010a825f48 docs: adds to build_docs.py an encoding check suitable for windows 2020-08-12 11:17:35 +02:00
xiehang
c91ca054c3 lwip: fix udp tx packet loss issue 2020-08-12 15:02:29 +08:00
Angus Gratton
7dfe4b4684 Merge branch 'bugfix/mbedtls_mpi_exp_mod_v4.2' into 'release/v4.2'
mbedtls: Fix a case for mpi_montgomery_exp_calc() when Z is not init (v4.2)

See merge request espressif/esp-idf!9497
2020-08-11 10:00:07 +08:00
Jiang Jiang Jian
202dbaffa7 Merge branch 'bugfix/wpa3_to_wpa2_transition_fix_v4.2' into 'release/v4.2'
wpa_supplicant: Fix WPA3 and WPA2 transition related failures (Backport v4.2)

See merge request espressif/esp-idf!9865
2020-08-10 23:25:42 +08:00
zhangyanjiao
f4a7ee3db3 esp_wifi: fix the crash when wifi stop after deinit 2020-08-10 20:34:50 +08:00
Michael (XIAO Xufeng)
76cd5c8793 Merge branch 'feature/tinyusb_config_cleanup_v4.2' into 'release/v4.2'
Feature/tinyusb config cleanup (v4.2)

See merge request espressif/esp-idf!9824
2020-08-10 18:17:42 +08:00
KonstantinKondrashov
94597fc8e3 esp32: Switch SPIRAM stack in esp_restart_noos() to internal stack
If esp_restart_noos() is run and the stack address points to external memory (SPIRAM)
then Cache_Read_Disable() raises up the error "Cache disabled but cached memory region accessed"
to fix this we switch stack to internal RAM before disable cache.

Added unit tests.

Closes: https://github.com/espressif/esp-idf/issues/5107
2020-08-10 09:41:35 +00:00
Nachiket Kukade
21dc9fcb5d wpa_supplicant: Fix WPA3 and WPA2 transition related failures
1. If Device is connected to AP in WPA3-PSK mode, AP switching
security to WPA2-PSK causes connection failures even after reset.
Fix is to not store WPA3's PMK in NVS for caching.

2. AP switching back to WPA3 causes even more connection failures.
This is due to device not clearing Supplicant level PMK Cache when
it is no longer valid. Fix is to clear the Cache when 4-way handshake
fails and to check Key Mgmt of Cache before using.

3. When AP switches from WPA3 to WPA2, device's PMF config in
Supplicant remains enabled. This may cause failures during
4-way handshake. So clear PMF config in when PMF is no longer used.
2020-08-10 09:05:48 +00:00
KonstantinKondrashov
d87d9a714e efuse: Add some fields in efuse_table and update esp_efuse_get_pkg_ver()
Closes: IDF-1077
2020-08-10 15:59:02 +08:00
Krzysztof Budzynski
e01cab4a71 Merge branch 'doc/version_specific_inc_bugfix_v4.2' into 'release/v4.2'
doc: fall back to CI_COMMIT_REF_NAME as a branch name (v4.2)

See merge request espressif/esp-idf!9863
2020-08-10 13:35:55 +08:00
Island
b9535ed91b Merge branch 'bugfix/ble_mesh_client_msg_optimize_v4.2' into 'release/v4.2'
Bugfix/ble mesh client msg optimize (v4.2)

See merge request espressif/esp-idf!9989
2020-08-10 11:02:43 +08:00
lly
c24de8dc10 ble_mesh: stack: Client model related code clean 2020-08-07 21:11:34 +08:00
lly
59a590fb25 ble_mesh: stack: Rename cfg & health client status recv func 2020-08-07 21:11:34 +08:00
lly
f0b89688c9 ble_mesh: stack: Check client msg result in common func 2020-08-07 21:11:34 +08:00
lly
41aea8e528 ble_mesh: stack: Fix no events for some error conditions 2020-08-07 21:11:34 +08:00
lly
bc19eb2506 ble_mesh: stack: Move client role set to the msg function 2020-08-07 21:11:33 +08:00
lly
964f372d58 ble_mesh: stack: Remove some not used client parameters 2020-08-07 21:11:33 +08:00
lly
29749b9dae ble_mesh: stack: Remove some not used variables & functions 2020-08-07 21:11:33 +08:00
lly
c058f3594f ble_mesh: stack: Update client model msg send 2020-08-07 21:11:33 +08:00
Jiang Jiang Jian
c72ae1281e Merge branch 'bugfix/put_periph_module_enable/diable_into_iram_v4.2' into 'release/v4.2'
wifi, bt: move esp_phy_common_clock_disable into periph_ctrl and put it into IRAM(v4.2)

See merge request espressif/esp-idf!9934
2020-08-07 18:10:01 +08:00
KonstantinKondrashov
2620942568 bootloader_support: Fix bootloader_common_get_sha256_of_partition, can handle a long image
Closes: IDFGH-3594
2020-08-07 08:49:18 +00:00
KonstantinKondrashov
229dbd70c9 mbedtls: Fix a case for mpi_montgomery_exp_calc() when Z is not init
Closes: IDF-1870
2020-08-07 08:43:12 +00:00
Jiang Jiang Jian
7162964776 Merge branch 'feature/enable_pcm_config_v4.2' into 'release/v4.2'
Feature/enable pcm config v4.2

See merge request espressif/esp-idf!9652
2020-08-07 14:19:03 +08:00
Jiang Jiang Jian
4382ec4b8d Merge branch 'component/seperate_bta_jv_l2c_4.2' into 'release/v4.2'
Component/seperate bta jv l2c 4.2

See merge request espressif/esp-idf!9644
2020-08-07 14:18:02 +08:00
Jiang Jiang Jian
0db87821f1 Merge branch 'bugfix/customer_baidu_int_wdt_v4.2' into 'release/v4.2'
backport v4.2: add soft solution for esp32 eco3 live lock issue

See merge request espressif/esp-idf!9223
2020-08-07 14:12:00 +08:00
Jiang Jiang Jian
501ca00178 Merge branch 'feature/esp_tls_for_supplicant_v4.2' into 'release/v4.2'
wpa_supplicant: Support for mbedtls tls handshake(backport v4.2)

See merge request espressif/esp-idf!9821
2020-08-07 14:01:54 +08:00
Michael (XIAO Xufeng)
04e31d2f81 Merge branch 'test/esp_flash_rw_performance_thr_4.2' into 'release/v4.2'
esp_flash: decrease some of the performance threshold (4.2)

See merge request espressif/esp-idf!9959
2020-08-07 11:58:21 +08:00
KonstantinKondrashov
15e408d070 newlib: Fix UT for adjtime 2020-08-06 20:01:52 +08:00
KonstantinKondrashov
39e318977d newlib: Fix adjtime, returns the amount of time remaining from any previous adjustment
If the olddelta argument is not a null pointer, the adjtime function returns information
about any previous time adjustment that has not yet completed.

Closes: https://github.com/espressif/esp-idf/issues/5194
2020-08-06 20:01:52 +08:00
Michael (XIAO Xufeng)
5f0eb04684 esp_flash: decrease some of the performance threshold 2020-08-06 12:04:22 +08:00
Angus Gratton
dd3c032972 Merge branch 'bugfix/esp_netif_restart_dhcpc_v4.2' into 'release/v4.2'
esp_netif: Remove restarting DHCP client/server if it has already been started (backport v4.2)

See merge request espressif/esp-idf!9919
2020-08-06 11:19:30 +08:00
Mahavir Jain
96bc7761f5 Merge branch 'feature/upgrade_mbedtls_to_v4.2' into 'release/v4.2'
mbedtls: update to mbedtls release v2.16.7 (v4.2)

See merge request espressif/esp-idf!9906
2020-08-05 20:13:40 +08:00
Hou Chen Yao
caa21fdc67 remove auto conn case because we do not support this anymore 2020-08-05 18:03:12 +08:00
dongyou
0b1ef494a7 wifi, bt: move esp_phy_common_clock_disable into periph_ctrl and put it into IRAM
Replace periph_module_enable/disable by periph_wifi_bt_common_module_enable which are in IRAM.
AddIRAM_ATTR periph_ll_wifi_bt_module_enable_clk_clear_rstandIRAM_ATTR periph_ll_wifi_bt_module_disable_clk_set_rstto fit O0 optimization level.
Delete duplicated spinlock and counter.
2020-08-05 14:08:46 +08:00
Michael (XIAO Xufeng)
789119262b Merge branch 'fixbug/sdmmc_spi_highspeed_v4.2' into 'release/v4.2'
sdmmc: fix the probe issue that forbid sdspi working in highspeed mode(backport v4.2)

See merge request espressif/esp-idf!9841
2020-08-04 17:45:37 +08:00
Angus Gratton
9409b2ecb7 Merge branch 'feature/support_for_esp32_pico_v3_02_v4.2' into 'release/v4.2'
psram: support for esp32-pico-v3-02 (backport v4.2)

See merge request espressif/esp-idf!9787
2020-08-04 14:30:14 +08:00
Li Shuai
e911826340 add soft solution for esp32 eco3 live lock issue 2020-08-04 05:50:18 +00:00
Jiang Jiang Jian
706bc799fa Merge branch 'bugfix/fix_fragment_issue_v4.2' into 'release/v4.2'
esp_wifi: Fix WiFi fragment issue (backport v4.2)

See merge request espressif/esp-idf!9896
2020-08-04 12:26:04 +08:00
David Cermak
0e6777f78b esp_netif tests: Add manual DHCP state transision tests
Extended test cases for DHCP server and DHCP client state transitions to include also manual transitions using esp_netif_dhcps_start/stop() esp_netif_dhcpc_start/stop()
2020-08-04 12:07:57 +08:00
David Cermak
39f804ae07 esp_netif: Remove restarting DHCP client and server if it has already been started
To be in line with previous behaviour in tcpip_adapter, do nothing and return appropriate error if the DHCP client/server has already been started
2020-08-04 12:07:49 +08:00
Mahavir Jain
8796a53132 mbedtls: update to mbedtls release v2.16.7
For detailed release notes, please refer to:
https://github.com/ARMmbed/mbedtls/releases/tag/mbedtls-2.16.7
2020-08-03 14:14:10 +05:30
Michael (XIAO Xufeng)
9dbff45229 Merge branch 'feature/twai_backport_v4.2' into 'release/v4.2'
TWAI: esp32s2 support and multiple bugfixes (backport v4.2)

See merge request espressif/esp-idf!9884
2020-08-03 11:13:20 +08:00
Michael (XIAO Xufeng)
2f96a1a3bf Merge branch 'bugfix/add_api_adc2_vref_to_gpio_for_esp32s2_backport_v4.2' into 'release/v4.2'
driver(adc): esp32s2 support API `adc2_vref_to_gpio`  (backport v4.2)

See merge request espressif/esp-idf!9875
2020-08-01 23:50:13 +08:00
weitianhua
a32fc5a2bb Fix tsk watchdog when running spp vfs demo 2020-08-01 16:40:43 +08:00
weitianhua
8de78c2b3b Seperate BTA_JV_L2CAP for less bin size 2020-08-01 16:40:43 +08:00
weitianhua
64eab16847 Enable PCM config in controller 2020-08-01 16:37:34 +08:00
weitianhua
0952b9de8a Enable PCM Config in Host 2020-08-01 16:36:36 +08:00
xiehang
ad8a873dff esp_wifi: Fix WiFi fragment issue 2020-07-31 20:17:45 +08:00
fuzhibo
885f8ce484 driver(adc): esp32s2 support API adc2_vref_to_gpio 2020-07-31 17:52:41 +08:00
Michael (XIAO Xufeng)
934fe37c48 Merge branch 'bugfix/fix_adc_dac_driver_ut_backport' into 'release/v4.2'
Driver(adc): fix adc driver and UT  (backport v4.2)

See merge request espressif/esp-idf!9359
2020-07-31 17:09:24 +08:00
Jiang Jiang Jian
33dab9d165 Merge branch 'bugfix/fix_softap_mode_wpa_memory_leak_issue_v4.2' into 'release/v4.2'
bugfix: fix softap mode wpa memory leak (backport v4.2)

See merge request espressif/esp-idf!9845
2020-07-31 16:45:38 +08:00
Ivan Grokhotkov
9f4f7aa8b1 Merge branch 'feature/export_ps1_tools_v4.2' into 'release/v4.2'
scripts: updates export.ps1 to export tools' paths (v4.2)

See merge request espressif/esp-idf!9876
2020-07-31 05:05:39 +08:00
Darian Leung
21e2f02962 TWAI: Remove asserts used for program logic
This commit fixes the bug where TWAI driver program logic was being
called in assert(), thus leading to the logic being omitted in
release builds.
2020-07-30 22:17:41 +08:00
Darian Leung
519b8898b3 twai: Fix size of RX msg count field on the esp32
This commit fixes the size of the RX message count register field
on the esp32.
2020-07-30 22:17:14 +08:00
Darian Leung
e6db25af9d TWAI: Add ESP32-S2 support
This commit adds TWAI driver support for the
ESP32-S2. The following features were added:

- Expanded BRP support
- Expanded CLKOUT Divider Support
- Updated example READMEs
2020-07-30 22:09:39 +08:00
Andrei Gramakov
74df8746a3 scripts: updates export.ps1 to export tools' paths 2020-07-30 13:55:03 +02:00
fuzhibo
f444d4d2dc driver(adc): fix unit test for ADC-DMA (test_esp32s2.c); fix unit test for ADC-DMA (test_esp32s2.c); fix commit in adc dirver. 2020-07-30 19:38:23 +08:00
Michael (XIAO Xufeng)
4726076da5 Merge branch 'bugfix/fix_touch_sensor_api_backport_v4.2' into 'release/v4.2'
driver(touch): fix touch sensor driver redundancy  (backport v4.2)

See merge request espressif/esp-idf!9861
2020-07-30 16:17:51 +08:00
Marius Vikhammer
2802136595 doc: fall back to CI_COMMIT_REF_NAME as a branch name
In some cases gen_version_specific_includes.py would fail to find a branch/tag name for a commit
and would fall back to using commit SHA-1.

This should never happen in docs that should be published as we use the branch/tag name to generate
example commands for our users. E.g. "git clone -b $branch_name"

Closes https://github.com/espressif/esp-idf/issues/5657
2020-07-30 12:25:59 +08:00
fuzhibo
9bc72d5732 driver(touch): fix touch sensor driver redundancy 2020-07-30 11:41:11 +08:00
Jiang Jiang Jian
f06ce4832d Merge branch 'bugfix/update_esp32_phy_4350_v4.2' into 'release/v4.2'
esp_wifi: update phy lib(Backport v4.2)

See merge request espressif/esp-idf!9823
2020-07-30 01:59:04 +08:00
Andrei Gramakov
e5b242a3cb usb: removes non-integrated features 2020-07-29 15:50:56 +02:00
Jiang Jiang Jian
e7179db204 Merge branch 'nimble/nrpa_support_v4.2' into 'release/v4.2'
NimBLE: Add Non-Resolvable private address support and misc bug fixes (Backport v4.2)

See merge request espressif/esp-idf!9741
2020-07-29 19:05:01 +08:00
Jiang Jiang Jian
10e59593f6 Merge branch 'bugfix/bt_linkup_fallback_event_v4.2' into 'release/v4.2'
Bluedroid: Fixes cases having fallback to link up event. (v4.2)

See merge request espressif/esp-idf!9801
2020-07-29 19:04:41 +08:00
ronghulin
157ecfaf43 bugfix: fix softap mode wpa memory leak 2020-07-29 14:14:35 +08:00
Mahavir Jain
293d7f34b8 Merge branch 'fix/prov_ble_read_offset_v4.2' into 'release/v4.2'
BLE provisioning: Add check for valid ble read offset (v4.2)

See merge request espressif/esp-idf!9744
2020-07-28 16:42:09 +08:00
Anton Maklakov
2d9325db1e Merge branch 'bugfix/build_docs_check_link_v4.2' into 'release/v4.2'
build_docs: fix incorrect arguments for linkcheck (Backport v4.2)

See merge request espressif/esp-idf!9798
2020-07-28 14:00:55 +08:00
Michael (XIAO Xufeng)
19ae66dfa2 sdmmc: fix the probe issue that forbid sdspi working in highspeed mode
SD cards don't support CMD7 (select_card) in SPI mode. Highspeed probe
of sdspi will fail in this step and stop working in highspeed mode.
Remove the CMD7 in enable_hs_mode_and_check to fix this issue.

Please note that, on ESP32, you have to use the IOMUX pins to use sdspi
in 40MHz, otherwise the initialization process will report reading issue
and fail.
2020-07-28 12:36:03 +08:00
Krzysztof Budzynski
12dd6e5a85 Merge branch 'doc/freertos_backport_v4.2' into 'release/v4.2'
add a note about ESP-IDF FreeRTOS version (backport v4.2)

See merge request espressif/esp-idf!9810
2020-07-27 23:00:47 +08:00
ChenJianxing
02e7e9c417 esp_wifi: update phy lib
1. esp32 phy lib v4350
2. esp32s2 phy lib v603
2020-07-27 21:42:44 +08:00
Hrudaynath Dhabe
8bb287bae8 esp_wifi: Add esp_wifi_get_tsf_time() API to get the tsf time of
specified interface.

Closes https://github.com/espressif/esp-idf/issues/5533
2020-07-27 21:41:36 +08:00
Nachiket Kukade
3af4b51a5c Fix handling of multiple AP credentials in WPS
WPS can send multiple AP credentials, while existing implementation
will only use the first credentials which could be for the 5G band.
Fix this by passing these credentials to the App and attempting
to connect using each of those. Older Apps will remain compatible
without breaking WPS, but the issue will remain.
2020-07-27 21:41:20 +08:00
Krzysztof Budzynski
875642fedd Merge branch 'doc/update_chip_features_v4.2' into 'release/v4.2'
doc: update chip features in getting started (Backport v4.2)

See merge request espressif/esp-idf!9797
2020-07-27 21:26:53 +08:00
kapil.gupta
ebd1bb9a12 wpa_supplicant: Fix IOT issue with latest freeradius
Fix inter operability issue with freeradius version 3.0.21
and openssl 1.1.1f when internal tls client is used which
requires extension elements in client hello.

closes https://github.com/espressif/esp-idf/issues/5273
closes https://github.com/espressif/esp-idf/issues/5627
2020-07-27 18:49:47 +05:30
kapil.gupta
89ef69cbd0 wpa_supplicant: Fix invalid pointer deference and memleak
Add following changes as part of this:

1. EAP client will crash during validation of key size when CA
certs and keys not present. Add changes to validate it first.
2. Free memory allocated in TLS context
2020-07-27 18:49:07 +05:30
kapil.gupta
4b7c8d4a2d wpa_supplicant: Support for mbedtls tls handshake
Add support for mbedtls based tls handshake, this removes
dependency from internal implementation of EAP client.
2020-07-27 18:47:27 +05:30
yiying
76e7fcf0e4 update a link in the note 2020-07-27 17:27:31 +08:00
Chinmay Chhajed
9cf4dd20e0 Bluedroid: Fixes cases having fallback to link up event.
Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-07-27 13:52:58 +05:30
Michael (XIAO Xufeng)
b284c48854 Merge branch 'bugfix/esp32s2_lightsleep_uart_suspend_v4.2' into 'release/v4.2'
esp32s2: suspend UART output using XOFF before entering light sleep (backport v4.2)

See merge request espressif/esp-idf!9293
2020-07-27 15:55:33 +08:00
Prasad Alatkar
851b4e9576 BLE provisioning: Add check for valid ble read offset 2020-07-27 07:21:07 +00:00
Marius Vikhammer
b081292e8e build_docs: fix incorrect arguments for linkcheck 2020-07-27 15:14:59 +08:00
Marius Vikhammer
207cbabc51 doc: update chip features in getting started
Fixed number of cores for ESP32 and ESP32S2 being wrong.

Updated S2 to reflect that we have to ULP coprocessors

Closes IDFGH-3616
Closes https://github.com/espressif/esp-idf/issues/5556
2020-07-27 15:12:31 +08:00
David Čermák
636b964c8c Merge branch 'bugfix/ws_send_abort_v4.2' into 'release/v4.2'
websocket client: the client now aborts the connection if send fails. (backport v4.2)

See merge request espressif/esp-idf!9169
2020-07-24 23:15:08 +08:00
Angus Gratton
3191a8cbc7 esp32s2: Always use eFuse config for WP pin
No reason to override just this pin in software.
2020-07-24 21:45:59 +08:00
Angus Gratton
a94685a222 esp32: Use package identifier to look up SPI flash/PSRAM WP Pin, unless overridden
Allows booting in QIO/QOUT mode or with PSRAM on ESP32-PICO-V3 and
ESP32-PICO-V3-O2 without any config changes.

Custom WP pins (needed for fully custom circuit boards) should still be compatible.
2020-07-24 21:45:31 +08:00
chenjianqiang
55a1bd0fb6 feat(esp32): support for esp32-pico-v3-02 2020-07-24 21:20:27 +08:00
chenjianqiang
c945cb59d8 feat(psram): support 16Mbit PSRAM for esp32 2020-07-24 21:19:45 +08:00
chenjianqiang
6a253e8809 bugfix(psram): configure MMU after PSRAM initialization 2020-07-24 21:10:37 +08:00
Krzysztof Budzynski
ce7affe81c Merge branch 'docs/doc138_backport_v4.2' into 'release/v4.2'
Fix incorrect redirect link in getting started guide (backport v4.2)

See merge request espressif/esp-idf!9703
2020-07-24 18:04:00 +08:00
Prasad Alatkar
a4e8e56288 NimBLE: Add Non-Resolvable private address support and misc bug fixes (Backport v4.2)
- Merges https://github.com/espressif/esp-nimble/pull/12
- Fixes repeated pairing failure in RPA feature

Closes https://github.com/espressif/esp-idf/issues/5530
2020-07-24 06:55:22 +00:00
Mahavir Jain
23beab8a98 Merge branch 'feature/update_cryptoauthlib_submodule_pointer_v4.2' into 'release/v4.2'
esp32/secure_element: update esp-cryptoauthlib submodule pointer (v4.2)

See merge request espressif/esp-idf!9768
2020-07-24 14:45:24 +08:00
Aditya Patwardhan
04e5b16f74 esp32/secure_element: update esp-cryptoauthlib submodule pointer 2020-07-24 09:45:00 +05:30
Mahavir Jain
6b80aebc87 Merge branch 'bugfix/convert-string-to-bytes_v4.2' into 'release/v4.2'
components: convert string to bytes to fix TypeError (backport v4.2)

See merge request espressif/esp-idf!9734
2020-07-23 16:36:57 +08:00
Angus Gratton
e6e4fe45c6 Merge branch 'ci/fix_uart_read_write_priorities_v4.2' into 'release/v4.2'
driver test: Ensure uart write task can't overflow buffer of read task (v4.2)

See merge request espressif/esp-idf!9569
2020-07-23 13:15:45 +08:00
Alexey Gerenkov
16eeb3b432 tools: Updates OpenOCD version to 'v0.10.0-esp32-20200709' 2020-07-22 23:15:40 +03:00
Michael (XIAO Xufeng)
51b5c7a079 Merge branch 'bugfix/mcpwm_fault_init_copypaste_typo_bp4.2' into 'release/v4.2'
MCPWM: Fix PWM-fault init function that read config incorrectly (backport v4.2)

See merge request espressif/esp-idf!9554
2020-07-22 21:12:16 +08:00
martin.gano
5feeb744e1 components: convert string to bytes to fix TypeError There is a string passed as an argument for function, but a format of a string seemingly refers to bytes therefore it needs to be converted to bytes Solves https://esp32.com/viewtopic.php?f=13&t=16529
(cherry picked from commit cb0bdb8bba)
2020-07-22 11:23:12 +02:00
yiying
dc06fd3c20 docs: change redirection link in get-started
This link is supposed to go to Step 3, but it goes to Step 2.
2020-07-22 16:49:00 +08:00
Michael (XIAO Xufeng)
ccdfbb865e Merge branch 'bugfix/add_return_task_awoken_for_timer_callback_v4.2' into 'release/v4.2'
timer: add return task awoken for timer callback (backport v4.2)

See merge request espressif/esp-idf!9149
2020-07-22 16:19:37 +08:00
Angus Gratton
b356707948 Merge branch 'ci/workaround_multiple_ci_failures_v4.2' into 'release/v4.2'
CI: workaround multiple ci failures (v4.2)

See merge request espressif/esp-idf!9684
2020-07-22 11:52:43 +08:00
Marius Vikhammer
441308fc16 websocket client: the client now aborts the connection if send fails.
Closes IDF-1744
2020-07-21 07:51:01 +00:00
Jiang Jiang Jian
53e8857849 Merge branch 'bugfix/ipv6_fragment_for_4.2' into 'release/v4.2'
lw-ip:fix bug for ipv6 fragment(backport 4.2)

See merge request espressif/esp-idf!9583
2020-07-21 12:11:34 +08:00
Jiang Jiang Jian
0bcd26a610 Merge branch 'bugfix/fix_hci_max_page_num_v4.2' into 'release/v4.2'
bugfix/Support for more Bluetooth HID devices [backport v4.2]

See merge request espressif/esp-idf!9660
2020-07-21 12:10:59 +08:00
Jiang Jiang Jian
15e40f909f Merge branch 'bugfix/fix_get_bond_device_list_v4.2' into 'release/v4.2'
bugfix/fix esp_bt_gap_get_bond_device_list bug [backport v4.2]

See merge request espressif/esp-idf!9666
2020-07-21 12:10:24 +08:00
Angus Gratton
e1635edc47 Merge branch 'bugfix/espcoredump_fix_error_reported_for_blank_partition_v42' into 'release/v4.2'
Bugfix/espcoredump fix error reported for blank partition (Backport v4.2)

See merge request espressif/esp-idf!9629
2020-07-21 01:05:57 +08:00
Alex Lisitsyn
5f1e61498e Bugfix/espcoredump fix error reported for blank partition (Backport v4.2) 2020-07-21 01:05:54 +08:00
Angus Gratton
e1b03f08af Merge branch 'bugfix/doc_macro_definitions_v4.2' into 'release/v4.2'
doc: Fix macro definitions for different targets (v4.2)

See merge request espressif/esp-idf!9566
2020-07-20 08:25:33 +08:00
He Yin Ling
b3692aba5e CI: do not run cases likely to fail 2020-07-19 14:52:57 +08:00
He Yin Ling
468bd6f854 CI: disable cases with test env SSC_T5_1 2020-07-19 14:52:57 +08:00
He Yin Ling
9d215de21d CI: temp allow mesh job to fail as runner is not stable 2020-07-19 14:52:56 +08:00
He Yin Ling
fb7e3c508b CI: remove incorrect MTU related cases 2020-07-19 14:52:56 +08:00
Island
73ec4d0c1d Merge branch 'bugfix/ble_mesh_health_current_status_recv_v4.2' into 'release/v4.2'
ble_mesh: stack: Fix recv health current status incorrectly (v4.2)

See merge request espressif/esp-idf!9664
2020-07-17 16:14:25 +08:00
boblane
e14906f073 fix esp_bt_gap_get_bond_device_list bug
Closes https://github.com/espressif/esp-idf/issues/5395
2020-07-17 15:06:39 +08:00
lly
b39eaf61b5 ble_mesh: stack: Fix recv health current status incorrectly 2020-07-17 14:05:18 +08:00
DerfJagged
d1506fdae0 Support for more Bluetooth HID devices
Some Bluetooth devices - such as an Xbox One S controller (model 1708) - report more than two external features pages and are rejected immediately. Pages 1 and 2 are marked as unhandled in btm_devctl.c anyway, so there is no reason to block devices with more pages.
(IDFGH-3515)

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

Merges https://github.com/espressif/esp-idf/pull/5481
Closes https://github.com/espressif/esp-idf/issues/5470
2020-07-17 10:07:41 +08:00
Island
d26405df96 Merge branch 'bugfix/ble_mesh_misc_updates_v4.2' into 'release/v4.2'
Bugfix/ble mesh misc updates (v4.2)

See merge request espressif/esp-idf!9641
2020-07-16 14:03:27 +08:00
lly
49145856a2 ble_mesh: ci: Enable friend & low power in build check 2020-07-16 11:02:25 +08:00
lly
2e01297603 ble_mesh: stack: Only keep func pointer for very common log
Currently only keep func pointer for the followings:
- Invalid parameter (mesh btc & mesh stack)
- Out of memory (mesh btc & mesh stack)
- Unknown act (mesh btc)
- Invalid model user data (mesh stack)
- BT_DBG("%s", __func__) (mesh btc & mesh stack)
- A few other specific situations (buf ref debug, send status check)
2020-07-16 11:02:24 +08:00
lly
5fceac92ee ble_mesh: stack: Make proxy server & client functions clear 2020-07-16 11:02:24 +08:00
Island
d8c657c6f0 Merge branch 'bugfix/ble_mesh_add_misc_check_v4.2' into 'release/v4.2'
Bugfix/ble mesh add misc check (v4.2)

See merge request espressif/esp-idf!9630
2020-07-16 10:52:26 +08:00
Angus Gratton
a60bfb8cdc Merge branch 'feature/reassign_example_test_runners_v4.2' into 'release/v4.2'
ci: Modify some dut-unrelated example tests env tag from Example_WIFI to Example_GENERIC (backport v4.2)

See merge request espressif/esp-idf!9634
2020-07-16 03:29:31 +08:00
Fu Hanxi
a73b0c3eb6 ci: Modify some dut-unrelated example tests env tag from Example_WIFI to Example_GENERIC 2020-07-15 16:54:03 +08:00
David Čermák
001c673f4e Merge branch 'bugfix/eth_insert_min_hw_reset_time_v4.2' into 'release/v4.2'
ethernet: insert min assert time for PHY HW reset (v4.2)

See merge request espressif/esp-idf!9579
2020-07-15 16:35:46 +08:00
lly
fc99963376 ble_mesh: stack: Add proxy cfg pdu length check 2020-07-15 16:10:48 +08:00
lly
1846def7ac ble_mesh: stack: Rework using dev flag to check scan status
Different bluetooth host has different behaviors, so it's better
to maintain a scan check mechanism of BLE Mesh itself.
Fixes an issue when only PB-GATT is enabled for node, which will
output a scan error log when the device is provisioned.
2020-07-15 16:10:48 +08:00
lly
cf5b69389e ble_mesh: example: Add result check during mesh init 2020-07-15 16:10:48 +08:00
lly
37322ce93f ble_mesh: stack: Add more checks about input prov bearers 2020-07-15 16:10:48 +08:00
Island
daf8098a00 Merge branch 'feat/ble_mesh_use_iram_for_mem_alloc_v4.2' into 'release/v4.2'
Feat/ble mesh use iram for mem alloc (v4.2)

See merge request espressif/esp-idf!9614
2020-07-15 16:06:47 +08:00
Mahavir Jain
c59b27b417 Merge branch 'bugfix/cleanup_bt_reference_from_esp32s2_ld_v4.2' into 'release/v4.2'
esp32s2: cleanup bt reference from esp32s2 ld (v4.2)

See merge request espressif/esp-idf!9613
2020-07-14 22:52:11 +08:00
lly
a6dcfb4a5a ble_mesh: stack: Rename mesh adv queue and relay queue 2020-07-14 21:19:32 +08:00
lly
efcd9ee4a8 ble_mesh: stack: Use macros for adv task name & prio 2020-07-14 21:19:32 +08:00
lly
e58d982903 ble_mesh: ci: Add iram & psram configurations 2020-07-14 21:19:32 +08:00
lly
6abfc2a8f7 ble_mesh: stack: Make freertos static allocation visible 2020-07-14 21:19:32 +08:00
lly
c0db196464 ble_mesh: stack: Add a option of using IRAM for memory allocation 2020-07-14 21:19:32 +08:00
Mahavir Jain
a9d8d8ea99 esp32s2: remove bt references from esp32s2 ld script 2020-07-14 18:04:28 +05:30
Jiang Jiang Jian
452ce608fe Merge branch 'bugfix/fix_erro_in_ag_api_4.2' into 'release/v4.2'
Fix error of AG API return line v4.2

See merge request espressif/esp-idf!9605
2020-07-14 19:54:17 +08:00
weitianhua
b716800000 Fix error of AG API return line
Closes https://github.com/espressif/esp-idf/issues/5554
2020-07-14 14:43:15 +08:00
Mahavir Jain
38e75dca1d Merge branch 'bugfix/enable_mbedtls_renegotiation_v4.2' into 'release/v4.2'
esp-tls: enable TLS renegotiation using explicit API call (v4.2)

See merge request espressif/esp-idf!9590
2020-07-14 12:05:02 +08:00
Mahavir Jain
c57f9b76cb Merge branch 'bugfix/ota_ci_failures_v4.2' into 'release/v4.2'
Increse receive timeout in OTA Example tests to fix CI failures (v4.2)

See merge request espressif/esp-idf!9588
2020-07-13 23:01:23 +08:00
Ivan Grokhotkov
31121e5af1 Merge branch 'bugfix/rs485_test_temp_disable_v42' into 'release/v4.2'
Bugfix/rs485 test temp disable (backport v4.2)

See merge request espressif/esp-idf!9525
2020-07-13 20:41:42 +08:00
Mahavir Jain
40a29866f6 esp-tls: enable TLS renegotiation using explicit API call
mbedTLS stack does not keep TLS renegotiation enabled even if
relevant config option is turned on, it needs explicit API call
`mbedtls_ssl_conf_renegotiation` to do so.

This issue was observed in case of Azure IoT, where keys needs to
be refreshed periodically to keep TLS connection intact.
2020-07-13 15:32:41 +05:30
Ivan Grokhotkov
4ed889dfa2 esp32s2: sleep_modes: remove dependency on driver/uart.h 2020-07-13 09:52:29 +02:00
Ivan Grokhotkov
3a88ac7900 soc: add periph_ll_periph_enabled to clk_gate_ll.h 2020-07-13 09:52:29 +02:00
Ivan Grokhotkov
31cd3f1294 esp32s2: suspend UART output using XOFF before entering light sleep
Same logic as for the ESP32, except two changes:

* need to set UART_SW_FLOW_CON_EN bit for UART_FORCE_XOFF to take
  effect
* need to check if the peripheral is not clockgated and out of reset
2020-07-13 09:52:29 +02:00
Shubham Kulkarni
1f16f5cf22 Increse receive timeout in sdkconfig.ci to fix CI failures 2020-07-13 10:15:01 +05:30
xueyunfei
74396ae2cc fix bug for ipv6 fragment 2020-07-13 11:49:52 +08:00
morris
49c1d40b2d ethernet: insert min assert time for PHY HW reset
Closes https://github.com/espressif/esp-idf/issues/5528
2020-07-13 11:05:38 +08:00
Jiang Jiang Jian
1f8c5b2b64 Merge branch 'docs/fix_event_typo_backport_v4.2' into 'release/v4.2'
docs/fix event typo backport v4.2

See merge request espressif/esp-idf!9382
2020-07-12 21:24:03 +08:00
chenjianqiang
9274339fb5 timer: add return task awoken for timer callback 2020-07-12 11:01:47 +00:00
Mahavir Jain
d6553232cb Merge branch 'bugfix/issues_with_vanilla_freertos_v4.2' into 'release/v4.2'
Fix build issues with Vanilla FreeRTOS (v4.2)

See merge request espressif/esp-idf!9576
2020-07-12 16:39:20 +08:00
Shubham Kulkarni
07abd9092a Include header file soc/cpu.h in memprot.c and system_api.c
This fixes build issues with Vanilla FreeRTOS
2020-07-10 18:21:20 +05:30
Jiang Jiang Jian
897e950e21 Merge branch 'bugfix/add_api_to_get_internal_heap_v4.2' into 'release/v4.2'
esp_wifi: Add API to get available internal heap size (backport v4.2)

See merge request espressif/esp-idf!9516
2020-07-10 16:54:38 +08:00
Island
86c197a8db Merge branch 'bugfix/ble_mesh_update_send_ttl_v4.2' into 'release/v4.2'
Bugfix/ble mesh update send ttl v4.2

See merge request espressif/esp-idf!9562
2020-07-10 14:06:12 +08:00
Angus Gratton
870fa2237e driver test: Ensure uart write task can't overflow buffer of read task
Previously both tasks had equal priority, possible for write task and another
internal task to be scheduled at the same time - starving read task and
causing data loss.

Related to IDFCI-59
2020-07-10 15:59:48 +10:00
Angus Gratton
21b123a925 Merge branch 'feature/sphinx_idf_theme_pip_v4.2' into 'release/v4.2'
docs: update build system to use sphinx_idf_theme pip package (v4.2)

See merge request espressif/esp-idf!9478
2020-07-10 12:56:43 +08:00
Angus Gratton
c44a433b8b driver: Fix some doxygen warnings 2020-07-10 14:53:16 +10:00
Angus Gratton
e3664e297b docs: Redirect all of Doxygen stderr to the warnings log
Some errors (for example the errors caused by macro values, as fixed in previous
commit) get logged to stderr even if WARN_LOGFILE is set, but Doxygen succeeds.
2020-07-10 14:53:16 +10:00
Angus Gratton
db5d659762 docs: Log the full list of macros, remove code-style macros to prevent Doxygen errors 2020-07-10 14:53:15 +10:00
Angus Gratton
2b270bccbf doc: Fix passing of build macros to Doxygen
Regression in fbb54184ef, the dictionary
passed to generate_doxygen function was still the project_description
structure.
2020-07-10 14:53:15 +10:00
Michael (XIAO Xufeng)
b39a0be9d2 Merge branch 'bugfix/fix_adc_dac_conflict_backportv4.2' into 'release/v4.2'
Driver(adc): Disable the synchronization operation function of ADC1 and DAC (backport v4.2)

See merge request espressif/esp-idf!9360
2020-07-10 11:05:00 +08:00
lly
615d64b6f9 ble_mesh: stack: Add two application macros for TTL 2020-07-10 09:13:53 +08:00
lly
1ec2f98691 ble_mesh: stack: Update send_ttl in btc when recv a msg
Update send_ttl mainly for server models. When a server model
receives a message, and the status is required to be replied
by the application, we need to set send_ttl to the msg context.
If send_ttl is not updated in btc, and the applcation does not
set the TTL either, then the status will be replied with TTL=0,
which may cause the client side (e.g. the phone App) failed to
receive the status.

Closes https://github.com/espressif/esp-idf/issues/5300
2020-07-10 09:13:53 +08:00
Wielebny666
e64d1378b4 Fix init MCPWM Fault line via config struct
Signed-off-by: wubowen <wubowen@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/5491
Closes https://github.com/espressif/esp-idf/issues/5433
2020-07-09 19:19:23 +08:00
Jiang Jiang Jian
f52c35258c Merge branch 'bugfix/fix_16mbit_psram_id_read_error_v4.2' into 'release/v4.2'
psram: fix 16mbit psram id read error (backport v4.2)

See merge request espressif/esp-idf!9424
2020-07-09 15:27:23 +08:00
Jiang Jiang Jian
d58bb32f95 Merge branch 'bugfix/fix_build_err_in_cpp_backport_v4.2' into 'release/v4.2'
ble_hid_device_demo: fix build if building with c++ backport v4.2

See merge request espressif/esp-idf!9230
2020-07-09 15:25:51 +08:00
Supreet Deshpande
d1c4791dad Add platform independent CMake signing 2020-07-09 11:54:53 +05:30
Angus Gratton
89fa339732 ci provisioning: Add some experiments to check the runner's STA state
Not clear why sometimes it associates without negotiating a new DHCP lease.
2020-07-09 04:56:44 +00:00
Angus Gratton
de17289461 esp_prov: Extend the timeout for HTTP connection to SoftAP 2020-07-09 04:56:44 +00:00
Angus Gratton
6d5dc5def3 ci wifi_tools: Log the wpa_supplicant interface state when trying to connect
Trigger reconnection if wpa_supplicant seems to have dropped the connection.
2020-07-09 04:56:44 +00:00
Angus Gratton
9c6c6e6885 legacy provisioning: Always try to reconnect when disconnected
Some APs may fail authentication temporarily if they have too many
associated stations, for example.
2020-07-09 04:56:44 +00:00
Angus Gratton
130c97ad69 esp_prov: Refactor to use new 'wait_wifi_connected' function
Means all provisioning examples will have the same retry behaviour.
2020-07-09 04:56:44 +00:00
Angus Gratton
ae586deeeb ci provisioning: Use strings instead of "magic numbers" for connection state 2020-07-09 04:56:44 +00:00
Angus Gratton
5e0e4a5f01 ci: Wait up to 60 seconds for client to connect to DUT in provisioning test 2020-07-09 04:56:44 +00:00
Krzysztof Budzynski
9eab094658 Merge branch 'doc/broken_readme_links_v4.2' into 'release/v4.2'
Docs: Fix broken README links (v4.2)

See merge request espressif/esp-idf!9499
2020-07-08 23:53:03 +08:00
Krzysztof Budzynski
f7c5e49504 Merge branch 'doc/check_docs_multi_builder_v4.2' into 'release/v4.2'
docs: fix check_docs not working for multiple builders (v4.2)

See merge request espressif/esp-idf!9480
2020-07-08 23:50:36 +08:00
Jiang Jiang Jian
ccc4f1337b Merge branch 'doc/add_UUID_description_in_gattc_demo_backport_v4.2' into 'release/v4.2'
docs:add 128-bit UUID description backport v4.2

See merge request espressif/esp-idf!9224
2020-07-08 16:14:45 +08:00
Angus Gratton
0cb87f67da Merge branch 'feature/console_repl_over_uart_v4.2' into 'release/v4.2'
console_repl over UART (v4.2)

See merge request espressif/esp-idf!9422
2020-07-08 16:10:37 +08:00
Ivan Grokhotkov
aec1353ffe ci: temporarily disable RS485 related tests 2020-07-08 06:54:24 +02:00
xiehang
8efabd1307 esp_wifi: Add API to get available internal heap size. 2020-07-08 10:46:34 +08:00
Jakob Hasse
4911dde551 nvs: unit tests for new partition API 2020-07-08 08:59:12 +08:00
Dmitriy Shilin
051dff88e4 nvs: allow to specify custom partition
Closes https://github.com/espressif/esp-idf/pull/5172
2020-07-08 08:59:03 +08:00
Marius Vikhammer
e4e5b18c61 Fix broken README links 2020-07-07 17:11:32 +08:00
Jiang Jiang Jian
ad5c4eb3f5 Merge branch 'mesh/bugfix_for_tbtt_update_v4.2' into 'release/v4.2'
fix the bug for tsf check (backport v4.2)

See merge request espressif/esp-idf!9279
2020-07-07 14:40:35 +08:00
Anton Maklakov
59541071fb Merge branch 'bugfix/gen_crt_py3_utf_v4.2' into 'release/v4.2'
Fixes issues encoding issues python3 scripts for unicode chars (v4.2)

See merge request espressif/esp-idf!9174
2020-07-07 11:04:59 +08:00
Ivan Grokhotkov
9b21973363 Merge branch 'feature/msys2_env_update_v4.2' into 'release/v4.2'
windows: Update MSYS2 pre-compiled legacy build environment (v4.2)

See merge request espressif/esp-idf!9142
2020-07-06 15:14:45 +08:00
Marius Vikhammer
302a43562d docs: fix check_docs not working for multiple builders
Closes IDF-1659
2020-07-06 12:27:02 +08:00
Marius Vikhammer
61904135b3 docs: update sphinx_idf_theme documentation
Bump CI doc-env docker image to v5
2020-07-06 10:55:32 +08:00
Michael (XIAO Xufeng)
a3a22d4af5 Merge branch 'bugfix/fix_ci_about_touch_sensor_denoise_ut_backport_v4.2' into 'release/v4.2'
driver(touch): fix touch sensor denoise unit test case (backport v4.2)

See merge request espressif/esp-idf!9451
2020-07-06 10:21:32 +08:00
Angus Gratton
0e8f630711 Merge branch 'bugfix/esp32_encrypted_flash_write_v4.2' into 'release/v4.2'
spi_flash: esp32: fix regression in encrypted flash write (v4.2)

See merge request espressif/esp-idf!9349
2020-07-06 08:18:56 +08:00
zhangyanjiao
4761c4059a esp_wifi:
1. Avoid parsing RSN/WPA IE's after connection
2. Remove AUTH_CHANGED reason code logic
3. fix the bug when calculating the PMK, the local rx beacon time increment is 0
4. mesh: don't disconnect when tbtt update
2020-07-03 14:18:39 +08:00
Island
a1c11b3f9e Merge branch 'bugfix/ble_mesh_fast_prov_misc_update_v4.2' into 'release/v4.2'
Bugfix/ble mesh fast prov misc update (v4.2)

See merge request espressif/esp-idf!9462
2020-07-03 11:11:37 +08:00
lly
dd6de08bea ble_mesh: stack: Update some fast prov functions 2020-07-03 08:53:16 +08:00
lly
661e1f2500 ble_mesh: stack: Move fast prov functions to a single file 2020-07-03 08:53:16 +08:00
Island
f9cee602fb Merge branch 'bugfix/ble_mesh_split_tinycrypt_v4.2' into 'release/v4.2'
Bugfix/ble mesh split tinycrypt (v4.2)

See merge request espressif/esp-idf!9371
2020-07-02 22:46:21 +08:00
fuzhibo
34fc02f5db driver(touch): fix touch sensor denoise unit test case 2020-07-02 13:04:46 +08:00
lly
76baeba6b7 ble_mesh: ci: Fix failing to compile when using make 2020-07-02 03:53:50 +00:00
lly
7e7d2ae401 ble_mesh: Mark platform related default RNG as 0 2020-07-02 03:53:50 +00:00
lly
d9e8508981 ble_mesh: Remove the previously added redundant aes files 2020-07-02 03:53:50 +00:00
lly
11406d7ee8 ble_mesh: Update CMake and make files for tinycrypt 2020-07-02 03:53:50 +00:00
lly
80837bd936 ble_mesh: Update tinycrypt header file include guards
Add BLE_MESH in the macro to make it specific for BLE Mesh.
2020-07-02 03:53:50 +00:00
lly
3c0584f013 ble_mesh: Format source and header files of tinycrypt 2020-07-02 03:53:50 +00:00
lly
f1f3c7afd6 ble_mesh: Port full implementation of tinycrypt [Zephyr]
- Original code is here: https://github.com/zephyrproject-rtos/tinycrypt
- Also this fixes the compile error when NimBLE and ESP BLE Mesh
  both uses the tinycrypt.
2020-07-02 03:53:50 +00:00
Island
de5d145c9b Merge branch 'bugfix/ble_mesh_readme_fix_v4.2' into 'release/v4.2'
ble_mesh: example: Fix example README & tutorial link error (v4.2)

See merge request espressif/esp-idf!9434
2020-07-02 11:29:26 +08:00
Island
fcef568c70 Merge branch 'bugfix/ble_mesh_compile_error_v4.2' into 'release/v4.2'
Bugfix/ble mesh compile error (v4.2)

See merge request espressif/esp-idf!9430
2020-07-02 11:28:55 +08:00
Angus Gratton
69b0761114 Merge branch 'bugfix/sntp_example_test_v4.2' into 'release/v4.2'
Fix SNTP example test to match pattern (v4.2)

See merge request espressif/esp-idf!9447
2020-07-02 10:28:52 +08:00
Roland Dobai
6e7a091e39 Fix SNTP example test to match pattern 2020-07-01 14:37:06 +02:00
fuzhibo
68ed940668 Driver(adc): Disable the synchronization operation function of ADC1 and DAC
Closes IDF-1585
2020-07-01 09:29:34 +00:00
Jiang Jiang Jian
ce60660c7c Merge branch 'bugfix/fix_ping_specify_length_issue_v4.2' into 'release/v4.2'
bugfix: fix ICMP specify length issue (backport v4.2)

See merge request espressif/esp-idf!9401
2020-07-01 17:25:26 +08:00
Krzysztof Budzynski
68fae8b48f Merge branch 'doc/restore_missing_zh_eth_guide_v4.2' into 'release/v4.2'
docs: restore chinese get-started-ethernet-kit guide (v4.2)

See merge request espressif/esp-idf!9375
2020-07-01 16:25:02 +08:00
lly
f14a71e8b7 ble_mesh: example: Fix example README & tutorial link error 2020-07-01 14:36:30 +08:00
Jiang Jiang Jian
e5fed6d67d Merge branch 'mesh/bugfix_coexist_warning_4.2' into 'release/v4.2'
mesh: remove coexist warnings in ESP_WIFI_MESH (backport 4.2)

See merge request espressif/esp-idf!9412
2020-07-01 13:51:30 +08:00
Jiang Jiang Jian
655772ec23 Merge branch 'feature/bt_secure_conn_downgrade_check_v4.2' into 'release/v4.2'
Bluedroid: Authentication fixes in Legacy and Secure Connection.

See merge request espressif/esp-idf!9336
2020-07-01 13:48:46 +08:00
lly
f0518dfba5 ble_mesh: ci: Add different proxy configurations 2020-07-01 11:54:32 +08:00
lly
b239677c97 ble_mesh: stack: Fix compile error when only proxy enabled
Also remove some redundant CONFIG_BLE_MESH_PROXY checks, because
when the following options are satisfied, the CONFIG_BLE_MESH_PROXY
option will be selected mandatorily.
2020-07-01 11:54:32 +08:00
Island
f1642bfaaf Merge branch 'bugfix/ble_mesh_set_recv_rssi_v4.2' into 'release/v4.2'
Bugfix/ble mesh set recv rssi (v4.2)

See merge request espressif/esp-idf!9390
2020-07-01 11:31:47 +08:00
Island
e9f21b096f Merge branch 'bugfix/ble_mesh_check_subnet_before_update_beacon_sent_v4.2' into 'release/v4.2'
ble_mesh: Check if subnet exists before updating beacon_sent (v4.2)

See merge request espressif/esp-idf!9395
2020-07-01 11:16:16 +08:00
Michael (XIAO Xufeng)
76c1be0d94 spiram: fix the read id failure
The issue is caused by:
1. The disable_qio_mode inside read_id may have side effects.
2. read_id twice may have side effects.

Fix this issue by moving disable_qio_mode out of read_id and only do it
once before read_id. And retry read_id only when the first one is
failed.

Issue introduced in 3ecbb59c15.
2020-06-30 21:45:31 +08:00
chenjianqiang
a3a4c828e9 psram: fix 16mbit psram id read error 2020-06-30 21:44:39 +08:00
ronghulin
404a5994e6 bugfix: fix ICMP specify length issue 2020-06-30 13:42:19 +00:00
morris
98d7f13c24 console_repl: change config structure to support different devices 2020-06-30 20:18:27 +08:00
Chinmay Chhajed
ec043aac06 Bluedroid: Authentication fixes in Legacy and Secure Connection.
Prevent a remote device from doing a Bluetooth Impersonation Attack
(BIAS) by:

- Preventing remote device to downgrade secure connection
feature mask. Secure connection feature mask should remain same or
increase to enabled in link key generation and authentication.

- Doing a mutual authentication during Legacy Authentication.

Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-06-30 14:41:46 +05:30
chenyudong
334052194e mesh: remove coexist warnings in ESP_WIFI_MESH
1. remove warning log when mesh is started:
Error! Should use default passive scan time parameter for WiFi scan when Bluetooth is enabled!!!!!!
2. remove abort when mesh is started:
Error! Should enable WiFi modem sleep when both WiFi and Bluetooth are enabled!!!!!!
2020-06-30 16:33:08 +08:00
Jiang Jiang Jian
6938c615d8 Merge branch 'bugfix/connect_param_check_and_channel_map_bugs_v4.2' into 'release/v4.2'
components/bt:Fix channel map instant reverse and add ble connect paramter check.(backport 4.2)

See merge request espressif/esp-idf!9236
2020-06-30 15:11:56 +08:00
lly
6f715c4472 ble_mesh: Check if subnet exists before updating beacon_sent
- Before updating the "beacon_sent" of a subnet, we need to check
  if the subnet still exists, especially for a Provisioner.
- Fix a bug which will cause Provisioner failed to send Secure
  Network Beacon if no device is provisioned
2020-06-30 09:22:21 +08:00
lly
3fa5daf0ba ble_mesh: stack: Copy recv_rssi for other received messages
Follow the commit: 2b80cb6883,
copy the recv_rssi for other mesh messages.
2020-06-30 09:05:23 +08:00
mbroek
4b3bb6c8fd When a generic mesh model message is received "bt_mesh_generic_server_cb_evt_to_btc" copies the
ctx values to cb_params for the mesh stack.

recv_rssi was not copied.

This means the rssi could not be read when receiving generic server messages using ble_mesh.
2020-06-30 09:05:23 +08:00
liminyang
5bf8bb6d3a docs:fix event typo
1.In the description of the ESP_API header file, it should be the event that the application layer needs to handle, not the BTA layer.
2.Fix name typo of BTA_GATTS_CREATE_SRVC_EVT event

Closes https://github.com/espressif/esp-idf/issues/5446
2020-06-29 20:48:48 +08:00
Marius Vikhammer
a664a80d73 docs: restore chinese get-started-ethernet-kit guide
The chinese translation of get-started-ethernet-kit guide were erroneously
removed in commit 1a90470f02
2020-06-29 13:32:45 +08:00
Mahavir Jain
c0a40cf7e8 Merge branch 'fix/esp_tls_wolfssl_fix_cert_verify_v4.2' into 'release/v4.2'
esp_tls_wolfssl : fix incorrect error message after handshake fails (v4.2)

See merge request espressif/esp-idf!9229
2020-06-29 13:00:49 +08:00
Mahavir Jain
3d68e92a58 Merge branch 'bugfix/http_server_lru_v4.2' into 'release/v4.2'
esp_http_server: Update LRU counter on accepting a new connection (v4.2)

See merge request espressif/esp-idf!9350
2020-06-29 12:57:02 +08:00
Island
00148cd0c6 Merge branch 'bugfix/ble_mesh_get_node_with_name_v4.2' into 'release/v4.2'
ble_mesh: Get node info with pre-configured node name (v4.2)

See merge request espressif/esp-idf!9302
2020-06-28 20:25:32 +08:00
Island
fa8e6918c1 Merge branch 'bugfix/ble_mesh_example_tag_define_v4.2' into 'release/v4.2'
ble_mesh: Move TAG definition to each example (v4.2)

See merge request espressif/esp-idf!9305
2020-06-28 20:25:06 +08:00
Island
3c92395170 Merge branch 'bugfix/ble_mesh_bt_hex_v4.2' into 'release/v4.2'
ble_mesh: Fix wrong log output with bt_hex (v4.2)

See merge request espressif/esp-idf!9309
2020-06-28 20:24:31 +08:00
Island
257384ea75 Merge branch 'bugfix/ble_mesh_not_define_bool_v4.2' into 'release/v4.2'
Bugfix/ble mesh not define bool (v4.2)

See merge request espressif/esp-idf!9316
2020-06-28 20:23:21 +08:00
Island
6d20c836ff Merge branch 'bugfix/ble_mesh_check_model_status_v4.2' into 'release/v4.2'
ble_mesh: stack: Check model status with variable length (v4.2)

See merge request espressif/esp-idf!9319
2020-06-28 20:22:40 +08:00
Krzysztof Budzynski
e538b2a2ed Merge branch 'doc/ds_S2_4.2' into 'release/v4.2'
Doc: DS documentation for S2

See merge request espressif/esp-idf!9358
2020-06-28 20:20:49 +08:00
Jakob Hasse
36ee7d706a Doc: DS documentation for S2 2020-06-28 09:42:02 +08:00
Shubham Kulkarni
f97751712f esp_http_server: Update LRU counter on accepting a new connection
Closes https://github.com/espressif/esp-idf/issues/3851
2020-06-26 19:24:23 +05:30
Ivan Grokhotkov
e8c8286387 Merge branch 'bugfix/check_python_deps_diagnostic_v4.2' into 'release/v4.2'
tools: fix diagnostic output in check_python_dependencies.py (backport v4.2)

See merge request espressif/esp-idf!9295
2020-06-26 21:16:55 +08:00
Ivan Grokhotkov
390a34f660 Merge branch 'bugfix/export_sh_in_dash_v4.2' into 'release/v4.2'
tools: export.sh: fix compatibility with dash shell (backport v4.2)

See merge request espressif/esp-idf!9296
2020-06-26 21:16:40 +08:00
Mahavir Jain
939a7ada04 spi_flash: esp32: fix regression in encrypted flash write
In commit 309376f51a, it seems like regression
was added to use ROM level API for disabling flash write protection. This
started random firmware crashes (on specific modules) with exception
`IllegalInstruction` during encrypted flash writes.

Fix here removes relevant ROM API call, since disabling flash write protection
is already ensured by caller of this API.

Closes https://github.com/espressif/esp-idf/issues/5467
2020-06-26 18:20:06 +05:30
Ivan Grokhotkov
156bd313d2 Merge branch 'ci/http_client_remove_httpbin_redirect_v4.2' into 'release/v4.2'
ci: Temporarily remove the esp_http_client httpbin redirect tests (v4.2)

See merge request espressif/esp-idf!9340
2020-06-26 01:35:46 +08:00
Angus Gratton
b53daeecee ci: Temporarily remove the esp_http_client httpbin redirect tests
Need to host httpbin ourselves or wait for
postmanlabs/httpbin/issues/617 to be resolved
2020-06-25 07:57:57 +10:00
Angus Gratton
ae35b6abcd Merge branch 'bugfix/bootloader_header_align_v4.2' into 'release/v4.2'
bootloader: Force bootloader_image_hdr to be word aligned (v4.2)

See merge request espressif/esp-idf!9069
2020-06-24 20:33:47 +08:00
Krzysztof Budzynski
8bf1d3118a Merge branch 'doc/fix_broken_links_v4.2' into 'release/v4.2'
Doc/fix broken links (backport v4.2)

See merge request espressif/esp-idf!9265
2020-06-24 20:16:20 +08:00
lly
698fe7dd99 ble_mesh: stack: Check model status with variable length 2020-06-24 14:12:53 +08:00
lly
bd5ef62253 ble_mesh: Remove boolean type definitions 2020-06-24 14:05:58 +08:00
Nikolaos Strikos
5bacf6b23d ble_mesh: Do not #define bool when compiling in C++ 2020-06-24 14:05:58 +08:00
Angus Gratton
24d455f826 Merge branch 'feature/pyc_clean_v4.2' into 'release/v4.2'
tools/idf.py: Clean Python bytecode files (v4.2)

See merge request espressif/esp-idf!9262
2020-06-24 12:30:15 +08:00
lly
55f48877a4 ble_mesh: Fix wrong log output with bt_hex
- This issue was introduced in the commit: a788e7cd3d
  which updated the bt_hex() function incorrectly.
- And in bt_hex(), we use 2 for the two-dimensional array, because currently
  at most two bt_hex() will be used at the same time. Also this will save
  some DRAM compared with using 4.
2020-06-24 12:29:33 +08:00
Angus Gratton
ac2698ecb7 Merge branch 'bugfix/idf_py_help_env_var_v4.2' into 'release/v4.2'
Tools: Mention ESPPORT and ESPBAUD in idf.py --help (v4.2)

See merge request espressif/esp-idf!9290
2020-06-24 12:28:29 +08:00
lly
a2e14140b3 ble_mesh: Move TAG definition to each example
Move the TAG definition of each example to the corresponding
source file (previously it is defined in the common example
intialization header file), which can avoid the redefinition
of TAG in some situations.
2020-06-24 12:19:06 +08:00
lly
b4b2cd19f7 ble_mesh: Get node info with pre-configured node name
Also add a function to get the entry of the nodes table.

Closes https://github.com/espressif/esp-idf/issues/5397
2020-06-24 10:58:36 +08:00
Ivan Grokhotkov
4913cbed6a tools: export.sh: fix compatibility with dash shell
* fix constructs invalid in dash
* clean shellcheck warnings and disable false positive ones

Closes https://github.com/espressif/esp-idf/issues/5366
2020-06-23 16:34:19 +02:00
Ivan Grokhotkov
387dfd977a tools: fix diagnostic output in check_python_dependencies.py
If IDF_PYTHON_ENV_PATH was not set, an exception occurred:

Traceback (most recent call last):
  File "/home/user/esp/esp-idf/tools/check_python_dependencies.py", line 108, in <module>
    if idf_python_env_path not in sys.executable:
TypeError: 'in <string>' requires string as left operand, not NoneType

and the final line in the diagnostic message was not printed.
Fix to print the PATH if IDF_PYTHON_ENV_PATH is not set.
2020-06-23 16:32:47 +02:00
Roland Dobai
647d01dbc6 Tools: Mention ESPPORT and ESPBAUD in idf.py --help
Closes https://github.com/espressif/esp-idf/issues/5461
2020-06-23 15:21:44 +02:00
Jiang Jiang Jian
820e0ead52 Merge branch 'bugfix/wifi_update_tbtt_when_ap_reset_tsf_v4.2' into 'release/v4.2'
esp_wifi: Add TBTT update when AP reset TSF (v4.2)

See merge request espressif/esp-idf!9270
2020-06-23 12:14:27 +08:00
zhangyanjiao
cdc0374448 esp_wifi:
1. Add TBTT update when AP reset TSF
2. fix the bug for regdomian update
3. update ESP32S2 phy lib to 601,5b0f7cd
4. Fix TX DMA buffer issue
2020-06-22 19:33:08 +08:00
Marius Vikhammer
c185d924e1 docs: fixed broken platform.io link 2020-06-22 17:17:57 +08:00
Marius Vikhammer
35c3a51c17 docs: fix link_roles not linking correctly for certain files
Link_roles could link incorrectly if the name of a file matched the name of a submodule
2020-06-22 17:17:46 +08:00
Roland Dobai
1c49cf1a09 tools/idf.py: Clean Python bytecode files 2020-06-22 10:23:59 +02:00
Angus Gratton
ee126bc154 Merge branch 'bugfix/wpa_supplicant_no_hw_mpi_v4.2' into 'release/v4.2'
wpa_supplicant: Allow building with mbedTLS integration but no hardware MPI (v4.2)

See merge request espressif/esp-idf!9011
2020-06-22 13:06:01 +08:00
Island
aaeb2ba733 Merge branch 'bugfix/att_buffer_count_fixed_v4.2' into 'release/v4.2'
Bugfix/att buffer count fixed v4.2

See merge request espressif/esp-idf!9161
2020-06-22 11:44:54 +08:00
wangcheng
12d39f9faa components/bt:Fix instant reverse and add ble connect paramter check. 2020-06-18 15:54:53 +08:00
Elvis Dukaj
41f178f5eb ble_hid_device_demo: fix build if building with c++
Signed-off-by: Elvis Dukaj <elvis.dukaj@gmail.com>
Signed-off-by: liminyang <liminyang@example.com>

Merges https://github.com/espressif/esp-idf/pull/5191
2020-06-18 15:32:52 +08:00
Aditya Patwardhan
f6b0307e1a esp_tls_wolfssl: fix incorrect error message after handshake fails 2020-06-18 12:58:40 +05:30
Island
710249c86a Merge branch 'bugfix/blufi_buffer_overflow_report_v4.2' into 'release/v4.2'
blufi: When the format of the received data packet is wrong, reply with an error response(backport 4.2)

See merge request espressif/esp-idf!9201
2020-06-18 13:44:52 +08:00
liminyang
920273e619 docs:perfect 128-bit UUID description
The previous description is not easy for the reader to understand, some changees have been made to perfect it.
Closes https://github.com/espressif/esp-idf/issues/5057
2020-06-18 11:57:47 +08:00
Michael (XIAO Xufeng)
82c4ed30b6 Merge branch 'bugfix/fix_fifo_cnt_bug_v4.2' into 'release/v4.2'
bugfix(uart): fix esp32 fifo_cnt bug(backport v4.2)

See merge request espressif/esp-idf!9039
2020-06-18 01:47:51 +08:00
Jiang Jiang Jian
1f074d313b Merge branch 'bugfix/fix_some_wifi_bugs_0617_v4.2' into 'release/v4.2'
fix some wifi bugs 0617 (backport v4.2)

See merge request espressif/esp-idf!9210
2020-06-17 18:27:37 +08:00
Jiang Jiang Jian
a406885360 Merge branch 'feature/make_tcp_rto_configurable_v4.2' into 'release/v4.2'
make  TCP rto time configurable (backport v4.2)

See merge request espressif/esp-idf!9211
2020-06-17 18:23:34 +08:00
Jiang Jiang Jian
a6f2205cdb Merge branch 'bugfix/ble_conn_fail_v4.2' into 'release/v4.2'
Fix bugs from coex test

See merge request espressif/esp-idf!9099
2020-06-17 18:16:37 +08:00
Angus Gratton
0ea0d2ba3c Merge branch 'bugfix/efuse_logs_v4.2' into 'release/v4.2'
esp32/esp32s2: Reduce using ESP_EARLY_LOGx and move some code after the stdout initialization in startup code (v4.2)

See merge request espressif/esp-idf!9202
2020-06-17 16:54:34 +08:00
yuanjm
c5768c019e feat(lwip): make LWIP TCP rto time configurable 2020-06-17 15:20:00 +08:00
baohongde
783cd1bb08 components/bt: Fix ble disconnect due to instant of channel map update is too small 2020-06-17 07:15:46 +00:00
baohongde
d4b232590a Set AFH in time(075dd35)
Send LMP_channelClassification immediately
Fix first LMP_set_AFH not using host value
2020-06-17 07:15:46 +00:00
baohongde
ef92a22b0c components/coex: Fix ble connecting fail in coexist 2020-06-17 07:15:46 +00:00
zhangyanjiao
f5a6ae7e93 esp_wifi:
1. Fix WPA3 Auth timeout during BLE coex
2. fix addba ssn and send bar for first ampdu
3. fix the bug that airkiss find hidden AP fail
4. update mesh lib
5. fix interrupt handle param variable error
2020-06-17 14:55:45 +08:00
ChenJianxing
7cbb970b50 esp32s2: disable sdmmc api 2020-06-17 14:53:17 +08:00
ChenJianxing
ba67a9518e fix esp32s2 do not have crc*_be func 2020-06-17 14:53:08 +08:00
ChenJianxing
835186b3b9 esp_wifi: re-enable build wifi example 2020-06-17 14:52:58 +08:00
KonstantinKondrashov
49c9f69eae esp32s2: Move some code after the stdout initialization 2020-06-17 13:40:42 +08:00
KonstantinKondrashov
a6ac0e8a51 esp32: Reduce using ESP_EARLY_LOGx and move some code after the stdout initialization
After setting _GLOBAL_REENT, ESP_LOGIx can be used instead of ESP_EARLY_LOGx.

Closes: https://github.com/espressif/esp-idf/issues/5343
2020-06-17 13:40:42 +08:00
Wang Cheng
21ff2f84ce components/bt: Add a detailed description for the user to distinguish the function of the query buffer api. 2020-06-17 12:52:28 +08:00
Geng Yu Chao
02cd178115 Update the limited of function esp_ble_get_sendable_packets_num. 2020-06-17 12:52:18 +08:00
wangcheng
17609cbb02 blufi: When the format of the received data packet is wrong, reply with an error response 2020-06-17 12:19:00 +08:00
Jiang Jiang Jian
e7d046cfdd Merge branch 'bugfix/fix_event_bug_in_GAP_API_release_v4.2' into 'release/v4.2'
Bugfix/fix event bug in GAP API [backport v4.2]

See merge request espressif/esp-idf!9190
2020-06-17 11:51:38 +08:00
liqigan
4dd29dac94 components/bt: Adjust the description of esp_bt_gap_start_discovery and esp_bt_gap_cancel_discovery.
Add some comments to explain why `ESP_BT_GAP_DISC_STATE_CHANGED_EVT` is not reported.
2020-06-16 22:18:21 +08:00
xiongyu
27e6e8c485 bugfix(uart): fix esp32 fifo_cnt bug
When using DPort to read fifo, fifo_cnt is not credible, we need to calculate the real cnt based on the fifo read and write pointer. When using AHB to read FIFO, we can use fifo_cnt to indicate the data length in fifo.
2020-06-16 14:34:23 +08:00
Marius Vikhammer
1d1e4497ba ci: fix find_build_apps.py failure with py3 due to non ascii chars
find_build_apps.py would fail when reading non-ascii chars on systems where
the default encoding was ascii.
2020-06-15 15:20:43 +08:00
Marius Vikhammer
1531f2db2a ci: fix check_public_headers.py failure with python3 due to non ascii chars
check_public_headers.py would fail when reading non-ascii chars on systems where
the default encoding was ascii.

Also fixes error handling issues, as any uncaught exeception would cause the program
to run indefinitely.
2020-06-15 15:20:43 +08:00
Marius Vikhammer
1358734b3f Fixes issues with gen_crt_bundle.py for unicode chars
gen_crt_bundle.py could fail to parse the certificates if it contained a non-ascii character.
2020-06-15 15:20:43 +08:00
wangcheng
7f299d9d60 components/bt: Consider link_xmit_data_q in congest events to prevent excessive memory usage 2020-06-13 15:10:30 +08:00
wangcheng
d53a2719b9 components/bt: Fixed the problem of incomplete data packets caused by disordered acl data packets 2020-06-13 15:09:45 +08:00
wangcheng
f9b0cd1847 components/bt: Add api to query the number of available buffers for the current connection 2020-06-13 15:09:36 +08:00
Angus Gratton
9b62609499 msys2: Remove python version consideration in pacman commands 2020-06-12 10:20:03 +10:00
Angus Gratton
036848a375 windows: Update MSYS2 pre-compiled legacy build environment
* Bundled with esp2020r2 toolchain
* Built with Python 3 & latest MSYS2 packages
2020-06-12 10:20:03 +10:00
Jiang Jiang Jian
1504fe5358 Merge branch 'bugfix/esp32_can_not_scan_ap_after_restart_v4.2' into 'release/v4.2'
esp_wifi: upadte esp32 phy lib to 4182 (v4.2)

See merge request espressif/esp-idf!9113
2020-06-11 11:54:24 +08:00
Angus Gratton
5054cd05fc Merge branch 'bugfix/intr_alloc_no_log_from_critical_section_v4.2' into 'release/v4.2'
intr_alloc: don't call ESP_LOG from critical section (v4.2)

See merge request espressif/esp-idf!9088
2020-06-10 15:58:23 +08:00
zhangyanjiao
c9769e535e esp_wifi: upadte esp32 phy lib to 4182 2020-06-09 17:33:55 +08:00
Jiang Jiang Jian
21a9c9b653 Merge branch 'bugfix/authmode_degrade_fix_v4.2' into 'release/v4.2'
esp_wifi: Remove auth_changed event and fix wpa2_ent authmode threshold(backport v4.2)

See merge request espressif/esp-idf!9090
2020-06-09 17:30:50 +08:00
kapil.gupta
f74729c3bc esp_wifi: Remove auth_changed event and fix wpa2 authmode threshold
Added following as part of this change
1. Removed auth_changed event
2. Updated doc regarding usage of  WPA/WEP secuiry modes
3. Fixed WPA2 enterprise authmode threshold.
2020-06-08 12:53:22 +05:30
David Čermák
cc99cac782 Merge branch 'feature/pin_ethernet_task_to_core_v4.2' into 'release/v4.2'
ethernet: support pin emac task to core (v4.2)

See merge request espressif/esp-idf!9036
2020-06-08 13:52:01 +08:00
morris
9773f79e6e intr_alloc: using isr version of critical section 2020-06-08 12:52:25 +08:00
Jiang Jiang Jian
b2fb2429dd Merge branch 'bugfix/esp32s2_airkiss_fail_v4.2' into 'release/v4.2'
wifi: fix the bug that ESP32S2 can't receive AMPDU when airkiss (v4.2)

See merge request espressif/esp-idf!9029
2020-06-05 15:34:42 +08:00
zhangyanjiao
8643d7acb9 wifi:
1. Fix the bug that ESP32S2 can't receive AMPDU when airkiss
2. Fix WPA3 Auth issue in coex scenario
2020-06-05 06:00:37 +00:00
Angus Gratton
e7ab7ce3af bootloader: Force bootloader_image_hdr to be word aligned
Possible due to linker order for this file to be placed unaligned,
causing failure from bootloader_flash_read() function.
2020-06-04 20:56:26 +10:00
Island
a8f40b7095 Merge branch 'bugfix/ble_mesh_remove_relay_dependency_v4.2' into 'release/v4.2'
ble_mesh: Remove relay option dependency (v4.2)

See merge request espressif/esp-idf!9025
2020-06-03 15:20:35 +08:00
Island
9bdaa64d80 Merge branch 'bugfix/ble_mesh_example_nvs_store_v4.2' into 'release/v4.2'
Bugfix/ble mesh example nvs store (v4.2)

See merge request espressif/esp-idf!9015
2020-06-03 15:11:54 +08:00
Island
55cd09578f Merge branch 'bugfix/ble_mesh_model_recv_fix_v4.2' into 'release/v4.2'
Bugfix/ble mesh model recv fix (v4.2)

See merge request espressif/esp-idf!9006
2020-06-03 15:11:15 +08:00
Island
118b69ce0d Merge branch 'bugfix/ble_mesh_rework_prov_pdu_len_check_v4.2' into 'release/v4.2'
ble_mesh: Rework prov pdu length check (v4.2)

See merge request espressif/esp-idf!9002
2020-06-03 15:10:33 +08:00
morris
b16c20fa30 ethernet: support pin emac task to core 2020-06-03 11:06:41 +08:00
lly
eeb44e7dd6 ble_mesh: Remove relay option dependency
When the relay functionality of a node is not enabled, this
issue will cause the node failing to send messages to fixed
group.
2020-06-02 19:18:18 +08:00
lly
5b256c1cb5 ble_mesh: Add nvs operations for examples
- Store onoff_client example proper mesh info
- Store vendor_client example proper mesh info

Closes https://github.com/espressif/esp-idf/issues/5359
2020-06-02 14:02:54 +08:00
lly
c906bcaf40 ble_mesh: Add mesh example common nvs operations 2020-06-02 14:02:54 +08:00
lly
adf785a1b0 ble_mesh: Config and health client btc fixes
Fix an issue which may cause no error code is returned
when sending config client or health client messages
with invalid parameters.
2020-06-02 14:02:54 +08:00
lly
b25cffd4d5 ble_mesh: Add more checks of net_idx & app_idx 2020-06-02 14:02:54 +08:00
lly
4919d17ad1 ble_mesh: Optimize some send & recv logs 2020-06-02 14:02:53 +08:00
Angus Gratton
c69210c0f2 wpa_supplicant: Allow building with mbedTLS integration but no hardware MPI
Also disable the relevant function in bignum.h based on config, so fails at
compile not link time.

Closes https://github.com/espressif/esp-idf/issues/5321
2020-06-02 13:35:48 +10:00
Island
6fa8df519d Merge branch 'bugfix/ble_mesh_local_model_sub_v4.2' into 'release/v4.2'
Bugfix/ble mesh local model sub (v4.2)

See merge request espressif/esp-idf!8982
2020-06-02 10:58:05 +08:00
lly
1a3c315d2f ble_mesh: correct the return type [Zephyr] 2020-06-02 10:31:08 +08:00
lly
8271ae4a1e ble_mesh: Add net_buf_simple_init_with_data [Zephyr] 2020-06-02 10:31:08 +08:00
lly
d6a247f7e4 ble_mesh: Optimize model recv operations [Zephyr]
Previously the model recv operation is a littl fuzzy.
With the changes, the model recv operation is splitted into:
- find op
- check app_idx
- check dst
- check length
- update info & handle message
2020-06-02 10:31:07 +08:00
lly
4fbc29616c ble_mesh: Rework prov pdu length check 2020-06-02 10:13:21 +08:00
Ivan Grokhotkov
6b36ce95a2 Merge branch 'bugfix/coredump_memregion_size_v4.2' into 'release/v4.2'
coredump: Fixes size of memory region used by espcoredump.py (backport v4.2)

See merge request espressif/esp-idf!8977
2020-06-02 01:11:12 +08:00
lly
067d94e88f ble_mesh: Local model (un)subscribes group address 2020-06-01 09:10:17 +08:00
lly
6bc4f5802d ble_mesh: Define a macro for invalid company id 2020-06-01 09:10:17 +08:00
Alexey Gerenkov
29b03b2999 coredump: Fixes size of memory region used by espcoredump.py 2020-05-29 21:09:21 +03:00
Angus Gratton
baedfab382 Merge branch 'feature/dis_uart_dl_mode' into 'master'
feature: Disable UART download mode

Closes IDF-1386

See merge request espressif/esp-idf!8590
2020-05-29 14:09:54 +08:00
Angus Gratton
d15e9c0710 Merge branch 'bugfix/no_pyc_files' into 'master'
tools: Don't generate pyc files

See merge request espressif/esp-idf!8815
2020-05-29 14:07:24 +08:00
Angus Gratton
59f29cbca8 Merge branch 'feature/allow_rtc_memory_for_task_stacks' into 'master'
Add RTC Fast Memory to Dynamic Memory Pool

See merge request espressif/esp-idf!8390
2020-05-29 14:07:01 +08:00
Angus Gratton
7cbdc3ea66 Merge branch 'bugfix/ci_push_to_github_on_label' into 'master'
ci: Don't push to Github or deploy docs on customized pipelines

See merge request espressif/esp-idf!8870
2020-05-29 12:43:00 +08:00
Mahavir Jain
e8035c3eff Merge branch 'feature/app_update_add_api' into 'master'
Add API to write data in a non-contiguous manner

See merge request espressif/esp-idf!8650
2020-05-29 12:25:54 +08:00
Jiang Jiang Jian
ba48120931 Merge branch 'bugfix/add_so_linger_to_menuconfig' into 'master'
lw-ip:add LINGER to menuconfig

Closes WIFI-2342

See merge request espressif/esp-idf!8746
2020-05-29 11:11:03 +08:00
Ivan Grokhotkov
4e70efac64 Merge branch 'bugfix/missing_doc_preview_comment' into 'master'
add some prefix for doc urls to make BOT recognize the preview doc url

See merge request espressif/esp-idf!8554
2020-05-29 04:50:25 +08:00
Ivan Grokhotkov
ac686ccd00 Merge branch 'feature/make_support_in_find_build_apps' into 'master'
ci: make supported in find_apps/build_apps

Closes IDF-1587

See merge request espressif/esp-idf!8429
2020-05-29 04:48:30 +08:00
Angus Gratton
f4edc52fa0 efuse: Have support for secure DL mode depend on a soc_caps flag 2020-05-28 18:02:02 +10:00
Angus Gratton
d45eabe676 esptool: Add support for ESP32-S2 Secure Download Mode
* Pass --no-stub from build system if configured to enable ESP32-S2 Secure Download Mode
* Update esptool submodule
2020-05-28 17:52:15 +10:00
Angus Gratton
f64ae4fa99 efuse: Add 'disable Download Mode' & ESP32-S2 'Secure Download Mode' functionality 2020-05-28 17:50:45 +10:00
Angus Gratton
48d9c14c28 efuse: Add new esp_efuse_read_field_bit() convenience function 2020-05-28 17:45:09 +10:00
Angus Gratton
1dd5a4dba4 efuse: Add new esp_efuse_write_field_bit() convenience function 2020-05-28 17:45:09 +10:00
Angus Gratton
9b822a3d2e esp32s2: Disable legacy boot mode & ROM remap modes if either Secure Boot or Flash Encryption is on 2020-05-28 17:45:09 +10:00
David Čermák
e1ec6c86e6 Merge branch 'bugfix/icmp_echo_ci_ttl_fail' into 'master'
ICMP echo: example test were failing due to regex not matching TTL

See merge request espressif/esp-idf!8931
2020-05-28 13:31:30 +08:00
Shubham Kulkarni
6a1b3221c4 app_update: Add API to write data in a non contiguous manner 2020-05-28 10:18:55 +05:30
Jiang Jiang Jian
8f2d1e7f92 Merge branch 'bugfix/collection_of_confirmed_fixes_from_baidu_project' into 'master'
Bugfix/collection of confirmed fixes from baidu project

Closes BT-826, BT-542, BCI-31, BCI-34, BT-840, and AUD-1857

See merge request espressif/esp-idf!8675
2020-05-28 12:23:58 +08:00
Island
705fc0f0e5 Merge branch 'bugfix/ble_mesh_check_timer_init' into 'master'
ble_mesh: Check the result of creating timer

Closes BLEMESH-218

See merge request espressif/esp-idf!8932
2020-05-28 10:11:47 +08:00
Krzysztof Budzynski
95ed99671b Merge branch 'feature/coredump_data_in_elf_format_doc_update' into 'master'
espcoredump: apply documentation changes in core_dump.rst file

See merge request espressif/esp-idf!5697
2020-05-28 02:25:47 +08:00
Alex Lisitsyn
e649a4f017 espcoredump: apply temporary documentation changes in core_dump.rst file
added picture to describe bin and elf format of core dump
added link to core_dump_internals.rst file from main one
added the diagram to describe logic structure of core dump modules and dependencies
2020-05-28 02:25:46 +08:00
Michael (XIAO Xufeng)
f81da10951 Merge branch 'bugfix/sdmmc_check_slot_before_pullup' into 'master'
sdmmc: Correctly check function parameters before using them

Closes IDFGH-2967

See merge request espressif/esp-idf!8827
2020-05-27 23:08:01 +08:00
Jiang Jiang Jian
1056d2a1b7 Merge branch 'bugfix/esp32s2_flash_mmap_cache2phys_phys2cache' into 'master'
flash mmap: fix bug for cache2phys and phys2cache on esp32s2

See merge request espressif/esp-idf!8526
2020-05-27 20:20:46 +08:00
Jiang Jiang Jian
ed1c0bf445 Merge branch 'bugfix/rm_tx_buffer_limits' into 'master'
esp_wifi: remove wifi tx buffer limits

See merge request espressif/esp-idf!8933
2020-05-27 20:12:17 +08:00
lly
6768c2b7a1 ble_mesh: Check the result of creating timer 2020-05-27 09:30:34 +00:00
Island
3b85d4ef24 Merge branch 'bugfix/ble_mesh_sync_zephyr_fixes' into 'master'
Bugfix/ble mesh sync zephyr fixes

Closes BLEMESH-215

See merge request espressif/esp-idf!8912
2020-05-27 17:26:00 +08:00
Island
d82f3372a0 Merge branch 'bugfix/ble_mesh_not_use_same_private_key' into 'master'
ble_mesh: Not using pre-initialized private key

Closes BLEMESH-214

See merge request espressif/esp-idf!8905
2020-05-27 17:25:39 +08:00
Island
02376b97d4 Merge branch 'bugfix/ble_mesh_uses_deprecated_config' into 'master'
ble_mesh: Fix using old config for duplicate scan

Closes BLEMESH-213

See merge request espressif/esp-idf!8898
2020-05-27 17:23:55 +08:00
Island
7b12d96169 Merge branch 'bugfix/ble_mesh_comp_data_store_restore' into 'master'
ble_mesh: Same func for storing/restoring comp data

See merge request espressif/esp-idf!8882
2020-05-27 17:23:21 +08:00
ChenJianxing
9e45c3c7d8 esp_wifi: remove wifi tx buffer limits 2020-05-27 15:06:53 +08:00
Jiang Jiang Jian
b1cb127e61 Merge branch 'bugfix/esp32s2_iperf_config_update' into 'master'
update esp32s2 iperf config

See merge request espressif/esp-idf!8461
2020-05-27 13:56:19 +08:00
Marius Vikhammer
26d59f0f4c ICMP echo: example test were failing due to regex not matching TTL 2020-05-27 11:16:18 +08:00
Jiang Jiang Jian
ff9322e007 Merge branch 'mesh/add_ps_ie_option' into 'master'
mesh: add mesh PS option following add announce

Closes WIFI-2348 and WIFI-2330

See merge request espressif/esp-idf!8826
2020-05-27 11:15:50 +08:00
jiangguangming
92eae20bca add new config items for spiflash ci unit-test 2020-05-26 15:23:38 +08:00
jiangguangming
b25ccde45f flash mmap: fix bug for cache2phys and phys2cache on esp32s2 2020-05-26 15:14:23 +08:00
Krzysztof Budzynski
b734893124 Merge branch 'docs/Translate_MR8668' into 'master'
Add translation for kaluga user guide

See merge request espressif/esp-idf!8807
2020-05-26 14:54:45 +08:00
Natasha
5122e26090 Add translation for kaluga user guide 2020-05-26 14:54:45 +08:00
Mahavir Jain
7e0e2f3e40 Merge branch 'bugfix/mbedtls_disable_sha_mpi' into 'master'
mbedtls: Don't compile hardware MPI & SHA files if disabled in config

See merge request espressif/esp-idf!8823
2020-05-26 12:33:20 +08:00
lly
0cfb6c138b ble_mesh: Transport tx fields overflow [Zephyr]
The transport segmented TX nack and seg_pending fields must be at least
6 bits to avoid overflow for 32 segment messages. This change rearranges
the seg_tx fields to gather all state flag fields in one byte, while
making the counter fields whole bytes.
2020-05-26 11:42:31 +08:00
Angus Gratton
94f5129bf8 mbedtls: Don't compile hardware MPI & SHA files if disabled in config
Fixes bug where hardware accelerated mbedtls_mpi API was always used, even when
disabled in config.
2020-05-26 03:37:46 +00:00
lly
f863a1b328 ble_mesh: Friend with unknown appkey [Zephyr]
Ensures that friend messages are enqueued, even if the packet is
received with an appkey is unknown to the friend. Previously, sdu_recv
would return EINVAL if the appkey was unknown, which would prevent the
lower transport layer from adding the packet to the friend queue. This
is irrelevant for the logic in lower transport, and should not be
returned as an error.
2020-05-26 11:16:01 +08:00
lly
05c287e05c ble_mesh: Not using pre-initialized private key 2020-05-26 10:46:22 +08:00
David Čermák
ea78d06939 Merge branch 'bugfix/example_common_connect_no_ip6' into 'master'
examples: common connect: fix build error if ipv6 disabled

See merge request espressif/esp-idf!8877
2020-05-25 17:23:52 +08:00
lly
3c1487be0e ble_mesh: Fix using old config for duplicate scan 2020-05-25 16:48:15 +08:00
Michael (XIAO Xufeng)
0d90861984 Merge branch 'bugfix/fix_rmt_driver_breaking_change_issue' into 'master'
Bugfix(RMT):   Fix the breaking change issue of RMT driver.

Closes IDFGH-2837, IDFGH-2579, and IDFGH-2915

See merge request espressif/esp-idf!8006
2020-05-25 15:27:24 +08:00
Angus Gratton
042a433678 Merge branch 'test/print_leak_delta' into 'master'
unit test: Always print the free memory delta after the test

See merge request espressif/esp-idf!8876
2020-05-25 15:25:52 +08:00
Angus Gratton
084e170a8f Merge branch 'refactor/esp_ipc' into 'master'
Split esp_ipc to a seaparate component

Closes IDF-1295

See merge request espressif/esp-idf!8520
2020-05-25 15:03:04 +08:00
Michael (XIAO Xufeng)
b3587ff88c Merge branch 'bugfix/fix_i2s_comm_format_unclear_description_bug' into 'master'
Bugfix(I2S):  Fix i2s_comm_format_t configuration parameter does not match the TRM bug

Closes IDFGH-3040, IDFGH-2913, IDFGH-578, IDFGH-2408, and IDFGH-3117

See merge request espressif/esp-idf!8339
2020-05-25 15:00:10 +08:00
lly
bbbdbb8699 ble_mesh: Same func for storing/restoring comp data 2020-05-25 13:27:08 +08:00
Anton Maklakov
b82d91fc39 Merge branch 'feature/toolchain_2020r2' into 'master'
Update toolchain 2020r2

See merge request espressif/esp-idf!8751
2020-05-25 12:41:27 +08:00
Jiang Jiang Jian
5bb656bd5e Merge branch 'bugfix/bt_universal_calculation' into 'master'
bugfix/correct_bt_mac_calculation

Closes IDFGH-3343

See merge request espressif/esp-idf!8825
2020-05-25 11:57:37 +08:00
Wei Tian Hua
6572959fd3 Add user invisible kconfig for bt mac offset
Closes https://github.com/espressif/esp-idf/issues/5320
2020-05-25 11:57:37 +08:00
Anton Maklakov
aa25b169f7 Update toolchain to esp-2020r2
Fixes PSRAM issues, volatile loads with -O2, std::locale, C++ exception crashs, FDE sorting switchable;

Includes a 64-bit toolchain for Windows (win64);

Closes https://github.com/espressif/esp-idf/issues/5090
Closes https://github.com/espressif/esp-idf/issues/5112
Closes https://github.com/espressif/esp-idf/issues/5150
2020-05-25 10:27:05 +07:00
xueyunfei
df43a1affc add LINGER to menuconfig 2020-05-25 11:23:03 +08:00
Krzysztof Budzynski
9050f8a741 Merge branch 'feature/update_cloud_frameworks_doc' into 'master'
Update documentation for Cloud Frameworks

See merge request espressif/esp-idf!7572
2020-05-25 04:03:27 +08:00
Krzysztof Budzynski
56635f22b8 Merge branch 'doc/add_types_api_ref' into 'master'
doc: add peripheral_types.h as API reference for peripheral docs

Closes DOC-136 and IDF-1673

See merge request espressif/esp-idf!8528
2020-05-25 03:22:22 +08:00
Krzysztof Budzynski
fa0dd5cc7b Merge branch 'doc/view_github_link' into 'master'
docs: add 'edit-on-github' link to html theme

Closes IDF-1504

See merge request espressif/esp-idf!8629
2020-05-25 03:21:23 +08:00
Liu Han
e53c9300d6 docs: Update documentation for Cloud Frameworks 2020-05-24 19:06:59 +00:00
Krzysztof Budzynski
f1fac7dbfb Merge branch 'feature/docs_quick_links' into 'master'
docs: Provide link to ESP32-S2 specific documentation

See merge request espressif/esp-idf!8782
2020-05-25 02:59:36 +08:00
Krzysztof Budzynski
71d1b32dde docs: Provide link to ESP32-S2 specific documentation 2020-05-25 02:59:36 +08:00
Krzysztof Budzynski
6048791a1b Merge branch 'feature/doc_build_subset' into 'master'
docs: support building a subset of the documentation with build_docs

Closes IDF-1688

See merge request espressif/esp-idf!8857
2020-05-25 02:58:28 +08:00
Ivan Grokhotkov
1f734b7057 Merge branch 'feature/native_smp_suport' into 'master'
APP CPU syscall table for gcov handler

See merge request espressif/esp-idf!8350
2020-05-23 20:31:22 +08:00
Island
248db690e1 Merge branch 'bugfix/ble_mesh_provisioner_fail_to_pub' into 'master'
ble_mesh: Fix Provisioner failed to publish

Closes BLEMESH-211

See merge request espressif/esp-idf!8872
2020-05-22 19:14:00 +08:00
Fu Hanxi
da9ca49093 fix after rebase 2020-05-22 19:08:02 +08:00
Fu Hanxi
c35b010a3f improve regex 2020-05-22 19:08:02 +08:00
Fu Hanxi
961a8cf85e remove artifact config in ci. 2020-05-22 19:08:02 +08:00
Fu Hanxi
701b496621 some filename includes "error". so update the regex 2020-05-22 19:08:02 +08:00
Fu Hanxi
dc89e6df6e make supported in find_apps/build_apps 2020-05-22 19:08:02 +08:00
David Cermak
5c6bca69a5 examples: common connect: fix build error if ipv6 disabled
Declaration of local variable esp_ip6_addr_t ip6[]; was active even if IPV6 disabled in sdkconfig. Introduced in 06711c7c36
2020-05-22 08:45:59 +00:00
Darian Leung
baf06d4971 Increase C++ unit test leak threshold
Heap fragmentation causes 4-8 bytes of memory to be leaked
(due to rounding up of memory sizes). Increase the leak
thresholds to prevent test cases from failing.
2020-05-22 16:39:44 +08:00
Angus Gratton
eb4ac07c96 unit test: Always print the free memory delta after the test
Prevents situations where the leak threshold is low and the
value slowly creeps up to be close to it, without developer
noticing.
2020-05-22 18:39:43 +10:00
lly
af37aee5bf ble_mesh: Fix Provisioner failed to publish 2020-05-22 15:32:12 +08:00
Anton Maklakov
a9c61dca4e Merge branch 'bugfix/static_analysis_mem_issues' into 'master'
fix minor static analysis memory issues

See merge request espressif/esp-idf!8697
2020-05-22 15:08:20 +08:00
Marius Vikhammer
a316082f53 docs: support building a subset of the documentation with build_docs
Closes IDF-1688
2020-05-22 15:01:40 +08:00
Angus Gratton
469b7bc4cf ci: Don't push to Github or deploy docs on customized pipelines
BOT_TRIGGER_WITH_LABEL must be empty (meaning all tests are running).
2020-05-22 15:04:39 +10:00
Island
3cea462c52 Merge branch 'doc/ble_mesh_fix' into 'master'
ble_mesh: Doc miscellaneous fixes

See merge request espressif/esp-idf!8847
2020-05-22 10:49:16 +08:00
Ivan Grokhotkov
a2d7e8cbba Merge branch 'bugfix/crt_bundle_no_config_file' into 'master'
esp_crt_bundle: fixes the "No CA Chain is set" error

See merge request espressif/esp-idf!8851
2020-05-22 09:34:32 +08:00
Mahavir Jain
7d75213674 Merge branch 'bugfix/fix_flake8_warning' into 'master'
bugfix: fix flake8 warning for esp-cryptoauthlib submodule

See merge request espressif/esp-idf!8865
2020-05-22 00:31:19 +08:00
Aditya Patwardhan
3a9228fa02 bugfix: fix flake8 warning for esp-cryptoauthlib submodule 2020-05-21 21:02:33 +05:30
Krzysztof Budzynski
1f18946ca0 Merge branch 'feature/new_camera_module_supported_on_esp32-s2-kaluga-1_board' into 'master'
docs: OV3660 camera module is now supported with ESP32-S2-Kaluga-1 Kit. Add...

See merge request espressif/esp-idf!8839
2020-05-21 22:05:46 +08:00
Krzysztof Budzynski
1b49a52edd docs: OV3660 camera module is now supported with ESP32-S2-Kaluga-1 Kit. Add link back to ESP-ADF documentation in ESP-LyraT-8311A user guide. 2020-05-21 22:05:45 +08:00
Mahavir Jain
6272cb842f Merge branch 'feature/esp_wroom32_se_example' into 'master'
Feature/esp wroom32 se example

See merge request espressif/esp-idf!8552
2020-05-21 19:51:19 +08:00
Aditya Patwardhan
423e600d46 secure_element: atecc608_ecdsa example
* Replaced crypotoauthlib with esp-cryptoauthlib
* Added menuconfig option for esp-tls about using HSM
* Added error codes for HSM in esp-tls,
* Added support to select different type of ATECC608A chips
* Added README, updated docs
* tcp_transport: Added option to enable secure_element for ssl

Closes https://github.com/espressif/esp-idf/issues/4432
2020-05-21 13:08:30 +05:30
Marius Vikhammer
f72d259622 esp_crt_bundle: fixes the "No CA Chain is set" error
When compiling esp_crt_bundle.c, it would end up with a different struct layout due
to configuration options from "mbedtls/esp_config.h" not being considered.

This lead to ca_chain potentially not being set correctly.
2020-05-21 15:19:49 +08:00
lly
514ec37fe4 ble_mesh: Doc miscellaneous fixes
- Fix link error in getting started
- Update ble mesh architecture
2020-05-21 07:14:45 +00:00
Island
fbf2088fc8 Merge branch 'example/ble_mesh_structural_adjust' into 'master'
Example/ble mesh structural adjustment

Closes BLEMESH-200

See merge request espressif/esp-idf!8719
2020-05-21 15:11:23 +08:00
Island
9f801fd2f5 Merge branch 'bugfix/ble_mesh_friend_init_flag' into 'master'
ble_mesh: Add init flag for friend init/deinit

Closes BLEMESH-205

See merge request espressif/esp-idf!8783
2020-05-21 11:46:17 +08:00
chenyudong
8fb982c512 mesh: add mesh PS option following add announce 2020-05-21 03:40:47 +00:00
Anton Maklakov
dadc96c280 Merge branch 'bugfix/add_missing_noqa' into 'master'
ci: add missing noqa:F401

See merge request espressif/esp-idf!8844
2020-05-21 11:27:57 +08:00
morris
d4c88e9e45 ci: add missing noqa:F401 2020-05-21 10:42:59 +08:00
Angus Gratton
0ad6e1b977 Merge branch 'feature/80m_flashspeed_esp32s2' into 'master'
esptool: Set 80MHz SPI flash speed for ESP32-S2 & future chips

See merge request espressif/esp-idf!8739
2020-05-21 10:22:59 +08:00
Anton Maklakov
e1262aa68e Merge branch 'bugfix/gh_action_pass_IDF_PATH_to_pylint' into 'master'
gh_action: fix python lint

Closes IDF-1538 and IDFGH-3341

See merge request espressif/esp-idf!8812
2020-05-21 10:15:35 +08:00
Mahavir Jain
7a2ea9b7f7 esp-tls: add support for using hardware security module 2020-05-20 22:52:37 +05:30
Bryan Hunt
4553f6c95d Add cryptoauthlib as a component with mbedtls integration
* Add options to mbedtls for hardware acceleration
* Disable mbedtls EC curves if hardware acceleration is selected
since the hardware will have to define the curves supported
* Add a hardware ecdsa example
2020-05-20 22:52:37 +05:30
Krzysztof Budzynski
7099c2b444 Merge branch 'doc/generate_idf_project_tags' into 'master'
doc: add generation of tags from sdkconfig and x_caps.h headers

Closes IDF-1484

See merge request espressif/esp-idf!8577
2020-05-20 23:46:47 +08:00
Jiang Jiang Jian
5f08bed88b Merge branch 'feature/optimize_wifi_API_max_tx_power_description' into 'master'
feature: optimize wifi API max tx power description

Closes WIFI-1097

See merge request espressif/esp-idf!8173
2020-05-20 22:43:54 +08:00
lly
b1f3843ed6 ble_mesh: Clear two more vars during proxy server deinit 2020-05-20 11:35:26 +00:00
lly
d5b126667a ble_mesh: Add missing sdkconfig.h 2020-05-20 11:35:26 +00:00
lly
4e60919a66 ble_mesh: Init device name during proxy server init
Device name will be reset when deinit mesh stack. If not
initializing device name during the next mesh stack init,
it will fail to set the device name when using bluedroid.
2020-05-20 11:35:26 +00:00
lly
a0ce8c64b0 ble_mesh: Add init flag for friend init/deinit
Since bt_mesh_friend_init() will only be invoked when
a device is provisioned or Provisioner is enabled, so
we add a flag to indicate if the friend functionality
is initialized in case deinit before initialization.
2020-05-20 11:35:26 +00:00
lly
2b767ef104 ble_mesh: Fix tutorial links in examples README.md 2020-05-20 11:33:46 +00:00
lly
3209336f6b ble_mesh: Rename esp_fast_prov_* to ble_mesh_fast_prov_* 2020-05-20 11:33:46 +00:00
lly
88eb4a0820 ble_mesh: Rename the folders ble_mesh_fast_prov_* to fast_prov_* 2020-05-20 11:33:46 +00:00
lly
861816c353 ble_mesh: Rename ble mesh example main & init files
- Rename ble_mesh_demo_main.c to main.c
- Rename ble_mesh_demo_init.* to ble_mesh_example_init.*
2020-05-20 11:33:46 +00:00
lly
68fd967934 ble_mesh: Move the example init to the common_components 2020-05-20 11:33:46 +00:00
lly
a2a952aa55 ble_mesh: Move the button component to common_components 2020-05-20 11:33:46 +00:00
lly
5598620f6c ble_mesh: Change the EXTRA_COMPONENT_DIRS used by examples 2020-05-20 11:33:46 +00:00
lly
db67e2d35c ble_mesh: Rename common_vendor_models to common_components
Since the scripts of CI will bypass common_components when
trying to get ALL_EXAMPLES, and these BLE Mesh components
will only be used by other mesh examples, i.e. no need to
be compiled as a single example, so we rename the folder
to common_componnets.
2020-05-20 11:33:46 +00:00
Roland Dobai
270d8b468a tools: Don't generate pyc files 2020-05-20 12:07:51 +02:00
Angus Gratton
5bd75b134d esptool: Set 80MHz SPI flash speed for ESP32-S2 & future chips
Most ESP32 devices will also work at 80MHz, but third party boards/modules
may not have been tested at this speed so the default is kept at 40MHz for safety.
2020-05-20 06:19:34 +00:00
Mahavir Jain
e497bf37c4 Merge branch 'bugfix/httpd_lru_purge' into 'master'
esp_http_server: Fixed a bug which could cause issues with LRU purge

Closes IDFGH-2680

See merge request espressif/esp-idf!8818
2020-05-20 14:08:02 +08:00
Angus Gratton
ee8796b169 Merge branch 'bugfix/doc_version_links' into 'master'
doc: Fix broken Release page links when building a stable version

See merge request espressif/esp-idf!8819
2020-05-20 13:16:46 +08:00
Alexander Borsuk
fb0fa34ac8 sdmmc: Correctly check function parameters before using them
Closes https://github.com/espressif/esp-idf/pull/5000
2020-05-20 13:09:05 +08:00
David Čermák
7d7f3f8d8f Merge branch 'bugfix/esp_netif_minor_fixes' into 'master'
esp-netif: Minor fixes

Closes IDFGH-3311

See merge request espressif/esp-idf!8799
2020-05-20 12:47:01 +08:00
ronghulin
cdaeef70c3 feature: optimize wifi API max tx power description 2020-05-20 11:52:42 +08:00
Jiang Jiang Jian
af97a5abc3 Merge branch 'workaround/wps_iot_fixes' into 'master'
wpa_supplicant: WPS Inter operatability Fixes

See merge request espressif/esp-idf!8654
2020-05-20 11:32:34 +08:00
Jiang Jiang Jian
b0cbc4f7bb Merge branch 'bugfix/optimize_4way_handshake' into 'master'
ESP-WIFI; Optimize 4way handshake failure time

See merge request espressif/esp-idf!8020
2020-05-20 11:29:56 +08:00
Jiang Jiang Jian
05f4668ad0 Merge branch 'nimble/update_nimble_submodule' into 'master'
NimBLE: Include upstream fixes and use macros for log level filtering

See merge request espressif/esp-idf!8448
2020-05-20 11:23:46 +08:00
Mahavir Jain
5f5bf9e5ee Merge branch 'bugfix/allow_buffering_on_stdout' into 'master'
protocol_examples_common: keep buffering enabled on stdout

See merge request espressif/esp-idf!8793
2020-05-20 10:51:29 +08:00
Mahavir Jain
ed05dd7713 Merge branch 'bugfix/coap_component_build_issue' into 'master'
coap: move mbedTLS config options from component to examples

See merge request espressif/esp-idf!8707
2020-05-20 10:51:06 +08:00
morris
fef40fdb72 ci: do fetch submodules for python lint 2020-05-20 10:50:10 +08:00
morris
d003f96a9d gh_action: fix python lint 2020-05-20 10:50:10 +08:00
Angus Gratton
fdfb029711 doc: Fix broken Release page links when building a stable version 2020-05-20 10:50:44 +10:00
Ivan Grokhotkov
60437e8ae4 Merge branch 'feature/protocols_example_tests' into 'master'
Add protocol example tests

Closes IDF-1157

See merge request espressif/esp-idf!8645
2020-05-20 02:05:26 +08:00
Piyush Shah
c2ab112590 esp_http_server: Fixed a bug which could cause issues with LRU purge
LRU counter should be started from 1, and not 0, so that all checks
work fine.

Closes https://github.com/espressif/esp-idf/issues/4753
2020-05-19 22:11:02 +05:30
Krzysztof Budzynski
45b59f134b Merge branch 'feature/another_python3_recomedation' into 'master'
Add another case and recomendation to use Python 3 instead of Python 2

Closes DOC-167

See merge request espressif/esp-idf!8733
2020-05-19 23:32:49 +08:00
Mahavir Jain
7dbf01afad coap: move mbedTLS config options from component to examples
CoAP component relies on some mbedTLS crypto configuration
options, e.g. DTLS and PSK. These configuration options if
selected, have footprint impact on generic TLS examples like
https_request or https_ota as well.

Footprint of https_request example with/without change is per below:

$ ./tools/idf_size.py new_https_request.map --diff old_https_request.map

<CURRENT> MAP file: new_https_request.map
<REFERENCE> MAP file: old_https_request.map
Difference is counted as <CURRENT> - <REFERENCE>, i.e. a positive number means that <CURRENT> is larger.
Total sizes of <CURRENT>:                                                 <REFERENCE>     Difference
 DRAM .data size:   14796 bytes                                                 14796
 DRAM .bss  size:   23560 bytes                                                 23680           -120
Used static DRAM:   38356 bytes ( 142380 available, 21.2% used)                 38476           -120 (   +120 available,      +0 total)
Used static IRAM:   89045 bytes (  42027 available, 67.9% used)                 89045                (     +0 available,      +0 total)
      Flash code:  554231 bytes                                                563823          -9592
    Flash rodata:  179000 bytes                                                181224          -2224
Total image size:~ 860632 bytes (.bin may be padded larger)                    872568         -11936

This commit moves relevant config options to CoAP specific examples
and also adds some run time warnings if they are kept disabled.

Closes https://github.com/espressif/esp-idf/issues/5262
2020-05-19 17:23:29 +05:30
kapil.gupta
fb53a454b9 ESP-WIFI: Optimize 4way handshake failure time
In case of wrong passpharse, AP will keep on sending 1/4 multiple
times which may take around 10 secs to disconnect and detect
wrong password event.

Add changes to reject EAPOL1 after 3 consecutive reception
2020-05-19 16:55:42 +05:30
Anton Maklakov
d6a6ac4d2d Merge branch 'bugfix/mdns_example_test_graceful_fail' into 'master'
mdns-example: fail gracefully if mdns response not received within timeout

See merge request espressif/esp-idf!8774
2020-05-19 19:21:53 +08:00
Roland Dobai
5f024e1cd4 Add protocol example tests 2020-05-19 12:17:32 +02:00
Jiang Jiang Jian
56c307b356 Merge branch 'mesh/set_type_new' into 'master'
mesh: support set new type (node and sta)

Closes WIFI-1824, WIFI-1725, WIFI-1823, and WIFI-1908

See merge request espressif/esp-idf!7934
2020-05-19 16:53:49 +08:00
Ivan Grokhotkov
948580d1a2 Merge branch 'gdb/bt_on_invalid_pc' into 'master'
gdb: Modify PC in case of invalid PC

See merge request espressif/esp-idf!8391
2020-05-19 16:44:07 +08:00
David Cermak
95b5ef3687 esp-netif: wifi-deinit to clear handlers only in tcpip-adapter mode 2020-05-19 08:34:36 +00:00
David Cermak
1183b95cc4 esp-netif: Fix compilation if ESP_GRATUITOUS_ARP not enabled
Closes https://github.com/espressif/esp-idf/issues/5294
2020-05-19 08:34:36 +00:00
kapil.gupta
76335b2558 wpa_supplicant: WPS Inter operatability Fixes
Add WPS IOT fixes under config option

Current fixes under this flag.
1. Allow NULL-padded WPS attributes.
2. Bypass WPS-Config method validation
2020-05-19 08:05:52 +00:00
Nachiket Kukade
c643d0a611 wpa_supplicant: Allow NULL-padded WPS attributes
Some AP's keep NULL-padding at the end of some variable length WPS
Attributes. This is not as par the WPS2.0 specs, but to avoid interop
issues, ignore the padding by reducing the attribute length by 1.
2020-05-19 08:05:52 +00:00
Angus Gratton
183dddd50e Merge branch 'bugfix/wdt_reset_info_unicore' into 'master'
bootloader: Don't print an error message after WDT reset in unicore mode

See merge request espressif/esp-idf!8570
2020-05-19 15:54:06 +08:00
Jiang Jiang Jian
ce507da514 Merge branch 'bugfix/mesh_manual_networking_example' into 'master'
example: fix mesh manual networking example

See merge request espressif/esp-idf!6869
2020-05-19 14:05:51 +08:00
Michael (XIAO Xufeng)
fd3e28ef0d Merge branch 'bugfix/esp_flash_write_performance_regression' into 'master'
esp_flash: fix the write performance regression

See merge request espressif/esp-idf!8658
2020-05-19 12:06:42 +08:00
houwenxiang
0bf2906bc9 driver(RMT): Fix the breaking change issue of RMT driver introduced by refactoring.
After RMT driver refactor, two breaking change are introduced:

    1. Users needs to call `rmt_driver_install` before `rmt_config`.

    2. Do not support memory block count > 1,

    fix this two issues

    closes https://github.com/espressif/esp-idf/issues/4664

    closes https://github.com/espressif/esp-idf/issues/4959
2020-05-19 11:39:38 +08:00
Angus Gratton
3e7ba2f389 bootloader: Don't print an error message after WDT reset in unicore mode
Caused some confusion here: https://github.com/espressif/esp-idf/issues/4388
2020-05-19 03:35:53 +00:00
Angus Gratton
4fa8f7d01b Merge branch 'bugfix/parttool_get_info_wo_info_option' into 'master'
partition_table: Fix parttool.py crashes when retrieving partition info

Closes IDFGH-3279

See merge request espressif/esp-idf!8715
2020-05-19 11:30:20 +08:00
Angus Gratton
88d76d805a Merge branch 'bugfix/idf_build_process_default' into 'master'
cmake: fix issue with setting defaults in idf_build_process

Closes IDFGH-3027

See merge request espressif/esp-idf!8537
2020-05-19 11:29:29 +08:00
chenyudong
040f4be2a7 mesh: support set new type
If the root is specified (FIXED-ROOT) by set type or set parent, change ie.mesh_type to MESH_ROOT before connect to router
Release emesh_recv_toDS when the root becomes non-root
esp_mesh_set_type now supports MESH_IDLE and MESH_STA
2020-05-19 11:17:56 +08:00
Krzysztof Budzynski
e84328382f Merge branch 'doc/esp32_eco3_psram_note' into 'master'
docs: mention ESP32 ECO3 in relation to PSRAM cache workarounds

See merge request espressif/esp-idf!8796
2020-05-19 05:54:20 +08:00
Krzysztof Budzynski
c18d092efd Merge branch 'doc/hw-reference/esp32-s2/kaluga-kit-redirect' into 'master'
Add redirect link from user-guide-kaluga-1-v1.2 to user-guide-esp32-s2-kaluga-1-kit

See merge request espressif/esp-idf!8786
2020-05-18 23:54:39 +08:00
Jiang Jiang Jian
37f4e3855f Merge branch 'bugfix/fix_sta_connect_compatibility' into 'master'
esp_wifi: Fix the timeout issue of EAPOL four-way handshake

Closes WIFI-2110 and WIFI-1809

See merge request espressif/esp-idf!8382
2020-05-18 22:26:52 +08:00
Mahavir Jain
c7be363af9 Merge branch 'bugfix/http_client_example' into 'master'
Add note regarding use of URL and configuration parameters in http client

Closes IDFGH-3161

See merge request espressif/esp-idf!8791
2020-05-18 20:59:03 +08:00
houwenxiang
b35d9002f3 driver(I2S): Fix i2s_comm_format_t configuration parameter does not match the TRM bug.
When I2S `i2s_comm_format_t` is set to `I2S_COMM_FORMAT_I2S_MSB`, the data should launch at first BCK. But not in fact, this MR fixed this issue.

For compatibility, several nwe parameters have been added, and the old parameters will be removed in the future.

    closes https://github.com/espressif/esp-idf/issues/5065

    closes https://github.com/espressif/esp-idf/issues/4957

    closes https://github.com/espressif/esp-idf/issues/2978

    closes https://github.com/espressif/esp-idf/issues/5136

    Merges https://github.com/espressif/esp-idf/pull/4522
2020-05-18 19:55:30 +08:00
Ivan Grokhotkov
e4e51fd97a docs: mention ESP32 ECO3 in relation to PSRAM cache workarounds 2020-05-18 13:45:17 +02:00
David Čermák
a3520970f6 Merge branch 'example/multi_interface' into 'master'
feat(example): Add tcp client example for multiple interface.

See merge request espressif/esp-idf!6918
2020-05-18 19:40:40 +08:00
Mahavir Jain
7925ba245d protocol_examples_common: keep buffering enabled on stdout
- Newlib uses significantly more stack space when printing to an unbuffered stream
- For examples tests, disabling buffering on stdout is not really required

This issue was found during one of the OTA example test failure, root cause
being stack overflow in `esp_event` task.
2020-05-18 16:59:20 +05:30
Shubham Kulkarni
7a561cb1fa esp_http_client_example.c: Add note regarding use of URL and configuration parameters.
Demonstrate use of query parameter.

Closes: https://github.com/espressif/esp-idf/issues/5174
2020-05-18 16:31:59 +05:30
Kirill Chalov
c65c1716cd Add redirect link from user-guide-kaluga-1-v1.2 to user-guide-esp32-s2-kaluga-1-kit
QR codes have already been issued for user-guide-kaluga-1-v1.2 and the links there are not working now. Add a redirect.
2020-05-18 17:28:03 +08:00
Darian Leung
11d96b39d0 esp_ipc: Move to new component
This commit moves esp_ipc into a separate component.
2020-05-18 16:51:45 +08:00
David Cermak
761c3a3942 examples: make sure WiFi interface is disabled when connecting with Ethernet 2020-05-18 09:29:55 +02:00
David Cermak
8a45f074fc esp-netif: Added API to get the underlying interface name
The interface name can be used in socket API, i.e. setsockopt(). The API esp_netif_get_netif_impl_name() shoudl be used to populate standard
interface structure struct ifreq.
2020-05-18 09:26:24 +02:00
David Cermak
06711c7c36 examples: common connect component to use both interfaces at once 2020-05-18 09:26:24 +02:00
Liu Han
547210f7a5 socket-example: Add tcp client example for multiple interfaces 2020-05-18 09:26:24 +02:00
Ivan Grokhotkov
514596cb81 Merge branch 'feature/idf_py_replace_run_with_call' into 'master'
tools: idf.py: replace the "run" method of Task with the magic "__call__" method

See merge request espressif/esp-idf!8763
2020-05-18 15:22:04 +08:00
Ivan Grokhotkov
3a6b8bb6e3 Merge branch 'bugfix/idf_py_double_loading_of_idf_ext' into 'master'
tools: idf.py: Don't load idf_ext.py in project folder twice

See merge request espressif/esp-idf!8764
2020-05-18 15:21:53 +08:00
Angus Gratton
0e4cd93ee9 Merge branch 'bugfix/kconfig_hex_values' into 'master'
kconfig: Fix two cases of hex values being handled incorrectly

Closes VSC-292

See merge request espressif/esp-idf!8372
2020-05-18 14:57:46 +08:00
xiehang
158602c942 esp_wifi: Fix the timeout issue of EAPOL four-way handshake 2020-05-18 14:53:31 +08:00
weitianhua
8fc05d0665 Fix ASSERT for RXDESC and save the log for debug 2020-05-18 06:51:51 +00:00
weitianhua
8d1032ccac Fix ASSERT in ld_acl at line 302 forclkoff1 and localval 2020-05-18 06:51:51 +00:00
weitianhua
77cc105c72 Fix ld_acl schedule bug to parity shift 2020-05-18 06:51:51 +00:00
weitianhua
55877684a0 Fix ASSERT(64,0) in rwble.c 2020-05-18 06:51:51 +00:00
weitianhua
0811851378 Fix ASSERT in ld_pscan.c at line 1032 2020-05-18 06:51:51 +00:00
weitianhua
b20f254483 Free lmp tx buf in EM in the procedure of handling LMP_detach_Req when not received the last acknowledge from peer device and seperate them by ACL State 2020-05-18 06:51:51 +00:00
weitianhua
190ff3ae37 Fix that when slave initiate unsniff procedure and meet transaction collision, no mode change event is repoerted 2020-05-18 06:51:51 +00:00
weitianhua
70fa5b4ac5 Fix int_wdt due to disable interrupt too long time 2020-05-18 06:51:51 +00:00
weitianhua
c18ed5cbee Fix Connection fail in loop 2020-05-18 06:51:51 +00:00
weitianhua
7aeb3d329a Set AFH in BTDM Task when WiFi changes channel 2020-05-18 06:51:51 +00:00
weitianhua
e0e1154b62 Fix ASSERT(25,0) in lc_task.c 2020-05-18 06:51:51 +00:00
weitianhua
899e49b90e Disable frequent warning log in ld_acl 2020-05-18 06:51:51 +00:00
weitianhua
b45f2d3913 Move default log level to WARNING instead ERROR in BT Controller 2020-05-18 06:51:51 +00:00
David Cermak
3758177bf8 mdns-example: fail gracefully if mdns response not received within timeout
If mdns answer hasn't been received within timeout, Value error would be raised, but the mdns-server-thread would still run, blocking CI jobs. Fixed by moving the raise statement within try-finally block
2020-05-18 08:13:14 +02:00
Mahavir Jain
be3b6b7cb8 Merge branch 'feature/mbedtls_dynamic_memory' into 'master'
feat(mbedtls): add dynamic buffer and local resource managment to decrease SSL heap cost

See merge request espressif/esp-idf!8313
2020-05-18 13:55:05 +08:00
Krzysztof Budzynski
58a9db8492 Merge branch 'feature/smartconfig_links' into 'master'
Provide a brief description of SmartConfig and add link to example

See merge request espressif/esp-idf!8636
2020-05-18 01:02:05 +08:00
Krzysztof Budzynski
e58c0ac3e7 Provide a brief description of SmartConfig and add link to example 2020-05-18 01:02:04 +08:00
Michael (XIAO Xufeng)
3f778a92da spi_flash: add unit test for read/write performance 2020-05-17 22:06:03 +08:00
Michael (XIAO Xufeng)
651eb1a694 esp_flash: fix the write performance regression
Also changed internal delay unit into microsecond.
2020-05-17 22:06:02 +08:00
Michael (XIAO Xufeng)
f67044c822 spi: simplify the caps header
The mapping logic from register address to instance number is moved into the LL
2020-05-17 22:06:01 +08:00
Michael (XIAO Xufeng)
dae3196157 esp_flash: fix issue that cannot add flash on SPI1 CS1 when SPI_FLASH_SHARE_SPI1_BUS is disabled 2020-05-17 22:06:00 +08:00
Jiang Jiang Jian
bb2379b7ab Merge branch 'bugfix/wpa3_mixed_mode_authype' into 'master'
esp_wifi: Add and utilize WPA3/WPA2 Mixed mode Authtype

See merge request espressif/esp-idf!8778
2020-05-17 17:04:18 +08:00
Jiang Jiang Jian
bef57a8ddc Merge branch 'bugfix/V3.1.7_ble_bug_mr' into 'master'
component/bt: fix notify malloc failed , fix no BLE_AUTH_CMPL_EVT and fix bluedroid btc deinit crash

See merge request espressif/esp-idf!8729
2020-05-16 19:52:34 +08:00
Brian Pugh
8ed7fe3e3d tools/idf.py: replace the "run" method of Task with the magic "__call__" method
Merges https://github.com/espressif/esp-idf/pull/5279
2020-05-15 19:44:07 +02:00
Brian Pugh
fa3d9573ce tools/idf.py: prevent reloading duplicate extension paths. Do not load cwd if IDF_EXTRA_ACTIONS_PATH is not set.
Merges https://github.com/espressif/esp-idf/pull/5278
2020-05-15 19:39:36 +02:00
Anton Maklakov
f9a5794cba Merge branch 'bugfix/socket_example_ipv6_randomfail' into 'master'
socket examples: fix random ci failure on reading ipv6 address

See merge request espressif/esp-idf!8686
2020-05-15 23:36:48 +08:00
Krzysztof Budzynski
817a41ce9e Merge branch 'bugfix/doc_dfu_update' into 'master'
Update DFU flashing documentation with fixes and known issues

Closes IDF-1686

See merge request espressif/esp-idf!8728
2020-05-15 23:10:11 +08:00
Island
52e9bcb696 Merge branch 'bugfix/ble_mesh_remove_patch' into 'master'
ble_mesh: Remove patch for the bug of an App

Closes BLEMESH-202

See merge request espressif/esp-idf!8737
2020-05-15 20:17:22 +08:00
Nachiket Kukade
d7edd28338 esp_wifi: Update WiFi lib
Add and utilize WPA3/WPA2 Mixed mode Authtype.
2020-05-15 17:24:51 +05:30
chenyudong
ca7f2099db example: fix mesh manual networking example
Solves https://www.esp32.com/viewtopic.php?f=21&t=8610
2020-05-15 18:39:16 +08:00
Mahavir Jain
5b5a8c276d Merge branch 'feature/mbedtls_add_config_options' into 'master'
Add config options in mbedtls

See merge request espressif/esp-idf!8760
2020-05-15 15:53:21 +08:00
zhiweijian
ec6c7558ef add congest direct callback and fix malloc failed when multi_connection notify performance test 2020-05-15 15:35:39 +08:00
Angus Gratton
62754ff90a Merge branch 'docs/fix_static_sem_api_desc' into 'master'
Fix usage example in xSemaphoreCreateBinaryStatic

Closes IDFGH-3280

See merge request espressif/esp-idf!8750
2020-05-15 15:04:36 +08:00
Shubham Kulkarni
ca3daa50de mbedtls: Add configuration options 2020-05-15 11:27:44 +05:30
David Cermak
5f4e2cf391 socket examples: fix random ci failure on reading ipv6 address
dut.expect() returns groups of a matching regex, but could be truncated upon reading/buffering. fixed by forcing expect to acquire exactly 8 octets of IPv6 address, i.e. not supporting short-handed entries such as fe80::0000..
2020-05-15 04:02:33 +00:00
Jiang Jiang Jian
26ab1c54ec Merge branch 'bugfix/esp32s2_wifi_skip_light_sleep' into 'master'
esp_wifi: When WiFi TSF is active, skip light sleep

Closes WIFI-2305 and WIFI-2306

See merge request espressif/esp-idf!8639
2020-05-15 11:41:45 +08:00
David Čermák
5e436be77f Merge branch 'bugfix/stop_mac_can_be_controlled_by_user' into 'master'
ethernet: esp_eth_stop API should stop emac hardware

Closes WIFI-2247 and WIFI-2337

See merge request espressif/esp-idf!8664
2020-05-15 04:40:55 +08:00
Renz Christian Bagaporo
13cd832b0c ci: pushd and cd in one go in idf_build_process defaults test 2020-05-14 14:59:26 +00:00
Renz Bagaporo
740819529b cmake: fix setting defaults in idf_build_process
Closes https://github.com/espressif/esp-idf/issues/5053
2020-05-14 14:59:26 +00:00
Renz Bagaporo
0f6308d69c ci: test idf_build_process defaults set properly 2020-05-14 14:59:26 +00:00
Mahavir Jain
0d208aabab mbedtls: esp32s2: check and reallocate output buffer if its from non-DMA range
Earlier check was for only input buffer but it is quite likely to have
output buffer also from non-DMA memory range and hence requirement to
reallocate and then copy data from AES engine.
2020-05-14 13:12:26 +00:00
Mahavir Jain
18c1838587 esp32s2: add config option to place RTC data in fast RAM 2020-05-14 13:12:26 +00:00
Mahavir Jain
1aac284dda heap: add rtc fast memory region to dynamic pool
- for ESP32 only enabled in case of unicore config
- capability wise this region (8K) is same as DRAM, except non-DMA capable
- also fixed small issue in reserved memory region processing when (start == end)
2020-05-14 13:12:26 +00:00
Krzysztof Budzynski
4091d44cda Merge branch 'bugfix/add_missing_link_to_ulp_header_file' into 'master'
Add missing link to ulp header files and link to example following https://esp32.com/viewtopic.php?f=2&t=15562

Closes DOC-162

See merge request espressif/esp-idf!8734
2020-05-14 20:51:24 +08:00
Dong Heng
3d57bf30a2 feat(mbedtls): add dynamic buffer and local resource managment to decrease SSL heap cost 2020-05-14 11:45:09 +00:00
Dmytro
ecbfe0f406 Fix usage example in xSemaphoreCreateBinaryStatic 2020-05-14 18:57:48 +08:00
Krzysztof
9b5acea160 Add missing link to ulp header files and link to example following https://esp32.com/viewtopic.php?f=2&t=15562 2020-05-14 17:31:05 +08:00
Michael (XIAO Xufeng)
437a8fa9d2 Merge branch 'test/sdio_ut_performance_time' into 'master'
sdio: fix random unit test performance failure

See merge request espressif/esp-idf!8665
2020-05-14 16:19:45 +08:00
Krzysztof Budzynski
ad9e514ff4 Merge branch 'doc/documenting_code_format_fix' into 'master'
docs: change descriptions of substitution defines to use literal blocks

See merge request espressif/esp-idf!8699
2020-05-14 15:03:41 +08:00
Jiang Jiang Jian
a0288c1e8d Merge branch 'bugfix/wpa3_pmf_memleak_fix' into 'master'
WPA3 / PMF memory leak fixes

Closes WIFI-2324 and WIFI-2326

See merge request espressif/esp-idf!8676
2020-05-14 14:21:21 +08:00
Angus Gratton
8928cbb593 Merge branch 'bugfix/add_requirements_for_espefuse' into 'master'
esp-idf: Update esptool and add reedsolo and bitstring into requirements.txt

See merge request espressif/esp-idf!8641
2020-05-14 12:37:22 +08:00
Michael (XIAO Xufeng)
94ce4836ae Merge branch 'bugfix/fix_gpio_wakeup_light_sleep' into 'master'
driver(gpio): fix gpio can't wakeup light sleep

Closes IDF-1361

See merge request espressif/esp-idf!8522
2020-05-14 11:45:40 +08:00
KonstantinKondrashov
86a73de9b3 esp-idf: Update esptool and add reedsolo and bitstring into requirements.txt
They are necessary for espefuse.py from esptool v3.0.
2020-05-14 13:29:21 +10:00
lly
25a6ea9600 ble_mesh: Remove patch for the bug of an App 2020-05-14 10:24:15 +08:00
Angus Gratton
6ccd7dbc59 Merge branch 'nimble/config_option_sdkconfig_rename' into 'master'
Add NimBLE config options in sdkconfig.rename

Closes IDF-1650

See merge request espressif/esp-idf!8653
2020-05-14 09:30:16 +08:00
Angus Gratton
78cf414b04 Merge branch 'bugfix/ci_himem_psram' into 'master'
CI: Require runner with PSRAM for himem example test

See merge request espressif/esp-idf!8717
2020-05-14 07:53:18 +08:00
Krzysztof
789c42abcd Add another case and recomendation to use Python 3 instead of Python 2 2020-05-13 21:57:51 +02:00
Roland Dobai
29c95d3919 CI: Require runner with PSRAM for himem example test 2020-05-13 18:19:44 +00:00
Nachiket Kukade
b302b4bb43 wpa_supplicant: Fix memory leaks in WPA3 connection
1. Buffers for SAE messages are not freed after the handshake.
   This causes memory leak, free buffers after SAE handshake.
2. SAE global data is not freed until the next WPA3 connection
   takes place, holding up heap space without reason. Free this
   data after SAE handshake is complete or event fails.
3. Update wifi lib which includes memory leak fix during BIP
   encryption/decryption operations.
2020-05-13 22:54:03 +05:30
Nachiket Kukade
f36455052d wpa_supplicant: Fix formatting of file esp_wpa3.c
Replace tabs with spaces in esp_wpa3.c.
2020-05-13 22:54:03 +05:30
Jiang Jiang Jian
1d5ef75c7d Merge branch 'bugfix/espnow_fetch_peer_crash' into 'master'
wifi: fix the crash issue when fetch peer after delete cur_peer

Closes WIFI-2307

See merge request espressif/esp-idf!8626
2020-05-13 23:21:21 +08:00
Roland Dobai
6aaff0887b Update DFU flashing with fixes and known issues 2020-05-13 15:40:55 +02:00
wangcheng
418b32e71b master missing BLE_AUTH_CMPL_EVT after restart 2020-05-13 20:33:24 +08:00
wangcheng
a5ac789725 fix bta_dm_deinit_cb crash 2020-05-13 20:18:27 +08:00
Xia Xiaotian
526a3e49ed esp_wifi: When WiFi TSF is active, skip light sleep
* Add an API for peripherals to set callbacks to skip light sleep

* Make WiFi power save example work
2020-05-13 19:31:36 +08:00
Krzysztof Budzynski
ce18c20571 Merge branch 'doc/hw-reference/esp32-s2/kaluga-kit' into 'master'
Add user guides for ESP32-S2-Kaluga-1-Kit

See merge request espressif/esp-idf!8668
2020-05-13 18:34:38 +08:00
Wang Jia Lin
cf32e4fc22 Merge branch 'bugfix/fix_adc_io_init_bug' into 'master'
driver(adc): fix adc io init bug

Closes IDF-1541

See merge request espressif/esp-idf!8301
2020-05-13 16:35:58 +08:00
Angus Gratton
48399d3ce0 Merge branch 'bugfix/idf_py_actions_fix_spelling' into 'master'
tool: Fix spelling in core_ext.py

Closes IDFGH-3126

See merge request espressif/esp-idf!8718
2020-05-13 16:17:40 +08:00
KonstantinKondrashov
e3ea943088 partition_table: Fix parttool.py crashes when retrieving partition info
Closes: IDFGH-3279
Closes: https://github.com/espressif/esp-idf/issues/5271
2020-05-13 16:10:48 +08:00
morris
d8a9ce14d7 ethernet: fix potential task watch dog timeout 2020-05-13 16:03:00 +08:00
morris
4454b198bb ethernet: better control start/stop/uninstall/install 2020-05-13 15:58:42 +08:00
morris
6020d6a5d4 ethernet: esp_eth_stop API should stop emac hardware 2020-05-13 15:58:42 +08:00
Ivan Grokhotkov
27584b69a5 Merge branch 'feature/test_panic' into 'master'
ci: panic handling test app

See merge request espressif/esp-idf!8593
2020-05-13 15:24:59 +08:00
Kirill Chalov
2e5f983b5a Add user guides for ESP32-S2-Kaluga-1-Kit 2020-05-13 07:12:42 +00:00
Marius Vikhammer
fbb54184ef doc: add generation of tags from sdkconfig and x_caps.h headers
Also updates the way we handle exclude_patterns to use the new tags

Closes IDF-1484
2020-05-13 07:09:01 +00:00
Scott Shawcroft
8c4dc88d27 tool: Fix spelling in core_ext.py
Closes: https://github.com/espressif/esp-idf/pull/5145
2020-05-13 14:50:43 +08:00
David Cermak
f13f8927b1 esp-timer: fix (ignore) false positive memory alloc/free issue found by static analyser 2020-05-13 07:30:26 +02:00
David Cermak
6a47dc9275 esp-netif: fix memory allocation issues found by static analyser 2020-05-13 07:16:45 +02:00
David Cermak
49e8c09ec2 local-ctrl: fix memory allocation issues found by static analyser 2020-05-13 07:16:45 +02:00
David Cermak
917192725a http-client: fix memory allocation issues found by static analyser 2020-05-13 07:16:45 +02:00
Ivan Grokhotkov
418b68a197 test_apps: add panic test 2020-05-12 22:27:06 +02:00
Ivan Grokhotkov
a63f65dd6f ci: don't run build system tests on unit_test or custom_test labels 2020-05-12 22:27:06 +02:00
Ivan Grokhotkov
3fe4adc98d ttfw: allow relative imports in test scripts 2020-05-12 22:27:06 +02:00
Ivan Grokhotkov
7d74cc4255 ttfw_idf: IDFApp: convert partition offset to int 2020-05-12 22:27:06 +02:00
Ivan Grokhotkov
952830ab12 ttfw_idf: IDFApp: add method to get SHA256(elf file) 2020-05-12 22:27:06 +02:00
Ivan Grokhotkov
26f6136a7d ttfw: only send relevant DUT kwargs to serial.serial_for_url 2020-05-12 22:27:06 +02:00
Ivan Grokhotkov
695f075a13 Merge branch 'bugfix/core_dump_data_struct_ovf' into 'master'
Fixes core dump data overwriting

See merge request espressif/esp-idf!8611
2020-05-13 04:03:29 +08:00
zhangyanjiao
4dc7a36eca wifi: fix the crash issue when fetch peer after delete cur_peer 2020-05-12 21:05:50 +08:00
Island
c946ca8b45 Merge branch 'bugfix/ble_mesh_node_old_version_to_new' into 'master'
ble_mesh: Fix mesh node device role restore

Closes BLEMESH-188

See merge request espressif/esp-idf!8314
2020-05-12 20:36:55 +08:00
Island
1d22f17da3 Merge branch 'bugfix/ble_mesh_not_ignore_msg_in_fast_prov' into 'master'
ble_mesh: Not ignore msg when fast prov is enabled

Closes BLEMESH-196

See merge request espressif/esp-idf!8698
2020-05-12 20:36:41 +08:00
Island
b0a096495a Merge branch 'bugfix/ble_mesh_fix_typos' into 'master'
ble_mesh: Fix typos

Closes BLEMESH-199

See merge request espressif/esp-idf!8703
2020-05-12 20:36:30 +08:00
Jiang Jiang Jian
84a410dc4c Merge branch 'bugfix/fix_switch_channel_without_discon_issue' into 'master'
esp_wifi: Fix AP switch to adjacent channel without disconnect

Closes WIFI-2192 and WIFI-2277

See merge request espressif/esp-idf!8657
2020-05-12 20:21:12 +08:00
lly
f7ef701856 ble_mesh: Fix mesh node device role restore
Old version of BLE Mesh has no device role storage, because
previously we only support storing mesh node info.
If the binary of the node is upgraded from old version to a
new version (support storing provisioner info), the mesh info
of the node will not be restored because mesh role does not
exist in the flash.
2020-05-12 19:25:57 +08:00
Krzysztof Budzynski
08bd8bff7e Merge branch 'docs/mass_mfg_update' into 'master'
Fix a typo according to DOC-158

See merge request espressif/esp-idf!8704
2020-05-12 18:36:35 +08:00
lly
6b9c0dda08 ble_mesh: Fix typos 2020-05-12 16:23:13 +08:00
Wang Ning
5a28cc6ae3 Fix a typo according to DOC-158 2020-05-12 15:56:14 +08:00
fuzhibo
d91e64cea4 driver(gpio): fix gpio can't wakeup light sleep 2020-05-12 07:15:13 +00:00
fuzhibo
8256b5f32b driver(adc): fix adc io init bug; add unit test to check; 2020-05-12 06:52:26 +00:00
Mahavir Jain
bd920d22b0 Merge branch 'bugfix/softap_prov_session' into 'master'
protocomm_httpd: Restart security session if request is received on a new session

See merge request espressif/esp-idf!8633
2020-05-12 13:16:20 +08:00
Michael (XIAO Xufeng)
f10a721d88 sdio: fix the unit of performance test 2020-05-12 12:25:46 +08:00
Michael (XIAO Xufeng)
69d9e0eadc sdio: fix random unit test performance failure
The tests used to measure the throughput by FreeRTOS
`xTaskGetTickCount()`. The rounding error can be quite big, compared to
total measurement time (1350 ms for 4-bit mode).

This commit use `esp_timer_get_time()` instead to measure typical time,
which is in microseconds. Moreover, to get rid of the time error from
cache miss, `ccomp_timer_*` are used to get the cache compensated time
to measure the throughput used for unit test performance assertion.
2020-05-12 12:25:45 +08:00
Marius Vikhammer
6d56ac8b84 docs: change descriptions of substitution defines to use literal blocks
Copy-pasting the "local substitution" example would result in an error,
due to the ASCII quotation marks being replaced by unicode double quotation marks
when outputting the HTML.
2020-05-12 11:32:34 +08:00
lly
d937b415e3 ble_mesh: Not ignore msg when fast prov is enabled
When fast provisioning is enabled, Provisioner shall not
ignore messages from the nodes whose addresses are not in
the provisioning database. Because other nodes which are
not provisioned by the Primary Provisioner will send node
address messages to the Primary Provisioner.
2020-05-12 11:22:07 +08:00
Jiang Jiang Jian
5f2be35525 Merge branch 'bugfix/supplicant_general_fixes' into 'master'
wpa_supplicant: Fix some memleaks and invalid memory access

Closes IDF-1335

See merge request espressif/esp-idf!8201
2020-05-12 11:03:14 +08:00
Piyush Shah
05852bc4aa protocomm_httpd: Restart security session if request is received on a new session
This commit fixes a bug as well as changes a behaviour.

Bugfix: During softap/httpd based provisioning, if a session was closed
midway and a new one started, it would never proceed if the http server
assigns same socket number to the new session (which happens almost always).
Now, if a session is closed, using the http callbacks, the older session
data is cleared so that a new one can be created.

Behavioural change: If a client (mobile app particularly) does not use
persistent http session i.e. all provisioning communication on the same
socket, the provisioning may fail. Earlier, since the session context was
not getting cleared, even if the client closed a session and continued
on a new one, it would go through if the socket number assigned was same
(which happens almost always).

Ideally, from a security perspective, all communication related
to secure provisioning must happen on the same socket, and so, this
change is required.
2020-05-11 13:01:13 +00:00
Ivan Grokhotkov
0c0bfe73ec Merge branch 'feature/add_build_sh_to_build_system_test' into 'master'
Add idf_as_lib/build.sh to build_system_test

Closes IDF-1170

See merge request espressif/esp-idf!8540
2020-05-11 19:51:51 +08:00
Krzysztof Budzynski
1ad1791df7 Merge branch 'docs/eclipse_update' into 'master'
Update Build and Flash with Eclipse IDE to make terminology consistent

Closes DOC-112

See merge request espressif/esp-idf!8669
2020-05-11 16:51:31 +08:00
Wang Ning
8b8d03f7bd Update Build and Flash with Eclipse IDE to make terminology consistent 2020-05-11 16:51:30 +08:00
Mahavir Jain
012b111d6d Merge branch 'feature/mbedtls_hkdf' into 'master'
mbedtls_hkdf: Add a config option to enable HKDF

See merge request espressif/esp-idf!8680
2020-05-11 15:29:54 +08:00
Piyush Shah
43b3def711 mbedtls_hkdf: Add a config option to enable HKDF 2020-05-11 11:49:14 +05:30
Island
c0c0223747 Merge branch 'bugfix/sync_zephyr_bt_mesh_bugfix' into 'master'
bugfix/sync_zephyr_bt_mesh_bugfix

Closes BLEMESH-178

See merge request espressif/esp-idf!8104
2020-05-11 14:06:12 +08:00
Prasad Alatkar
2ef489005b NimBLE: Include upstream fixes and use macros for log level filtering
Change list:
- Reduces the size of the compiled binary, PR: https://github.com/espressif/esp-nimble/pull/6
- Null pointer check, PR: https://github.com/apache/mynewt-nimble/pull/701
- Pairing procedure abort on unexpected req: https://github.com/apache/mynewt-nimble/pull/710
- Fix conn flags after pairing: https://github.com/apache/mynewt-nimble/pull/730
- Remove notification for update process timeout (Vol 6, Part B, section 5.2 ):
  https://github.com/apache/mynewt-nimble/pull/782
- CCCD fix : https://github.com/apache/mynewt-nimble/pull/790 and
  https://github.com/apache/mynewt-nimble/pull/804
- Host based Privacy (RPA) fix: https://github.com/espressif/esp-nimble/pull/7

 Closes https://github.com/espressif/esp-nimble/issues/10

 Closes https://github.com/espressif/esp-idf/issues/4413
2020-05-11 05:36:50 +00:00
Marius Vikhammer
27fa1dc0dd doc: add peripheral_types.h as API reference for peripheral docs
Closes DOC-136
Closes IDF-1673
2020-05-11 11:20:39 +08:00
lly
c2fd80b8f4 ble_mesh: Fix not update prov addr in fast prov
When using fast provisioning, the Provisioner functionality
will be enabled. Unicast addresses within the pre-allocated
range will be used for provisioning nodes. And during the
address assignment, the allocated unicast address will be
checked that if it's duplicated with other nodes addresses
and the Provisioner's own addresses.
So before starting using fast provisioning, we need to update
the Provisioner address.
2020-05-11 02:29:18 +00:00
lly
97f11600e3 ble_mesh: net_key_status only pull one key idx [Zephyr]
Fixes bug where the config client's net_key_status handler would attempt
to pull two key indexes from a message which only holds one.
2020-05-11 02:29:18 +00:00
lly
9d7adc3e1b ble_mesh: Update client message timeout calculation
Since the behavior of sending segmented messages has been
changed properly, the calculation of timeout value which
will be used when sending an acknowledged message by a
client model also needs to be updated.
2020-05-11 02:29:18 +00:00
lly
5e59233cc0 ble_mesh: Add lock for segmented msg operations
Add mutex to protect some variables of the mesh segmented
messages.
Currently the timeout handler of mesh will be executed in
the btc task, while the received mesh messages will be
handled in the btu task. In case some variables are set to
NULL when handled in the btu task, meanwhile these variables
are also accessed in the timeout handler, so we add mutex to
protect these variables and related operations.
2020-05-11 02:29:18 +00:00
lly
9e5fec73f8 ble_mesh: Fix dereferencing pointer before checking for NULL [Zephyr]
The publication context is checked for NULL in bt_mesh_model_publish()
however it was dereferenced before that. Move the assignment to
ctx.send_rel to the same place where other ctx members are set.
2020-05-11 02:29:18 +00:00
lly
d7a671ab7a ble_mesh: Optimize some mesh log output 2020-05-11 02:29:18 +00:00
lly
52493a1644 ble_mesh: Fix restore when revoke keys [Zephyr]
Store keys (NetKey and AppKey) again after revoking.
2020-05-11 02:29:18 +00:00
lly
8ea6714a96 ble_mesh: Spit mesh_util.h into different header files
Split mesh_util.h into mesh_byteorder.h, mesh_compiler.h,
mesh_ffs.h and mesh_util.h based on the classification of
Zephyr, which will make further porting more clear.
2020-05-11 02:29:18 +00:00
lly
52a30c8f4a ble_mesh: Split mesh os related into a separate file 2020-05-11 02:29:18 +00:00
lly
01a8a6c150 ble_mesh: Split mesh mutex into a separate file 2020-05-11 02:29:18 +00:00
lly
c493be489f ble_mesh: Rename mesh_kernel.* to mesh_timer.* 2020-05-11 02:29:18 +00:00
lly
25dfee4bdd ble_mesh: Add and use transport macro definitions [Zephyr] 2020-05-11 02:29:18 +00:00
lly
df525bf0b3 ble_mesh: Friend SeqAuth cleanup [Zephyr]
The Friend queue uses the message SeqAuth to determine whether the
message is already in the queue. To facilitate this, the SeqAuth is
passed around as a pointer throughout the transport modules. In the
bt_mesh_ctl_send functions, this parameter is also exposed in the API,
but the internal usage is inconsistent and buggy. Also, no one actually
uses this parameter.

- Removes seq_auth param from bt_mesh_ctl_send, instead passing NULL
  directly to the friend module, to enforce its addition to the queue.
- Makes the seq_auth pointer const throughout the friend module.
2020-05-11 02:29:18 +00:00
lly
cd58874a9b ble_mesh: Rework msg_cache [Zephyr]
Changes the behavior of the message cache to optimize for cache
capacity. Previously, the message cache's primary function was to avoid
decrypting messages multiple times, although the cache's main function
in the spec is to avoid message rebroadcasting. Optimizing for minimal
decryption causes us to fill the network cache faster, which in turn
causes more cache misses, potentially outweighing the advantage.

Now stores src + seq in message cache instead of field hash value. This
cuts cache size in two, while including more of the sequence number than
before.

Adds messages to the cache only after the packet is successfully
decrypted. This reduces noise in the cache, and ensures that no
invalid deobfuscations are added.

Additionally, this fixes a bug where multiple calls to net_decrypt with
the same packet failed, as the message cache found its own entry from
the previous call.
2020-05-11 02:29:18 +00:00
lly
ef8206cdc6 ble_mesh: Segmented TX to groups [Zephyr]
Implements several changes to the transport layer segmented tx to
improve group message performance:
- Moves retransmit counter to tx context instead of per packet. As every
  unacked packet is sent every retransmit, the retransmit counters would
  be the same in each segment. This makes it easier to control progress.
- Delays the scheduling of the retransmit until the completion of the
  last segment by adding a seg_pending counter. This is essentially the
  same as the old behavior, except that the old behavior might retrigger
  the sending before all segments are finished if the advertising is
  slow.
- Allows the group transmits to stop as soon as all retransmits have
  been exhausted, instead of timing out waiting for acks that won't
  come. This allows group tx to finish without error.
- Fixes a bug where a failed TX would block IV update.
- Cancels any pending transmissions of acked segments.
- Reduces log level for several common group tx scenarios that aren't
  erronous.
2020-05-11 02:29:18 +00:00
lly
fd9a16805a ble_mesh: Add comment explaining use of byte order [Zephyr]
Add comment that explains why a different byte order is used for the
3-byte opcode on the CID part of the opcode.
2020-05-11 02:29:18 +00:00
lly
4d1d5261cc ble_mesh: Use 24-bit functions [Zephyr]
Use 24-bit functions for byteorder and net_buf in order to make the
byteorder used more readable.
2020-05-11 02:29:18 +00:00
lly
da99734ba8 ble_mesh: Optimize net_buf_simple routines [Zephyr]
Use sys_put_xyz() helpers instead of memcpy() whenever possible. This
brings in straight-line inline code for pushes and adds of known,
small sizes.
2020-05-11 02:29:18 +00:00
lly
4fd1b2db0e ble_mesh: Add PRIu64 & PRIx64 in mesh_types.h 2020-05-11 02:29:18 +00:00
lly
fb84166cbd ble_mesh: Add push functions for supported bit-variants [Zephyr]
Add push functions for bit-widths supported by add and pull functions.
2020-05-11 02:29:18 +00:00
lly
ee1eb994b7 ble_mesh: Add support for 64 bit data type [Zephyr]
This enables pulling and pushing values in 64 bit format.
2020-05-11 02:29:18 +00:00
lly
b186be52f0 ble_mesh: Add support for 48 bit data type [Zephyr]
This enables pulling and pushing values in 48 bit format.
2020-05-11 02:29:18 +00:00
lly
23c8bbcbf5 ble_mesh: Add 48 bit variants [Zephyr]
This adds sys_*_*48 functions that operation on a 48 bits values.
2020-05-11 02:29:18 +00:00
lly
4e1d3974fb ble_mesh: Add support for 24 bit data type [Zephyr]
This enables pulling and pushing values in 24 bit format.
2020-05-11 02:29:18 +00:00
lly
26dbfdcb9d ble_mesh: Add 24 bit variants [Zephyr]
This adds sys_*_*24 functions that operation on a 24 bits values.
2020-05-11 02:29:18 +00:00
lly
95440c4d28 ble_mesh: Group resends in proxy nodes [Zephyr]
Resend transport segments for groups on the advertiser interface, even
if a connected proxy node holds the group.
2020-05-11 02:29:18 +00:00
lly
1f47cfff7f ble_mesh: Typo in condition in comp_add_elem of cfg_srv [Zephyr]
Vendor model IDs take up four (not two) bytes in the composition
2020-05-11 02:29:18 +00:00
lly
31b175e372 ble_mesh: GATT Proxy Spec 1.0.1 changes [Zephyr]
Backport of https://github.com/apache/mynewt-nimble/pull/724

Mesh spec 1.0.1 changes proxy disabling behavior to only affect the
relaying from proxy nodes. Previously, disabling proxy would shut down
all proxy and node activity.

Tweaks from the original commit:
- Removed redundant call to bt_mesh_adv_update() in gatt_proxy_set()
- Removed invalid ref to 4.2.11.1 in node_identity_set()

---

According to Mesh Profile Spec 1.0.1, Section 4.2.11:
"If the Proxy feature is disabled, a GATT client device can connect
over GATT to that node for configuration and control. Messages from
the GATT bearer are not relayed to the advertising bearer."

Moreover some notes have been removed from the spec compared to
version 1.0:

Mesh Profile Spec 1.0, Section 4.2.11:

"Upon transition from GATT Proxy state 0x01 to GATT Proxy state 0x00
the GATT Bearer Server shall disconnect all GATT Bearer Clients."

"The Configuration Client should turn off the Proxy state as the last
step in the configuration process."

Mesh Profile Spec 1.0, Section 4.2.11.1:

"When the GATT Proxy state is set to 0x00, the Node Identity state
for all subnets shall be set to 0x00 and shall not be changed."
2020-05-11 02:29:18 +00:00
lly
e385197c27 ble_mesh: Support reliable sending when publishing [Zephyr]
Until now the choice of reliable sending (segmented messages with
acks) was implicitly dependent on the size of the payload. Add a new
member to the bt_mesh_model_pub to force using segment acks even when
the payload would fit a single unsegmented message.
2020-05-11 02:29:18 +00:00
lly
cc549897d5 ble_mesh: Check device uuid when init provisioning 2020-05-11 02:29:18 +00:00
lly
ca3d1637ca ble_mesh: Fix provisioning buffer initialization [Zephyr]
When PB-GATT support has been enabled the provisioning code "borrows"
the buffer from the proxy code. However, the way that initialization
was happening the proxy buffers were initialized only after
provisioning initialization, resulting in a corrupted buffer with
buf->data pointing to NULL. Reorder the initialization calls so that
proxy is done first and provisioning only after it.
2020-05-11 02:29:18 +00:00
lly
6c868a070b ble_mesh: Skip publish if update fails [Zephyr]
Allow models to skip a periodic publish interval by returning an error
from the publish update callback.

Previously, an error return from publish update would cancel periodic
publishing. This can't be recovered from, and as such, no valid model
implementation could return an error from this callback, and there was
no way to skip a periodic publish.
2020-05-11 02:29:18 +00:00
lly
aad8908d9c ble_mesh: Enable Segmented Control Messages [Zephyr]
The function bt_mesh_ctl_send() used to support maximum length of
11 bytes. The segmentation complies with the BLE Mesh Standard.
The ack is disabled in case of non unicast address.
2020-05-11 02:29:18 +00:00
Michael (XIAO Xufeng)
f7ec57b615 Merge branch 'feature/usb_wrap_headers' into 'master'
usb: add usb_wrap headers, move some code from LL to HAL

See merge request espressif/esp-idf!8395
2020-05-10 19:19:14 +08:00
David Čermák
e86f530e42 Merge branch 'bugfix/mdns_config_stacksize' into 'master'
mdns: Allow config mDNS task stack size (GitHub PR)

Closes IDFGH-3219

See merge request espressif/esp-idf!8635
2020-05-09 19:49:15 +08:00
xiehang
0c7cac6ee3 esp_wifi: Fix AP switch to adjacent channel without disconnect 2020-05-09 17:26:51 +08:00
Jiang Jiang Jian
6b3c4ec669 Merge branch 'bugfix/fix_wifi_example_readme_error' into 'master'
Fixed links to example directories for fast_scan and scan

Closes WIFI-2259

See merge request espressif/esp-idf!8651
2020-05-09 15:44:36 +08:00
Jiang Jiang Jian
27d0ca52b2 Merge branch 'bugfix/fix_memleak_in_wpa3_feature' into 'master'
fix(wpa_supplicant): fix memleak in wpa3 feature

See merge request espressif/esp-idf!8643
2020-05-08 22:34:01 +08:00
Mahavir Jain
5425ef85ce Merge branch 'bugfix/pthread_tcb_cleanup_wrapper' into 'master'
Fix linking for vPortCleanUpTCB wrapper

See merge request espressif/esp-idf!8652
2020-05-08 21:31:35 +08:00
Sachin Parekh
c0a33487b1 gdbstub_xtensa.c: Replace with cpu_ll_pc_to_ptr macro
Signed-off-by: Sachin Parekh <sachin.parekh@espressif.com>
2020-05-08 18:35:48 +05:30
Sachin Parekh
46d914ff45 gdb: Modify PC in case of invalid PC
Signed-off-by: Sachin Parekh <sachin.parekh@espressif.com>
2020-05-08 18:34:52 +05:30
Krzysztof Budzynski
e30185c166 Merge branch 'docs/fix_oocd_debug_level_opt' into 'master'
docs: Fixes OpenOCD debug level option

See merge request espressif/esp-idf!8646
2020-05-08 16:31:36 +08:00
Krzysztof Budzynski
fc4a5609ac Merge branch 'bugfix/docs_esp_https_ota' into 'master'
Resolve documentation issue reported by boarchuz in...

See merge request espressif/esp-idf!8648
2020-05-08 16:30:42 +08:00
Hrishikesh Dhayagude
f67902a5dd Add NimBLE config options in sdkconfig.rename 2020-05-08 12:04:46 +05:30
Shubham Kulkarni
4a83b488a8 pthread: Use INTERFACE in target_link_libraries for vPortCleanUpTCB wrapper 2020-05-08 11:55:23 +05:30
Jan-Hendrik Frintrop
ff9c2dfa8c Fixed links to example directories for fast_scan and scan
Signed-off-by: ronghulin <ronghulin@espressif.com>

https://github.com/espressif/esp-idf/pull/5186
2020-05-08 14:22:39 +08:00
Michael (XIAO Xufeng)
178c7c2e82 Merge branch 'bugfix/spi_lock_suppress_alter_log' into 'master'
spi: suppress spi_bus_lock_touch log level

Closes IDFGH-3030

See merge request espressif/esp-idf!8634
2020-05-08 11:26:11 +08:00
Alexey Gerenkov
16726e9980 gcov: Fixes APP CPU syscall table 2020-05-08 03:13:18 +03:00
Krzysztof
f1c7b0ba6f Resolve documentation issue reported by boarchuz in https://esp32.com/viewtopic.php?f=5&t=14148#p59419 2020-05-07 22:00:27 +02:00
Axel Lin
cf7e48c779 mdns: Allow config mDNS task stack size
Signed-off-by: Axel Lin <axel.lin@gmail.com>

Merges https://github.com/espressif/esp-idf/pull/5216
2020-05-07 21:49:02 +02:00
Krzysztof Budzynski
f318dab0ad Merge branch 'doc/review_security-flash-encryption' into 'master'
Review security/flash-encryption.rst

See merge request espressif/esp-idf!7672
2020-05-08 03:31:29 +08:00
David Čermák
3a2f059f11 Merge branch 'bugfix/pppos_connect_dhcpc_failed' into 'master'
esp_netif: fix default connect handler to check dhcpc return value

Closes IDFGH-3173

See merge request espressif/esp-idf!8581
2020-05-08 03:25:09 +08:00
Ivan Grokhotkov
d1487a5b79 Merge branch 'bugfix/hidh_leak' into 'master'
esp_hid: fix minor memory leak on getting dev reports

See merge request espressif/esp-idf!8631
2020-05-08 02:38:08 +08:00
Alexey Gerenkov
b441df7cf1 docs: Fixes OpenOCD debug level option 2020-05-07 16:02:13 +03:00
David Cermak
65b993234d esp_hid: fix memory leak if getting dev reports fails 2020-05-07 12:56:54 +00:00
Mahavir Jain
d7fb9d54ba Merge branch 'feature/get_url' into 'master'
Add API to get URL from HTTP client

Closes IDFGH-3094

See merge request espressif/esp-idf!8637
2020-05-07 17:57:16 +08:00
Zhang Jun Hao
e9b3feb85d fix(wpa_supplicant): fix memleak in wpa3 feature 2020-05-07 17:28:07 +08:00
Shubham Kulkarni
890f541edf esp_http_client: Add API to get URL from client
Closes: https://github.com/espressif/esp-idf/issues/5115
2020-05-07 14:20:28 +05:30
Ivan Grokhotkov
38becef258 Merge branch 'feature/docs_platformio' into 'master'
docs: add reference to platformio (Github PR)

Closes IDFGH-3111

See merge request espressif/esp-idf!8606
2020-05-07 15:27:39 +08:00
Angus Gratton
b2fe7f681e Merge branch 'bugfix/esp32_eco3_init_syscall_table' into 'master'
newlib: initialize syscall_table_ptr_app in single core mode

Closes IDFGH-3254

See merge request espressif/esp-idf!8596
2020-05-07 15:17:13 +08:00
Fu Hanxi
195eb883b4 Add idf_as_lib/build.sh to build_system_test 2020-05-07 10:09:54 +08:00
Mahavir Jain
a2263571b5 Merge branch 'feature/mbedtls_chacha_poly' into 'master'
mbedtls: Add config options for chacha20, poly1305 and chachapoly

See merge request espressif/esp-idf!8605
2020-05-07 03:44:23 +08:00
Alexey Gerenkov
c91ed2b917 coredump: Increases FreeRTOS ISR stack for ELF data format 2020-05-06 20:07:30 +03:00
Michael (XIAO Xufeng)
e04bb43b9f spi: suppress spi_bus_lock_touch log level
The log in the spi_bus_lock_touch may be annoying. This commit suppress 
the log level, and make the log visible only when the device altered.

Resolves https://github.com/espressif/esp-idf/issues/5056
2020-05-07 00:32:24 +08:00
David Čermák
a064e0c4de Merge branch 'bugfix/tcp_connect_tout' into 'master'
tcp_transport: Implement connect timeout

Closes IDFGH-2971, IDFGH-2810, and IDFGH-1541

See merge request espressif/esp-idf!8428
2020-05-06 20:07:05 +08:00
Alexey Gerenkov
ef1b3330c2 coredump: Fixes coredump data overwriting due to 'TaskSnapshot_t' and 'core_dump_task_header_t' difference 2020-05-06 15:04:58 +03:00
Valerii Koval
bc397f8b7d Add new section about using ESP-IDF with PlatformIO
This adds a description of PlatformIO ecosystem, tutorials, examples

Merges https://github.com/espressif/esp-idf/pull/5132
2020-05-06 12:55:22 +02:00
kapil.gupta
3b5fcbe06f wpa_supplicant: Fix some memleaks and invalid memory access
Add changes to fix issues reported in clang analyzer
2020-05-06 10:31:59 +00:00
Marius Vikhammer
214f1fbbed docs: add 'edit-on-github' link to html theme
Closes IDF-1504
2020-05-06 17:25:23 +08:00
Ivan Grokhotkov
d5195d19ae Merge branch 'feature/endian_h_compat_header' into 'master'
newlib: add endian.h header file for compatibility (Github PR)

See merge request espressif/esp-idf!8236
2020-05-06 16:54:41 +08:00
Jiang Jiang Jian
09d4767947 Merge branch 'mesh/power_save_function' into 'master'
mesh/ps: add duty control and support only transmit/receive on active duty

See merge request espressif/esp-idf!8152
2020-05-06 15:53:49 +08:00
David Cermak
c2053a8e65 esp_netif: fix default connect handler to check dhcpc return value
Closes https://github.com/espressif/esp-idf/issues/5184
2020-05-06 07:26:50 +02:00
Ivan Grokhotkov
a97cd645ad Merge branch 'bugfix/linenoise_stack_alloc' into 'master'
console: linenoise: move allocations from stack to heap, fix calloc result checking (Github PR)

Merges https://github.com/espressif/esp-idf/pull/5161

Closes IDFGH-3144

See merge request espressif/esp-idf!8612
2020-05-06 13:21:56 +08:00
Ivan Grokhotkov
30a6a8f932 Update linenoise.c: calloc returning NULL is not handled
Calloc function tries to allocate 4096 bytes.
If such memory is not available, it returns NULL pointer.
This exception was not handled in the code, causing a dirty crash.
2020-05-06 13:21:56 +08:00
Jiang Jiang Jian
62c36a0372 Merge branch 'feature/enable_wpa3_pmf_by_default' into 'master'
esp_wifi: Enable WPA3 & PMF by default

See merge request espressif/esp-idf!8600
2020-05-06 10:53:13 +08:00
Krzysztof Budzynski
9b309a0a97 Merge branch 'bugfix/doc_fix_dfu' into 'master'
docs: Fix and extend the DFU documentation page

See merge request espressif/esp-idf!8602
2020-05-06 05:17:12 +08:00
Piyush Shah
62e1d6712b mbedtls: Add config options for chacha20, poly1305 and chachapoly 2020-05-05 16:41:31 +00:00
David Cermak
a8e370eced tcp_transport: unit test for tcp connection timeout 2020-05-05 15:53:09 +02:00
David Cermak
6182e6f303 tcp_transport: close to return error only for socket error or invalid args
Closes https://github.com/espressif/esp-idf/issues/4872
2020-05-05 15:53:09 +02:00
boarchuz
0c7204e934 tcp_transport: Implement connect timeout
Merges https://github.com/espressif/esp-idf/pull/3791
Closes https://github.com/espressif/esp-idf/issues/5004
2020-05-05 15:53:09 +02:00
Ivan Grokhotkov
d82b60905f Merge branch 'feature/jtag_examples' into 'master'
Add JTAG related example tests

Closes IDF-1147

See merge request espressif/esp-idf!8393
2020-05-05 21:40:38 +08:00
Mahavir Jain
ce2a99dc23 Merge branch 'bugfix/fix_ci_exception' into 'master'
Fix broken pipe exception in CI for OTA examples

See merge request espressif/esp-idf!8519
2020-05-05 18:08:42 +08:00
chenyudong
bdb6565757 mesh/ci: fix MESH_EST_0216 2020-05-05 18:07:31 +08:00
qiyuexia
4522ef8798 mesh: add duty cycle control and support only transmit/receive in actve duty cycle 2020-05-05 18:06:47 +08:00
Roland Dobai
79e58eff8f Add JTAG related example tests 2020-05-05 11:08:33 +02:00
Ivan Grokhotkov
d73470a8a6 Merge branch 'bugfix/loadable_elf_fixes' into 'master'
cmake: loadable elf fixes

See merge request espressif/esp-idf!8603
2020-05-05 17:02:48 +08:00
Shubham Kulkarni
b1e29232ea example_test.py: Override SimpleHTTPRequestHandler to catch broken pipe exception 2020-05-05 14:07:51 +05:30
David Čermák
35386ba24c Merge branch 'bugfix/ppp_netif_up_after_new' into 'master'
esp-netif: ppp netif to use netif_is_link_up() to update interface state

Closes IDFGH-3044

See merge request espressif/esp-idf!8423
2020-05-05 16:37:47 +08:00
Ivan Grokhotkov
b0f448a972 Merge branch 'feature/console_no_empty_lines' into 'master'
console: allow not returning empty lines (Github PR)

Closes IDFGH-2869

See merge request espressif/esp-idf!8232
2020-05-05 16:12:50 +08:00
Ivan Grokhotkov
8a4cc99d90 test_apps: don't download partition table in loadable elf test 2020-05-05 09:45:51 +02:00
Angus Gratton
a0a7051af3 Merge branch 'bugfix/panic_fixes' into 'master'
panic handling fixes

See merge request espressif/esp-idf!8597
2020-05-05 12:16:09 +08:00
Angus Gratton
9b5f25ae2c confserver: Always store hex values in sdkconfig with 0x prefix
This is not necessary for correct behaviour or to have valid sdkconfig files
(previous commit adds tests for this), but it's useful for consistency with
sdkconfig files generated by menuconfig.

As reported in https://github.com/espressif/vscode-esp-idf-extension/issues/83
2020-05-05 13:15:54 +10:00
Angus Gratton
16e14104f7 kconfig: Fix generation of hex outputs for Make & CMake
And add tests for hex output formatting in all output formats.

Previously, Make & CMake outputs only formatted hex values with the 0x prefix
if they had the 0x prefix in the sdkconfig file. Now this prefix is always
applied.

Closes https://github.com/espressif/vscode-esp-idf-extension/issues/83
2020-05-05 13:15:54 +10:00
Angus Gratton
cecf4622bc Merge branch 'bugfix/secure_boot_v2_fixes' into 'master'
Small secure boot v2 fixes

See merge request espressif/esp-idf!8462
2020-05-05 11:13:30 +08:00
Angus Gratton
0515790495 Merge branch 'feature/malloc_failed_hook' into 'master'
feature/components: adds alloc failed hook with optional abort option

Closes IDF-1429

See merge request espressif/esp-idf!8527
2020-05-05 07:11:28 +08:00
Ivan Grokhotkov
255dd63122 ci: add loadable ELF build system test 2020-05-04 19:15:43 +02:00
Ivan Grokhotkov
b09ed2d2aa esptool: fix malformed json when no files are flashed 2020-05-04 19:11:26 +02:00
Ivan Grokhotkov
dafd50934d esptool: don't generate flashing metadata in loadable elf build 2020-05-04 19:11:00 +02:00
Ivan Grokhotkov
5e95bc1d21 test_apps: make it possible to run gdb_loadable_elf app locally 2020-05-04 19:10:06 +02:00
Roland Dobai
00d638f4d6 docs: Fix and extend the DFU documentation page 2020-05-04 18:02:01 +02:00
Ivan Grokhotkov
1449496fb0 Merge branch 'bugfix/check_python_dependencies_diag' into 'master'
tools/check_python_dependencies: print diagnostic info on failure

See merge request espressif/esp-idf!8376
2020-05-04 23:30:23 +08:00
Felipe Neves
6f5e43e26a heap: added alloc failed hook and configuration options
heap/test: added alloc failed hook tests

docs: added alloc failed hook documentation

heap: add function to register allocation failed hook

docs: allocation failed hook docs improvements
2020-05-04 10:58:38 -03:00
Mahavir Jain
1ab26f85ec Merge branch 'bugfix/task_handle' into 'master'
Fix datatype for wps task handle

See merge request espressif/esp-idf!8579
2020-05-04 19:34:57 +08:00
Ivan Grokhotkov
aac3e56a9a newlib: initialize syscall_table_ptr_app in single core mode
ESP32 ECO3 ROM uses syscall_table_ptr_app on both CPUs, so the pointer
needs to be set if running in single core mode.
2020-05-04 10:55:34 +00:00
Nachiket Kukade
107cf56e20 esp_wifi: Enable WPA3 & PMF by default
In wifi station example, set PMF(Protected Management Frames)
configuration to capable. Set WPA3 Feature in menuconfig enabled
by default. This will allow device to establish more secured
connection with AP's that support these protocols.
2020-05-04 16:02:14 +05:30
Ivan Grokhotkov
66889a7a58 esp32s2: return correct CPU number in esp_cache_err_get_cpuid 2020-05-04 10:13:14 +00:00
Ivan Grokhotkov
c5f664d4ac esp_system: remove duplicated esp_digital_reset function
esp_digital_reset was defined both in system_api.c and panic_handler.c
2020-05-04 10:13:14 +00:00
Ivan Grokhotkov
8bdfb265a4 panic handler: fix cache error handling 2020-05-04 10:13:14 +00:00
Ivan Grokhotkov
0a389b1764 esp_system: restore weak esp_reset_reason functions 2020-05-04 10:13:14 +00:00
Shubham Kulkarni
34d41645d3 touch_sensor.c: Fix datatype of argument for timer callback function 2020-05-04 13:26:58 +05:30
Shubham Kulkarni
f2cdebd906 esp_wps.c: Fix datatype for wps task handle 2020-05-04 13:26:58 +05:30
Ivan Grokhotkov
17d60faf17 Merge branch 'bugfix/ci_missed_deprecated_options' into 'master'
Fix missed deprecated Kconfig option caused by tabs in sdkconfig.rename

See merge request espressif/esp-idf!8585
2020-05-04 15:55:24 +08:00
Ivan Grokhotkov
70aa22615c Merge branch 'feature/ut_parallel_build' into 'master'
unit_test: ut parallel build

Closes IDF-1570

See merge request espressif/esp-idf!8338
2020-05-04 15:52:59 +08:00
Ivan Grokhotkov
039e0dc603 Merge branch 'feature/idf_size_autodetect_chip' into 'master'
tools: Autodetect the target of MAP files in idf_size.py

Closes IDF-1566

See merge request espressif/esp-idf!8424
2020-05-04 15:51:28 +08:00
Ivan Grokhotkov
a9c7db135d Merge branch 'bugfix/get_started_export_profile' into 'master'
docs: remove suggestion about running export.sh from .profile script

Closes IDFGH-1640

See merge request espressif/esp-idf!8320
2020-05-04 15:46:24 +08:00
Angus Gratton
d013105256 Merge branch 'feature/twdt_prints_backtrace' into 'master'
Add Task Watchdog backtrace printing

Closes IDF-1072

See merge request espressif/esp-idf!8136
2020-05-04 14:58:53 +08:00
Angus Gratton
f9552baf97 Merge branch 'feature/dfu_build_flash_s2' into 'master'
Add build system support for programming ESP32-S2 using DFU utils

Closes IDF-579

See merge request espressif/esp-idf!8294
2020-05-04 14:57:51 +08:00
Angus Gratton
bf23e66f2b Merge branch 'bugfix/flash_enc_rom_basic' into 'master'
flash encryption: Fix unncessary efuse burn, remove ROM BASIC efuse on S2

See merge request espressif/esp-idf!8587
2020-05-04 14:56:27 +08:00
Ivan Grokhotkov
ec2e666a6e Merge branch 'feature/ldgen_output_determinism' into 'master'
ldgen: determinism in mapping rule order

See merge request espressif/esp-idf!8475
2020-05-04 14:53:26 +08:00
Ivan Grokhotkov
dfbf8ce518 Merge branch 'bugfix/display_partition_table' into 'master'
partition_table: do not always display partition table contents on build

See merge request espressif/esp-idf!8289
2020-05-04 14:51:32 +08:00
David Cermak
acdadebfff esp-netif: ppp netif to use netif_is_link_up() to update interface state
Closes https://github.com/espressif/esp-idf/issues/5069
2020-05-04 06:46:35 +00:00
David Čermák
2e06e9c15b Merge branch 'feature/dhcps_config_mask' into 'master'
dhcp sever: Make option netmask configurable

Closes IDFGH-2955

See merge request espressif/esp-idf!8238
2020-05-04 14:22:55 +08:00
David Čermák
6f4ea99f83 Merge branch 'bugfix/mqtt_ref_update' into 'master'
mqtt: cleanup logs and docs

Closes IDFGH-3052

See merge request espressif/esp-idf!8547
2020-05-04 13:41:08 +08:00
Ivan Grokhotkov
1ddfe0d465 Merge branch 'feature/gdbgui_gdbinit_arg' into 'master'
tools/idf.py: add --gdbinit argument to gdb, gdbgui, gdbtui

See merge request espressif/esp-idf!8370
2020-05-04 13:23:27 +08:00
Ivan Grokhotkov
a55df7bcbf Merge branch 'feature/set_target_chip_name' into 'master'
tools: allow alternative spellings of target name (ESP32-S2, ESP32S2)

See merge request espressif/esp-idf!8256
2020-05-04 13:21:24 +08:00
Angus Gratton
b2417819fd Merge branch 'bugfix/erase_with_vtaskdelay' into 'master'
spi_flash: Add vTaskDelay while a long erasing

Closes IDF-1561 and IDFGH-261

See merge request espressif/esp-idf!8211
2020-05-04 08:46:08 +08:00
Krzysztof Budzynski
39c5db4c38 Merge branch 'bugfix/make_docs_ldgen' into 'master'
docs: remove quotes in ldgen documentation for adding fragment file

See merge request espressif/esp-idf!8501
2020-05-04 03:22:59 +08:00
Angus Gratton
158ab5a9b9 Remove "disable ROM BASIC boot mode" from ESP32-S2
Feature removed from ESP32-S2 ROM (was present in S2 Beta ROM)
2020-05-01 16:16:47 +10:00
Angus Gratton
d4d4d7324a efuse: Don't need to burn WR_CRYPT_CNT if CRYPT_CNT is already max
Reduces write cycles, and useful on ESP32 ECO3 as UART_DIS_DL is protected by
the same efuse.

Also fixes accidental macro definition introduced in 7635dce502
2020-05-01 16:16:47 +10:00
Krzysztof Budzynski
1aebfdf6a6 Merge branch 'bugfix/main_readme_s2' into 'master'
Mention S2 chips as well in the main README

See merge request espressif/esp-idf!8562
2020-05-01 04:43:56 +08:00
Roland Dobai
58bbd99b9c Fix missed deprecated Kconfig option caused by tabs in sdkconfig.rename 2020-04-30 18:23:21 +02:00
David Cermak
78ea8a9ed5 mqtt: clenaup logs and docs
esp_mqtt: Change an error print to use ESP_LOGE instead of ESP_LOGI
Move Sending MQTT connect message log from Info to Debug level
docs: Makes clear that publish API could block
Change the message printed after MQTT connection failure

Closes https://github.com/espressif/esp-idf/issues/5077
(by means of referencing commit 615aeae0c2)
2020-04-30 14:05:36 +00:00
David Cermak
2fce539d1e esp-netif: use dhcp server netmask
Use the configured esp-netif netmask to update the dhcp struct when
starting the server or starting the netif itself.
Use the netmask in dhcps setters and getters.
2020-04-30 14:04:22 +00:00
David Cermak
fa57bdbdbe dhcpserver: make subnet mask configurable
Closes https://github.com/espressif/esp-idf/issues/4988
2020-04-30 14:04:22 +00:00
Krzysztof Budzynski
ad60568151 Merge branch 'docs/hw-ref-toctree' into 'master'
Add translation for modules-and-boards

See merge request espressif/esp-idf!8013
2020-04-30 18:50:36 +08:00
Wang Ning
158945aebf Add translation for modules-and-boards 2020-04-30 18:50:36 +08:00
Renz Bagaporo
89a255f5eb ldgen: determinism in mapping rule order
This MR imposes some determinism in the mapping rule order in the output
file. For each section, the archives are arranged alphabetically
(ascending), and the mapping rules in each archive are arranged by
increasing specificity then alphabetically (ascending). The default
rules remain the very first rule for each section.
2020-04-30 18:20:00 +08:00
Island
2ad2d0a701 Merge branch 'bugfix/ble_mesh_node_reset_erase' into 'master'
ble_mesh: Fix node not erase info completely

Closes BLEMESH-195

See merge request espressif/esp-idf!8561
2020-04-30 16:39:57 +08:00
Jiang Jiang Jian
4eec0ea4bb Merge branch 'bugfix/optimization_API_esp_wifi_deauth_sta' into 'master'
bugfix: optimization API esp_wifi_deauth_sta

Closes WIFI-1699

See merge request espressif/esp-idf!8363
2020-04-30 16:20:32 +08:00
Fu Hanxi
18e79f4865 correct the app_update config for s2 chip 2020-04-30 06:47:49 +00:00
Fu Hanxi
c131a18059 load all yml files while assigning tests 2020-04-30 06:47:49 +00:00
Fu Hanxi
7709d4ccfd Use IDF_TARGET to determine the build method and the output file name 2020-04-30 06:47:49 +00:00
Fu Hanxi
01ff4f621f Add build_unit_test.sh to do find_apps and build_apps to unit_tests
modify unit-test-apps config files, use CONFIG_IDF_TARGET to set target.
if not set, then treat them as supported both targets.
2020-04-30 06:47:49 +00:00
Fu Hanxi
04342a73f2 Fix some python bugs left before 2020-04-30 06:47:49 +00:00
lly
eaeb465767 ble_mesh: Fix node not erase info completely
Previously only mesh node info is supported to be stored
in flash. So when trying to reset the node, we only need
to judge if the BLE_MESH_VALID flag is set.
Currently we support storing both node & Provisioner info
in flash, when trying to erase the node info from flash,
the BLE_MESH_NODE flag will be checked. So we need to set
bt_mesh.flags to 0 when all the erase operations are done.
2020-04-30 06:42:54 +00:00
Ivan Grokhotkov
79976e7370 Merge branch 'feature/storage_examples' into 'master'
examples: Add storage example tests and migrate "loadable elf" test to test_apps

Closes IDF-1150 and IDF-1586

See merge request espressif/esp-idf!8174
2020-04-30 14:34:34 +08:00
Angus Gratton
d041512022 Merge branch 'feature/mesh_ip_network_example' into 'master'
ESP-MESH: IP internal network example

See merge request espressif/esp-idf!7724
2020-04-30 14:33:16 +08:00
ChenJianxing
eda97d7e16 update esp32s2 iperf config 2020-04-30 14:00:34 +08:00
Roland Dobai
ab9f714248 Add build system support for programming ESP32-S2 using DFU utils 2020-04-30 07:59:18 +02:00
Ivan Grokhotkov
2aaab7eeef tools: add script to generate DFU binaries for ESP32-S2 2020-04-30 07:59:18 +02:00
KonstantinKondrashov
bc50bd2806 spi_flash(new driver): Add a Kconfig option - Bypass a block erase and always do sector erase
Closes: IDF-1561
2020-04-30 13:58:13 +08:00
KonstantinKondrashov
304f67e42a spi_flash(LEGACY_IMPL): Add a Kconfig option - Bypass a block erase and always do sector erase
Closes: IDF-1561
2020-04-30 13:58:13 +08:00
KonstantinKondrashov
0f6fe0c8e9 spi_flash: Add into sim/stubs the esp_timer 2020-04-30 13:58:13 +08:00
KonstantinKondrashov
ae89f98d59 spi_flash(new driver): Add vTaskDelay while a long erasing 2020-04-30 13:58:13 +08:00
KonstantinKondrashov
3cb655eaab spi_flash(LEGACY_IMPL): Add vTaskDelay while a long erasing
Added Kconfig options to enable yield operation during flash erase

Closes: https://github.com/espressif/esp-idf/issues/2083
Closes: https://github.com/espressif/esp-idf/issues/4916
Closes: IDFGH-261
2020-04-30 13:58:13 +08:00
Roland Dobai
53316261b9 Mention S2 chips as well in the main README 2020-04-30 05:55:47 +00:00
Angus Gratton
fdd6bfe3c4 Merge branch 'bugfix/sleep_comments' into 'master'
doc: Specify that sleep wakeup source restrictions apply to all current ESP32 revisions

See merge request espressif/esp-idf!8351
2020-04-30 13:36:58 +08:00
Angus Gratton
cd4fa46f53 Merge branch 'bugfix/hid_examples' into 'master'
Update HID examples to comply with the new requirements

See merge request espressif/esp-idf!8559
2020-04-30 12:29:23 +08:00
Francesco Giancane
1173ce32f6 endian.h: define non-standard symbols for endian handling
BSDs and Unices defined some non standardised functions and symbols used
for endianness handling: converting from Little Endian to Big Endian,
converting from Host to a specific representation, converting from a
specific representation to Host.

With this commit, a modified version of those symbols provided by
FreeBSD is imported.

The license of the imported code is still 2-Clause BSD.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>
Closes https://github.com/espressif/esp-idf/pull/4784
2020-04-29 23:47:51 +02:00
Francesco Giancane
6f8ce38f99 Introduce <endian.h> compatibility header
Programs and libraries using compiler and system information about
endianness often include the system header `<endian.h>`.

In `xtensa-gcc` compiler with `newlib` distribution, that file is located in
`<machine/endian.h>`; this means that `#include <endian.h>` would fail
at compile time.

This commit fixes the issue by adding a compatibility `<endian.h>`
header which in turn just includes `<machine/endian.h>`.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>
Merges https://github.com/espressif/esp-idf/pull/4784
2020-04-29 23:47:51 +02:00
Ivan Grokhotkov
466998d487 examples/console: add note about Ctrl+C 2020-04-29 23:46:58 +02:00
Ivan Grokhotkov
19f6da99ed examples/console: match prompt to the target name 2020-04-29 23:44:46 +02:00
Ivan Grokhotkov
ece41b04e3 console: make empty line behavior run-time configurable 2020-04-29 23:44:46 +02:00
Michael 'ASAP' Weinrich
c34352549a Added Kconfig for enabling 0 length returns from linenoise 2020-04-29 23:44:46 +02:00
Michael 'ASAP' Weinrich
8a2413b5c0 Added filtering blank lines from history 2020-04-29 23:44:46 +02:00
MadnessASAP
8680394167 Break the input loop on error or EOF 2020-04-29 23:44:46 +02:00
MadnessASAP
dfd4227e7a Don't return NULL on 0 length input
A 0 length string is still a valid input and should be treated as such, a NULL return should be reserved for when errors occur during line editing or EOF is reached.

Merges https://github.com/espressif/esp-idf/pull/4926
2020-04-29 23:44:46 +02:00
Ivan Grokhotkov
7dad294061 tools/idf.py: add --gdbinit argument to gdb, gdbgui, gdbtui
Allows starting a debugging session with a custom set of init commands
2020-04-29 23:43:38 +02:00
Ivan Grokhotkov
01b3ffa8e3 docs: remove suggestion about running export.sh from .profile script
This was quite obviously a bad suggestion, and it seems that some
users have actually read the docs attentively enough to have followed
it. Replace be recommendation to create an alias.

Closes https://github.com/espressif/esp-idf/issues/3889
2020-04-29 23:43:14 +02:00
Ivan Grokhotkov
7b79b52062 tools: allow alternative spellings of target name (ESP32-S2, ESP32S2)
by ignoring character case and hyphens in target name.
2020-04-29 23:42:18 +02:00
me-no-dev
406d9d20a3 Update HID examples to comply with the new requirements 2020-04-29 20:51:16 +03:00
Island
18950d5780 Merge branch 'bugfix/ble_mesh_provisioner_check_key' into 'master'
ble_mesh: Check if appkey exist before deleting it

See merge request espressif/esp-idf!8332
2020-04-29 21:12:14 +08:00
Krzysztof Budzynski
613a12a056 Merge branch 'docs/update_mass_mfg' into 'master'
docs: Include links to tools for flash operations

See merge request espressif/esp-idf!8518
2020-04-29 20:27:18 +08:00
Jiang Jiang Jian
922a0fa485 Merge branch 'feature/esp-hid-component' into 'master'
ESP-HID Component

See merge request espressif/esp-idf!6908
2020-04-29 17:24:02 +08:00
Hristo Gochkov
25281ef4de Add HID Support to IDF
- Adds HID Host support in Buedroid
- Adds BLE HID Host and Device support
- Adds some general HID utilities and definitions to help integrate with other stacks and native USB
2020-04-29 17:24:01 +08:00
Krzysztof Budzynski
4d53c137e6 Merge branch 'doc/pdf_rm_link_translation' into 'master'
doc: remove links to translation if building PDF

Closes IDF-1579

See merge request espressif/esp-idf!8455
2020-04-29 16:47:06 +08:00
Ivan Grokhotkov
e0177eb252 examples/tusb_sample_descriptor: default to esp32s2 target 2020-04-29 10:04:13 +02:00
Ivan Grokhotkov
d311144a00 soc/usb: use new headers in LL, move some code out of LL
* Keep only USB related register operations in the LL.
* Move pad-related logic into the driver.
* Driver is now responsible for enabling the peripheral.
2020-04-29 10:04:13 +02:00
Ivan Grokhotkov
897e69cc9d soc, esp32s2: add usb_wrap peripheral 2020-04-29 10:04:13 +02:00
Fu Hanxi
d41c130b68 add some prefix for doc urls to make BOT recognize the preview doc url 2020-04-29 15:41:53 +08:00
Roland Dobai
2d709c6384 Migrate "loadable elf" test from hello_world example to test_apps 2020-04-29 09:17:28 +02:00
Roland Dobai
819f7a4e57 examples: Add storage example tests 2020-04-29 09:16:18 +02:00
Roland Dobai
d5aeae9d48 examples: fix import error for the https_x509_bundle example 2020-04-29 09:16:18 +02:00
ronghulin
3c8ed7b8c9 bugfix: optimization API esp_wifi_deauth_sta 2020-04-29 14:31:16 +08:00
David Čermák
f04fd2976d Merge branch 'bugfix/modem_pattern_queue_size_fix' into 'master'
esp_modem: Fix misuse event_queue_size as pattern_queue_size

Closes IDFGH-3172

See merge request espressif/esp-idf!8539
2020-04-29 14:09:31 +08:00
Shivani Tipnis
3f6e7a553b docs: Include links to tools for flash operations 2020-04-29 11:19:02 +05:30
David Čermák
570bc3dbbc Merge branch 'bugfix/mdns_remove_mbedtls_dep' into 'master'
mdns: Remove mbedtls dependency

Closes IDFGH-3177

See merge request espressif/esp-idf!8538
2020-04-29 13:47:47 +08:00
Angus Gratton
6dc6aa0063 Merge branch 'feature/system_example_tests' into 'master'
Add system example tests

Closes IDF-1148

See merge request espressif/esp-idf!8438
2020-04-29 13:43:45 +08:00
Angus Gratton
c41a0c1907 Merge branch 'feature/gdb_stub_task_state' into 'master'
feature/gdb_stub: make task state available on info thread command when in gdb stub.

Closes IDF-720

See merge request espressif/esp-idf!8371
2020-04-29 13:21:31 +08:00
Angus Gratton
5c1d317766 Merge branch 'bugfix/scheduling_time_test_overflow' into 'master'
bugfix/freertos: Fix accumulator overflow on scheduling time test

See merge request espressif/esp-idf!8261
2020-04-29 13:18:44 +08:00
Jiang Jiang Jian
8b67370e65 Merge branch 'bugfix/ap_second_channel_update_error' into 'master'
wifi: fix the bug for softAP update second channel wrong

Closes WIFI-1785, WIFI-1784, WIFI-1630, WIFI-1857, WIFI-1849, and WIFI-1997

See merge request espressif/esp-idf!8023
2020-04-29 11:59:11 +08:00
Ivan Grokhotkov
e5ad3849a3 Merge branch 'bugfix/make_to_cmake_msys_py3' into 'master'
tools: Make Unicode from subprocess result in the CMake convert script

Closes IDFGH-3180

See merge request espressif/esp-idf!8524
2020-04-28 21:17:25 +08:00
Roland Dobai
e1dc92b60b Add system example tests 2020-04-28 14:52:15 +02:00
zhangyanjiao
b96652c257 wifi changes:
1. fix the bug for softAP update second channel wrong
2. query country code wrong when policy change from manual to auto
3. change wifi_scan_time_t from union to struct
2020-04-28 20:02:25 +08:00
Jiang Jiang Jian
aad3b0e3a2 Merge branch 'bugfix/coex_fix_wifi_performance_when_ble_conn' into 'master'
Coexistence: Add coexist API to enable BLE connection dynamic priority

See merge request espressif/esp-idf!8466
2020-04-28 19:55:31 +08:00
Island
8ef0b66a3b Merge branch 'bugfix/ble_mesh_compile_error_o2' into 'master'
ble_mesh: Fix compile error when -O2 (performance) is chosen

Closes BLEMESH-187

See merge request espressif/esp-idf!8217
2020-04-28 17:29:09 +08:00
Jiang Jiang Jian
1b5c42b9b0 Merge branch 'bugfix/supplicant_log_enable_issue' into 'master'
wpa_supplicant: Minor bugfix with wpa_supplicant debug logs.

See merge request espressif/esp-idf!8397
2020-04-28 16:29:19 +08:00
baohongde
95f47a2d4d Coexistence: Add coexist API to enable BLE connection dynamic priority 2020-04-28 16:16:27 +08:00
Jiang Jiang Jian
528edf85cd Merge branch 'bugfix/pmf_cert_fixes' into 'master'
esp_wifi: Update wifi lib

Closes WIFI-2251

See merge request espressif/esp-idf!8468
2020-04-28 14:41:12 +08:00
Jiang Jiang Jian
2dc4bfe782 Merge branch 'bugfix/supplicant_disable_tls_v1.2' into 'master'
wpa_supplicant: Disable TLSv1.2 by default

See merge request espressif/esp-idf!8534
2020-04-28 14:18:35 +08:00
Nachiket Kukade
59e8e407a0 wpa_supplicant: Disable TLSv1.2 by default
Some Enterprise Authentication Servers do not support TLS v1.2.
Move this option to Menuconfig and disable by default.
2020-04-28 10:05:35 +05:30
Jiang Jiang Jian
df5cead7e6 Merge branch 'fixbug/tcp_kill_state_assert' into 'master'
lw-ip:fixbug for tcp kill state assert

Closes WIFI-2195

See merge request espressif/esp-idf!8449
2020-04-28 11:43:29 +08:00
Mahavir Jain
4a558131ea Merge branch 'bugfix/http_client_read' into 'master'
Fix error handling in esp_http_client_read and esp_https_ota_perform

Closes IDFGH-2916 and IDF-1516

See merge request espressif/esp-idf!8166
2020-04-28 06:07:15 +08:00
Darian Leung
b097dd0a79 Add Task Watchdog backtrace printing
This commit makes the Task Watchdog print the backtrace of both
cores when it times out.
2020-04-27 18:11:29 +00:00
Felipe Neves
c78ddb770a docs: added information of task states on fatal errors documentation. 2020-04-27 14:41:55 +00:00
Felipe Neves
c296d01737 gdbstub: added cpu id of running tasks to the output 2020-04-27 14:41:55 +00:00
Felipe Neves
5279e68146 gdbstub: improve format of info thread command output
gdbstub: simplify the state handling on extra thread info
2020-04-27 14:41:55 +00:00
Felipe Neves
9a54a0af13 gdbstub: added task state information on qThreadExtraInfo command 2020-04-27 14:41:55 +00:00
Felipe Neves
140c5e0677 freertos: added task state field inside of TaskSnapshot_t to capture it. 2020-04-27 14:41:55 +00:00
Felipe Neves
5847e0afd2 freertos/test: fix overflow on accumulator used on scheduling time test 2020-04-27 14:20:13 +00:00
Roland Dobai
4f8e2699db tools: Make Unicode from subprocess result in the CMake convert script
Fixes an issue with Python 3 in MSYS where it fails while trying to join
paths where one part is Unicode (default string on Python3) and the
second part are bytes (returned by the subprocess call).

Closes https://github.com/espressif/esp-idf/issues/5189
2020-04-27 16:15:52 +02:00
Nachiket Kukade
f9970b8e29 esp_wifi: Update wifi lib
PMF Certification fixes -
1. Check return status of decrypt operation. Fixes 5.3.3.1.
2. Allow PMF negotiation for WPA2-Enterprise. Fixes 5.3.3.2, 5.3.3.4.
3. Add NULL check on key before encrypting PMF, fixes crash.

Closes WIFI-2251
2020-04-27 13:32:09 +00:00
Krzysztof Budzynski
c5c026557e Merge branch 'doc/hmac_S2' into 'master'
Doc: Documentation for HMAC module

See merge request espressif/esp-idf!8383
2020-04-27 19:03:01 +08:00
Jiang Jiang Jian
17d7f3cb17 Merge branch 'fixbug/set_dhcp_time_fail' into 'master'
lw-ip:fixbug for set dhcp time fail

Closes WIFI-2152

See merge request espressif/esp-idf!8374
2020-04-27 16:48:34 +08:00
Anton Maklakov
3029ab343b Merge branch 'test/ci_disable_ut_s2_wo_label' into 'master'
ci: disable the UT for S2 when label is not used

See merge request espressif/esp-idf!8480
2020-04-27 16:35:45 +08:00
Jiang Jiang Jian
a559bf51ff Merge branch 'bugfix/ble_mesh_time_scene_wrong_name' into 'master'
ble_mesh: Fix time scene wrong macro name

See merge request espressif/esp-idf!8331
2020-04-27 16:19:49 +08:00
Renz Bagaporo
da91172616 docs: remove quotes in ldgen documentation for adding fragment file
Closes https://github.com/espressif/esp-idf/issues/5142
2020-04-27 15:22:38 +08:00
lly
c8a7d20946 ble_mesh: Check if appkey exist before deleting it 2020-04-27 06:27:35 +00:00
lly
fab9b944a4 ble_mesh: Add length check for some mesh operations 2020-04-27 14:24:07 +08:00
lly
c77b7394ed ble_mesh: Fix compile error when -O2 (performance) is chosen 2020-04-27 14:24:07 +08:00
Angus Gratton
9300615a13 Merge branch 'bugfix/heap_psram_fill' into 'master'
heap: Only fill new heaps with FREE_FILL_PATTERN if Comprehensive poisoning is on

See merge request espressif/esp-idf!8210
2020-04-27 14:20:41 +08:00
Shubham Kulkarni
21c2019973 esp_https_ota.c: Add fix to return failure if (-1) is returned from esp_http_client_read
Closes https://github.com/espressif/esp-idf/issues/4960
2020-04-27 05:17:04 +00:00
Shubham Kulkarni
4c166085fb esp_http_client.c: In esp_http_client_read, add fix to return (-1) if esp_transport_read fails 2020-04-27 05:17:04 +00:00
Angus Gratton
3845b002b8 Merge branch 'bugfix/esp32s2_iram_dram_disable_tests' into 'master'
esp32s2: disable memprot for all CI tests (temporary)

See merge request espressif/esp-idf!8484
2020-04-27 13:16:44 +08:00
Michael (XIAO Xufeng)
9d98111652 Merge branch 'bugfix/spi_bus_lock_missing_semphrstatic' into 'master'
spi: fix config break and reduce overhead of the bus lock on SPI1

Closes IDFGH-3017

See merge request espressif/esp-idf!8221
2020-04-27 12:57:19 +08:00
Jakob Hasse
2da7e65646 Doc: S2 HMAC documentation 2020-04-27 12:25:46 +08:00
lly
75cf2d7a17 ble_mesh: Fix time scene wrong macro name 2020-04-27 04:17:04 +00:00
Island
feb7f9683c Merge branch 'bugfix/ble_mesh_add_missing_cpp' into 'master'
ble_mesh: Add missing #ifdef __cplusplus

Closes BLEMESH-194

See merge request espressif/esp-idf!8310
2020-04-27 11:47:44 +08:00
Island
1e12673b3c Merge branch 'feat/ble_mesh_sensor_model_example' into 'master'
ble_mesh: Add ble mesh sensor model examples

Closes BLEMESH-190

See merge request espressif/esp-idf!8253
2020-04-27 11:47:06 +08:00
Island
71dc5eb276 Merge branch 'doc/ble_mesh_fixes' into 'master'
doc: Fix some ble mesh description

Closes BLEMESH-189

See merge request espressif/esp-idf!8240
2020-04-27 11:43:48 +08:00
Island
32cfcc77ed Merge branch 'bugfix/ble_mesh_use_sdkconfig_ci' into 'master'
ble_mesh: Add bluedroid and nimble example configurations

See merge request espressif/esp-idf!8172
2020-04-27 11:41:26 +08:00
Island
043a54c24e Merge branch 'bugfix/ble_mesh_rpl_list_size' into 'master'
ble_mesh: Associate replay protection list size with nodes count

See merge request espressif/esp-idf!8014
2020-04-27 11:35:36 +08:00
Martin Vychodil
c9d2ad0ce5 esp32s2: disable memprot for all CI tests (temporary) 2020-04-26 22:38:53 +02:00
Michael (XIAO Xufeng)
ac63760ded ci: disable the UT for S2 when label is not used 2020-04-26 16:29:49 +08:00
lly
91d70cd128 ble_mesh: Add missing #ifdef __cplusplus 2020-04-26 06:50:35 +00:00
lly
77bb7806a0 ble_mesh: Fix client local parameters not initialized 2020-04-26 06:25:08 +00:00
lly
713581ae87 ble_mesh: Continue node info restore even if failure happens
During BLE Mesh Provisioner initialization, the stack will restore
the nodes information if settings storage is enabled.
Previously when a failure happens (e.g. found the same uuid) during
the restore procedure, the information of the following nodes will
not be restored and error will be directly returned.
But this will introduce some problem with user experience, because
some newly provisioned nodes information will not be restored and
Provisioner will not be able to control those nodes.
So we change the operation here, when a failure happens during the
restore procedure, Provisioner will only ignore the information of
the current node and continue restoring other nodes information.
2020-04-26 06:25:08 +00:00
lly
73804ef4d3 ble_mesh: Remove some redundant functions 2020-04-26 06:25:08 +00:00
lly
f37bc1a515 ble_mesh: Notify unprovisioned device beacon to application layer
With this change, if a Provisioner has provisioned the maximum
number of nodes, it can still report the unprovisioned device
beacon from other nodes to the application layer. And this will
be more reasonable compared with the previous implementation.
Previously when the node array of Provisioner is full, no beacon
from unprovisioned devices will be reported, only some warning
logs will be given.
2020-04-26 06:25:08 +00:00
lly
88b0cd918a ble_mesh: Check if assigned node address is duplicated
Previously only check the node address when it is assigned by the
application layer. Here we also check the address when the address
is allocated internally. And this will be useful when some mesh
internal tests are performed.
2020-04-26 06:25:08 +00:00
lly
7486616382 ble_mesh: Update next alloc address when node info is added 2020-04-26 06:25:08 +00:00
lly
a4d9259912 ble_mesh: Fix Provisioner provisioning deadlock 2020-04-26 06:25:08 +00:00
lly
8d57ebf57d ble_mesh: Remove BLE_MESH_MAX_STORED_NODES option
Previously the BLE_MESH_MAX_STORED_NODES option is added for
internal mesh test, which will be a little confusing for the
users to understand.
Here we remove this option, instead the BLE_MESH_MAX_PROV_NODES
will be used for all the cases. For mesh internal test, when
the test function is called to add some nodes info, the info
will be stored in the array of provisioned nodes directly.
2020-04-26 06:25:08 +00:00
lly
ec2324edbe ble_mesh: Associate replay protection list size with nodes count
The replay protection list of Provisioner should be at least equal
to the number of nodes with the precondition that each node contains
only one element.
The help information of replay protection list is updated, and the
maximum number of nodes for Provisioner is adjusted based on the
replay protection list size.
2020-04-26 06:25:08 +00:00
lly
2f6a4140fa doc: Fix some ble mesh description 2020-04-26 06:22:33 +00:00
lly
fa40a1a0c7 ble_mesh: Add bluedroid and nimble example configurations 2020-04-26 06:12:22 +00:00
lly
2f28c97f06 ble_mesh: Add ble mesh sensor model examples 2020-04-26 06:08:44 +00:00
lly
e8c5f5dc03 ble_mesh: Add some common macros for sensor model 2020-04-26 06:08:44 +00:00
lly
361dd8b29c ble_mesh: Allow empty sensor series column value 2020-04-26 06:08:44 +00:00
lly
561191d50f ble_mesh: Check if same sensor (settings) property id exists 2020-04-26 06:08:44 +00:00
lly
3862f0e784 ble_mesh: Allow empty sensor settings exist 2020-04-26 06:08:44 +00:00
Axel Lin
f4a4549a34 mdns: Remove mbedtls dependency
mdns does not use mbedtls, so remove mbedtls dependency.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
2020-04-26 12:07:28 +08:00
Angus Gratton
017f07cda7 Merge branch 'feature/flash_encryption_esp32s2' into 'master'
feature/flash_encryption_esp32s2: Enable flash encryption mechanism to esp32s2 chips

Closes IDF-804

See merge request espressif/esp-idf!8109
2020-04-25 12:28:21 +08:00
Axel Lin
85e9930071 esp_modem: Fix misuse event_queue_size as pattern_queue_size
Also remove event_queue_size from esp_modem_dte_t because
event_queue_size is only used in esp_modem_dte_init.

Fixes: 817c0e3019 ("esp_modem: UART runtime configuration of esp-modem")
Signed-off-by: Axel Lin <axel.lin@gmail.com>
2020-04-25 08:08:01 +08:00
Angus Gratton
bb0a95b17c spi_flash s2: Fix encrypted writes when legacy implementation disabled
ROM function didn't use correct Addr bitlen if legacy was disabled on ESP32-S2
2020-04-24 12:43:47 -03:00
Angus Gratton
dbdce93d23 spi_flash: Use per-chip flash_ops files for legacy API
Looks like when ESP32-S2 Beta support was merged, the separate files
were dropped by accident.
2020-04-24 12:43:47 -03:00
Felipe Neves
95bc186846 flash_encryption: Fix next spi boot crypt counter value after a plaintext flash 2020-04-24 12:43:47 -03:00
Felipe Neves
f7ccc081a5 flash_encryption: replace spi crypt count efuse burning function by a esp_efuse_API
flash_encryption: modify additional efuses burning method to fix them are not being written

flass_encryption: burn efuse to disable boot from RAM space

flash_encryption: added better checking for key generation state plus set read and write protect for them

soc esp32s2: Add register-level bit definitions for read & wrote protect bits

esp32s2: Fixes for flash encryption

- Write efuses in a batch
- Fix some detection of whether existing efuse blocks are read/write protected
2020-04-24 12:43:47 -03:00
Felipe Neves
6f27992430 flash_encryption: return more clear error codes when bootloader encryption fails 2020-04-24 12:43:47 -03:00
Felipe Neves
b3d8847406 flash_encryption: added wdt feed during encryption process to avoid undesired reset. 2020-04-24 12:43:47 -03:00
Felipe Neves
7635dce502 bootloader/flash_encrypt: added esp32s2 flash encryption code on build system and enabled example
flash_enctryption: enabled flash encryption example on esp32s2

bootloader: raise WDT overflow value providing sufficient interval to encrypt app partition

flash_ encrypt: Fixed the TODOs on flash encryption key generation for esp32s2

flash_encryption: added secure boot features to flash enctryption for esp32s2

bootloader: leave only esp32s2 compatible potentially insecure options on menuconfig.

flash_encryption: removed secure boot version 1 from esp32s2 encryption code

flash_encryption:  added  CONFIG_SECURE_FLASH_REQUIRE_ALREADY_ENABLED option for esp32s2

flash_encryption: fixed the count of left plaintext flash

flash_encryption: disable dcache and icache download when using encryption in release mode

flash_encryption:  add cache potentally insecure options for s2 chips

flash_encryption: fixed bug which bricked some chips in relase mode
2020-04-24 12:43:47 -03:00
Ivan Grokhotkov
cd1aba595e Merge branch 'bugfix/mpu_panic' into 'master'
Fix issue with mpu illegal access test

See merge request espressif/esp-idf!8418
2020-04-24 20:54:08 +08:00
Michael (XIAO Xufeng)
77d5e4b4e2 Merge branch 'bugfix/timer_group_intr_enable' into 'master'
Bugfix/timer group intr enable

Closes IDFGH-3082

See merge request espressif/esp-idf!8340
2020-04-24 18:28:36 +08:00
Renz Bagaporo
5abb4f6455 esp_system, esp_common: fixes to some panic handler refactor issues 2020-04-24 16:34:15 +08:00
Renz Bagaporo
4571fb219f soc: change region in mpu test
Previously, the test uses region 3 for the illegal access test
(0x60000000 - 0x7fffffff). This caused issues with there being
peripherals located in that memory range. Change to use region 4
(0x8000000 - 0x9fffffff) instead).
2020-04-24 16:34:15 +08:00
David Cermak
9e58d94a42 esp-mesh: Added example showing internal IP capable mesh network 2020-04-24 07:32:58 +02:00
David Cermak
bcee69ae06 esp-netif: Enable easier configuration of custom DHCP server address 2020-04-24 07:32:58 +02:00
Angus Gratton
b26f93415e secure boot v2: Add anti-FI check that secure boot not enabled yet
Prevent a fault from causing bootloader to trust the provided signature incorrectly.
2020-04-24 15:03:31 +10:00
Angus Gratton
fc4b653729 secure boot v2: Don't check efuse BLK2 if only boot-time signature verification is enabled 2020-04-24 15:03:03 +10:00
Angus Gratton
fc0d6a99f8 secure boot v2: Don't log warnings when BLK2 is empty as expected
If BLK2 is empty then it's OK to continue with a warning (otherwise it may spook users into thinking
something this is wrong, but this is the expected workflow.)

If BLK2 is not empty and doesn't match then we need to fail because it won't be possible to
trust the signature.
2020-04-24 14:43:55 +10:00
Jiang Jiang Jian
741960d5ce Merge branch 'bugfix/Add_softap_example_channel_configuration' into 'master'
esp_wifi:Add softap example channel configuration

See merge request espressif/esp-idf!8387
2020-04-24 11:21:45 +08:00
Jiang Jiang Jian
79288f25e4 Merge branch 'bugfix/fix_esp32s2_package_recv_issue' into 'master'
esp_wifi: Update esp32s2 phy lib v303

Closes WIFI-2141 and WIFI-2142

See merge request espressif/esp-idf!8321
2020-04-24 11:19:48 +08:00
Ivan Grokhotkov
8a007dcbc2 Merge branch 'bugfix/ci_unterminated_sdkconfig_defaults' into 'master'
CI: Add EOL to sdkconfig.defaults before adding sdkconfig.ci

See merge request espressif/esp-idf!8437
2020-04-23 22:49:18 +08:00
Ivan Grokhotkov
275ed32a11 Merge branch 'feature/esp32s2_iram_dram_protection' into 'master'
esp32s2: IRAM/DRAM memory protection

See merge request espressif/esp-idf!8156
2020-04-23 21:52:54 +08:00
David Čermák
3d868ec05d Merge branch 'bugfix/ppp_test_check_netif' into 'master'
ppp-test: addressing stability of PPP test

See merge request espressif/esp-idf!8373
2020-04-23 21:47:40 +08:00
morris
91e62f4e37 timer_group: update hal api && fix intr_enable
timer group interrupt enable is controled by level_int_ena instead of int_ena

Closes https://github.com/espressif/esp-idf/issues/5103
2020-04-23 19:29:15 +08:00
morris
e0b9f7be6d periph_clk_gating: add reference counter 2020-04-23 19:29:15 +08:00
morris
99f0dc78c8 soc: remove mcpwm description file from esp32s2 2020-04-23 19:26:55 +08:00
Marius Vikhammer
dc2c753a7d doc: remove links to translation if building PDF
Closes IDF-1579
2020-04-23 18:59:37 +08:00
Angus Gratton
8a349d7102 Merge branch 'fix/ci_example_test_prov' into 'master'
CI: Fix prov example test exception handle

See merge request espressif/esp-idf!8413
2020-04-23 17:00:10 +08:00
xueyunfei
4e2989e40c fixbug for tcp kill state assert 2020-04-23 15:38:49 +08:00
David Cermak
a245f5047a ppp-test: wait for graceful disconnect when PPP shutdowns 2020-04-23 05:55:17 +00:00
David Cermak
b3749e38f9 ppp-test: check if ppp interface is active and IP address correct before starting the test
Addressing stability of pppos test:
* listing active network interfaces for presence of "ppp0" interface
* fixed IPv6 address regex to prevent ttfw accept partial address only
(less than 8 octets)
* workaround crash after exiting app_main()
2020-04-23 05:55:17 +00:00
Michael (XIAO Xufeng)
7ec4d64b80 spi: Update documents about the bus lock and how to use SPI Master on SPI1 bus 2020-04-23 12:27:25 +08:00
Ivan Grokhotkov
28efe511f4 Merge branch 'bugfix/semihosting_write' into 'master'
Semihosting fixes for write and the  semihost example

See merge request espressif/esp-idf!8290
2020-04-23 06:26:41 +08:00
Shivani Tipnis
745e979283 CI: Fix prov example test cryptography package version exception handling 2020-04-23 00:27:40 +05:30
Mahavir Jain
44939a6b1e Merge branch 'feature/iram_data_bss' into 'master'
esp32: IRAM_DATA_ATTR and IRAM_BSS_ATTR introduced

See merge request espressif/esp-idf!8377
2020-04-22 21:44:44 +08:00
Roland Dobai
14978aef70 CI: Add EOL to sdkconfig.defaults before adding sdkconfig.ci 2020-04-22 15:29:06 +02:00
Roland Dobai
511135989c tools: Autodetect the target of MAP files in idf_size.py 2020-04-22 13:12:56 +02:00
michael
1ca25688a8 freertos: place xQueueGenericCreateStatic into flash
`xQueueGenericCreateStatic` is placed into flash by the linker script to
reduce IRAM usage.  This will also cause the `xRingbufferCreate` not
not callable when cache is disabled.
2020-04-22 16:06:13 +08:00
michael
fdf983e0c4 spi: fix config break and reduce overhead of the bus lock on SPI1
The SPI bus lock on SPI1 introduces two side effects:

1. The device lock for the main flash requires the
`CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION` to be selected, however this
option is disabled by default in earlier IDF versions. Some developers
may find their project cannot be built by their old sdkconfig files.

2. Usually we don't need the lock on the SPI1 bus, due to it's
restrictions. However the overhead still exists in this case, the IRAM
cost for static version of semaphore functions, and the time cost when
getting and releasing the lock.

This commit:

1. Add a CONFIG_SPI_FLASH_BYPASS_MAIN_LOCK option, which will forbid the
space cost, as well as the initialization of the main bus lock.

2. When the option is not selected, the bus lock is used, the
`CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION` will be selected explicitly.

3. Revert default value of `CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION`
to `n`.

introduced in 49a48644e4.

Closes https://github.com/espressif/esp-idf/issues/5046
2020-04-22 16:06:13 +08:00
He Yin Ling
c2e068f0e4 Merge branch 'bugfix/ci_partition_table_detection' into 'master'
CI: Fix partition table detection if "partition" is in the project name

See merge request espressif/esp-idf!8223
2020-04-22 15:10:11 +08:00
Wang Jia Lin
e3f85faee5 Merge branch 'bugfix/fix_spi_flash_clock_config_error' into 'master'
flash: fix spi flash clock config error

Closes IDFGH-3077

See merge request espressif/esp-idf!8384
2020-04-22 12:44:17 +08:00
Krzysztof Budzynski
0842aed2bc Merge branch 'doc/submodule_links' into 'master'
doc: roles for linking files now correctly links to submodule repositories

Closes IDF-1584

See merge request espressif/esp-idf!8405
2020-04-22 01:49:18 +08:00
Alexey Gerenkov
c0610a49b4 tools: Updates OpenOCD version to 'v0.10.0-esp32-20200420' 2020-04-21 19:43:58 +03:00
Martin Vychodil
7491ea677a esp32s2: IRAM/DRAM memory protection
* new mem_prot API
* mem_prot on & locked by default (see Kconfig)
* feature activated in start_cpu0_default()

JIRA IDF-1355
2020-04-21 15:10:58 +02:00
Michael (XIAO Xufeng)
e2fc591a20 Merge branch 'bugfix/esp_flash_revert_qe_clear' into 'master'
esp_flash: fix the regression of non-quad mode by default chip driver, bugs in add_device and deprecate cs_id

See merge request espressif/esp-idf!8260
2020-04-21 17:52:42 +08:00
xueyunfei
b2a3b2a4f4 fixbug for set dhcp time fail 2020-04-21 14:28:39 +08:00
Angus Gratton
2433fe664d Merge branch 'doc/wdt_config' into 'master'
docs: Add details about WDT config

See merge request espressif/esp-idf!7838
2020-04-21 11:51:42 +08:00
Ivan Grokhotkov
1a7dbe22da Merge branch 'bugfix/wrong_cpp_guard' into 'master'
Bugfix/wrong cpp guard

Closes IDFGH-3129 and IDF-1219

See merge request espressif/esp-idf!8403
2020-04-20 18:47:28 +08:00
Ivan Grokhotkov
28b9acabe2 Merge branch 'bugfix/shell_runner_fails_pacman' into 'master'
Fix cmake component management test on shell runners

See merge request espressif/esp-idf!8398
2020-04-20 18:23:42 +08:00
Jiang Jiang Jian
80e5eb896c Merge branch 'optimization/DNS_get_function' into 'master'
lw-ip:optimization DNS get function

Closes WIFI-1566

See merge request espressif/esp-idf!8244
2020-04-20 16:52:22 +08:00
Marius Vikhammer
e7d92b857e doc: roles for linking files now correctly links to submodule repositories
Closes IDF-1584
2020-04-20 15:59:41 +08:00
Sergei Silnov
44d77c7100 Fix cmake component management test on shell runners 2020-04-20 09:25:03 +02:00
morris
5d0860f2e8 fix broken CONFIG_LEGACY_INCLUDE_COMMON_HEADERS 2020-04-20 14:01:09 +08:00
Ivan Grokhotkov
8ee1ec1270 Merge branch 'bugfix/pyyaml_test_config_output_unicode' into 'master'
test_config: pyyaml will generate !!python/unicode in test_config

See merge request espressif/esp-idf!8288
2020-04-20 02:21:11 +08:00
Krzysztof Budzynski
e45794d0cb Merge branch 'doc/pdf_generation' into 'master'
PDF generation for build doc

Closes IDF-1217 and IDF-1464

See merge request espressif/esp-idf!8110
2020-04-20 01:44:42 +08:00
Hrudaynath Dhabe
d8a7cfdde4 wpa_supplicant: Minor bugfix with wpa_supplicant debug logs. 2020-04-19 16:40:06 +05:30
dowster
7b02fdf45a Fix typo with sigmadelta.h #ifdef 2020-04-17 22:52:00 -05:00
Sachin Parekh
1e6c25992e esp32: IRAM_DATA_ATTR and IRAM_BSS_ATTR introduced
Using these attributes, .data and .bss can be placed in IRAM

Signed-off-by: Sachin Parekh <sachin.parekh@espressif.com>
2020-04-17 19:35:23 +05:30
Michael (XIAO Xufeng)
9d9d22c920 esp_flash: deprecate the cs_id member, which is no longer used.
We used to manually specify the CS id. However after the SPI bus lock is
introduced, the lock is responsible to assign the CS lines and provide
the CS id. The esp_flash driver now depends on the ID assigned by the
SPI bus lock, the configuration field is deprecated.
2020-04-17 18:15:33 +08:00
Michael (XIAO Xufeng)
5404e3d434 esp_flash: fix cache exception when CS pin is through IOMUX 2020-04-17 18:15:33 +08:00
Michael (XIAO Xufeng)
11501dbaa9 esp_flash: fix the cleanup when add device fails 2020-04-17 18:15:32 +08:00
Michael (XIAO Xufeng)
dc26065a72 esp_flash: fix the regression of non-quad mode by default chip driver
The issue is introduced in 571864e8ae. The
esp_flash API tries to clear the QE bit when the flash is not working in
quad modes.

However this introduces a regression, compared to earlier versions and
the legacy API. When the chip is not detected, the generic chip driver
is used, which cannot 100% handle the QE bit properly for all flash
vendors. There may be some flash chips (e.g. MXIC) that can be used in
dual modes by legacy API, but output wrong data when the esp_flash API
clears the QE bit in a wrong way.

This commit reverts the QE force clearing behavior, so that it's safer
for the generic chip driver to work under dual modes.
2020-04-17 18:15:31 +08:00
Ivan Grokhotkov
b732abec7f Merge branch 'bugfix/freemodbus_add_cpp_extern' into 'master'
freemodbus: add extern c block into common header for cpp

Closes IDFGH-3046

See merge request espressif/esp-idf!8281
2020-04-17 17:56:51 +08:00
Alex Lisitsyn
b1fe4c4cc6 freemodbus: add extern c block into common header for cpp 2020-04-17 17:56:50 +08:00
Ivan Grokhotkov
9003c01b4b Merge branch 'init_priority_fix' into 'master'
CXX: make __attribute__((init_priority(n))) work

See merge request espressif/esp-idf!8276
2020-04-17 17:56:10 +08:00
xiehang
2d6f7f25e3 esp_wifi:Add softap example channel configuration 2020-04-17 17:31:46 +08:00
chenjianqiang
ec9cc27e08 flash: fix spi flash clock config error
Closes https://github.com/espressif/esp-idf/issues/5099
2020-04-17 16:26:26 +08:00
Ivan Grokhotkov
46e9aef6c9 tools/check_python_dependencies: print diagnostic info on failure
Helps collect more data for cases such as:
https://github.com/espressif/esp-idf/issues/5133
2020-04-16 11:58:16 +02:00
Ivan Grokhotkov
f245a518be Merge branch 'bugfix/idfpy_debug_openocd_error' into 'master'
idf.py: debug ext prints detailed info/hint on common openocd issues

See merge request espressif/esp-idf!8344
2020-04-16 14:26:38 +08:00
Mahavir Jain
4e71cb3e68 Merge branch 'bugfix/transport_ssl_reset_state_on_closure' into 'master'
transport_ssl: reset state on connection closure

See merge request espressif/esp-idf!8355
2020-04-16 12:38:58 +08:00
David Čermák
d043674b2b Merge branch 'feature/lwip_napt_forward' into 'master'
lw-IP: NAT support

Closes WIFI-931

See merge request espressif/esp-idf!7681
2020-04-16 03:03:00 +08:00
Krzysztof Budzynski
412c43d9b9 Merge branch 'docs/saola-1-guide' into 'master'
Add links to translation in Saola board user guide

See merge request espressif/esp-idf!8124
2020-04-15 22:23:27 +08:00
Wang Ning
efba523b54 Add links to translation in Saola board user guide 2020-04-15 22:23:26 +08:00
Krzysztof Budzynski
50e5549acd Merge branch 'docs/tcpip_adapter_migration_update' into 'master'
Fix a typo error based on DOC-111

See merge request espressif/esp-idf!8323
2020-04-15 22:03:58 +08:00
Andrei Gramakov
283026a761 vfs: semihost driver bugfix 2020-04-15 15:46:47 +02:00
Ivan Grokhotkov
882fd1b880 Merge branch 'bugfix/make_quoting_esptool_port' into 'master'
make: Fix quoting when flashing port is set via sdkconfig file

Closes IDFGH-3103 and IDFGH-3083

See merge request espressif/esp-idf!8352
2020-04-15 20:37:20 +08:00
xiehang
5d20610874 esp_wifi: Update esp32s2 phy lib v303 2020-04-15 20:18:42 +08:00
Mahavir Jain
49ce8d3fe5 transport_ssl: reset state on connection closure
For url redirection cases (HTTP status 301/302), internal
transport ssl connection state must be reinitialized for
successful (new) connection on updated url.

Closes https://github.com/espressif/esp-idf/issues/4598
2020-04-15 15:22:32 +05:30
Marius Vikhammer
8a3d806798 doc: update CI to build PDF 2020-04-15 17:14:27 +08:00
Marius Vikhammer
407275f681 doc: add latex and PDF generation to build_docs
Adds options for generating tex-files and PDFs when building documentation

Closes IDF-1217
Closes IDF-1464
2020-04-15 17:14:22 +08:00
Wang Ning
6d3f35f651 Fix a typo error based on DOC-111 2020-04-15 09:08:43 +00:00
Angus Gratton
b18ce2f686 doc: Add configuration information about INT & Task WDTs 2020-04-15 17:30:05 +10:00
Angus Gratton
100578a9e9 heap: Only fill new heaps with FREE_FILL_PATTERN if Comprehensive poisoning is on
Significantly speeds up heap initialization at startup when default "Light" heap
poisoning is enabled.

Tip via reddit user LinkeSeitentasche https://www.reddit.com/r/esp32/comments/fnj51a/a_guide_to_improving_esp32_boot_speed/
2020-04-15 07:16:08 +00:00
Angus Gratton
433c1c9ee1 Merge branch 'bugfix/ds_mpi_lock' into 'master'
crypto: DS uses RSA peripheral, added shared lock

See merge request espressif/esp-idf!8274
2020-04-15 15:15:25 +08:00
David Cermak
2c2f909133 idf.py: debug ext prints detailed info/hint on common openocd issues 2020-04-15 09:07:17 +02:00
David Čermák
7993d5c1f7 Merge branch 'bugfix/mqtt_aborts' into 'master'
esp_mqtt_abort_connection: Fixed an issue which could result in a race condition

Closes IDF-1521

See merge request espressif/esp-idf!8205
2020-04-15 14:37:01 +08:00
David Čermák
5e51b5dd09 Merge branch 'bugfix/ws_client_fragmented_send' into 'master'
ws_client: fix fragmented send setting proper opcodes

Closes IDFGH-2938

See merge request espressif/esp-idf!8112
2020-04-15 14:06:42 +08:00
Jiang Jiang Jian
80cee782a6 Merge branch 'bugfix/make_compile_phy_multiple_bin_error' into 'master'
bugfix: fix make compile phy multiple bin error

See merge request espressif/esp-idf!8299
2020-04-15 14:03:27 +08:00
David Čermák
e7b80f2b71 Merge branch 'feature/pppos_client_test' into 'master'
PPPoS client test

Closes IDF-310, WIFI-1652, IDFGH-2844, and IDFGH-2732

See merge request espressif/esp-idf!7794
2020-04-15 13:57:36 +08:00
Angus Gratton
e02f5fbbed Merge branch 'bugfix/get_component_requirements' into 'master'
cmake: fix getting component requirements

See merge request espressif/esp-idf!8171
2020-04-15 13:52:49 +08:00
Angus Gratton
90b3676280 make: Fix quoting when flashing port is set via sdkconfig file
Regression in 862fa815ff

Closes https://github.com/espressif/esp-idf/issues/5124
Closes https://github.com/espressif/esp-idf/issues/5104
2020-04-15 15:43:36 +10:00
Jiang Jiang Jian
0f1680c752 Merge branch 'feature/dpp_porting' into 'master'
wpa_supplicant: Port DPP crypto functionality from mainline supplicant repository.

See merge request espressif/esp-idf!7513
2020-04-15 13:37:30 +08:00
Mahavir Jain
b28a5cfd22 Merge branch 'feature/mbedtls_ecjpake_config_option' into 'master'
mbedtls: add configuration options for EC-JPAKE

Closes IDFGH-3085

See merge request espressif/esp-idf!8325
2020-04-15 12:57:10 +08:00
xueyunfei
8b036a8405 optimization DNS get function 2020-04-15 03:06:28 +00:00
ronghulin
f5f2cbcb50 bugfix: fix make compile phy multiple bin error 2020-04-15 10:19:54 +08:00
Angus Gratton
552bf7be4a doc: Specify that sleep wakeup source restrictions apply to all current ESP32 revisions
Closes https://github.com/espressif/esp-idf/issues/4681

Discussion https://esp32.com/viewtopic.php?f=13&t=15145
2020-04-15 09:39:10 +10:00
David Cermak
6aabfd50d5 pppos_client: support for PPPAUTHTYPE_NONE
Closes https://github.com/espressif/esp-idf/issues/4616
Closes WIFI-1652
2020-04-14 21:46:07 +02:00
David Cermak
817c0e3019 esp_modem: UART runtime configuration of esp-modem
Basic set of configuration related to UART moved from KConfig
to runtime configuration structure to simplify reusing the component for
testing and examples.
2020-04-14 21:46:07 +02:00
Axel Lin
0784426d6b esp_modem: Ensure uart_param_config and uart pins are set before uart_driver_install
Fixes Guru Meditation Error: Core 0 panic'ed (LoadProhibited) when config with
CONFIG_PM_ENABLE=y && CONFIG_PM_DFS_INIT_AUTO=y.

Signed-off-by: Axel Lin <axel.lin@gmail.com>

Merges https://github.com/espressif/esp-idf/pull/4904
2020-04-14 21:46:07 +02:00
David Cermak
636621d1c5 pppos_client: Add a test application for pppos_client
Adding testing facilities for pppos-client including esp-modem component
and PPP client in lwip. Testing is provided with PPP server running on
rpi.
2020-04-14 21:46:07 +02:00
David Cermak
745f062e07 esp_modem: pppos_client modem to use uart with REF_TICK
pppos_client example used the UART default clock configuration which might
cause issues if power management enabled. Settings updated to UART_SCLK_REF_TICK
Also need to explicitly disable RX interrupts in UART pattern detection
mode.

Closes https://github.com/espressif/esp-idf/issues/4801
2020-04-14 21:46:07 +02:00
Piyush Shah
6c09993e20 esp_mqtt_abort_connection: Fixed an issue which could result in a race condition and subsequent crash 2020-04-14 16:18:20 +02:00
David Cermak
14992e62c5 ws_client: fix fragmented send setting proper opcodes
Previous implementation violated the RFC by having both the actual opcode and WS_FIN flag set for all fragments of a message.
Fixed by setting the opcode only for the first fragment and WS_FIN for the last one

Closes IDFGH-2938
Closes https://github.com/espressif/esp-idf/issues/4974
2020-04-14 16:11:32 +02:00
David Cermak
94d320473c LwIP: NAPT functionality
Adds Kconfig option to enable experimental NAPT feature for IP packet
forwarding across interfaces.

Closes https://github.com/espressif/esp-idf/issues/1527
2020-04-14 16:04:37 +02:00
kapil.gupta
ab784bb53a wpa_supplicant: Port dpp feature from supplicant
Add files required for DPP feature from upstream.
These file expose the functionality to create DPP packets.
Ported crypto layer from openssl to mbedtls.

Interfacing to use these API will be added in seperate commit
2020-04-14 18:53:35 +05:30
kangping
4883010f40 mbedtls: add configuration options for EC-JPAKE
Closes https://github.com/espressif/esp-idf/pull/5106
2020-04-14 12:22:16 +00:00
Mahavir Jain
d85d3d969f Merge branch 'bugfix/remove_libsodium_s2_config' into 'master'
unit_test_app: remove libsodium config for esp32s2

See merge request espressif/esp-idf!8341
2020-04-14 20:19:48 +08:00
Ivan Grokhotkov
5cf8c68881 Merge branch 'bugfix/idf_py_ext_debug_ut_coex' into 'master'
idf.py: fix debug extenstion to work with unit tests

See merge request espressif/esp-idf!8306
2020-04-14 17:30:59 +08:00
Mahavir Jain
b83c3bbb66 unit_test_app: remove libsodium config for esp32s2
This configuration overflows DRAM size for esp32s2 and hence
resulting in CI failure. Removing this config as it does not
add any value in esp32s2 context.
2020-04-14 12:35:19 +05:30
Mahavir Jain
4f8a88b145 Merge branch 'bugfix/esp_tls_conn_write_doc' into 'master'
Fixed `esp_tls_conn_write` documentation.

See merge request espressif/esp-idf!7999
2020-04-14 14:34:08 +08:00
Anton Maklakov
e24da716f3 Merge branch 'bugfix/ci_public_header_debug' into 'master'
ci: public header check to display error messages if verbose is off

See merge request espressif/esp-idf!8283
2020-04-12 01:21:59 +08:00
Krzysztof Budzynski
e1ab4b6711 Merge branch 'bugfix/uart_echo_readme' into 'master'
example: Remove duplicate commands and invalid serial port information

Closes IDFGH-3022

See merge request espressif/esp-idf!8295
2020-04-11 01:52:01 +08:00
Jiang Jiang Jian
8a7db8f513 Merge branch 'bugfix/fix_errors_with_mbedtls_disabled' into 'master'
wpa_supplicant: Fix compilation errors when USE_MBEDTLS is disabled.

See merge request espressif/esp-idf!8305
2020-04-10 21:17:03 +08:00
Jiang Jiang Jian
4d9bb3ca71 Merge branch 'bugfix/wifi_station_examples_event_error' into 'master'
Fix instance names for event handler unregister

Closes WIFI-2122

See merge request espressif/esp-idf!8282
2020-04-10 20:56:39 +08:00
Marius Vikhammer
71ab83cdfb aes: increase timeout for "mbedtls AES performance" test
Timeout increased to 60 sec from default 30 sec.

Test would occasionally timeout on S2 due to cache misses.
2020-04-10 15:49:40 +08:00
Michael (XIAO Xufeng)
69b6ca6a70 Merge branch 'bugfix/mcpwm_period_error_MR' into 'master'
bugfix(mcpwm_period_error): fix the issue of wrong period

See merge request espressif/esp-idf!7734
2020-04-10 15:26:12 +08:00
Jiang Jiang Jian
3feffdfe03 Merge branch 'bugfix/psram_single_bit_error' into 'master'
bugfix(psram): support psram 2T mode to fix single bit error

See merge request espressif/esp-idf!6936
2020-04-10 15:04:15 +08:00
Wang Jia Lin
b3d8b6a250 Merge branch 'bugfix/fix_esp32s2_soc_bug' into 'master'
RTC regulator & voltage calibration fixes

See merge request espressif/esp-idf!8137
2020-04-10 14:25:41 +08:00
Chai Ji’e
dac17709ec RTC regulator & voltage calibration fixes 2020-04-10 14:25:40 +08:00
David Cermak
ec391ddfa1 idf.py: fix debug extenstion to work with unit tests 2020-04-09 14:54:10 +02:00
Sagar Bijwe
665b0b4b3b wpa_supplicant: Fix compilation errors when USE_MBEDTLS is disabled.
This is a regression from earlier commit related to TLSV12 which used
sha functions that are currently declared static.
Solution: Follow upstream code structure and resolve the errors.
2020-04-09 16:53:41 +05:30
Marius Vikhammer
a2a204c2b9 crypto: DS uses RSA peripheral, added shared lock 2020-04-09 11:11:04 +00:00
Ivan Grokhotkov
a521921788 Merge branch 'feature/build_app_readable_multi_target' into 'master'
build_app: make multi target support readable

See merge request espressif/esp-idf!8275
2020-04-09 16:40:57 +08:00
Fu Hanxi
5b2fa1a5ad build_app: make multi target support readable 2020-04-09 16:40:57 +08:00
Anton Maklakov
445e847274 Merge branch 'bugfix/ci_app_test_dependency' into 'master'
CI: correct example vs. custom tests dependency

See merge request espressif/esp-idf!8258
2020-04-09 14:02:13 +08:00
David Cermak
ce0c70770d ci: public header check to display error messages if verbose is off
Also added a command line option to reduce the analysis to a specific
directory only. This is useful for local execution for checking updated
headers with verbose flag set.
2020-04-09 07:44:55 +02:00
Angus Gratton
766d8844e6 Merge branch 'bugfix/test_sha_ccomp_timer' into 'master'
esp32s2 sha test: update "Test esp_sha" to use cache compensated timer for performance measuring

See merge request espressif/esp-idf!8237
2020-04-09 12:25:58 +08:00
Ivan Grokhotkov
2e14149bff Merge branch 'feat/monitor_remake_with_serial_arg' into 'master'
idf_monitor: support to re-flash with the using port

Closes IDFGH-2479 and IDF-836

See merge request espressif/esp-idf!6373
2020-04-09 05:43:32 +08:00
Ivan Grokhotkov
8bf18d868a Merge branch 'bugfix/crt_bundle_mem_leak' into 'master'
cert bundle: Fix memory leak during cert verification

Closes IDFGH-2950

See merge request espressif/esp-idf!8117
2020-04-09 05:41:41 +08:00
Ivan Grokhotkov
7a972c7191 Merge branch 'bugfix/nvs_erase_more_graceful' into 'master'
NVS: more graceful behavior for erasing partitions

See merge request espressif/esp-idf!7885
2020-04-09 05:41:17 +08:00
David Cermak
6d07bcd611 mqtt-tests: rename tests to match the actual group 2020-04-08 14:41:05 +02:00
David Cermak
25803b9dc4 ci: run custom-test separately from example-tests 2020-04-08 14:41:05 +02:00
Roland Dobai
6adb1a0609 example: Remove duplicate commands and invalid serial port information
Closes https://github.com/espressif/esp-idf/issues/5049
2020-04-08 13:17:48 +02:00
Angus Gratton
8ded54a65d Merge branch 'feature/easy_debug' into 'master'
idf.py: add debug related targets

Closes IDF-890

See merge request espressif/esp-idf!5602
2020-04-08 16:08:10 +08:00
Ivan Grokhotkov
651dbe48e7 Merge branch 'feature/gcovr' into 'master'
app_trace: Add coverage generations by gcovr

Closes IDF-780

See merge request espressif/esp-idf!8168
2020-04-08 15:57:08 +08:00
Angus Gratton
9300f0e7b0 Merge branch 'bugfix/logging_compilation_fix_anti_rollback' into 'master'
Minor fix logging issue hindering compilation on anti rollback.

See merge request espressif/esp-idf!8105
2020-04-08 15:53:48 +08:00
Angus Gratton
2bdf22b25d Merge branch 'bugfix/sha_alloc_fallback' into 'master'
sha: add fallback for when memory alloc fails

See merge request espressif/esp-idf!8177
2020-04-08 14:15:52 +08:00
Renz Bagaporo
bd8f616f82 cmake: fix getting component requirements 2020-04-08 05:42:15 +00:00
Angus Gratton
573d5f4eb0 Merge branch 'bugfix/flash_target_deps_on_spiffs_gen_images' into 'master'
spiffs: restore dependency of flash targets on spiffs images

See merge request espressif/esp-idf!8277
2020-04-08 12:43:11 +08:00
Angus Gratton
6c1f12066d Merge branch 'bugfix/error_on_building_in_idf_path' into 'master'
cmake: Error out when building in IDF_PATH dir

See merge request espressif/esp-idf!8284
2020-04-08 12:42:18 +08:00
Angus Gratton
73825cfd8a Merge branch 'bugfix/elf_dir' into 'master'
cmake: add elf dir information

See merge request espressif/esp-idf!8264
2020-04-08 12:41:23 +08:00
Angus Gratton
5d3591c037 Merge branch 'bugfix/mpu_hal' into 'master'
soc: mpu hal fixes

See merge request espressif/esp-idf!7895
2020-04-08 12:40:53 +08:00
Renz Bagaporo
acb7a211dd partition_table: do not always display partition table contents on build 2020-04-08 11:38:43 +08:00
Fu Hanxi
76d118577e test_config: fix the bug that will generate !!python/unicode
As an example, [7964999 example_test_002_](https://gitlab.espressif.cn:6688/espressif/esp-idf/-/jobs/7964999/artifacts/file/examples/test_configs/example_test_002_.yml)
2020-04-08 11:19:13 +08:00
Marius Vikhammer
d193790f85 doc: update flash encryption with S2 specific content 2020-04-08 11:17:31 +08:00
Kirill Chalov
0cc9ffb8f7 Implement comments and add info on ESP32S2 2020-04-08 10:30:22 +08:00
Kirill Chalov
9ed60af1f2 Review security/flash-encryption.rst 2020-04-08 10:30:22 +08:00
Jakob Hasse
4943b1cbf0 CXX: make __attribute__((init_priority(n))) work
* Added corresponding test case
* Moved all C++ init tests to separate file

Closes https://github.com/espressif/esp-idf/issues/5038
2020-04-08 09:11:54 +08:00
David Cermak
3b5c3d6521 idf.py: debug targets for easier execution of openocd, gdb, gdbui
Support for execution of asynchronous target, such as openocd, which
by default runs in the background, but if it's the only target idf.py
outputs the openocd in the console waiting for termination by user.

Supports also blocking commands gdb and gdbtui to start a debugging
session in an active console.

Supports running gdbgui running a UI debugging session in a browser
window, using the active console for other commands, such as openocd
or monitor.

Supports combining the debug targets in one action list, such as
idf.py openocd gdbgui monitor
2020-04-07 17:37:48 +02:00
David Cermak
3116dfede7 msys2: add package mingw-w64-i686-gcc for installing python packages 2020-04-07 16:58:26 +02:00
ronghulin
f0744184f5 fix: add event unregister comment 2020-04-07 21:53:50 +08:00
Renz Bagaporo
4eb83cacd0 cmake: error out on building in IDF_PATH root dir 2020-04-07 20:51:53 +08:00
Jari Jokinen
266b0c3889 Fix instance names for event handler unregister
Signed-off-by: ronghulin <ronghulin@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/5064
2020-04-07 20:30:19 +08:00
Marius Vikhammer
832599718d cert bundle: add server_root.pem incase bundle needs to be regenerated 2020-04-07 18:51:26 +08:00
Marius Vikhammer
9ccc5e6d84 cert bundle: Fix memory leak during cert verification
Also refactors the unit tests and fixes the test case, as it was giving false positives.

Closes IDFGH-2950

Closes https://github.com/espressif/esp-idf/issues/4983
2020-04-07 18:50:30 +08:00
Ivan Grokhotkov
ef47839628 Merge branch 'bugfix/macos_build_test' into 'master'
ci: use default Bash version in macOS test

See merge request espressif/esp-idf!8278
2020-04-07 18:15:42 +08:00
Renz Bagaporo
07f9978df7 cmake: add elf dir information
Solves https://www.esp32.com/viewtopic.php?f=13&t=14784&p=57557&hilit=assumes#p57557
2020-04-07 17:19:33 +08:00
Renz Bagaporo
9a020cbb40 spiffs: restore dependency of flash targets on spiffs images
Closes https://github.com/espressif/esp-idf/issues/5066
2020-04-07 17:01:58 +08:00
Anton Maklakov
52338e9cda Merge branch 'maint/update_oocd_tool_ver' into 'master'
Updates OpenOCD version to 'v0.10.0-esp32-20200406'

See merge request espressif/esp-idf!8271
2020-04-07 16:48:36 +08:00
Ivan Grokhotkov
98185db8ad ci: use default Bash version in macOS test 2020-04-07 09:50:59 +02:00
Jiang Jiang Jian
5b89cc3d62 Merge branch 'bugfix/fix_API_esp_wifi_stop_crash_issue' into 'master'
bugfix: fix esp_wifi_stop crash issue

Closes WIFI-2078

See merge request espressif/esp-idf!8180
2020-04-07 14:21:02 +08:00
Renz Bagaporo
d2ad5d937e soc: add test for setting mpu illegal access 2020-04-07 11:38:26 +08:00
Renz Bagaporo
ece80dbc8e soc: mpu hal fixes 2020-04-07 11:38:26 +08:00
ronghulin
c65c30c60a bugfix: fix esp_wifi_stop crash issue 2020-04-07 11:12:43 +08:00
Angus Gratton
604360b98c Merge branch 'feature/efuse_purpose_api' into 'master'
efuse: Add an API to return the efuse descriptor for a key block's purpose field

See merge request espressif/esp-idf!8269
2020-04-07 08:26:45 +08:00
michael
8aafb6b513 idf_monitor: support to re-flash with the using port
This commit make idf_monitor overwrite the ESPPORT environment variable
with the port it's using, and re-run make with the modified environment
variable. In this way, the make invoked will inherit the idf_monitor's
port.

Closes https://github.com/espressif/esp-idf/issues/4591
2020-04-07 01:44:26 +08:00
michael
862fa815ff esptool: add quotes to allow complicated serial port path
Especially for Windows COM format: \\\.\COMx, introduced in
b00cea250f
2020-04-07 01:31:39 +08:00
Alexey Gerenkov
e60edcfbcf tools: Updates OpenOCD version to 'v0.10.0-esp32-20200406' 2020-04-06 19:18:26 +03:00
Ivan Grokhotkov
f7ca36513e Merge branch 'feature/semihosting_refactoring' into 'master'
Feature/semihosting refactoring

See merge request espressif/esp-idf!7475
2020-04-06 23:44:52 +08:00
Mahavir Jain
9d67c1548e Merge branch 'bugfix/esp_http_client_add_warning' into 'master'
Add error print in http_header_generate_string if buffer size

Closes IDFGH-2996

See merge request espressif/esp-idf!8265
2020-04-06 18:02:41 +08:00
Anton Maklakov
fa3131b870 Merge branch 'bugfix/bash_bin_env' into 'master'
global: use '/usr/bin/env bash' instead of '/usr/bin/bash' in shebangs

Closes IDFGH-708

See merge request espressif/esp-idf!8235
2020-04-06 17:51:43 +08:00
Angus Gratton
16ad24dd00 efuse: Add an API to return the efuse descriptor for a key block's purpose field 2020-04-06 18:33:11 +10:00
Shubham Kulkarni
471b40b0f0 http_header.c: Add error print in http_header_generate_string if buffer size is less than required size
Closes: https://github.com/espressif/esp-idf/issues/5028
2020-04-06 13:22:08 +05:30
Anton Maklakov
d3c301cc99 Merge branch 'bugfix/ttfw_print_debug_exception' into 'master'
ci: ttfw ignored a test failure if exception in debug log

See merge request espressif/esp-idf!8222
2020-04-06 15:35:18 +08:00
Marius Vikhammer
0a41bd3833 esp32s2 sha test: update "Test esp_sha" to use cache compensated timer for performance measuring 2020-04-06 06:37:28 +00:00
David Cermak
e57dbf7c27 http-server-example: correction of regex waiting to acquire IP address
Since the recent refactoring of spi bus_lock comonent introduced heavy logging under debug/verbose level of verbosity, the http-server test executed in the CI became less stable due to complicated regex. Fixed by removing the first optional group
2020-04-05 20:07:27 +02:00
David Cermak
a463e80d43 ci: fix ttfw ignoring test failure if exception in print_debug_info 2020-04-05 20:07:27 +02:00
Jiang Jiang Jian
7d0f1536e4 Merge branch 'bugfix/fix_adc_init_code_setting_for_esp32s2' into 'master'
driver(adc): fix adc calibration for esp32s2

See merge request espressif/esp-idf!8209
2020-04-04 16:06:16 +08:00
fuzhibo
406b8f423d driver(adc): add adc initial code before app_main for esp32s2.
update phy v301
2020-04-04 10:15:30 +08:00
Ivan Grokhotkov
91fdac34da Merge branch 'bugfix/export_path_checks' into 'master'
tools: export script improvements

Closes IDFGH-2277

See merge request espressif/esp-idf!8224
2020-04-03 22:52:36 +08:00
Ivan Grokhotkov
7693226efe Merge branch 'bugfix/add_ut_job' into 'master'
ci: add UT job

See merge request espressif/esp-idf!8251
2020-04-03 22:47:15 +08:00
Andrei Gramakov
305592f1aa vfs: semihosting driver update supporting semihosting_common handler from OpenOCD
- implemented SYS_DRVINFO syscall and version handling for the semihosting driver
- removed a support of old oocd versions

renamed kconfig options:
- CONFIG_SEMIHOSTFS_HOST_PATH_MAX_LEN to CONFIG_VFS_SEMIHOSTFS_HOST_PATH_MAX_LEN
- CONFIG_SEMIHOSTFS_MAX_MOUNT_POINTS to CONFIG_VFS_SEMIHOSTFS_MAX_MOUNT_POINTS
2020-04-03 16:19:06 +02:00
Michael (XIAO Xufeng)
a0e66fef08 spi: fix the memory accessed while cache disabled issue in the bus lock when log level is verbose
When CONFIG_LOG_DEFAULT_LEVEL is verbose, the ESP_(EARLY_)LOGx will try
to print with format string and tag out of the DRAM while the cache is
disabled. This commit puts the TAG into DRAM, and uses the
'ESP_DRAM_LOGx` to fix the cache miss bug.

Also fixes a LoadProhibited issue when last_dev is NULL.
2020-04-03 15:04:52 +02:00
Ivan Grokhotkov
b1f0ffffc3 ci: add UT job 2020-04-03 14:51:37 +02:00
Ivan Grokhotkov
60086d1bd0 Merge branch 'refactor/systimer_hal' into 'master'
systimer: add HAL layer

See merge request espressif/esp-idf!8115
2020-04-03 18:17:18 +08:00
Roland Dobai
512906fa32 CI: Fix partition table detection if "partition" is in the project name 2020-04-03 11:41:06 +02:00
David Čermák
0f6b0f13b0 Merge branch 'bugfix/ws_example_test_format' into 'master'
Fix format string in websocket example

Closes IDFGH-3025

See merge request espressif/esp-idf!8239
2020-04-03 16:40:48 +08:00
Michael (XIAO Xufeng)
61ce037fc1 Merge branch 'feat/esp_flash_support_mxic' into 'master'
esp_flash: support MXIC flash chips

See merge request espressif/esp-idf!8037
2020-04-03 16:04:49 +08:00
Michael (XIAO Xufeng)
2f8a13c89b Merge branch 'feat/esp_dram_log' into 'master'
log: new macros to log when the cache is disabled

See merge request espressif/esp-idf!8135
2020-04-03 14:51:02 +08:00
Angus Gratton
a7c2e86f87 Merge branch 'feature/ds_peripheral' into 'master'
Security: ESP32S2 Digital Signature HW support

See merge request espressif/esp-idf!8080
2020-04-03 12:10:13 +08:00
Jakob Hasse
98b1da9e60 NVS: more graceful behavior for erasing partitions 2020-04-03 11:48:07 +08:00
Ivan Grokhotkov
a1f5866424 tools: export.{sh,fish}: add otatool.py to PATH 2020-04-03 01:15:29 +02:00
Ivan Grokhotkov
1c4c584e28 tools: export.sh: better detection and checking of IDF_PATH
1. detect IDF_PATH in zsh, if it is not set
2. if IDF_PATH is set, check that it is valid
3. make sure IDF_PATH is exported, not just set

Related to https://github.com/espressif/esp-idf/issues/3793
Closes https://github.com/espressif/esp-idf/pull/4418
Closes https://github.com/espressif/esp-idf/issues/4770
2020-04-03 01:15:29 +02:00
Ivan Grokhotkov
e94288da31 global: use '/usr/bin/env bash' instead of '/usr/bin/bash' in shebangs
Using the method from @cemeyer
(https://github.com/espressif/esp-idf/pull/3166):

find . -name \*.sh -exec sed -i "" -e 's|^#!.*bin/bash|#!/usr/bin/env bash|' {} +

Closes https://github.com/espressif/esp-idf/pull/3166.
2020-04-03 01:10:02 +02:00
Elia Bieri
5288a797ef Fix format string in websocket example 2020-04-02 22:48:58 +02:00
Anton Maklakov
e599b794be Merge branch 'bugfix/ci_nr_ut_jobs' into 'master'
ci: raise number of parallel job count for S2 unit tests

See merge request espressif/esp-idf!8215
2020-04-03 01:06:28 +08:00
michael
ed012abcfa ci: increase S2 job count 2020-04-02 23:55:11 +08:00
Jiang Jiang Jian
79eb0d7a7d Merge branch 'bugfix/fix_ble_hci_desync_deadlock' into 'master'
components/bt: Fix for HCI desync deadlock issue in BLE controller

See merge request espressif/esp-idf!8106
2020-04-02 22:22:17 +08:00
Krzysztof Budzynski
7a92dd431f Merge branch 'bugfix/partition_types_cxx' into 'master'
docs: Explain custom partition types/subtypes in more detail

Closes IDFGH-2882

See merge request espressif/esp-idf!8192
2020-04-02 21:52:52 +08:00
Jiang Jiang Jian
59660c67cd Merge branch 'mesh/power_save_function_with_local_duty' into 'master'
mesh/ps: add mesh network power save function

See merge request espressif/esp-idf!8203
2020-04-02 19:43:12 +08:00
Angus Gratton
dcaa9e385a Merge branch 'bugfix/restore_rtc_wdt_driver' into 'master'
Restore rtc_wdt driver

Closes IDF-1514

See merge request espressif/esp-idf!8148
2020-04-02 19:11:49 +08:00
sushant.chougule
4cd6f09427 components/bt: Fix for HCI desync deadlock issue in BLE controller 2020-04-02 09:54:16 +00:00
David Cermak
09ca8a273c ci: raise number of parallel job count for S2 unit tests 2020-04-02 11:43:03 +02:00
Michael (XIAO Xufeng)
188240d5c7 log: new macros to log when the cache is disabled 2020-04-02 15:35:13 +08:00
David Čermák
3de8b7922f Merge branch 'bugfix/reenable_esp32s2_ut' into 'master'
Re-enable mqtt/esp-netif unit tests for esp32s2

Closes IDF-1398 and IDF-1396

See merge request espressif/esp-idf!8038
2020-04-02 14:43:21 +08:00
Mahavir Jain
6866f9c996 Merge branch 'bugfix/eth2ap' into 'master'
example/eth2ap: Fix station multi-connection problem

See merge request espressif/esp-idf!8051
2020-04-02 13:18:42 +08:00
Jiang Jiang Jian
037ad6f64e Merge branch 'bugfix/fix_supplicant_tlsv12' into 'master'
wpa_supplicant: Fix wpa_supplicant TLS 1.2 issues

Closes WIFI-2003

See merge request espressif/esp-idf!8147
2020-04-02 12:17:59 +08:00
Jiang Jiang Jian
20a972d91e Merge branch 'feat/ble_mesh_ble_adv_simultaneously' into 'master'
ble_mesh: Support BLE advertising simultaneously

Closes BLEMESH-125

See merge request espressif/esp-idf!7802
2020-04-02 12:17:42 +08:00
Jiang Jiang Jian
881cdbd743 Merge branch 'nimble/fix_ble_hs_reset' into 'master'
NimBLE: Reset master and slave states on host reset

Closes IDFGH-2743

See merge request espressif/esp-idf!8139
2020-04-02 12:16:49 +08:00
Michael (XIAO Xufeng)
15026d1b84 Merge branch 'bugfix/fix_adc_driver_for_esp32s2' into 'master'
Bugfix/fix adc driver for esp32s2

Closes IDF-1448, IDF-1449, IDF-1450, IDF-1451, and IDF-1458

See merge request espressif/esp-idf!7776
2020-04-02 11:02:21 +08:00
lly
a919e20c1a ble_mesh: Support BLE advertising simultaneously 2020-04-02 01:03:25 +00:00
Angus Gratton
d76bf19ffd docs: Explain custom partition types/subtypes in more detail
Including how to use with C++ (closes https://github.com/espressif/esp-idf/pull/1832)
2020-04-02 10:00:17 +11:00
qiyuexia
6d01dc4cfa mesh/ps: add mesh network power save function 2020-04-01 22:09:23 +08:00
Michael (XIAO Xufeng)
3b429766bc esp_flash: support MXIC flash chips
The default chip driver (chip_generic) use command 01H + 2 bytes to
clear the QE bit. However this will accidently change the configuration
register value of the MXIC chip.

MXIC chip driver is added to fix that.
2020-04-01 20:54:23 +08:00
Krzysztof Budzynski
8210802703 Merge branch 'bugfix/expand_defines_dict' into 'master'
doc: fix defines dict expansion

See merge request espressif/esp-idf!8169
2020-04-01 20:36:12 +08:00
InfiniteYuan
1f43f025d8 example/eth2ap: fix station multi-connection problem and add channel config item.
Closes https://github.com/espressif/esp-idf/issues/5029
2020-04-01 19:20:30 +08:00
Vikram Dattu
60dc4285f4 Fixed esp_tls_conn_write documentation.
Return value `0` in actual is case of partial write and not error as per `mbedtls_ssl_write`
Modified documentation of `esp_tls_conn_write` accordingly.

Even `esp_wolfssl_write` API considers just negative returns as errors.

Signed-off-by: Vikram Dattu <vikram.dattu@espressif.com>
2020-04-01 11:04:09 +00:00
Ivan Grokhotkov
168660aebf Merge branch 'feature/toolchain_2020r1-RC1' into 'master'
Toolchain 2020r1 support bringing (esp32, esp32s2)

See merge request espressif/esp-idf!7509
2020-04-01 18:17:28 +08:00
Prasad Alatkar
be8c847b06 NimBLE: Reset master and slave states on host reset
Closes IDFGH-2743 & IDFGH-2956
2020-04-01 10:09:26 +00:00
Mahavir Jain
05d95c0e7e Merge branch 'bugfix/esp_http_server_docs' into 'master'
Fixed syntax error in esp_http_server.rst

See merge request espressif/esp-idf!8170
2020-04-01 17:48:16 +08:00
morris
890fc0fe67 esp_timer: alias esp_timer_get_time
alias esp_timer_get_time to improve performance
2020-04-01 16:51:43 +08:00
morris
2d1885b906 systimer: add HAL layer 2020-04-01 16:51:43 +08:00
Krzysztof Budzynski
53879a853d Merge branch 'doc/openocd_security_features' into 'master'
doc: Add caveats about using JTAG debugging with hardware security features

See merge request espressif/esp-idf!8091
2020-04-01 16:50:52 +08:00
Darian Leung
53928ab98b Restore rtc_wdt driver
This commit restores rtc_wdt.c and rtc_wdt.h that were removed
in commit 91841a53.
2020-04-01 16:13:35 +08:00
Ivan Grokhotkov
1ab285bebe Merge branch 'bugfix/ci_config_merge_newlines' into 'master'
ci: Support joining sdkconfig.ci files that don't end in a newline

See merge request espressif/esp-idf!8198
2020-04-01 16:08:02 +08:00
David Cermak
4fad90b0b1 esp-netif: reenabled dhcp unit tests for esp32s2 2020-04-01 07:06:13 +00:00
David Cermak
db677e6898 mqtt: reenable outbox unit tests for esp32s2 2020-04-01 07:06:13 +00:00
Angus Gratton
4358f3b573 doc: Add warnings about using JTAG debugging with hardware security features
This is related to the following issues but is not a fix, just documentation of a workaround until we can
improve the support:
https://github.com/espressif/esp-idf/issues/4878
https://github.com/espressif/esp-idf/issues/4734
2020-04-01 17:36:08 +11:00
Angus Gratton
ff427c9650 ci: Support joining sdkconfig.ci files that don't end in a newline
If trailing newline is missing, the last line of that item gets merged
with the first line of the next item.
2020-04-01 17:17:30 +11:00
Jakob Hasse
0b02e5358e Digital Signature HW: adding S2 support 2020-04-01 13:47:13 +08:00
Mahavir Jain
2f0a57dece Merge branch 'bugfix/size_calculation_in_ota' into 'master'
Fix size calculation to erase partition range for OTA image

Closes IDFGH-2909

See merge request espressif/esp-idf!8140
2020-04-01 13:06:25 +08:00
fuzhibo
baa7898e35 driver(adc/dac): fix adc dac driver for esp32s2
1. update register file about adc; 2. fix adc driver; 3. add UT for adc/dac;

See merge request espressif/esp-idf!7776
2020-04-01 12:41:51 +08:00
fuzhibo
dfbb108ab4 Driver(touch): fix touch sensor driver for esp32s2.
1.update touch sensor driver for esp32s2;
2.update unit test for touch sensor;
3.update register files about touch sensor;
2020-04-01 12:41:51 +08:00
espressif
c0d752c3b9 mcpwm: fix the issue of wrong period 2020-04-01 10:59:00 +08:00
Marius Vikhammer
1863a8ce82 sha: add fallback for when memory alloc fails 2020-04-01 02:07:44 +00:00
Michael (XIAO Xufeng)
c9f29e0b59 Merge branch 'bugfix/spi_eeprom_build_fix' into 'master'
spi: fix spi eeprom example build

See merge request espressif/esp-idf!8175
2020-04-01 02:14:39 +08:00
David Cermak
abcc3fe6da spi: fix spi eeprom example build
Fix GNU make build error introduced in f53812d27a
2020-03-31 17:48:01 +02:00
morsisko
9759aa4ad2 Fixed syntax error in esp_http_server.rst
Merges: https://github.com/espressif/esp-idf/pull/5021
2020-03-31 14:59:27 +00:00
Shubham Kulkarni
c82a4d59ee esp_ota_ops.c: Fix size calculation to erase partition range for OTA image
Closes https://github.com/espressif/esp-idf/issues/4953
2020-03-31 14:58:32 +00:00
Michael (XIAO Xufeng)
4a005a02f9 Merge branch 'bugfix/spi_eeprom_example_make_build' into 'master'
spi: fix the component.mk for eeprom example

See merge request espressif/esp-idf!8187
2020-03-31 22:33:07 +08:00
David Čermák
8b0063588f Merge branch 'bugfix/udp_client_build_error' into 'master'
socket examples: Fix udp_client build error

Closes IDFGH-2982

See merge request espressif/esp-idf!8176
2020-03-31 22:25:48 +08:00
Sagar Bijwe
a830ddd9ba wpa_supplicant: Fix wpa_supplicant TLS 1.2 issues
1) Fixed compilation issues.
2) Added tlsprf.c from upstream
3) Enabled SHA256 in supplicant compilation.
2020-03-31 17:16:10 +05:30
Jiang Jiang Jian
dcc2963d43 Merge branch 'bugfix/btdm_dont_dequeue_the_command_queue' into 'master'
component/bt: fix don't dequeue the command queue after process the read_by_type_req

See merge request espressif/esp-idf!8161
2020-03-31 19:03:37 +08:00
Michael (XIAO Xufeng)
6998257514 spi: fix the component.mk for eeprom example
introduced in f53812d27a.
2020-03-31 18:18:18 +08:00
Jiang Jiang Jian
c08bb08d2d Merge branch 'bugfix/crypto_test_mem_align' into 'master'
crypto tests: fix mallocs that were missing MALLOC_CAP_8BIT

See merge request espressif/esp-idf!8132
2020-03-31 18:11:38 +08:00
Angus Gratton
9a5e4f9acb Merge branch 'bugfix/secure_boot_v2_wrdis' into 'master'
secure boot v2: esp32: Prevent read disabling additional efuses

Closes IDF-1502

See merge request espressif/esp-idf!8045
2020-03-31 16:08:01 +08:00
xiewenxiang
5d0b6da6a0 component/bt: fix don't dequeue the command queue after process the read_by_type_req 2020-03-31 15:10:01 +08:00
Supreet Deshpande
0a52f2db50 Fixes logging issue hindering compilation on anti rollback. 2020-03-31 11:19:27 +05:30
Angus Gratton
92a646aa4e Merge branch 'feature/add_rtc_xtal_cal_retry_option' into 'master'
esp32: Add a Kconfig option - Number of attempts to repeat 32k XTAL calibration

Closes IDF-1479

See merge request espressif/esp-idf!7930
2020-03-31 06:03:19 +08:00
Jiang Jiang Jian
1a4f894c7d Merge branch 'bugfix/coex_sleep_opt' into 'master'
esp_wifi: optimize coexistence sleep

See merge request espressif/esp-idf!8078
2020-03-30 23:58:13 +08:00
Michael (XIAO Xufeng)
1cdbaf5b50 Merge branch 'bugfix/freemodbus_fix_long_frame_buffer_issue' into 'master'
freemodbus: fix long buffer failure (no temp frame buffer)

Closes IDFGH-2371

See merge request espressif/esp-idf!7418
2020-03-30 22:05:49 +08:00
Alex Lisitsyn
3abdd2207d freemodbus: fix long buffer failure
check master read write functions with array of registers)
fix master serial processing code and modbus controller to work with register array
modbus_master: add reading and writing of test value array (58 registers) to check failure is gone
remove parameter temporary buffer from modbus controller to allow more than 24 byte writes
driver: fix issue with TOUT feature
driver: fix uart_rx_timeout issue
driver: fix issue with rxfifo_tout_int_raw not triggered when received fifo_len = 120 byte and all bytes read out of fifo as result of rxfifo_full_int_raw
driver: add function uart_internal_set_always_rx_timeout() to always handle tout interrupt
examples: call uart_internal_set_always_rx_timeout() to handle tout interrupt correctly
examples: update examples to use tout feature
driver: reflect changes of uart_set_always_rx_timeout() function, change uart.c
driver: change conditions to trigger workaround for tout feature in uart.c
driver: change uart_set_always_rx_timeout()
freemodbus: fix tabs, remove commented code
driver: remove uart_ll_is_rx_idle()
2020-03-30 22:05:48 +08:00
Roland Dobai
26695df5c8 app_trace: Add coverage generation by gcovr 2020-03-30 13:34:06 +02:00
morris
17b90afcab doc: fix defines dict expansion 2020-03-30 18:26:37 +08:00
Anton Maklakov
0fee085b67 Merge branch 'bugfix/update_esp32s2_iperf_config' into 'master'
examples: update esp32s2 config for wifi iperf

See merge request espressif/esp-idf!8084
2020-03-30 16:45:11 +08:00
Anton Maklakov
1441b671d6 Merge branch 'bugfix/ci_static_analysis_fail_on_new_issue' into 'master'
ci: update static analysis rules to fail on any new issue

Closes IDF-686 and IDF-973

See merge request espressif/esp-idf!6424
2020-03-30 15:36:42 +08:00
Angus Gratton
25aa5b0e28 esp32: Enable flash encryption by setting FLASH_CRYPT_CNT to max
Previous method was to write-protect this efuse, however on ECO3
the write protect field also covers the UART_DOWNLOAD_DIS efuse.

Doing it this way keeps the possibility of disabling UART download
mode, later.
2020-03-30 18:13:42 +11:00
Angus Gratton
fe64ab6de0 docs: secure boot v2: Add a note about maximum bootloader size 2020-03-30 18:13:42 +11:00
Angus Gratton
142f69448f secure boot v2: esp32: Prevent read disabling additional efuses
Also reduce the number of eFuse write cycles during first boot when
Secure Boot and/or Flash Encryption are enabled.
2020-03-30 18:00:40 +11:00
Michael (XIAO Xufeng)
135aa51d06 Merge branch 'feat/spi1_host_eeprom' into 'master'
spi: add eeprom example on SPI1 host

See merge request espressif/esp-idf!7130
2020-03-30 12:14:59 +08:00
Michael (XIAO Xufeng)
de310764c6 Merge branch 'bugfix/fix_i2s_example_sample_calculation_incorrect_bug' into 'master'
bugfix (I2S): Fixed I2S example sine wave sample calculation incorrect bug

Closes IDFGH-2947

See merge request espressif/esp-idf!8108
2020-03-30 12:02:31 +08:00
Marius Vikhammer
d1d91ec3dd crypto tests: fix mallocs that were missing MALLOC_CAP_8BIT
Tests had the potential to fail they got non byte-accessible memory allocated.
2020-03-30 10:40:59 +07:00
Xia Xiaotian
3488603002 esp_wifi: optimize coexistence sleep
1. Increase delay time before sending NULL1 to enter sleep to
       fix compatible problem of some APs.
    2. Do not force sending NULL0 if no data tx/rx in previous Wi-Fi
       slice.
2020-03-30 11:18:08 +08:00
Marius Vikhammer
32f16e8c30 crypto tests: fix mallocs that were missing MALLOC_CAP_8BIT
Tests had the potential to fail they got non byte-accessible memory allocated.
2020-03-30 11:12:20 +08:00
Michael (XIAO Xufeng)
16d6604ab4 Merge branch 'feature/spi_unit_test_slave_byte_length' into 'master'
spi: add unit test for slave receiving length

See merge request espressif/esp-idf!6357
2020-03-30 10:41:45 +08:00
Krzysztof Budzynski
82e2b4a0d4 Merge branch 'docs/add_translation_for_7637' into 'master'
Add translation for the update in 7637 and 8095

See merge request espressif/esp-idf!8059
2020-03-30 06:43:01 +08:00
Ivan Grokhotkov
f822e81617 Merge branch 'feature/trax_parsing_script' into 'master'
xtensa: add a script for parsing CPU traces (TRAX)

See merge request espressif/esp-idf!7729
2020-03-30 05:21:02 +08:00
Ivan Grokhotkov
cb766fb3d6 Merge branch 'bugfix/IDFGH-2910' into 'master'
NVS: bugfix - iterator skipping version 1 blobs

Closes IDFGH-2910

See merge request espressif/esp-idf!8049
2020-03-30 05:18:38 +08:00
Ivan Grokhotkov
d4bac87630 Merge branch 'feature/idf_size_diff' into 'master'
tools: Add option to show differences between MAP files with idf_size.py

Closes IDF-604 and IDF-1122

See merge request espressif/esp-idf!7994
2020-03-30 05:17:14 +08:00
Krzysztof Budzynski
de74cfdcad Merge branch 'doc/ethernet_api_reference' into 'master'
add Ethernet API reference

Closes IDF-911

See merge request espressif/esp-idf!7270
2020-03-30 02:04:53 +08:00
Krzysztof Budzynski
6aa3179d71 Merge branch 'doc/feedback_target_exact_version' into 'master'
doc: Add exact git version & target SoC to feedback form parameters

See merge request espressif/esp-idf!8123
2020-03-30 01:20:46 +08:00
liying
572ef008a9 Provide translation for the updates in 7637 and 8095, and correct a format issue in documenting-code 2020-03-29 16:50:40 +00:00
Michael (XIAO Xufeng)
f53812d27a spi: add eeprom example 2020-03-29 12:52:29 +08:00
Michael (XIAO Xufeng)
0f1041cc04 example: move spi master example to a subfolder 2020-03-29 12:52:29 +08:00
Jiang Jiang Jian
bc3b95f68b Merge branch 'bugfix/fix_log_printf_level_err' into 'master'
esp_wifi: Fix wifi log print level error

See merge request espressif/esp-idf!8120
2020-03-28 18:52:23 +08:00
Axel Lin
8592f14a93 socket examples: Fix udp_client build error
Fix below build error:
../main/udp_client.c: In function 'udp_client_task':
../main/udp_client.c:58:41: error: 'addr_str' undeclared (first use in this function); did you mean 'caddr_t'?

Fixes: 995ef85e85 ("socket examples: add tests for server and client applications")
Signed-off-by: Axel Lin <axel.lin@gmail.com>
2020-03-28 11:29:20 +08:00
David Cermak
585633b254 console: ignore static analysis warnings 2020-03-27 19:19:20 +01:00
David Cermak
06c46837ce panic: ignore deliberate null dereference to pass static analysis 2020-03-27 19:18:40 +01:00
David Cermak
62f9f42b54 wpa_supplicant: ignore static analysis violations 2020-03-27 19:17:36 +01:00
David Cermak
2e28ab29c7 freertos: silence the static analysis warning referencing the workitem 2020-03-27 18:46:39 +01:00
David Cermak
9b821ddd6b sdmmc: fix possible null dereference in output parameter assignement, whilst it was null checked as an input parameter 2020-03-27 18:46:39 +01:00
David Cermak
a2d55ddece ci: update static analysis rules to fail on any new issue zeroing out limits for number of warnings which are tolerated
closes IDF-973
2020-03-27 18:46:39 +01:00
David Cermak
72d54b68a6 lwip: dhcp-server fix static analysis warnings
1) kill_oldest_dhcps_pool() is only called when list has at least two members (assured with kconfig value limit), added assertion to ensure this function is used only when prerequisities are met
2) use after free reported in two places, since the analyzer checks also the scenario when the linked list has loops, added ignore tags
2020-03-27 18:46:39 +01:00
Ivan Grokhotkov
d14aad7e6d Merge branch 'feature/install_export_in_fish' into 'master'
Add export and install scripts for fish shell

Closes IDFGH-2324 and IDFGH-2899

See merge request espressif/esp-idf!8134
2020-03-28 01:17:19 +08:00
Ivan Grokhotkov
b07b29f5bf Merge branch 'bugfix/xtensa_sign_conversion' into 'master'
xtensa: fix sign-conversion warning (Github PR)

See merge request espressif/esp-idf!8131
2020-03-28 00:42:26 +08:00
Mahavir Jain
73304d6f63 Merge branch 'bugfix/esp_https_server_fix_def_init_order' into 'master'
esp_https_server: fix HTTPD_SSL_CONFIG_DEFAULT

See merge request espressif/esp-idf!8138
2020-03-27 23:12:57 +08:00
Aditya Patwardhan
22b1607405 esp_https_server: fix HTTPD_SSL_CONFIG_DEFAULT
This macro doesn't compile on C++. Order is fixed now.

Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
Co-Authored-By: xkevin190 <kevinvelasco193@gmail.com>

Merges https://github.com/espressif/esp-idf/pull/4981
2020-03-27 23:12:57 +08:00
Ivan Grokhotkov
455dbf28f4 esp32: use ccomp_timer in SHA test 2020-03-27 20:07:02 +07:00
Anton Maklakov
e5dab771dd Update toolchain to esp-2020r1
Closes https://github.com/espressif/esp-idf/issues/3694
2020-03-27 20:06:53 +07:00
Ivan Grokhotkov
cc1d287133 newlib: use --specs=nano.specs to enable "nano" version of C library
esp2020r1 toolchain includes a nano.specs file, which instructs GCC to
substitute libc.a with libc_nano.a.

In the build system, this simplifies handling of the nano formatting
option, eliminating LIBC and LIBM global variables.
2020-03-27 20:04:47 +07:00
Jeroen Domburg
419848549e Add fixes for gcc8 psram fix improvement 2020-03-27 20:04:47 +07:00
Michael (XIAO Xufeng)
a304421124 Merge branch 'feat/spi_bus_lock' into 'master'
SPI: support running SPI master and esp_flash on the same bus

See merge request espressif/esp-idf!6520
2020-03-27 19:59:43 +08:00
Jiang Jiang Jian
79e92b0e6a Merge branch 'bugfix/ble_mesh_add_test_function' into 'master'
ble_mesh: Add ble mesh white list test function

See merge request espressif/esp-idf!8046
2020-03-27 19:53:54 +08:00
morris
39fd234576 tool: fix install.fish 2020-03-27 18:11:01 +08:00
Angus Gratton
2415531f44 Merge branch 'refactor/esp_event_examples_new_interface' into 'master'
Examples: esp event examples use new register API

See merge request espressif/esp-idf!7928
2020-03-27 18:05:45 +08:00
Elia Bieri
0c1577fdcd Add export and install scripts for fish shell
Closes https://github.com/espressif/esp-idf/issues/4459
Merges https://github.com/espressif/esp-idf/pull/4944
2020-03-27 17:46:37 +08:00
Michael (XIAO Xufeng)
7fa491a00f Merge branch 'feature/esp32s2beta_merge_fix_modbus_examples' into 'master'
freemodbus: feature esp32s2beta fix modbus examples

Closes IDF-1028

See merge request espressif/esp-idf!6365
2020-03-27 16:20:22 +08:00
Alex Lisitsyn
16e6e63694 driver: fix driver set rx timeout feature of uart
tout_thr - move calculation and masking into hal layer update driver and uart_ll (add uart_ll_set_rx_tout)
move tout calculation into uart_ll
move calculation of time out in bit time for esp32s2 into low level uart_ll.h file
move uart_hal_get_symb_len() into hal
update set_rx_timeout() to warn user about incorrect value
update HAL, LL 1
fix uart_xx_set_rx_tout() to convert symbol time into bit time
update param description
update tout calculation in LL
update uart_hal_get_max_rx_timeout_thrd() and uart_ll_get_max_rx_timeout_thrd()
2020-03-27 16:20:21 +08:00
Michael (XIAO Xufeng)
c91b53377b Merge branch 'bugfix/fix_uart_driver_missing_txfifo_reset_issue' into 'master'
bugfix(UART):  fix uart driver missing txfifo reset issue.

Closes IDFGH-2848

See merge request espressif/esp-idf!7992
2020-03-27 15:55:02 +08:00
Angus Gratton
f68dbd77e9 Merge branch 'bugfix/make_system_using_rom_time_funcs' into 'master'
esp_rom: Fix esp32.rom.newlib-time.ld should includes all time ROM functions/data

Closes IDFGH-2868

See merge request espressif/esp-idf!8008
2020-03-27 15:43:38 +08:00
Jiang Jiang Jian
e8a9dcded2 Merge branch 'bugfix/nimble_rpa_build_failure' into 'master'
NimBLE: Fix build failures due to non static declarations in RPA feature

See merge request espressif/esp-idf!8056
2020-03-27 14:06:56 +08:00
Prasad Alatkar
38fc242914 NimBLE: Fix build failures due to non static declarations in RPA feature
CLoses IDFGH-2891
2020-03-27 14:06:55 +08:00
Jiang Jiang Jian
23304ff20e Merge branch 'nimble/fix_esp_nimble_cfg' into 'master'
NimBLE: Fix `NIMBLE_HS_FLOW_CTRL_TX_ON_DISCONNECT` in `esp_nimble_cfg` and `bleprph` README

See merge request espressif/esp-idf!7982
2020-03-27 14:05:33 +08:00
Prasad Alatkar
2bc28bbd5a NimBLE: Fix NIMBLE_HS_FLOW_CTRL_TX_ON_DISCONNECT in esp_nimble_cfg and bleprph README 2020-03-27 14:05:32 +08:00
Angus Gratton
88bf21b21e Merge branch 'nimble/iram_allocation_strategy' into 'master'
NimBLE: Add support to IRAM allocation strategy

See merge request espressif/esp-idf!8015
2020-03-27 13:54:25 +08:00
Mahavir Jain
0b834d1a9f Merge branch 'feature/add_psk_support_for_wolfSSL' into 'master'
esp_tls_wolfSSL: Add support for PSK

See merge request espressif/esp-idf!7942
2020-03-27 13:25:42 +08:00
KonstantinKondrashov
9aeac7f6cb esp_rom: Fix esp32.rom.newlib-time.ld should includes all time ROM functions/data
- Added UT
Closes: https://github.com/espressif/esp-idf/issues/4925
2020-03-27 04:57:42 +00:00
KonstantinKondrashov
df2ea2527f esp32s2: Add a Kconfig option- Number of attempts to repeat 32k XTAL calibration 2020-03-27 04:56:44 +00:00
KonstantinKondrashov
a259746016 esp32: Add a Kconfig option- Number of attempts to repeat 32k XTAL calibration
Closes: IDF-1479
2020-03-27 04:56:44 +00:00
xiehang
8bcf5cbfed esp_wifi: Fix wifi log print level error 2020-03-27 12:37:56 +08:00
Jiang Jiang Jian
4fe04f1151 Merge branch 'bugfix/fix_esp32s2_receive_pkts_err' into 'master'
esp_wifi: fix esp32s2 sometimes receive ack/cts pkts err.

See merge request espressif/esp-idf!8100
2020-03-27 12:21:52 +08:00
Angus Gratton
cf6dca29f2 Merge branch 'feature/hmac_upstream' into 'master'
HMAC: adding upstream message support

Closes IDF-800

See merge request espressif/esp-idf!7689
2020-03-27 11:27:23 +08:00
Angus Gratton
ef7ebbe39c doc: Add exact git version & target SoC to feedback form parameters
Currently squeezed into the "version" field as we don't have separate fields for these.
2020-03-27 11:29:59 +11:00
Angus Gratton
02fe8fb1eb Merge branch 'bugfix/monitor_encrypted_target' into 'master'
tools: Fix flashing encrypted binaries from IDF Monitor

Closes IDF-822

See merge request espressif/esp-idf!8090
2020-03-27 08:11:38 +08:00
Michael (XIAO Xufeng)
3ee81e0046 ci: split test config psram_2 into psram_3 2020-03-26 22:08:26 +08:00
Michael (XIAO Xufeng)
49a48644e4 spi: allow using esp_flash and spi_master driver on the same bus 2020-03-26 22:08:26 +08:00
Michael (XIAO Xufeng)
f3bf9c5ae0 hal: put rodata into dram for hal functions 2020-03-26 22:08:25 +08:00
Aditya Patwardhan
d712453114 esp_tls_wolfssl: Added mutex to allow only one TLS conn using PSK at a time 2020-03-26 17:30:05 +05:30
Mahavir Jain
7cbc593ef6 Merge branch 'bugfix/http2_request_example' into 'master'
Fixed broken http2_request example.

See merge request espressif/esp-idf!8000
2020-03-26 19:45:10 +08:00
morris
279e8dd6c2 add Ethernet doc 2020-03-26 11:04:55 +00:00
Jakob Hasse
ea47bbb118 HMAC: adding upstream message support 2020-03-26 19:00:27 +08:00
Krzysztof Budzynski
b56993cc3f Merge branch 'docs/hw-reference/esp32-s2-saola-1' into 'master'
Add ESP32-S2-Saola-1 User Guide

See merge request espressif/esp-idf!8057
2020-03-26 18:40:05 +08:00
Wang Ning
a0c37ae1bd Add ESP32-S2-Saola-1 User Guide 2020-03-26 18:40:05 +08:00
Aditya Patwardhan
46643ab40f esp_tls_wolfssl: Add support for PSK using wolfSSL,
enable SNI and ALPN
2020-03-26 16:02:57 +05:30
Michael (XIAO Xufeng)
296d095e53 Merge branch 'bugfix/remove_dependency_in_timergroup_caps' into 'master'
remove dependency of timer_group_caps.h on soc.h

See merge request espressif/esp-idf!8116
2020-03-26 18:18:45 +08:00
Ivan Grokhotkov
042285d938 Merge branch 'docs/update_xtensa-esp-elf_to_xtensa-esp32-elf' into 'master'
Update toolchain xtensa-esp-elf to xtensa-esp32-elf by modifying the dict TOOLCHAIN_NAMES

Closes DOC-68 and DOC-72

See merge request espressif/esp-idf!8103
2020-03-26 18:15:40 +08:00
Wang Fang
d10e24fb94 Update toolchain xtensa-esp-elf to xtensa-esp32-elf by modifying the dict TOOLCHAIN_NAMES 2020-03-26 18:15:37 +08:00
Ivan Grokhotkov
7f18576e23 Merge branch 'bugfix/inline_get_cpu_id_hal_func' into 'master'
soc: put hal function to get core id in IRAM

See merge request espressif/esp-idf!8107
2020-03-26 18:14:51 +08:00
morris
0c6e1b9482 remove dependency of timer_group_caps.h on soc.h 2020-03-26 17:15:19 +08:00
Angus Gratton
dd8d1deacb Merge branch 'bugfix/malloc_zero_return_null' into 'master'
bugfix/multi_heap: fix malloc(0) returning valid pointer in some poisoning configurations

Closes IDF-1482

See merge request espressif/esp-idf!8012
2020-03-26 16:19:39 +08:00
Roland Dobai
9b16594444 tools: Fix flashing encrypted binaries from IDF Monitor 2020-03-26 07:51:59 +01:00
Angus Gratton
928fc0016c Merge branch 'bugfix/doc_soc_caps_file_path' into 'master'
doc: correct soc caps file path

See merge request espressif/esp-idf!8097
2020-03-26 10:32:12 +08:00
Michael (XIAO Xufeng)
826cc7ecb6 Merge branch 'feature/bringup_723_cmake_rmt_driver_update' into 'master'
RMT new features in ESP32S2

Closes IDF-1286

See merge request espressif/esp-idf!7401
2020-03-26 10:24:18 +08:00
Michael (XIAO Xufeng)
661f4c430d Merge branch 'feature/esp32s2_i2c_driver' into 'master'
Feature:  Add esp32-s2 I2C driver.

Closes IDF-1278 and IDF-1026

See merge request espressif/esp-idf!7680
2020-03-26 10:20:40 +08:00
Michael (XIAO Xufeng)
42c552242b Merge branch 'feature/fix_touch_driver_for_esp32s2' into 'master'
driver(touch): fix touch sensor driver for esp32s2

See merge request espressif/esp-idf!7664
2020-03-26 09:50:42 +08:00
Angus Gratton
2adc263ff5 Merge branch 'refactor/watchdog_hal' into 'master'
Add LL and HAL for watchdog timers

Closes IDF-1249

See merge request espressif/esp-idf!7137
2020-03-26 07:06:51 +08:00
Darian Leung
91841a53ff WDT: Add LL and HAL for watchdog timers
This commit updates the watchdog timers (MWDT and RWDT)
in the following ways:

- Add seprate LL for MWDT and RWDT.
- Add a combined WDT HAL for all Watchdog Timers
- Update int_wdt.c and task_wdt.c to use WDT HAL
- Remove most dependencies on LL or direct register access
  in other components. They will now use the WDT HAL
- Update use of watchdogs (including RTC WDT) in bootloader and
  startup code to use the HAL layer.
2020-03-26 02:14:02 +08:00
Krzysztof Budzynski
e2e4cd1a7f Merge branch 'docs/api-guides/linker-script-generation' into 'master'
Add translation for linker script generation

See merge request espressif/esp-idf!7903
2020-03-26 00:48:58 +08:00
Wang Ning
168a623a07 Add translation for linker script generation 2020-03-26 00:48:58 +08:00
fuzhibo
340563f479 Driver(touch): fix touch sensor driver for esp32s2.
1.update touch sensor driver for esp32s2;
2.update unit test for touch sensor;
3.update register files about touch sensor;
2020-03-25 22:45:57 +08:00
Krzysztof Budzynski
4a4db96729 Merge branch 'docs/otaltool_parttool' into 'master'
Add translation for ota tool and partation tool

See merge request espressif/esp-idf!7966
2020-03-25 21:44:33 +08:00
Wang Ning
3784d499af Add translation for ota tool and partation tool 2020-03-25 21:44:33 +08:00
Ivan Grokhotkov
462fda201a Merge branch 'bugfix/tusb_missing_licence' into 'master'
tinyusb: updated the license header in the driver

See merge request espressif/esp-idf!8083
2020-03-25 21:20:49 +08:00
Ivan Grokhotkov
8aad738f02 Merge branch 'bugfix/ota_get_sha256_test_fail' into 'master'
app_update: fix test failure for get_app_elf_sha256 test

See merge request espressif/esp-idf!8096
2020-03-25 21:20:25 +08:00
chenjianqiang
04781fb009 psram: improve 2T mode enable
1. recover psram bankswitch config
2. set 2T mode enable default config as n
3. remove PSRAM ID check
2020-03-25 18:39:50 +08:00
chenjianqiang
55a20033e7 bugfix(psram): support psram 2T mode to fix single bit error
1. add enable PSRAM 2T mode function
2. enable PSRAM 2T mode base on PSRAM ID
3. abort when himem and 2T mode are enabled meanwhile
4. set SPIRAM_2T_MODE as "y" by default and modify SPIRAM_BANKSWITCH_ENABLE as "n" by default
2020-03-25 18:29:32 +08:00
Krzysztof Budzynski
de1f56466b Merge branch 'bugfix/doc_redirects' into 'master'
doc: Create redirects for ESP32 hw-reference get-started URLs

Closes IDF-1503

See merge request espressif/esp-idf!8094
2020-03-25 17:34:19 +08:00
Anton Maklakov
8252611edc Merge branch 'feat/ci_decrease_ut_artifact_num' into 'master'
ci: temporarily remove some artifacts from UT build

See merge request espressif/esp-idf!8102
2020-03-25 17:26:46 +08:00
morris
4fc16e2374 rmt: prefix caps name with SOC_ 2020-03-25 17:14:00 +08:00
morris
9f035edb64 rmt: update doc 2020-03-25 17:14:00 +08:00
morris
0c17af3ea4 rmt: support tx loop count 2020-03-25 17:14:00 +08:00
morris
dc91aa9786 rmt: support tx in a group 2020-03-25 17:13:59 +08:00
morris
fa167eb0c5 rmt: test tx/rx ping-pong mode 2020-03-25 17:13:47 +08:00
morris
855b316045 rmt: better support rx demodulation 2020-03-25 13:19:03 +08:00
morris
c91565d538 rmt: update rmt ll APIs 2020-03-25 13:19:03 +08:00
chenjianqiang
ecbe0dad1b driver/rmt: new features on esp32s2
1. add receive carrier remove function
2. add pingpong receive function
2020-03-25 13:19:03 +08:00
Michael (XIAO Xufeng)
322faa727f ci: temporarily remove some artifacts from UT build 2020-03-25 12:42:35 +08:00
lly
45d43f005a ble_mesh: Add ble mesh white list test function
Using the ble mesh white list test functions, a node can choose to
only receive mesh messages from a specific node and relay the
messages for it. Messages from other nodes will be ignored.
2020-03-25 11:30:08 +08:00
Jiang Jiang Jian
c71445a9b9 Merge branch 'bugfix/coex_wakeup_delay_with_dfs' into 'master'
components/coex: Fix wakeup delay with DFS

See merge request espressif/esp-idf!8053
2020-03-25 11:29:18 +08:00
Jakob Hasse
1cf2312734 Examples: some examples use new event register API
* getting started - station
* softap
* iperf
* fast scan
* Power save
2020-03-25 10:36:47 +08:00
Renz Bagaporo
b2fd9dd51c ci: add basic startup test for when CONFIG_COMPILER_OPTIMIZATION_NONE=y 2020-03-25 10:00:39 +08:00
Angus Gratton
62426a6c90 Merge branch 'refactor/use_new_component_registration_functions' into 'master'
CMake: Use new component registration function

See merge request espressif/esp-idf!8068
2020-03-25 08:02:42 +08:00
Krzysztof Budzynski
c2c84d43d9 Merge branch 'doc/home_page_soc' into 'master'
doc: Rephrase the support for ESP32 & ESP32-S on the home page

See merge request espressif/esp-idf!8095
2020-03-25 03:23:36 +08:00
houwenxiang
886745326e driver(UART): fix uart driver missing txfifo reset issue.
closes https://github.com/espressif/esp-idf/issues/4908
2020-03-25 01:48:46 +08:00
houwenxiang
0304ba906f Example(I2S): Fixed I2S example sine wave sample calculation incorrect bug.
closes https://github.com/espressif/esp-idf/issues/4980
2020-03-25 01:35:01 +08:00
Ivan Grokhotkov
6c0a1aab50 Merge branch 'bugfix/crypto_perf_fail' into 'master'
s2 crypto: update perf test to use cache comp timer

Closes IDF-1174

See merge request espressif/esp-idf!8075
2020-03-24 22:54:38 +08:00
Renz Bagaporo
d5085010c8 soc: put hal function to get core id in IRAM 2020-03-24 22:50:51 +08:00
Ivan Grokhotkov
55c3c2b73d Merge branch 'feature/vfs_optional' into 'master'
vfs: add option to disable VFS layer, saving some RAM and code size

See merge request espressif/esp-idf!7950
2020-03-24 21:11:28 +08:00
Ivan Grokhotkov
349dc125e8 Merge branch 'feature/espcoredump_resilient_stack_decoding' into 'master'
espcoredump: fix espcoredump to make it more resilient when decoding erroneous thread stack

Closes IDFGH-2802

See merge request espressif/esp-idf!7892
2020-03-24 21:08:57 +08:00
David Čermák
2bf3276900 Merge branch 'feature/config_mqtt_task_prio' into 'master'
esp_mqtt: add option to configure mqtt task priority.

Closes IDFGH-2902 and IDFGH-2903

See merge request espressif/esp-idf!8036
2020-03-24 19:43:20 +08:00
David Čermák
e50a7a97da Merge branch 'bugfix/ipv6_examples' into 'master'
IPv6 related updates: esp-netif, common-connect, socket-examples

See merge request espressif/esp-idf!7500
2020-03-24 19:32:33 +08:00
morris
3cf8479017 doc: always adopt latest chip revision 2020-03-24 19:11:28 +08:00
morris
b5ab764f82 doc: correct soc caps file path 2020-03-24 19:11:28 +08:00
aleks@espressif.com
45c844c1d1 espcoredump: fix idf_monitor test artifacts 2020-03-24 11:48:18 +01:00
Jiang Jiang Jian
2c06733e10 Merge branch 'optimization/TCPv6_connect_for_master' into 'master'
lw-ip:optimization TCPv6 connect

Closes WIFI-1963

See merge request espressif/esp-idf!8018
2020-03-24 15:25:03 +08:00
ChenJianxing
79be253020 esp_wifi: fix esp32s2 sometimes receive ack/cts pkts err. 2020-03-24 15:16:21 +08:00
Marius Vikhammer
694c332cb2 app_update: fix test failure for get_app_elf_sha256 test
Commit fc03161f updated esp_ota_get_app_elf_sha256 to store and return
X number of bytes of the hash, but the test case still expected 64 bytes.

Updated test case to use CONFIG value for expected length.
2020-03-24 12:34:49 +08:00
Angus Gratton
520802d6cb doc: Rephrase the support for ESP32 & ESP32-S on the home page 2020-03-24 15:00:27 +11:00
Angus Gratton
3dec957bc8 doc: Create redirects for ESP32 hw-reference get-started URLs
Moved in 1a90470f02 but redirects not created
2020-03-24 14:56:12 +11:00
ChenJianxing
fabb7e5e87 examples: update esp32s2 config for wifi iperf 2020-03-24 11:36:16 +08:00
aleks
b3eff24458 espcoredump: update expected test output 2020-03-23 14:40:56 +00:00
Andreas Motl
dde4d2e9eb Make espcoredump more resilient when decoding specific thread stack
Merges https://github.com/espressif/esp-idf/pull/4865
2020-03-23 14:40:56 +00:00
Ivan Grokhotkov
35560cb538 Merge branch 'doc/fix_example_links' into 'master'
doc: Fix invalid links

Closes DOC-67 and DOC-69

See merge request espressif/esp-idf!8065
2020-03-23 21:17:20 +08:00
Mahavir Jain
4e0e15631d Merge branch 'feature/esp_http_client_add_example' into 'master'
Add example to demonstrate use of low level APIs in http client

Closes IDFGH-2773

See merge request espressif/esp-idf!7832
2020-03-23 21:14:13 +08:00
Simon Brélivet
456d4d4a20 esp_mqtt: add option to configure mqtt task priority.
Merges https://github.com/espressif/esp-idf/pull/4947
2020-03-23 12:28:29 +00:00
David Cermak
39011c055a ci: fix rom header checker to validate *rom* on word boundaries 2020-03-23 12:19:38 +00:00
David Cermak
a5a750ba48 examples: add socket stdin utils to common connect component 2020-03-23 12:19:38 +00:00
David Cermak
995ef85e85 socket examples: add tests for server and client applications 2020-03-23 12:19:38 +00:00
David Cermak
63aa0d6e9c common_connect: add support for getting multiple IPv6 addresses 2020-03-23 12:19:38 +00:00
David Cermak
56725fa678 esp-netif: support for ipv6 addr types and indices 2020-03-23 12:19:38 +00:00
David Cermak
94ded5fb2f socket-examples: IPv6 related update for examples to set correct scoped id
The scope id must be present when connecting to IPv6 Local Link
address.
2020-03-23 12:19:38 +00:00
Andrei Gramakov
337fff703a tinyusb: updated the license header in the driver 2020-03-23 13:11:49 +01:00
Roland Dobai
66271f7a86 tools: Support showing differences of MAP files in JSON format 2020-03-23 12:04:07 +01:00
Roland Dobai
c81243b92b tools: Add option to show differences between MAP files with idf_size.py 2020-03-23 12:04:07 +01:00
Roland Dobai
f6e1414ba6 tools: Remove unused toolchain-prefix argument from idf_size.py 2020-03-23 12:04:07 +01:00
Ivan Grokhotkov
286538e7af Merge branch 'bugfix/ci_example_target_specific_defaults' into 'master'
ci: consider sdkconfig.defaults.TARGET_NAME in examples and test apps

See merge request espressif/esp-idf!8061
2020-03-23 15:48:15 +08:00
Angus Gratton
ceb0cf5d50 README: Remove note about docs not being updated 2020-03-23 18:11:23 +11:00
Angus Gratton
52d888a68b docs: Fix broken URLs & permanent redirects 2020-03-23 18:11:23 +11:00
Angus Gratton
a6b522c0f4 docs: Fix generation of links to examples 2020-03-23 18:11:23 +11:00
Angus Gratton
62b40284a1 Merge branch 'bufgix/esp_ota_get_app_elf_sha256' into 'master'
app_update: Fix case when elf file SHA256 should be printed by panic handler while cache is disabled

Closes IDF-1342

See merge request espressif/esp-idf!7529
2020-03-23 14:24:12 +08:00
Angus Gratton
b4d97a8076 Merge branch 'feature/add_heap_info_per_task_example' into 'master'
Add Task Heap Tracking example

See merge request espressif/esp-idf!7750
2020-03-23 14:07:00 +08:00
Jiang Jiang Jian
464e16cef4 Merge branch 'bugfix/Add_lwip_assert_control' into 'master'
lw-ip: Add lw-ip assert control

See merge request espressif/esp-idf!8027
2020-03-23 14:06:22 +08:00
Angus Gratton
111f596275 Merge branch 'bugfix/doc_build_ut_cmdline' into 'master'
docs: Fixup format of a command line to build unit tests

See merge request espressif/esp-idf!8033
2020-03-23 13:43:42 +08:00
Vikram Dattu
e27c495354 Fixed broken http2_request example.
Implementation of `esp_tls_conn_new_sync` now uses timeout_ms value to
give up retries.

Specified this value to be 10 sec. (10 * 1000 ms).

Signed-off-by: Vikram Dattu <vikram.dattu@espressif.com>
2020-03-23 05:16:40 +00:00
Shubham Kulkarni
b9555db47f examples: Add example to demonstrate use of low level APIs for GET and POST requests
Use buffer to accumulate data of response from event handler and print the response on console

Demonstrate use of user_data field in esp_http_client_config_t to get response body
2020-03-23 10:45:39 +05:30
Shubham Kulkarni
d0d99fe4c7 esp_http_client_example.c: Fix http_perform_as_stream_reader example
Run Basic Auth examples only if ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH is enabled

Closes https://github.com/espressif/esp-idf/issues/4969
2020-03-23 10:45:39 +05:30
Shubham Kulkarni
4858184e19 esp_http_client: Add helper API to read larger data chunks from HTTP Stream 2020-03-23 10:45:39 +05:30
Mahavir Jain
6af3456ca3 Merge branch 'bugfix/wifi_prov_not_stopping' into 'master'
wifi_provisioning: Catch the Wi-Fi events even after Connection errors

See merge request espressif/esp-idf!8019
2020-03-23 12:20:04 +08:00
Anton Maklakov
5b57ddf046 Merge branch 'bugfix/ci_build_logs_per_config' into 'master'
ci: generate separate log files for each {example, test app} config

See merge request espressif/esp-idf!8039
2020-03-23 11:45:32 +08:00
Marius Vikhammer
32fd9d6c63 s2 crypto: update perf test to use cache comp timer
Updated S2 hardware accelerated crypto to use the cache compensated timer.

Re-enabled RSA performance test and set lower targets now that results are more stable

Closes: IDF-1174
2020-03-23 11:30:55 +08:00
Mahavir Jain
a14b6f8914 Merge branch 'bugfix/fix_secure_boot_v2_verification_from_app' into 'master'
bootloader_support: initialize mbedtls_ctr_drbg_context per mbedtls v2.16.5 requirement

See merge request espressif/esp-idf!8062
2020-03-23 11:05:28 +08:00
Renz Bagaporo
3d0967a58a test: declare requirements and include dirs private 2020-03-23 10:58:50 +08:00
Renz Bagaporo
4d9c573fb6 test, examples: use new component registration function 2020-03-23 10:58:48 +08:00
Jakob Hasse
255ae1d32f NVS: bugfix - iterator skipping version 1 blobs
Closes https://github.com/espressif/esp-idf/issues/4954
2020-03-23 09:55:40 +08:00
Angus Gratton
bd827a4d2f Merge branch 'doc/small_fixes' into 'master'
doc: Two small fixes

See merge request espressif/esp-idf!8050
2020-03-23 08:06:07 +08:00
He Yin Ling
650a51366e Merge branch 'bugfix/modify_ble_mesh_command' into 'master'
ble mesh: update ble mesh console example

See merge request espressif/esp-idf!7927
2020-03-22 18:34:40 +08:00
Chen Sheng
f3986bca71 ble mesh: update ble mesh console example 2020-03-22 18:34:39 +08:00
Piyush Shah
4b030420a1 wifi_provisioning: Catch the Wi-Fi events even after Connection errors
It was observed that after sending credentials, if the first
Wi-Fi conection attempt fails, the Wi-Fi provisioning managager
ignores subsequent Wi-Fi events. So, even if the device eventually
connects to the AP, the provisioning stays on indefinitely.

Changing a check so that subsequent events are also captured and
provisioning finishes successfully.
2020-03-21 06:02:55 +00:00
Mahavir Jain
409b3db22f bootloader_support: initialize mbedtls_ctr_drbg_context per mbedtls v2.16.5 requirement
In commit 02d2903e39, mbedtls was
updated to release v2.16.5, where it was made mandatory to initialize
mbedtls_ctr_drbg_context before using same. It was fixed in wpa supplicant
but missed out in secure boot v2 verification code. This commit
fixes that.
2020-03-20 20:48:22 +05:30
Felipe Neves
481379f14d multi_heap: ensure that malloc(0) return NULL pointer in any poisoning configuration 2020-03-20 14:33:49 +00:00
Ivan Grokhotkov
bfefee3205 examples: set correct CPU frequency in ethernet/iperf for ESP32-S2 2020-03-20 15:33:32 +01:00
Ivan Grokhotkov
3053119f60 ci: consider sdkconfig.defaults.TARGET_NAME in examples and test apps 2020-03-20 14:50:00 +01:00
Ivan Grokhotkov
1e462be4ab examples: print free heap size in hello_world example 2020-03-20 14:07:10 +01:00
Ivan Grokhotkov
2548a3e528 ci: add startup tests with VFS disabled 2020-03-20 14:07:10 +01:00
Ivan Grokhotkov
dc77ccb24e spiffs: handle CONFIG_VFS_SUPPORT_DIR 2020-03-20 14:03:45 +01:00
Ivan Grokhotkov
8a47f43cef fatfs: handle CONFIG_VFS_FAT_SUPPORT_DIR 2020-03-20 14:03:45 +01:00
Ivan Grokhotkov
18bc25b3a6 cpu_start: handle CONFIG_VFS_SUPPORT_IO 2020-03-20 14:03:45 +01:00
Ivan Grokhotkov
33d3bff196 newlib: don't require VFS 2020-03-20 14:03:45 +01:00
Ivan Grokhotkov
4cb10ea7c2 newlib: provide default implementations for more syscalls 2020-03-20 14:03:45 +01:00
Ivan Grokhotkov
1f1ce38e5f newlib: don't depend on VFS names when populating the syscall table 2020-03-20 14:03:44 +01:00
Ivan Grokhotkov
b203ac7b02 lwip: handle CONFIG_VFS_SUPPORT_IO=n and CONFIG_VFS_SUPPORT_SELECT=n
* If CONFIG_VFS_SUPPORT_IO=y, keep everything as it is now
* If CONFIG_VFS_SUPPORT_IO=n, defined syscalls which LwIP can
  implement, such as read/write/close
* Make LWIP-only select implementation dependent on
  CONFIG_VFS_SUPPORT_SELECT, deprecate CONFIG_LWIP_USE_ONLY_LWIP_SELECT
2020-03-20 14:03:44 +01:00
Ivan Grokhotkov
cadab2cbcf vfs: define all implementations as esp_vfs_, create aliases
This change allows (in the future) to test VFS on host, without having
it conflict with the host C library. On host, all aliases would be
disabled.
2020-03-20 13:43:42 +01:00
Ivan Grokhotkov
a3c0bcb0a0 vfs: introduce options to turn off some features
CONFIG_VFS_SUPPORT_IO: for basic I/O functions support
CONFIG_VFS_SUPPORT_DIR: for file/directory functions support
CONFIG_VFS_SUPPORT_SELECT: for select support
2020-03-20 13:43:42 +01:00
Ivan Grokhotkov
45e50f1f2a newlib: move dirent.h, ioctl.h headers from VFS 2020-03-20 13:43:42 +01:00
Ivan Grokhotkov
b427b23ae0 newlib: remove direct dependencies on VFS functions
poll: use "select" not "esp_vfs_select" move to newlib

pread, pwrite, select, utime: remove from newlib. VFS and/or LWIP will
provide aliases for these functions.
2020-03-20 13:43:42 +01:00
Ivan Grokhotkov
a5bf40b495 efuse: don't include esp_efuse_utility_debug_dump_blocks in bootloader 2020-03-20 12:31:10 +01:00
sU8U7SfkcwTJVH7PjaVmej7D
c3065c00ff xtensa: fix sign-conversion warning 2020-03-20 11:10:43 +01:00
baohongde
1bcce4e7db components/coex: Fix wakeup delay with DFS 2020-03-20 17:58:05 +08:00
Angus Gratton
5fbf95d691 docs: Expand the description of per-target custom macro directives 2020-03-20 19:57:18 +11:00
Angus Gratton
e5410450be docs: Fix the secure-boot page redirect 2020-03-20 19:07:09 +11:00
xueyunfei
b539e54eed optimization TCPv6 connect 2020-03-20 07:19:23 +00:00
Ivan Grokhotkov
6330b3345e Merge branch 'bugfix/disable_rsa_perf_test' into 'master'
rsa: ignore performance test in CI

See merge request espressif/esp-idf!8026
2020-03-20 15:09:15 +08:00
David Čermák
e7cd3b592e Merge branch 'bugfix/esp_netif_ppp_setdefault_fix' into 'master'
ESP-NETIF: Set default interface for ppp netif must be called from lw_ip context

Closes IDFGH-2672

See merge request espressif/esp-idf!7555
2020-03-20 14:50:41 +08:00
Jiang Jiang Jian
e432217a16 Merge branch 'bugfix/send_ok_when_sta_disconnect' into 'master'
lw-ip:bugfix for TCPv6 send ok when sta disconnect

Closes WIFI-198

See merge request espressif/esp-idf!8017
2020-03-20 13:50:55 +08:00
Jiang Jiang Jian
8ee9fbb01a Merge branch 'bugfix/update_esp32s2_phy_lib_v300' into 'master'
esp_wifi: update esp32s2 phy lib v300

Closes WIFI-1087

See merge request espressif/esp-idf!8034
2020-03-20 13:48:08 +08:00
Jiang Jiang Jian
4504fe62d0 Merge branch 'bugfix/add_esp_ble_mesh_coex_demo' into 'master'
ble_mesh: add ble mesh coex with tcp demo.

See merge request espressif/esp-idf!6372
2020-03-20 13:20:57 +08:00
xueyunfei
b1ca95ff22 bugfix for TCPv6 send ok when sta disconnect 2020-03-20 03:10:56 +00:00
Ivan Grokhotkov
4f5d15ae93 ci: generate separate log files for each {example, test app} config
Otherwise the build log gets overwritten, and warnings in earlier
builds may be masked.
2020-03-20 00:01:16 +01:00
Wang Jia Lin
47253a827a Merge branch 'bugfix/esp32s2_support_16Mbit_psram' into 'master'
bugfix(psram): add 16Mbit psram support for esp32s2

See merge request espressif/esp-idf!8011
2020-03-20 00:22:49 +08:00
David Cermak
fffdc1d789 esp-netif-ppp: support for setting ppp netif up and down
calling esp_netif_up() and esp_netif_down() was not supported if the
underlying netif wos of ppp type. Updated the code to enable setting
these interfaces up/down and registered actions in moden_netif glue for
connection/disconnection events to set the netif up/down.
2020-03-19 13:16:24 +00:00
David Cermak
e8ff22b5fb esp-netif: set default interface for ppp netif must be called from lwip context
On update of any interface (set up/down) a routing preference is updated calling esp_netif_update_default_netif() that is called from
lwip context. But if the related netif was ppp type, the set_default api used user-mode, thus causing a dead lock.

Closes https://github.com/espressif/esp-idf/issues/4746
2020-03-19 13:16:24 +00:00
ChenJianxing
9dd7b17deb esp_wifi: update esp32s2 phy lib v300 2020-03-19 20:56:46 +08:00
Anton Maklakov
8046df875e docs: Fixup format of a command line to build unit tests 2020-03-19 19:28:46 +07:00
xiehang
a133dbd848 LWIP: Add lwip assert control 2020-03-19 19:00:19 +08:00
Ivan Grokhotkov
9b20b76ae6 Merge branch 'bugfix/s2_gcm_hw' into 'master'
aes: Fixed tag sometime being wrong for HW GCM

See merge request espressif/esp-idf!8009
2020-03-19 18:06:25 +08:00
Anton Maklakov
8b8897cfc5 Merge branch 'feature/update_tools' into 'master'
tools: Update Ninja and CMake

See merge request espressif/esp-idf!7764
2020-03-19 17:56:49 +08:00
Ivan Grokhotkov
e280b3a3d9 Merge branch 'feature/single_sysview_file_for_multicore' into 'master'
apptrace: Adds support for multi-core traces in single file to SystemView processing scripts

See merge request espressif/esp-idf!7298
2020-03-19 17:45:15 +08:00
Shubham Kulkarni
6e09056c25 example: Add Heap Task Tracking example 2020-03-19 15:07:41 +05:30
David Čermák
1d3dbb239a Merge branch 'feature/ws_server' into 'master'
http_server: adds WebSocket support

Closes IDFGH-2151 and IDFGH-2752

See merge request espressif/esp-idf!7893
2020-03-19 17:20:56 +08:00
Marius Vikhammer
2f5e4601ef rsa: ignore performance test in CI
Even with a static key the performance vary a lot between different builds.
2020-03-19 14:16:39 +08:00
Hrishikesh Dhayagude
67a6fd6f3b NimBLE: Add support to IRAM allocation strategy
Added IRAM allocation provision under nimble_platform_mem_malloc()
2020-03-19 04:47:39 +00:00
Angus Gratton
207914a13a Merge branch 'refactor/common_code_panic_handler' into 'master'
Panic handling common code refactor

See merge request espressif/esp-idf!7489
2020-03-19 11:23:57 +08:00
Angus Gratton
aec558eea4 Merge branch 'bugfix/efuse_get_coding_scheme_and_ut' into 'master'
efuse: Fix get_coding_scheme() using ESP_EARLY_LOG* instead of ESP_LOG*

Closes IDFGH-2799

See merge request espressif/esp-idf!7946
2020-03-19 11:18:09 +08:00
chenjianqiang
140e0390cc psram: add psram size auto detect for esp32s2 2020-03-19 10:53:47 +08:00
David Cermak
0c13082b20 http_server docs: document websocket feature and corresponding example 2020-03-18 20:24:46 +00:00
David Cermak
1b842ce1a8 http_server: websocket server to support async send 2020-03-18 20:24:46 +00:00
David Cermak
d7b3a051f0 examples: http_server - add websocket echo server example with test 2020-03-18 20:24:46 +00:00
Jackson Ming Hu
e983042af2 http_server: adds WebSocket support
This commit adds the WebSocket support for esp_http_server
library. It mainly does:

- Handling WebSocket handshake
  - Parsing HTTP upgrade request
  - Reply the upgrade request
- Receive WebSocket packets
  - Parse header, decode to a struct
  - Unmask payload (if required)
- Send WebSocket frames
- Receive WebSocket frame
- Automatic control frame handling

Merges https://github.com/espressif/esp-idf/pull/4306
Closes https://github.com/espressif/esp-idf/issues/4819
2020-03-18 20:24:46 +00:00
Ivan Grokhotkov
5a1b1d6a1d tools: cmake: update to 3.16.4 2020-03-18 08:28:36 +00:00
Ivan Grokhotkov
8a6c507d14 tools: ninja: update to 1.10.0
Closes https://github.com/espressif/esp-idf/issues/4687
2020-03-18 08:28:36 +00:00
Ivan Grokhotkov
5172724092 Merge branch 'bugfix/macos_build_test_submodules' into 'master'
ci: do fetch submodules in test_build_system_cmake_macos

See merge request espressif/esp-idf!7625
2020-03-18 16:26:35 +08:00
Jiang Jiang Jian
cd08917622 Merge branch 'feature/add_certification_version_number' into 'master'
esp_wifi: add certification version number.

See merge request espressif/esp-idf!7965
2020-03-18 16:17:43 +08:00
Angus Gratton
99a7581974 Merge branch 'bugfix/uecc_antifault' into 'master'
secure boot: Fix anti-fault value if hash is shorter than curve

See merge request espressif/esp-idf!7940
2020-03-18 15:51:09 +08:00
ChenJianxing
efd3505e51 esp_wifi: add certification version number. 2020-03-18 14:38:48 +08:00
Island
961f461f72 Merge branch 'bugfix/ble_mesh_nimble_adapt_deinit' into 'master'
ble_mesh: Fix ble mesh nimble host deinit

Closes BLEMESH-177 and IDFGH-2898

See merge request espressif/esp-idf!7985
2020-03-18 12:32:48 +08:00
Jiang Jiang Jian
d579c8a13e Merge branch 'bugfix/fix_the_bugs_for_country_code' into 'master'
fix the bugs for country code

Closes WIFI-1569 and WIFI-1586

See merge request espressif/esp-idf!7238
2020-03-18 11:49:32 +08:00
Jiang Jiang Jian
c665c9ec24 Merge branch 'bugfix/esp32s2_ap_mac_address' into 'master'
esp_wifi: fix esp32s2 ap mac address can not find.

See merge request espressif/esp-idf!8010
2020-03-18 11:43:48 +08:00
chenjianqiang
42154848cc psram: add 16Mbit psram support for esp32s2 2020-03-18 11:15:00 +08:00
Marius Vikhammer
ffb9010cbe aes: Fixed tag sometime being wrong for HW GCM
The GCM hardware accelerated algorithm for S2 would sometimes output
the wrong tag.

Added additional tests for AES and GCM

Re-enable HW GCM as default option
2020-03-18 08:44:38 +08:00
ChenJianxing
af8d90dbc1 esp_wifi: fix esp32s2 ap mac address can not find. 2020-03-17 21:33:59 +08:00
Ivan Grokhotkov
9e0c368a6a ci: do fetch submodules in test_build_system_cmake_macos
Also install Python packages required by the CI scripts, and install
build tools (CMake, ninja).
2020-03-17 09:30:59 +01:00
Jiang Jiang Jian
2e7ae75011 Merge branch 'bugfix/wep40_key_parsing_bug' into 'master'
wpa_supplicant: Add parsing support for WEP40 key

See merge request espressif/esp-idf!7968
2020-03-17 15:42:02 +08:00
Jiang Jiang Jian
5193838a07 Merge branch 'feat/ble_mesh_vnd_model_example' into 'master'
Feat/ble mesh vnd model example

Closes BLEMESH-167

See merge request espressif/esp-idf!7840
2020-03-17 15:35:20 +08:00
Angus Gratton
9c430a17aa Merge branch 'feature/mpi_accel_s2' into 'master'
MPI/RSA accelerator bringup for S2 and bignum refactor

Closes IDF-803 and IDF-1174

See merge request espressif/esp-idf!7915
2020-03-17 13:16:05 +08:00
Mahavir Jain
6795fc194f Merge branch 'fix/wifi_provisioning_uuid' into 'master'
Wifi_provisioning: Change service_uuid to non standard 128 bit UUID and add retries in test script

See merge request espressif/esp-idf!7939
2020-03-17 12:00:32 +08:00
Angus Gratton
998eba699e Merge branch 'bug/hw_sha_fail_alloc' into 'master'
s2 sha hw: Fix bug where alloc would fail if input were of len 0

See merge request espressif/esp-idf!7991
2020-03-17 09:33:14 +08:00
Ivan Grokhotkov
454293159d Merge branch 'docs/update_esp32s2_oocd_target_name' into 'master'
Updates OpenOCD commands

See merge request espressif/esp-idf!7906
2020-03-17 01:15:10 +08:00
Krzysztof Budzynski
780eb6af9b Merge branch 'docs/tanslate_esp_mesh2' into 'master'
Add translation for mesh document under api guide

See merge request espressif/esp-idf!7055
2020-03-17 01:02:37 +08:00
Natasha
ee0ae607da Add translation for mesh document under api guide 2020-03-17 01:02:36 +08:00
Ivan Grokhotkov
2a630cb8d8 Merge branch 'feature/nvs_test_erase_cycles' into 'master'
nvs: add a test for sector erase cycles

See merge request espressif/esp-idf!7948
2020-03-17 00:32:59 +08:00
Alexey Gerenkov
6964cc5d3a tools: Updates OpenOCD version to v0.10.0-esp32-20200309 2020-03-16 19:07:05 +03:00
Alexey Gerenkov
7ee7a6d7bb docs: Updates OpenOCD command names 2020-03-16 19:06:47 +03:00
Alexey Gerenkov
d5cd131da4 apptrace: Adds support for multi-core traces in single file to SystemView processing scripts 2020-03-16 15:17:36 +03:00
Marius Vikhammer
7e824508a9 mpi: refactor bignum into common and hw specific components
Closes IDF-1174
2020-03-16 19:44:30 +08:00
Marius Vikhammer
16b6a7a903 s2 sha hw: Fix bug where alloc would fail if input were of len 0 2020-03-16 19:29:59 +08:00
zhangyanjiao
a11673ebe4 wifi: return fail when setting softAP's channnel is out of range 2020-03-16 17:34:48 +08:00
Jiang Jiang Jian
493cdf53b9 Merge branch 'bugfix/fix_scan_get_rssi_err' into 'master'
esp_wifi: Fix scan get rssi err

Closes WIFI-1805

See merge request espressif/esp-idf!7961
2020-03-16 17:10:13 +08:00
Prasad Alatkar
415ccf8518 Wifi_provisioning_mgr_test: Allow three attempts to connect to AP before concluding provisioning failure 2020-03-16 08:20:37 +00:00
Prasad Alatkar
8419aa85a9 Wifi_provisioning_ble: Change service_uuid to non standard 128 bit UUID
- Modifies UUIDs in scheme_ble, manager example and esp_prov tool to custom 128
  bit UUID
2020-03-16 08:20:37 +00:00
Mahavir Jain
88fd09111c Merge branch 'feature/prov_example_restructure' into 'master'
wifi_provisioning: Example restructuring

See merge request espressif/esp-idf!6901
2020-03-16 15:38:11 +08:00
kapil.gupta
0ae58fc59f wpa_supplicant: Add parsing support for WEP40 key
WEP key is passed as ascii key without "", add parsing support
in supplicant for this.
2020-03-16 06:14:19 +00:00
Anton Maklakov
7355e550cc Merge branch 'feature/public_headers_check_objects' into 'master'
CI: public header check script in python

Closes IDF-1324

See merge request espressif/esp-idf!7923
2020-03-16 13:23:00 +08:00
Angus Gratton
83d2b6003d Merge branch 'feature/deploy_multi_target_docs' into 'master'
docs: deploy docs to production server from CI

Closes IDF-1215 and IDF-1218

See merge request espressif/esp-idf!7637
2020-03-16 13:05:54 +08:00
lly
ac2ef797fe ble_mesh: Fix ble mesh nimble host deinit 2020-03-16 12:45:58 +08:00
Ivan Grokhotkov
b497819667 docs: update esp32s2 summary page
- Refer to the toolchain links on IDF Tools page
- Update the wording around v4.1/v4.2 releases
- Remove the section about 3 different versions (of S2-beta)
- Add link to the list of features maintained externally
2020-03-16 14:40:37 +11:00
Angus Gratton
cb7f2d737a docs: Bump copyright date to 2020 2020-03-16 14:36:23 +11:00
Angus Gratton
e0eb218e7a docs: Add a note about what target this doc version is for 2020-03-16 14:36:23 +11:00
Angus Gratton
296a1db3c6 docs: Update link_to_translation to work with targets & new URL scheme
Main difference is using app config for version & target

Also made this code less generic, easier to understand
2020-03-16 14:36:23 +11:00
Angus Gratton
1a2ddcb77a docs: deploy docs to production server from CI 2020-03-16 14:36:23 +11:00
Angus Gratton
416076665b docs: use new sphinx_idf_theme theme, add variables to allow theme to build version footer 2020-03-16 14:36:23 +11:00
Ivan Grokhotkov
a3e236291f xtensa: add a script for parsing CPU traces (TRAX) 2020-03-13 17:30:29 +01:00
David Cermak
ecb419da2f soc: minor header fix typo and include of sdkconfig 2020-03-13 12:53:52 +01:00
David Cermak
8f6645667e CI: public header check script in python
Additional test compiling the header to produce assembly:
- checks if header really compiles (previously validated only by
preprocessor)
- checks that the header produced empty object, no inline code to be
present in public headers

Closes IDF-1324
2020-03-13 12:53:52 +01:00
Jiang Jiang Jian
0ae960f2fe Merge branch 'feature/support_esp32s2_mac_addr_offset' into 'master'
Add mac address offset for some esp32s2.

See merge request espressif/esp-idf!7855
2020-03-13 19:47:33 +08:00
Jiang Jiang Jian
57ad4afe7d Merge branch 'bugfix/fix_esp32s2_enable_multi_phy_init_data_bin_err' into 'master'
esp32s2: fix when enable multi phy init data bin compile err.

Closes IDF-1459

See merge request espressif/esp-idf!7936
2020-03-13 19:47:00 +08:00
Jiang Jiang Jian
df56535b7a Merge branch 'bugfix/compiler_err_when_performance_optimization_enabled' into 'master'
Bugfix/compiler err when performance optimization enabled

Closes BT-688

See merge request espressif/esp-idf!7958
2020-03-13 19:41:59 +08:00
Marius Vikhammer
e21bef3f28 mpi: active hw accel for S2
Actives MPI/RSA hardware acceleratio for ESP32 S2.

Closes IDF-803
2020-03-13 18:33:18 +08:00
Ivan Grokhotkov
6afc116036 nvs: enable address sanitizer in host tests when building with clang 2020-03-13 11:29:39 +01:00
Ivan Grokhotkov
d2526e6dda nvs: fix out of bounds array access in host test 2020-03-13 11:29:39 +01:00
Ivan Grokhotkov
db34a4d031 nvs: add test for erase cycles distribution 2020-03-13 11:29:39 +01:00
Ivan Grokhotkov
0cbbd948c0 nvs: clean coverage files on rebuild
Fixes errors reported by libgcov related to merging debug information.
2020-03-13 11:28:04 +01:00
Ivan Grokhotkov
64ceab0069 Merge branch 'feature/aes_sha_accel_s2' into 'master'
crypto: SHA and AES accelerator bring up for S2

Closes IDF-1443, IDF-714, and IDF-716

See merge request espressif/esp-idf!7825
2020-03-13 18:21:09 +08:00
Jiang Jiang Jian
0367fe461e Merge branch 'bugfix/ble_mesh_miscellaneous_fix' into 'master'
Bugfix/ble mesh miscellaneous fix

Closes BLEMESH-174

See merge request espressif/esp-idf!7881
2020-03-13 17:50:26 +08:00
Jiang Jiang Jian
26bcbf9798 Merge branch 'bugfix/fix_esp32s2_wifi_log_not_printf' into 'master'
esp_wifi: Fix ESP32S2 wifi log not printing

See merge request espressif/esp-idf!7964
2020-03-13 17:29:34 +08:00
xiehang
afa4dbae16 esp_wifi: Fix ESP32S2 wifi log not printing 2020-03-13 14:48:18 +08:00
Piyush Shah
62626ac4b9 esp_prov: Add support for sending some abstract custom data
To be used with the provisioning/wifi_prov_mgr example

Signed-off-by: Piyush Shah <piyush@espressif.com>
2020-03-13 06:23:15 +00:00
Piyush Shah
9ee5f3e8ce wifi_prov_mgr: Add config options to switch transport and support for custom data
Config options have been set such that BLE transport will be the default for ESP32
and SoftAP will be the default for ESP-S2.

CMakeLists.txt for all provisioning examples applicable for ESP32-S2 have also been updated
as these now work fine on ESP32-S2

Signed-off-by: Piyush Shah <piyush@espressif.com>
2020-03-13 06:23:15 +00:00
Piyush Shah
156ae68275 provisioning_examples: Move older examples to legacy/ folder
Change the manager example folder name to wifi_prov_mgr to sound more meaningful.

Signed-off-by: Piyush Shah <piyush@espressif.com>
2020-03-13 06:23:15 +00:00
xiehang
e4698f8473 esp_wifi: Fix scan get rssi err
Remove software modify rssi
2020-03-13 12:35:49 +08:00
Jiang Jiang Jian
ad7dfb77c4 Merge branch 'bugfix/reduce_wifi_bin_size' into 'master'
esp_wifi: Reduce Bin size

Closes WIFI-9

See merge request espressif/esp-idf!7781
2020-03-13 12:20:50 +08:00
Michael (XIAO Xufeng)
a3c9a864ab Merge branch 'feat/spi_caps_control_dummy' into 'master'
spi_flash: add caps for dummy output control

See merge request espressif/esp-idf!7534
2020-03-12 22:23:49 +08:00
lly
0d6ad3265e ble_mesh: Add ESP BLE Mesh vendor models example 2020-03-12 18:21:29 +08:00
Mahavir Jain
453b65a608 Merge branch 'feature/upgrade_mbedtls_to_v2.16.4' into 'master'
mbedtls: upgrade to release v2.16.5

Closes IDFGH-2638

See merge request espressif/esp-idf!7607
2020-03-12 18:08:33 +08:00
lly
e8fc87b6f3 ble_mesh: Rename ble_mesh_vendor_models to common_vendor_models 2020-03-12 17:50:12 +08:00
lly
2ed1724fc2 ble_mesh: Move dev_role to the end of model_pub 2020-03-12 17:48:09 +08:00
lly
5a90ea3048 ble_mesh: Use the right netkey during iv update 2020-03-12 17:43:19 +08:00
lly
37466d957d ble_mesh: Use the right net_idx & app_idx for publish 2020-03-12 17:43:19 +08:00
lly
1795107533 ble_mesh: Check buf->ref before unref the buffer 2020-03-12 17:43:19 +08:00
lly
2b80649a79 ble_mesh: Fix mesh memory use-after-free issue 2020-03-12 17:43:19 +08:00
lly
08080edb1b ble_mesh: Add ble mesh deinit in btc task 2020-03-12 17:43:19 +08:00
lly
9d3ad04667 ble_mesh: Free beacon timer when deinit mesh 2020-03-12 17:43:19 +08:00
lly
13ab2f4015 ble_mesh: Use lock for mesh timer operations 2020-03-12 17:43:19 +08:00
weitianhua
0d2790a429 Remove (x2) variable in BCM_STRNCPY_S and BCM_STRCPY_S when performance optimization enabled 2020-03-12 16:20:58 +08:00
weitianhua
b86f4d4f00 Fix mem_start uninitialized error when compiler optimization performance enabled 2020-03-12 15:07:03 +08:00
Marius Vikhammer
3351376a11 AES: optimize AES-GCM
HW acceleration for GCM is now enabled by default

Closes IDF-1443
2020-03-12 10:20:24 +08:00
michael
3b1fa7b8f0 spi_flash: add caps for dummy output control 2020-03-11 16:13:39 +00:00
Jiang Jiang Jian
640c7c5107 Merge branch 'bugfix/select_waiting_assert' into 'master'
lw-ip:fix bug for after udp close select_waiting assert

Closes WIFI-1622

See merge request espressif/esp-idf!7400
2020-03-11 21:15:57 +08:00
Mahavir Jain
1cde594460 Merge branch 'bugfix/change_function_pointer_esp_crt_bundle_attach' into 'master'
esp_tls: change argument pointer type to (void *) for esp_crt_bundle_attach

See merge request espressif/esp-idf!7947
2020-03-11 19:39:47 +08:00
Ivan Grokhotkov
dbdcd26902 Merge branch 'bugfix/fix_default_console_gpio_on_esp32s2' into 'master'
esp32s2: fix default console GPIO

See merge request espressif/esp-idf!7938
2020-03-11 18:39:17 +08:00
Aditya Patwardhan
874e987a3b esp_tls: change argument pointer type to (void *) for esp_crt_bundle_attach 2020-03-11 15:54:05 +05:30
KonstantinKondrashov
912028273d efuse: Using IDF_ENV_FPGA in UTs 2020-03-11 18:22:07 +08:00
KonstantinKondrashov
4c5d26085f efuse/esp32s2: Fix get_coding_scheme() when CONFIG_SECURE_FLASH_ENC_ENABLED and LOG_LEVEL is Debug 2020-03-11 18:22:07 +08:00
KonstantinKondrashov
ae90d5f39f efuse/esp32: Fix get_coding_scheme() when CONFIG_SECURE_FLASH_ENC_ENABLED and LOG_LEVEL is Debug
Closes: https://github.com/espressif/esp-idf/issues/4862
2020-03-11 18:22:07 +08:00
xueyunfei
e3ff1efe65 fix bug for after udp close select_waiting assert 2020-03-11 10:03:40 +00:00
ChenJianxing
5019419496 esp32s2: fix when enable multi phy init data bin compile err. 2020-03-11 18:03:21 +08:00
Marius Vikhammer
37369a8a57 crypto: SHA and AES accelerator bring up for S2
Brings up, fixes and enables AES and SHA hardware acceleration.

Closes IDF-714
Closes IDF-716
2020-03-11 15:09:45 +08:00
Angus Gratton
59381b60c0 Merge branch 'refactor/hal_function_set_exception_vector_table' into 'master'
soc: add hal api to set exception vector table base address

See merge request espressif/esp-idf!7905
2020-03-11 14:44:42 +08:00
Angus Gratton
694e22b41a Merge branch 'feature/multi_target_performance_test' into 'master'
Add multi-target support for performance tests

Closes IDF-1137 and IDF-1113

See merge request espressif/esp-idf!7831
2020-03-11 14:38:51 +08:00
Angus Gratton
f2d310fea7 secure boot: Fix anti-fault value if hash is shorter than curve
(Not actually a problem with SBV1 anti-fault as hash size == curve size in this case.)
2020-03-11 17:17:20 +11:00
Andrew
3bb41fd67e spi: add unit test for slave receiving length 2020-03-11 13:24:30 +08:00
Mahavir Jain
02d2903e39 mbedtls: upgrade to release v2.16.5
For detailed release notes please refer to:
https://tls.mbed.org/tech-updates/releases/mbedtls-2.16.5-and-2.7.14-released

Closes: IDFGH-2638
Closes: https://github.com/espressif/esp-idf/issues/4716
2020-03-11 05:17:33 +00:00
ChenJianxing
a6c27619f2 add mac address offset for some esp32s2. 2020-03-11 13:17:23 +08:00
morris
6cb7d82120 esp32s2: fix default console GPIO
on ESP32-S2, the default GPIO used for UART0 is: TX-43, RX-44
2020-03-11 12:30:29 +08:00
Krzysztof Budzynski
b9abb78546 Merge branch 'doc/hw-reference/esp32-devkits-r-guide' into 'master'
ESP32-DevKitS-R User Guide

See merge request espressif/esp-idf!7790
2020-03-11 06:43:31 +08:00
Wang Ning
b85358e593 Updated index
components/esp_wifi/lib_esp32/
2020-03-11 06:43:31 +08:00
KonstantinKondrashov
fc03161f70 app_update: Fix case when elf file SHA256 should be printed by panic handler while cache is disabled
Closes: IDF-1342
2020-03-10 20:26:03 +08:00
Renz Bagaporo
ee519634a5 esp_system: retain backtrace no space 2020-03-10 19:56:24 +08:00
Renz Bagaporo
7cc8cb68bd esp_system: suppress reason display on software abort panic 2020-03-10 19:56:24 +08:00
Renz Bagaporo
890510aecd esp32, esp32s2: move reset reason source to esp_system 2020-03-10 19:56:24 +08:00
Renz Christian Bagaporo
84e80a3e50 soc: remove sdio slave hal source file duplicate 2020-03-10 19:56:24 +08:00
Renz Christian Bagaporo
29ebfc3f46 esp_system: let panic handler break on debug mode on software abort 2020-03-10 19:56:24 +08:00
Renz Christian Bagaporo
af9b1131a3 esp_system: share abort panic with port layer 2020-03-10 19:56:24 +08:00
Renz Christian Bagaporo
2855bb6f0a newlib: move abort to newlib 2020-03-10 19:56:24 +08:00
Renz Christian Bagaporo
20cfc2ecdd docs: update docs with panic handler changes 2020-03-10 19:56:24 +08:00
Renz Christian Bagaporo
2b100789b7 esp32, esp32s2: move panic handling code to new component 2020-03-10 19:56:24 +08:00
Jiang Jiang Jian
06fa9476a5 Merge branch 'bugfix/fix_controller_disable_re_enable_crash' into 'master'
bugfix: fix the crash bug after controller disable and re-enable in ble bt

Closes BCI-91 and BCI-28

See merge request espressif/esp-idf!7775
2020-03-10 18:13:17 +08:00
xiehang
7569e34e89 esp_wifi: Reduce Bin size
1. Disable WiFi API parameter checking log
2. Optimize wifi log
2020-03-10 17:45:06 +08:00
Jiang Jiang Jian
a30557ca31 Merge branch 'mesh/feature_chain_topology' into 'master'
Mesh/feature chain topology

Closes WIFI-1726

See merge request espressif/esp-idf!7215
2020-03-10 17:41:11 +08:00
Michael (XIAO Xufeng)
c04145bc47 Merge branch 'feature/tinyusb_esp_dev_branch' into 'master'
tinyusb: switch to esp-develop branch

See merge request espressif/esp-idf!7922
2020-03-10 10:38:54 +08:00
Andrei Gramakov
08543533d8 tinyusb: switch to esp-develop branch 2020-03-09 14:49:29 +01:00
Roland Dobai
15884eccf2 Add multi-target support for performance tests 2020-03-09 13:41:56 +01:00
Krzysztof Budzynski
37997407df Merge branch 'doc/review_api-ref_periph-esp-slave-protocol' into 'master'
Doc/review api ref periph esp slave protocol

See merge request espressif/esp-idf!6968
2020-03-09 19:19:01 +08:00
Anton Maklakov
96ecd5bb53 Merge branch 'ci/build_bootloader_configs' into 'master'
ci: Fix CI testing of bootloader configs

See merge request espressif/esp-idf!7911
2020-03-09 19:08:39 +08:00
Ivan Grokhotkov
95c275109b Merge branch 'refactor/add_target_name_for_parttool' into 'master'
parttool: don't print target name

See merge request espressif/esp-idf!7904
2020-03-09 18:57:44 +08:00
gengyuchao
df3f2f4cb0 bugfix/fix_controller_disable_re_enable_crash 2020-03-09 17:40:06 +08:00
Michael (XIAO Xufeng)
81daaff050 Merge branch 'feature/usb_component' into 'master'
Feature/usb component

See merge request espressif/esp-idf!6897
2020-03-09 16:53:55 +08:00
Jiang Jiang Jian
951a949b19 Merge branch 'Bugfix/netconn_marked_close_crash' into 'master'
lw-ip:fix bug for netconn marked close crash

Closes WIFI-958

See merge request espressif/esp-idf!7815
2020-03-09 16:35:58 +08:00
morris
46ea7d815d parttool: don't print target name 2020-03-09 15:05:04 +08:00
Andrei Gramakov
9d059be165 usb: added a tinyusb component; ci; soc.
ci: ignore s2-only projects from the cmake-make test
soc: refactored the usb part
2020-03-09 07:55:06 +01:00
xueyunfei
f7d2aa96bd fix bug for netconn marked close crash 2020-03-09 06:32:41 +00:00
Angus Gratton
c1871437c8 Merge branch 'bugfix/console_repl_build_failure' into 'master'
bugfix reported on GitHub (ethernet, console, i2ctool)

Closes IDFGH-2780, IDFGH-2361, and IDFGH-2829

See merge request espressif/esp-idf!7886
2020-03-09 14:26:39 +08:00
Angus Gratton
df9d3c6e43 Merge branch 'refactor/print_app_description_on_startup' into 'master'
esp32s2: print app description on startup

See merge request espressif/esp-idf!7899
2020-03-09 14:05:04 +08:00
qiyuexia
7bd03faa4b mesh: add chain topology 2020-03-09 06:00:42 +00:00
Jiang Jiang Jian
c2f2b0e490 Merge branch 'bugfix/Add_tx_packets_size_check' into 'master'
esp_wifi: Add TX packets size check

See merge request espressif/esp-idf!7859
2020-03-09 13:51:57 +08:00
Angus Gratton
f21079a06d Merge branch 'bugfix/duplicate_sdio_slave_hal' into 'master'
soc: remove duplicate sdio_slave_hal.c

See merge request espressif/esp-idf!7874
2020-03-09 13:35:58 +08:00
Angus Gratton
a9e21060e1 Merge branch 'ci/fix_ut_s2_only' into 'master'
ci: fix the issue unit_test_s2 label cannot be used independently

See merge request espressif/esp-idf!7873
2020-03-09 13:35:23 +08:00
Angus Gratton
1a8dc6f76b Merge branch 'bugfix/ws_example_text_send' into 'master'
examples: websocket example to send textual data with esp_websocket_client_send_text()

See merge request espressif/esp-idf!7894
2020-03-09 13:34:51 +08:00
Angus Gratton
7b5bca9b93 unit test app: Use the new config names for DEBUG/RELEASE configs
Also build the bootloader to the same config level as the app
2020-03-09 11:55:52 +11:00
Angus Gratton
8de3ad8df1 ci: Build all bootloader configs when building the bootloader app
CI regression in 26efc5a6d0
2020-03-09 11:55:22 +11:00
Ivan Grokhotkov
f7d1ed5f32 Merge branch 'bugfix/idf_tools_check_virtualenv' into 'master'
tools: check if idf_tools.py install-python-env is called from a venv

Closes IDF-1095

See merge request espressif/esp-idf!7793
2020-03-07 18:07:41 +08:00
Ivan Grokhotkov
80f50471bf Merge branch 'bugfix/coredump_no_ext_stacks' into 'master'
core dump: don't allow core dumps to Flash if PSRAM is used for stacks

See merge request espressif/esp-idf!7835
2020-03-07 18:07:10 +08:00
Ivan Grokhotkov
8caeb6adfa Merge branch 'bugfix/bootloader_O0_align_error' into 'master'
bootloader_support: force alignment of flash_read argument

See merge request espressif/esp-idf!7860
2020-03-07 18:06:30 +08:00
Ivan Grokhotkov
ca1260bf83 Merge branch 'bugfix/idfpygenerator' into 'master'
tools: fix idf.py to be able to select a generator for build

Closes IDF-1454

See merge request espressif/esp-idf!7891
2020-03-07 18:05:22 +08:00
morris
46a3f3e516 console: make uart param configurable
Closes https://github.com/espressif/esp-idf/issues/4845
2020-03-07 13:23:23 +08:00
morris
0a7ccb8095 ethernet: fix potential null pointer dereference
Closes https://github.com/espressif/esp-idf/issues/4890
2020-03-07 12:12:29 +08:00
Felipe Ruhland
718a34f765 Fix typo from ic2_tools readme
Merges https://github.com/espressif/esp-idf/pull/4488
2020-03-07 12:11:37 +08:00
morris
8b6c0947c7 soc: add hal api to set exception vector table base address 2020-03-06 20:23:30 +08:00
Roland Dobai
c35538ecee tools: fix idf.py to be able to select a generator for build 2020-03-06 10:41:09 +01:00
Michael (XIAO Xufeng)
63cd2b0613 Merge branch 'feature/esp32s2_sd_card_example' into 'master'
examples: re-enable storage/sd_card example for ESP32-S2

Closes IDF-1125

See merge request espressif/esp-idf!7850
2020-03-06 16:10:07 +08:00
morris
ddcba3d574 bootloader_support: read random from register 2020-03-06 15:32:01 +08:00
xiehang
91bcd5eb63 esp_wifi: Add TX packets size check 2020-03-06 15:27:24 +08:00
morris
f735b8891e esp32s2: print app description on startup 2020-03-06 15:24:28 +08:00
Angus Gratton
a9854f7085 Merge branch 'feature/rmt_clock_support_ref_tick' into 'master'
rmt: support ref tick && refactor unit test && re-enable unit test on ESP32-S2

Closes IDFGH-1715

See merge request espressif/esp-idf!7614
2020-03-06 15:03:52 +08:00
Angus Gratton
46e6307e07 Merge branch 'bugfix/fix_passing_argument_to_ulp_cmake_script' into 'master'
Fix passing argument to ULP CMake script

See merge request espressif/esp-idf!7845
2020-03-06 14:37:03 +08:00
Angus Gratton
2f1815f74e Merge branch 'bugfix/cmake_issues' into 'master'
CMake bugfixes

See merge request espressif/esp-idf!7605
2020-03-06 14:36:59 +08:00
Angus Gratton
d6a2b4fdde Merge branch 'bugfix/missing_semicolon_in_docs' into 'master'
Added semi-colon to esp_event_loop_create(...)

See merge request espressif/esp-idf!7846
2020-03-06 14:32:44 +08:00
Angus Gratton
0e0efa28be Merge branch 'test/stdatomic_ut' into 'master'
atomic: support fetch_and, fetch_and and fetch_xor

See merge request espressif/esp-idf!7852
2020-03-06 14:32:02 +08:00
Angus Gratton
f393938c22 Merge branch 'bugfix/remove_esp32s2_esp_intr_header' into 'master'
esp32s2: remove esp_intr.h header

See merge request espressif/esp-idf!7883
2020-03-06 14:30:28 +08:00
Angus Gratton
b393203b27 Merge branch 'feature/x509_cert_management' into 'master'
X509 certificate management

Closes IDF-296

See merge request espressif/esp-idf!5346
2020-03-06 14:29:53 +08:00
Angus Gratton
86eee73ff0 Merge branch 'bugfix/aligned_alloc_without_poisoning' into 'master'
bugfix/heap: Make aligned alloc and aligned free available to all heap poisoning configurations

See merge request espressif/esp-idf!7822
2020-03-06 14:11:20 +08:00
Angus Gratton
02e9e0621e Merge branch 'bugfix/display_partition_table_info' into 'master'
partition_table: output partition table info for partition_table target

See merge request espressif/esp-idf!7638
2020-03-06 14:09:09 +08:00
Jiang Jiang Jian
b184504a84 Merge branch 'feature/support_multiple_phy_init_data_bin' into 'master'
feature: support multiple phy init data

Closes WIFI-648

See merge request espressif/esp-idf!6399
2020-03-06 12:20:43 +08:00
Michael (XIAO Xufeng)
8e348dcdcd Merge branch 'bugfix/fix_driver_ut_i2s' into 'master'
bugfix(i2s): fix driver ut i2s

See merge request espressif/esp-idf!6946
2020-03-06 11:55:07 +08:00
Jiang Jiang Jian
b7a14c47e6 Merge branch 'bugfix/customer_baidu_psram_stack_backtrace' into 'master'
added psram stack check in backtrace

See merge request espressif/esp-idf!7834
2020-03-06 11:35:54 +08:00
Anton Maklakov
8b0523b303 Merge branch 'nimble/host_based_rpa' into 'master'
NimBLE: Support Host based privacy (RPA) feature in NimBLE host

See merge request espressif/esp-idf!7497
2020-03-06 11:02:18 +08:00
Prasad Alatkar
48bd2d74b4 NimBLE: Add Host based privacy (RPA) feature support
- This feature removes dependency on controller to use privacy (RPA)
2020-03-06 11:02:18 +08:00
David Čermák
a3816bcb75 Merge branch 'bugfix/example_esp32s2_ipv6_on' into 'master'
examples: enable IPv6 in example common connect for esp32s2

Closes IDF-1115

See merge request espressif/esp-idf!7879
2020-03-06 04:05:27 +08:00
David Čermák
8b9a7ce67a Merge branch 'bugfix/ppp_enable_ipv6' into 'master'
esp-netif: make the IPv6 configurable for PPP netifs

Closes IDFGH-2712 and WIFI-860

See merge request espressif/esp-idf!7772
2020-03-06 04:03:03 +08:00
David Cermak
48fe3a13f5 examples: common connect code to ignore GOT_IP6_EVENT if comes from unrelated netif 2020-03-05 18:46:48 +00:00
David Cermak
ab8cab1c55 mdns: limit the GOT_IP6_EVENT to only known network interfaces 2020-03-05 18:46:48 +00:00
David Cermak
eae8eaa55f esp-netif-ppp: support for posting GOT_IP event for IPv6 2020-03-05 18:46:48 +00:00
Francesco Giancane
afd6d6294e examples: pppos_client: update sdkconfig.defaults
As per discussion in #4782, IPV6 link local negotiation by default is
disabled.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>
2020-03-05 18:46:48 +00:00
Francesco Giancane
872272e23a lwip: make IPV6 link-local support over PPP configurable
Make the link local negotiation for IPV6 in PPP optional and
configurable.
This is because some modems do not support the IPV6 negotiation and
sending IPV6CP frames would in some cases break the network
configuration phase, resulting in a timeout during the Phase Network.

Please note that this does not disable the IPV6 support for the outgoing
communication (IPV6 is still enabled even if this option is not
selected) but just for the local link between lwIP and modem.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

Merges https://github.com/espressif/esp-idf/pull/4782
Closes https://github.com/espressif/esp-idf/issues/1065
2020-03-05 18:46:48 +00:00
David Cermak
0927ac648f examples: enable IPv6 in example common connect for esp32s2
Closes IDF-1115
2020-03-05 18:33:35 +00:00
David Cermak
e5650d1ed8 examples: websocket example to send textual data with esp_websocket_client_send_text()
Closes https://github.com/espressif/esp-idf/issues/4640
2020-03-05 16:26:26 +01:00
Felipe Neves
d495f175d5 heap: pushed down all the aligned_alloc / free implementation 2020-03-05 11:02:19 -03:00
Ivan Grokhotkov
4fc3ebbdf6 examples: re-enable storage/sd_card example for ESP32-S2
* adjust SPI initialization
* update readme file to mention ESP32-S2
2020-03-05 13:22:18 +01:00
Renz Bagaporo
71c02394e5 esp32s2: remove esp_intr.h header 2020-03-05 16:15:59 +08:00
ronghulin
ffd8c26780 feature: support multiple PHY init data 2020-03-05 16:14:00 +08:00
Jiang Jiang Jian
1e95cf3111 Merge branch 'bugfix/btdm_assert_when_create_connection_cancel' into 'master'
components/bt: Fix assert when create conntion cancel

See merge request espressif/esp-idf!7816
2020-03-05 14:52:36 +08:00
Jiang Jiang Jian
2ee6cc4730 Merge branch 'nimble/make_msys_1_configurable' into 'master'
NimBLE: Fix check for static random address & add MSYS_1 in menuconfig

Closes BT-522

See merge request espressif/esp-idf!7851
2020-03-05 13:53:05 +08:00
Prasad Alatkar
ee1ab95b98 NimBLE: Fix check for static random address & add MSYS_1 in menuconfig
Closes BT-522 & BT-523
2020-03-05 13:53:04 +08:00
Renz Bagaporo
5f3a689a89 soc: remove duplicate sdio_slave_hal.c 2020-03-05 12:47:54 +08:00
Michael (XIAO Xufeng)
27b194bdb9 ci: fix the issue unit_test_s2 label cannot be used independently 2020-03-05 11:10:49 +08:00
Renz Bagaporo
b239070442 ci: add test for partition_table target 2020-03-05 11:04:09 +08:00
Renz Christian Bagaporo
709d139a25 partition_table: output partition table info for partition_table target 2020-03-05 11:04:09 +08:00
Krzysztof Budzynski
12ed4d028b Merge branch 'bugfix/docs_getting_started_updates' into 'master'
docs: Update getting started guide for ESP32-S2 target

See merge request espressif/esp-idf!7746
2020-03-05 05:05:24 +08:00
Krzysztof Budzynski
2178e3fba4 docs: Update getting started guide for ESP32-S2 target 2020-03-05 05:05:23 +08:00
Mahavir Jain
582f5dd697 Merge branch 'feature/https_server_mutual_auth_PR' into 'master'
Feature/https_server_mutual_auth

Closes IDFGH-2004

See merge request espressif/esp-idf!7626
2020-03-04 17:41:28 +08:00
Ivan Grokhotkov
22516b256f bootloader_support: force alignment of flash_read argument 2020-03-04 09:56:01 +01:00
Jiang Jiang Jian
5724083510 Merge branch 'bugfix/coex_adjust_scheme_when_bt_is_in_connected_status' into 'master'
coexist: adjust coexist scheme when BT is in connected status

Closes BT-635 and WIFI-1743

See merge request espressif/esp-idf!7752
2020-03-04 15:33:09 +08:00
wangcheng
03d11913a2 ble_mesh: add ble mesh coex test example 2020-03-04 14:56:26 +08:00
Michael (XIAO Xufeng)
bd7b2261a7 Merge branch 'bugfix/fix_esp32s2_soc_bug' into 'master'
bugfix(soc/rtc): fix soc/rtc code for esp32s2

See merge request espressif/esp-idf!7819
2020-03-04 14:07:41 +08:00
Xia Xiaotian
5aba95a326 coexist: adjust coexist scheme when BT is in connected status 2020-03-04 13:40:11 +08:00
Jiang Jiang Jian
4d0834359f Merge branch 'feature/wpa3_testcases_support' into 'master'
esp_wifi: Support for additional WPA3 testcases

See merge request espressif/esp-idf!7459
2020-03-04 13:33:00 +08:00
Michael (XIAO Xufeng)
9e12586ab7 esp_common: new unit test benchmarking stdatomic operations 2020-03-04 12:20:23 +08:00
Michael (XIAO Xufeng)
8434845050 atomic: support fetch_and, fetch_and and fetch_xor 2020-03-04 11:35:23 +08:00
Mahavir Jain
5f771fb7be Merge branch 'bugfix/esp_wifi_memory_leak_test_failure' into 'master'
esp_wifi: fix occasional test failure due to memory leak indications

See merge request espressif/esp-idf!7823
2020-03-04 11:16:04 +08:00
Marius Vikhammer
947e3e94ed Add ESP certificate bundle feature
Adds the ESP certificate bundle feature that enables users to bundle a
root certificate bundle together with their application.

Default bundle includes all Mozilla root certificates

Closes IDF-296
2020-03-04 10:51:43 +08:00
Angus Gratton
3490c14298 Merge branch 'doc/multi_target_inc_dir' into 'master'
docs: multi target include dir support

Closes IDF-1371

See merge request espressif/esp-idf!7763
2020-03-04 07:35:10 +08:00
Krzysztof Budzynski
61a272ba56 Merge branch 'doc/add-info-manual-boot-to-get-started-guide' into 'master'
Issues with entering Download mode automatically

See merge request espressif/esp-idf!7616
2020-03-04 04:58:30 +08:00
Kirill Chalov
1ead668d77 Issues with entering Download mode automatically
Add description to Getting started guides of possible issues preventing Development boards from entering Firmware Download mode automatically while trying to flash the boards

Closes https://jira.espressif.com:8443/browse/DOC-11
2020-03-04 04:58:29 +08:00
Ivan Grokhotkov
7dacb730db Merge branch 'feature/coredump_update_esp32s2' into 'master'
espcoredump: update for esp32s2

Closes IDF-1378

See merge request espressif/esp-idf!7548
2020-03-03 23:37:45 +08:00
Alex Lisitsyn
3efa8d7a97 core dump: add ESP32-S2 support 2020-03-03 23:37:45 +08:00
Nachiket Kukade
30d6220394 esp_wifi: Support for additional WPA3 testcases
1. Anti-Clogging Token Request support
2. Return correct status from SAE modules for invalid scenarios
3. Add PMK Caching support for WPA3
2020-03-03 19:01:51 +05:30
chaijie
66beaaef7d soc(rtc): modify rtc code in soc for esp32s2 2020-03-03 13:22:52 +00:00
morris
acd4d4a40b unit test using internal signal connection 2020-03-03 20:14:46 +08:00
morris
07088c6446 rmt: disable carrier feature by default 2020-03-03 20:14:46 +08:00
morris
0e4d82bc55 rmt: support REF_TICK as channel clock source
Closes https://github.com/espressif/esp-idf/pull/3952
2020-03-03 20:14:46 +08:00
morris
3c43264f83 rmt: add RMT_CHANNELS_NUM in rmt_caps.h 2020-03-03 20:14:45 +08:00
Jiang Jiang Jian
ebd35a1657 Merge branch 'bugfix/wep_crash' into 'master'
esp-wifi: Fix crash during WEP shared auth

See merge request espressif/esp-idf!7818
2020-03-03 19:18:46 +08:00
Ivan Grokhotkov
b97b9418f8 Merge branch 'bugfix/improve_component_manager_test_output' into 'master'
Improve message for component manager tests

See merge request espressif/esp-idf!7765
2020-03-03 19:02:31 +08:00
Ivan Grokhotkov
39aad6e9f7 Merge branch 'bugfix/cmake_generators' into 'master'
tools: Force the order of cmake generators

Closes IDF-1444

See merge request espressif/esp-idf!7836
2020-03-03 18:33:30 +08:00
Kirill Chalov
b2d38cf324 Review the file api-reference/peripherals/esp_slave_protocol.rst 2020-03-03 18:12:56 +08:00
kapil.gupta
c634de1532 esp-wifi: Fix crash during WEP shared auth
VNC 1181
WIFI Lib: 526
2020-03-03 17:29:03 +08:00
David Čermák
54d7001654 Merge branch 'bugfix/mqtt_cpp_build' into 'master'
MQTT: Fix C++ build issue

Closes IDFGH-2717

See merge request espressif/esp-idf!7722
2020-03-03 17:20:32 +08:00
Renz Bagaporo
7dbd77cefc examples: split source files for one of the ulp examples 2020-03-03 16:56:14 +08:00
Renz Bagaporo
07a71529de ulp: fix ulp external project args
Closes https://github.com/espressif/esp-idf/issues/4713
2020-03-03 16:56:14 +08:00
Marius Vikhammer
9b56892bfe doc: fix broken .. only:: in JTAG guide
Added note about .. only:: limitations to guide
2020-03-03 15:30:37 +08:00
David Cermak
7bf1a1db35 MQTT: Reference latest mqtt addressing c++ build and qos1/2 resend
Closes https://github.com/espressif/esp-idf/issues/4787
2020-03-03 07:07:57 +00:00
David Cermak
6176b5fbe6 MQTT: Add build only test for using mqtt API from C++ 2020-03-03 07:07:57 +00:00
Jiang Jiang Jian
36e292b97d Merge branch 'bugfix/add_hostname_in_discover_packet' into 'master'
lw-ip:add host name in discover packet

Closes WIFI-1702

See merge request espressif/esp-idf!7677
2020-03-03 14:25:19 +08:00
Mahavir Jain
8ae05e6547 esp_wifi: fix occasional test failure due to memory leak indications
Ensure that newly spawned task stack (dynamic) is getting freed up before
test completion and thus preventing false memory leak indication failure.

unit-test-app: add an API test_utils_task_delete

This API ensures that dynamic memory of deleted task gets freed up
before return. This helps for preventing false memory leak detections
in test failures.
2020-03-03 11:11:23 +05:30
xiongyu
b3ae9fa978 bugfix(i2s): Updated ESP32-S2 ADC DAC support
* Delete the relevant codes of ADC DAC of ESP32-S2.
2020-03-03 12:59:30 +08:00
Jiang Jiang Jian
e8ca5e6f21 Merge branch 'bugfix/Add_wifi_stop_check_in_deinit_entry' into 'master'
esp_wifi: Add wifi stop check at wifi deinit entry

Closes WIFI-1671

See merge request espressif/esp-idf!7800
2020-03-03 12:33:05 +08:00
fuzhibo
3ad5138dd8 fix coexist i2s_adc and rtc_adc 2020-03-03 11:58:53 +08:00
xiongyu
faf898b659 bugfix(i2s): fix driver ut i2s
* Add test support for ESP32S2

* Add loop back test

* Support chip internal connection, no external wiring required.

* Delete the relevant codes of PDM of ESP32-S2 ll layer.

* fix dac dma mode issue
2020-03-03 11:58:53 +08:00
Li Shuai
c796e14964 added psram stack check in backtrace 2020-03-03 11:52:29 +08:00
Marius Vikhammer
c26a765a37 doc: remove uncessary .. only:: dirs
Removed some only directives that are no longer needed with include being processed correctly
2020-03-03 11:37:42 +08:00
Marius Vikhammer
dfc95bc78b docs: multi target include dir support
Closes IDF-1371

Added an include directive that allows for the content to be formatted
according to idf target
2020-03-03 11:37:42 +08:00
Angus Gratton
bfc37ab43f Merge branch 'bugfix/spiflash_read_psram' into 'master'
spi_flash: Fix over-allocation and OOM crash when reading from SPI flash to PSRAM buffers

Closes IDFGH-2698

See merge request espressif/esp-idf!7768
2020-03-03 10:20:15 +08:00
Angus Gratton
d638ace47a Merge branch 'bugfix/clean_pcnt_i2s_public_header' into 'master'
clean pcnt i2s public header

See merge request espressif/esp-idf!7827
2020-03-03 10:15:40 +08:00
Angus Gratton
95f7b1985b spi_flash: Remove 16KB free internal heap limit for esp_flash_read() into PSRAM
Allocation of the temporary internal buffer will now repeat until a small enough buffer can be
allocated, and only fail if less than a 256 byte block of internal RAM is free.

Adds unit test for the same, and generic test utility for creating memory pressure.
2020-03-03 00:17:27 +00:00
Angus Gratton
fb340940d3 spi_flash: Fix over-allocation and OOM crash when reading from SPI flash to PSRAM buffers
Previously would try allocate buffer of minimum size 16KB not maximum size 16KB, causing
out of memory errors for any large reads, or if less than 16KB contiguous free heap.

Also, if using legacy API and internal allocation failed then implementation would abort()
instead of returning the error to the caller.

Added test for using large buffers in PSRAM.

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

Also reported on forum: https://esp32.com/viewtopic.php?f=13&t=14304&p=55972
2020-03-03 00:17:27 +00:00
Roland Dobai
2d97209475 tools: Force the order of cmake generators 2020-03-02 16:15:30 +01:00
Ivan Grokhotkov
4f32a06f87 core dump: don't allow core dumps to Flash if PSRAM is used for stacks
It is not possible to write to Flash when the stack is located in
PSRAM, and it is not possible to write PSRAM buffers into Flash when
malloc can not be used.
2020-03-02 14:43:05 +01:00
morris
580ce8fa4a driver: clean pcnt.h i2s.h 2020-03-02 19:31:29 +08:00
xueyunfei
1dfd4d7c42 add host name in discover packet 2020-03-02 08:18:28 +00:00
Aditya Patwardhan
cc0eec52ff esp_https_server: Fixed a PR which adds support for mutual auth in
https_server
Closes https://github.com/espressif/esp-idf/pull/4184
Closes IDFGH-2004
2020-03-02 12:36:36 +05:30
Maximilian Schmidt
559cd57ea6 Support MutualAuthentication in HTTPsServer 2020-03-02 12:28:30 +05:30
Angus Gratton
6f7be93d53 Merge branch 'bugfix/cmake_convert_whitespace' into 'master'
cmake: Minor convert_to_cmake.py fixes

See merge request espressif/esp-idf!7066
2020-03-02 14:22:37 +08:00
xiehang
299ab1360c eps_wifi: Add wifi stop check at wifi deinit entry 2020-03-02 14:20:28 +08:00
Jiang Jiang Jian
4822e468c4 Merge branch 'bugfix/set_channel_in_NULL_mode' into 'master'
fix the bug for setting channel when Wi-Fi in NULL mode

Closes WIFI-1688, WIFI-1689, and WIFI-1704

See merge request espressif/esp-idf!7700
2020-03-02 14:10:35 +08:00
Angus Gratton
c051eafa6a Merge branch 'feature/test_confgen' into 'master'
Tools: Add tests for confgen.py

Closes IDF-480

See merge request espressif/esp-idf!7774
2020-03-02 12:46:51 +08:00
Angus Gratton
08b0b830a1 Merge branch 'bugfix/idf_size_multichip_support' into 'master'
tools: Fix idf_size.py

See merge request espressif/esp-idf!7814
2020-03-02 12:22:06 +08:00
Angus Gratton
8887f79bef cmake: Add warnings that convert_to_cmake.py doesn't calculate component requirements
Any component which requires another component will need this manually
added to its CMakeLists.txt file.
2020-03-02 14:45:03 +11:00
Angus Gratton
ee8557f69d cmake: convert_to_cmake: Fix possible whitespace issues
As reported on forum:
https://esp32.com/viewtopic.php?f=2&t=13565&p=53476#p53453

split() with no arg will match any whitespace sequence not just
a single space, so takes care of case where two spaces are
inserted in the variable value.
2020-03-02 14:44:16 +11:00
zhangyanjiao
36c726de99 esp_wifi: fix bugs related to espnow and channel set
1. Fix the bug for setting channel when Wi-Fi in NULL mode
2. Fix the espnow crash issue
2020-03-02 11:32:05 +08:00
Renz Christian Bagaporo
a5d49d4db5 tools: fix double builds with idf.py 2020-03-02 07:18:22 +05:00
Renz Christian Bagaporo
eb865008d5 cmake: show error message on encrypted flash targets without proper config 2020-03-02 07:18:22 +05:00
Renz Christian Bagaporo
f64a3c2a66 cmake: utility to create a failing target 2020-03-02 07:18:22 +05:00
Krzysztof Budzynski
8e1442f0e7 Merge branch 'bugfix/docs_ulp_reg_rd_wr_instructions' into 'master'
Correct ULP REG_WR and REG_RD instruction for ESP32 and ESP32-S2.

See merge request espressif/esp-idf!7728
2020-03-02 04:18:44 +08:00
Krzysztof Budzynski
bd220bb578 Correct ULP REG_WR and REG_RD instruction for ESP32 and ESP32-S2.
Closes https://github.com/espressif/esp-idf/issues/4776
2020-03-02 04:18:44 +08:00
Jiang Jiang Jian
6fd855ab8d Merge branch 'bugfix/IPV6_multicast_adress_error' into 'master'
lw-ip:fix ipv6 bug when input the wrong broadcast

Closes IDF-1226

See merge request espressif/esp-idf!7771
2020-02-29 16:24:19 +08:00
Jiang Jiang Jian
36233546c9 Merge branch 'feature/doc_feedback_links' into 'master'
docs: Include feedback link in footer

See merge request espressif/esp-idf!7602
2020-02-29 16:20:41 +08:00
Krzysztof Budzynski
0ec526444a docs: Include feedback link in footer 2020-02-29 16:20:41 +08:00
Jiang Jiang Jian
dd1d609884 Merge branch 'bugfix/fix_s2_rx_filter_issue' into 'master'
esp_wifi: fix S2 WiFi RX filter issue

Closes WIFI-1644

See merge request espressif/esp-idf!7791
2020-02-29 16:19:05 +08:00
Felipe Neves
98e561b79a heap: added aligned alloc implementation on multi_heap layer 2020-02-28 13:17:34 -03:00
liu zhifu
6fa0ef50d1 esp_wifi: fix S2 WiFi RX filter issue 2020-02-28 21:37:30 +08:00
Jiang Jiang Jian
520ae6543d Merge branch 'bugfix/add_ant_field_for_esp32s2' into 'master'
(S2) WiFi: add ant field for esp32s2 and update phy lib v102 to v202

Closes WIFI-1787 and WIFI-1788

See merge request espressif/esp-idf!7676
2020-02-28 21:17:40 +08:00
baohongde
d2aa4a1e50 components/bt: Fix assert when create conntion cancel 2020-02-28 20:13:41 +08:00
Roland Dobai
2816c3c536 tools: Fix idf_size.py 2020-02-28 11:55:53 +01:00
ChenJianxing
a182c0682e (S2) WiFi: add ant field for esp32s2 and update phy lib from v102 to v202 2020-02-28 17:44:21 +08:00
Jiang Jiang Jian
40baff19f8 Merge branch 'bugfix/btdm_div_by_zero_in_slp_clk_conversion' into 'master'
bugfix/btdm_div_by_zero_in_slp_clk_conversion

See merge request espressif/esp-idf!7785
2020-02-28 17:19:40 +08:00
Jiang Jiang Jian
e69a50fa1d Merge branch 'bugfix/fix_wifi_stop_leads_to_memory_leak' into 'master'
esp_wifi: fix the memory leak caused by WiFi stop

Closes WIFI-1487

See merge request espressif/esp-idf!7766
2020-02-28 14:55:01 +08:00
liu zhifu
940b4786c5 esp_wifi: fix the bug that WiFi stop leads to memory leak 2020-02-28 12:06:26 +08:00
xueyunfei
74e690402c fix ipv6 bug when input the wrong broadcast 2020-02-28 12:00:45 +08:00
Angus Gratton
0f4cd40b0c Merge branch 'feature/idf_size_multichip_support' into 'master'
tools: Add proper multi-chip support for idf_size.py

Closes IDF-1359 and IDF-363

See merge request espressif/esp-idf!7686
2020-02-28 11:59:01 +08:00
Angus Gratton
f96c374254 Merge branch 'doc/multi_target_list' into 'master'
doc: custom list filter directive

Closes IDF-1385

See merge request espressif/esp-idf!7595
2020-02-28 11:57:55 +08:00
Angus Gratton
04ccb84b83 Merge branch 'feature/cpu_abstraction' into 'master'
CPU related operations abstraction

See merge request espressif/esp-idf!7301
2020-02-28 11:54:29 +08:00
wangmengyang
3428a1ad0b component/bt: set non-zero initial value for bt sleep clock cycle to avoid div-by-zero error in function "btdm_us_2_lpcycles" when BT modem sleep is not enabled 2020-02-28 11:36:48 +08:00
Mahavir Jain
2187948cf0 Merge branch 'bugfix/use_less_ram_for_esp_event_performance_test' into 'master'
esp_event: reduce event bases registered in performance test

See merge request espressif/esp-idf!7807
2020-02-28 11:25:24 +08:00
Michael (XIAO Xufeng)
ce3ab0b8df Merge branch 'bugfix/nec_example' into 'master'
bugfix in NEC example and low level function

Closes IDFGH-2676 and IDFGH-2689

See merge request espressif/esp-idf!7562
2020-02-28 11:00:50 +08:00
Roland Dobai
1821ee8851 tools: Add proper multi-chip support for idf_size.py 2020-02-27 19:50:05 +01:00
Mahavir Jain
e6a99f0506 Merge branch 'bugfix/heap_ci_assign_test_job_count' into 'master'
Increase job count for heap tests esp32s2

See merge request espressif/esp-idf!7808
2020-02-28 01:08:15 +08:00
Supreet Deshpande
2f62b3af4a Increase job count for heap tests 2020-02-27 17:54:09 +05:30
Mahavir Jain
371b3d26ee Merge branch 'feature/https_server_using_wolfssl' into 'master'
Feature/https server using wolfssl

See merge request espressif/esp-idf!7422
2020-02-27 18:57:12 +08:00
Renz Christian Bagaporo
c643f743ce esp_event: halve the events registered in performance test 2020-02-27 15:54:54 +05:00
Mahavir Jain
5f897fd33c Merge branch 'feat/secure_boot_v2_v41' into 'master'
feat/secure_boot_v2: Adding secure boot v2 support to ESP32-ECO3

Closes IDF-799

See merge request espressif/esp-idf!6778
2020-02-27 18:54:08 +08:00
Aditya Patwardhan
c6ad650796 esp_tls_wolfssl: Add support for DER formatted certificates 2020-02-27 15:20:22 +05:30
Aditya Patwardhan
0a25922043 esp_tls_wolfssl: 1) Fix SNI for wolfSSL
2) Fix error captures
3) Add error flags specific wolfSSL
4) make respective changes to esp_err_to_name.c
2020-02-27 15:20:22 +05:30
Aditya Patwardhan
d35862b662 esp-tls: Add support for https_server using wolfSSL 2020-02-27 15:20:22 +05:30
Angus Gratton
26efc5a6d0 bootloader: Set the bootloader optimization level separately to the app
Change the default bootloader config to -Os to save size.

This is a useful feature because it allows switching between debug
and release configs in the app without also needing to account for a
size change in the bootloader.
2020-02-27 14:38:52 +05:30
Angus Gratton
d40c69375c bootloader: Add fault injection resistance to Secure Boot bootloader verification
Goal is that multiple faults would be required to bypass a boot-time signature check.

- Also strengthens some address range checks for safe app memory addresses
- Change pre-enable logic to also check the bootloader signature before enabling SBV2 on ESP32

Add some additional checks for invalid sections:

- Sections only partially in DRAM or IRAM are invalid
- If a section is in D/IRAM, allow the possibility only some is in D/IRAM
- Only pass sections that are entirely in the same type of RTC memory region
2020-02-27 14:37:19 +05:30
Angus Gratton
0dacff4df4 secure boot: Encrypt the bootloader signature when enabling flash encryption + secure boot v2 2020-02-27 14:32:42 +05:30
Anton Maklakov
5ea4d7ba61 Merge branch 'ci/ut_esp32s2_allow_schedule' into 'master'
ci: allow esp32s2 unit tests run by scheduled pipeline

See merge request espressif/esp-idf!7796
2020-02-27 14:48:10 +08:00
Jiang Jiang Jian
4bd9c2ff64 Merge branch 'bugfix/fix_beacon_frame_vendor_ie_issue' into 'master'
bugfix: Place the Vendor Specific element at the end according to the protocol

Closes WIFI-705

See merge request espressif/esp-idf!7669
2020-02-27 14:31:45 +08:00
Jiang Jiang Jian
5ab8250bde Merge branch 'feat/ble_mesh_update' into 'master'
ble_mesh: Miscellaneous modifications

Closes BLEMESH-139 and BLEMESH-38

See merge request espressif/esp-idf!7385
2020-02-27 11:34:58 +08:00
Michael (XIAO Xufeng)
7f8c827326 Merge branch 'bugfix/fix_driver_ut_pcnt' into 'master'
bugfix(pcnt): fix driver ut pcnt

See merge request espressif/esp-idf!6891
2020-02-27 11:29:28 +08:00
Michael (XIAO Xufeng)
9199207c67 ci: allow esp32s2 unit tests run by scheduled pipeline 2020-02-27 11:20:08 +08:00
Renz Christian Bagaporo
d46989efa3 soc: remove param checking in cpu related abstractions 2020-02-27 07:15:15 +05:00
Renz Christian Bagaporo
f75cb2ef00 soc: change cpu stall, unstall, and reset core to not return values 2020-02-27 07:15:15 +05:00
Renz Christian Bagaporo
d5c123c1f5 soc: use own macro to assert proper args for cpu abstractions 2020-02-27 07:15:15 +05:00
Renz Christian Bagaporo
7386ac6d15 esp32s2: remove calls to stall/unstall other core 2020-02-27 07:15:15 +05:00
Renz Christian Bagaporo
7f864d24ad soc: prefer assertions, disabling functions for cpu abstractions
Prefer assertions, making available functions only when caps support it
for cpu-related abstractions.

Changes cpu hal functions to stall, unstall, reset to not accept -1;
instead prefering macros that provide the same functionality.
2020-02-27 07:15:14 +05:00
Renz Christian Bagaporo
cefc71cdcd bootloader_support: mem-related initializations using cpu abstractions 2020-02-27 07:14:21 +05:00
Renz Christian Bagaporo
db608736fb freertos: implement get core id with cpu abstraction 2020-02-27 07:14:21 +05:00
Renz Christian Bagaporo
f3c6320ff6 soc: implement cpu utils in terms of cpu abstractions 2020-02-27 07:14:21 +05:00
Renz Christian Bagaporo
c9a51bfbb2 soc: create abstraction for cpu related operations 2020-02-27 07:14:19 +05:00
Jiang Jiang Jian
ac55328efd Merge branch 'bugfix/fix_sae_test_failure' into 'master'
wpa_supplicant: Fix SAE test-case failure on mbedtls version udpate

See merge request espressif/esp-idf!7792
2020-02-26 22:38:06 +08:00
Ivan Grokhotkov
5d399b459c tools: check if idf_tools.py install-python-env is called from a venv
Closes IDF-1095
2020-02-26 14:03:38 +01:00
Mahavir Jain
e36516372a Merge branch 'feature/loadstore_handler' into 'master'
LoadStore Exception Handlers

See merge request espressif/esp-idf!7086
2020-02-26 20:21:59 +08:00
Sachin Parekh
301dacfb33 Exception handlers for LoadStoreError and LoadStoreAlignmentError
Configurable option to use IRAM as byte accessible memory (in single core mode) using
load-store (non-word aligned and non-word size IRAM access specific) exception handlers.
This allows to use IRAM for use-cases where certain performance penalty
(upto 170 cpu cycles per load or store operation) is acceptable. Additional configuration
option has been provided to redirect mbedTLS specific in-out content length buffers to
IRAM (in single core mode), allows to save 20KB per TLS connection.
2020-02-26 20:21:59 +08:00
Sagar Bijwe
0f1710d878 wpa_supplicant: Fix SAE test-case failure on mbedtls version udpate
Problem:
mbedtls_ctr_drbg_context was initialized in crypto_ec_point_mul. This
was okay in releases before 2.16.4 as entropy_len used to get set to
MBEDTLS_CTR_DRBG_ENTROPY_LEN in function mbedtls_ctr_drbg_seed. The
function is now changed to set the length to
MBEDTLS_CTR_DRBG_ENTROPY_LEN if previous length is 0 and hence the bug.

Solution:
Initialize mbedtls_ctr_drbg_context in crypto_ec_point_mul.
2020-02-26 17:50:08 +05:30
Michael (XIAO Xufeng)
c53192d521 Merge branch 'bugfix/fix_uart_set_line_inverse_breaking_change_issue' into 'master'
Bugfix(uart): fix uart_set_line_inverse breaking change issue

Closes IDFGH-2469

See merge request espressif/esp-idf!7345
2020-02-26 18:34:52 +08:00
Michael (XIAO Xufeng)
9d8e590d86 Merge branch 'fix/spi_flash_legacy_on_esp32s2' into 'master'
spi_flash: fix the reading issue using the ROM functions on ESP32-S2

See merge request espressif/esp-idf!7767
2020-02-26 18:04:51 +08:00
lly
134f57b8e0 ble_mesh: Calc incomplete timeout based on msg info 2020-02-26 17:42:04 +08:00
lly
087bafe5b9 ble_mesh: Start the timer when starting to send the client message 2020-02-26 17:41:46 +08:00
lly
90f8a54a71 ble_mesh: No timeout for client message to non-unicast address 2020-02-26 17:41:30 +08:00
lly
97eca35805 ble_mesh: Unify client application and lower transport layer timeout 2020-02-26 17:41:11 +08:00
lly
e24645c791 ble_mesh: Allow maximum 377 octets payload 2020-02-26 17:40:46 +08:00
lly
828bfeac88 ble_mesh: Reset transport info when node is removed 2020-02-26 17:40:23 +08:00
lly
48343a8a8f ble_mesh: Provisioner ignores msg from removed node 2020-02-26 17:39:55 +08:00
lly
7cd08b5824 ble_mesh: Miscellaneous modifications
1. Add an API to set Provisioner static oob value
2. Add an API to deinit BLE Mesh stack
3. Add an API to set Provisioner unicast address
4. Add an API to provision devices with fixed address
5. Add an API to store node composition data
6. Add an API to get node with device uuid
7. Add an API to get node with unicast address
8. Add an API to delete node with device uuid
9. Add an API to delete node with unicast address
10. Add an API for Provisioner to update local AppKey
11. Add an API for Provisioner to update local NetKey
12. Support Provisioner persistent functionality
13. Fix Provisioner entering IV Update procedure
14. Fix an issue which may cause client failing to send msg
15. Use bt_mesh.flags to indicate device role
16. Remove several useless macros
17. Callback RSSI of received mesh provisioning packets
18. Modify the Provisioner disable function
19. Change some log level from debug to info
20. Add parameters to Provisioner bind AppKey completion event
21. Fix node ignoring relay messages issue
22. Support using a specific partition for BLE Mesh
23. Fix compile warning when proxy related macros are disabled
24. Clean up BLE Mesh stack included header files
25. NULL can be input if client message needs no parameters
26. Fix compile warning when BT log is disabled
27. Initilize BLE Mesh stack local variables
28. Support using PSRAM for BLE Mesh mutex, queue and task
29. Add a menuconfig option to enable using memory from PSRAM
30. Clean up sdkconfig.defaults of BLE Mesh examples
2020-02-26 17:37:44 +08:00
xiongyu
4d5c950770 bugfix(pcnt): fix driver ut pcnt
* Let `[ignore] case` return to freedom

  1) Because this test uses its own ISR, we need to release it with `esp_intr_free` instead of `pcnt_isr_service_uninstall`.

  2) `pcnt_evt_queue` needs to be created before the interrupt is registered and needs to be released at the end of each case.

* Add test support for ESP32S2

* Support chip internal connection, no external wiring required.
2020-02-26 16:52:53 +08:00
Michael (XIAO Xufeng)
160d3bd416 Merge branch 'refactor/i2c_const_and_param_check' into 'master'
I2C: const correctness and better param check

See merge request espressif/esp-idf!7582
2020-02-26 16:06:57 +08:00
Jakob Hasse
3bcc6b48af I2C: i2c.h/i2c.c applied new code formatting 2020-02-26 15:12:03 +08:00
Mahavir Jain
6cc4859d02 Merge branch 'feature/enable_protocomm_tests_for_s2' into 'master'
protocomm: enable test cases for esp32s2 with software AES

Closes IDF-1399

See merge request espressif/esp-idf!7675
2020-02-26 11:23:02 +08:00
michael
f1a4c84e57 GPIO: fix unit test issue on ESP32-S2
Also rename some test variables.
2020-02-26 11:12:09 +08:00
michael
7a3f21636f spi_flash: fix the reading issue using the ROM functions in the ROM 2020-02-26 11:12:09 +08:00
michael
f8fae4c80c spi_flash: resume unit tests for ESP32-S2 2020-02-26 11:12:08 +08:00
Krzysztof Budzynski
097d0bd9c8 Merge branch 'bugfix/doc_python3' into 'master'
Docs: Encourage to use Python 3

Closes IDF-1316

See merge request espressif/esp-idf!7726
2020-02-26 05:04:18 +08:00
Roland Dobai
c4421629c8 Tools: Add tests for confgen.py 2020-02-25 17:15:46 +01:00
houwenxiang
4883733472 driver(I2C): support esp32-s2 I2C driver. 2020-02-25 21:56:00 +08:00
Jiang Jiang Jian
02e2c30ba2 Merge branch 'bugfix/hfp_github_issues' into 'master'
Bugfix/hfp github issues

Closes BT-614, BT-639, and BT-633

See merge request espressif/esp-idf!7753
2020-02-25 21:05:56 +08:00
Mahavir Jain
b3e7e61f23 protocomm: enable test cases for esp32s2 with software AES 2020-02-25 18:05:35 +05:30
weitianhua
477e584f7d Bugfix for HFP and some Github issue.
1. Bugfix for AG audio crash (change the return position)
2. Fix the error macro name and error return in hfp_hf demo
3. Fix the annotation error using UTF-8 ' (from Github)
4. Change or remove the log in SCO related code region.
5. Correct error of introduction of a function.
2020-02-25 18:03:54 +08:00
Michael (XIAO Xufeng)
8f496a0f96 Merge branch 'refactor/add_ll_for_clock_gate_operation' into 'master'
periph_ctrl: move target specific into ll files

See merge request espressif/esp-idf!7733
2020-02-25 16:56:30 +08:00
Sergei Silnov
47bfd337d2 Improve message for component manager tests 2020-02-25 09:22:52 +01:00
Jiang Jiang Jian
cc7b5ed6d2 Merge branch 'feature/resume_several_tests_on_esp32s2' into 'master'
Resume several tests on esp32s2

Closes IDF-1013, IDF-1025, and IDF-1030

See merge request espressif/esp-idf!7751
2020-02-25 14:28:14 +08:00
ronghulin
9afdcb2c70 bugfix: Place the Vendor Specific element at the end according to the protocol 2020-02-25 14:18:50 +08:00
Mahavir Jain
33cdd09385 Merge branch 'bugfix/ota_with_redirection' into 'master'
Fix OTA in case of a redirection

See merge request espressif/esp-idf!7596
2020-02-25 13:08:00 +08:00
Supreet Deshpande
073ba0a608 feat/secure_boot_v2: Adding docs for secure boot v2 ESP32-ECO3 2020-02-25 01:28:22 +05:30
Supreet Deshpande
b79606ca37 feat/secure_boot_v2: Adding tools support for secure boot v2 ECO3 2020-02-25 01:28:22 +05:30
Supreet Deshpande
a9ccc5e5c8 feat/secure_boot_v2: Adding secure boot v2 support for ESP32-ECO3 2020-02-25 01:28:22 +05:30
Roland Dobai
5c0cd9417d Docs: Encourage to used Python 3 2020-02-24 12:55:55 +01:00
Shubham Kulkarni
63cd95d236 esp_https_ota.c: Add errno check for WiFi disconnection while performing OTA 2020-02-24 16:53:40 +05:30
Shubham Kulkarni
4d40f94168 OTA: Add fix in case of URL redirection and a test case of URL redirection
Closes https://github.com/espressif/esp-idf/issues/4780
2020-02-24 16:53:27 +05:30
morris
e9717fc07b periph_ctrl: move target specific into ll files 2020-02-24 14:50:26 +08:00
Jakob Hasse
d230d44e2d I2C: const correctness, checking SDA/SCL GPIOs
* const correctness in i2c_slave_write_buffer()
* i2c_set_pin() additionally checks whether
  SDA and SCL pins are the same number
2020-02-24 14:30:28 +08:00
morris
2227e2505b resume wifi init test on esp32s2 2020-02-24 14:03:25 +08:00
morris
237f6448d3 resume pppos example on esp32s2 2020-02-24 12:02:18 +08:00
morris
da6742b91f resume iperf example on esp32s2 2020-02-24 11:59:25 +08:00
morris
ea8d6318af add SOC_EMAC_SUPPORTED in soc_caps.h 2020-02-24 11:57:58 +08:00
Jiang Jiang Jian
c65b67115a Merge branch 'bugfix/wifi_run_modem_sleep_on_esp32s2' into 'master'
esp_wifi: run modem sleep on ESP32S2

Closes WIFI-1767

See merge request espressif/esp-idf!7682
2020-02-24 11:44:37 +08:00
houwenxiang
c07e4c775d driver(uart): fix uart_set_line_inverse breaking change issue
closes https://github.com/espressif/esp-idf/issues/4581
2020-02-24 11:36:31 +08:00
Jiang Jiang Jian
7092613eea Merge branch 'bugfix/btdm_check_EXT_CRYS_state_for_sleep_clk' into 'master'
bugfix/btdm_check_EXT_CRYS_state_for_sleep_clk

Closes BT-582

See merge request espressif/esp-idf!7439
2020-02-21 21:21:54 +08:00
Xia Xiaotian
6faaa0ea6b esp_wifi: run modem sleep on ESP32S2 2020-02-21 19:58:41 +08:00
Ivan Grokhotkov
5ccfc332ea Merge branch 'feature/nvs_erase_check_init' into 'master'
NVS Flash: prevent erasing initialized partition

See merge request espressif/esp-idf!7615
2020-02-21 17:47:45 +08:00
Jiang Jiang Jian
e2d8f81ef5 Merge branch 'bugfix/fix_esp32s2_chip_version_name' into 'master'
wifi: Change esp32s2beta dirname to esp32s2 in wifi-lib

See merge request espressif/esp-idf!7654
2020-02-21 17:45:08 +08:00
Jiang Jiang Jian
d3d4746bb7 Merge branch 'bugfix/add_option_to_ipv6_stateless_address_configuration' into 'master'
lw-ip: Add option to ipv6 stateless address configuration

See merge request espressif/esp-idf!7697
2020-02-21 14:53:03 +08:00
Ivan Grokhotkov
b90a68f89b Merge branch 'bugfix/esp32s2_trax' into 'master'
xtensa: add TRAX support for esp32s2

Closes IDF-1408

See merge request espressif/esp-idf!7683
2020-02-21 09:58:15 +08:00
Ivan Grokhotkov
996c925d29 Merge branch 'doc/tools_docker_bind_kconfig' into 'master'
docs: docker: add instructions for binding tools/kconfig to a volume

See merge request espressif/esp-idf!7655
2020-02-21 09:57:21 +08:00
Ivan Grokhotkov
cd114f656b Merge branch 'fix/gdbstub_large_com_on_windows' into 'master'
idf_monitor: fix gdbstub issue opening large COM port number on Windows

See merge request espressif/esp-idf!7619
2020-02-21 09:56:42 +08:00
Marius Vikhammer
63b76a9d90 doc: custom list filter directive
Custom directive that allows for creation of lists where the content can be filtered based on target.

Closes IDF-1385
2020-02-20 18:08:05 +08:00
Michael (XIAO Xufeng)
132cc67c03 Merge branch 'bugfix/gpio_driver_hold_function_for_esp32' into 'master'
bugfix: clear both hold bit in `rtcio reg` and `rtc cntl reg` for esp32

See merge request espressif/esp-idf!7375
2020-02-20 15:42:29 +08:00
Fu Zhi Bo
7a5b67b8de rtcio: fix rtcio unhold function
Solve problems caused by code refactoring.

Closes https://github.com/espressif/esp-idf/issues/4600
2020-02-20 15:42:28 +08:00
Sagar Bijwe
bbd0ff5347 wifi: Change esp32s2beta dirname to esp32s2 in wifi-lib 2020-02-20 06:57:10 +00:00
Angus Gratton
3b498a0576 Merge branch 'bugfix/confserver_hex_types' into 'master'
confserver: Standardize and document the handling of hex values

See merge request espressif/esp-idf!7437
2020-02-20 14:48:15 +08:00
wangmengyang
d6e672ed51 component/bt: fall back to main XTAL as Bluetooth sleep clock when EXT 32K CRYS is configured but not detected 2020-02-20 14:34:28 +08:00
xiehang
a4b16213ad lw-ip: Add option to ipv6 stateless address configuration 2020-02-20 14:30:21 +08:00
Jiang Jiang Jian
959b0295f3 Merge branch 'bugfix/coex_a2dp_stuck_after_creating_anther_connection' into 'master'
components/coex: Fix a2dp stuck after creating another connection

See merge request espressif/esp-idf!7651
2020-02-20 14:15:22 +08:00
Jiang Jiang Jian
a512d6e15a Merge branch 'bugfix/coex_fix_misspell_in_kconfig' into 'master'
components/coex: Fix misspell in Kconfig

See merge request espressif/esp-idf!7670
2020-02-20 14:15:04 +08:00
Jiang Jiang Jian
adf10e4469 Merge branch 'bugfix/btdm_role_switch' into 'master'
Fix bugs about role switch

Closes BT-458 and BT-482

See merge request espressif/esp-idf!6878
2020-02-20 13:39:25 +08:00
Jakob Hasse
c6deffb8a2 NVS Flash: prevent erasing initialized partition
Closes https://github.com/espressif/esp-idf/issues/4755
Closes https://github.com/espressif/esp-idf/issues/2777

* nvs_flash_erase_partition() checks whether
  the parition in question is initialized
  already and will return an error if so
* reflect changes in the documentation
2020-02-19 18:16:04 +01:00
Michael (XIAO Xufeng)
fa4eba2e34 Merge branch 'bugfix/add_missing_ledc_set_pin_declaration' into 'master'
Bugfix (LEDC): Add missing ledc_set_pin declaration

Closes IDFGH-2546

See merge request espressif/esp-idf!7344
2020-02-20 00:22:43 +08:00
Ivan Grokhotkov
240ec7444f ci: add build test for TRAX feature 2020-02-19 14:02:35 +01:00
Ivan Grokhotkov
8fec484d2b xtensa: add TRAX support for esp32s2 2020-02-19 14:02:14 +01:00
baohongde
d11a86076f Fix bugs about role switch
Jitter in FHS
Jitter in first PULL
Receive EDR packet fail after role switch
2020-02-19 20:14:47 +08:00
Ivan Grokhotkov
40cff27053 Merge branch 'feature/esp32s2_pm' into 'master'
esp32s2: power management (DFS and auto light sleep)

Closes IDF-670, IDF-527, and IDFGH-231

See merge request espressif/esp-idf!7578
2020-02-19 18:26:33 +08:00
Ivan Grokhotkov
32ea031b19 Merge branch 'bugfix/bootloader_custom_console_pins' into 'master'
Fix bootloader build if custom UART pins are used (Github PR + ESP32-S2 + test)

See merge request espressif/esp-idf!7665
2020-02-19 16:56:15 +08:00
Mahavir Jain
57a94fe6e6 Merge branch 'bugfix/fix_cpp_example_tests' into 'master'
examples: fix cpp example tests regression

See merge request espressif/esp-idf!7673
2020-02-19 16:13:27 +08:00
Paul Abbott
b75e3de447 Bugfix(LEDC): Add missing ledc_set_pin declaration in led.h
Merges https://github.com/espressif/esp-idf/pull/4632
2020-02-19 16:02:33 +08:00
baohongde
6ca361fd2b components/coex: Fix a2dp stuck after creating anther connection 2020-02-19 07:14:26 +00:00
Ivan Grokhotkov
1cbb2287be ci: add build test for custom console UART pins 2020-02-19 08:13:23 +01:00
Ivan Grokhotkov
f69f05ecd7 bootloader: esp32s2: fix enabling custom console pins 2020-02-19 08:13:23 +01:00
Mahavir Jain
d472e99a8f examples: fix cpp example tests regression 2020-02-19 11:03:07 +05:30
baohongde
364a9dece0 components/coex: Fix misspell in Kconfig 2020-02-19 11:41:03 +08:00
Angus Gratton
dc63badbd2 Merge branch 'feature/add_subdirectory_if_exists' into 'master'
cmake: add subdirectory if exists utility

See merge request espressif/esp-idf!7302
2020-02-19 07:54:27 +08:00
Ivan Grokhotkov
fe0df01b12 Merge branch 'bugfix/from_github' into 'master'
Fixes from Github

Closes IDFGH-2679, IDFGH-2632, IDFGH-2716, IDFGH-2439, and IDFGH-2509

See merge request espressif/esp-idf!7659
2020-02-18 23:53:38 +08:00
Ivan Grokhotkov
75d0f38108 Merge branch 'doc/unit_test_multiple_targets' into 'master'
doc: add multi-target rules for writing unit tests

See merge request espressif/esp-idf!7438
2020-02-18 23:30:02 +08:00
Nebojsa Cvetkovic
d649ea96ce soc: Add missing gpio_periph.h header 2020-02-18 13:10:37 +00:00
Ivan Grokhotkov
20d93ac835 docs: remove note about v4.0 docker tag, use release-v4.0 as example 2020-02-18 14:02:46 +01:00
Jiang Jiang Jian
a16d795448 Merge branch 'example/ble_optimization_the_example_ble_spp_server_demo' into 'master'
example : Optimize the ble_spp_server_demo example

Closes BCI-90

See merge request espressif/esp-idf!7029
2020-02-18 21:00:54 +08:00
Jiang Jiang Jian
a06f025e61 Merge branch 'bugfix/coex_watchdog_timeout_with_sleep_enabled' into 'master'
components/coex: Fix watchdog timeout when sleep enabled

See merge request espressif/esp-idf!7419
2020-02-18 20:55:30 +08:00
Jiang Jiang Jian
6d03758ac4 Merge branch 'bugfix/ble_mesh_fix_compile_error_with_cpp' into 'master'
ble_mesh: Fix compile error with c++ files

Closes BMCI-52

See merge request espressif/esp-idf!7579
2020-02-18 20:43:55 +08:00
Renz Christian Bagaporo
ab84c73244 cmake: add subdirectory if exists utility 2020-02-18 17:16:06 +05:00
khuynh
21fd946312 fix markdown table formatting
fixed markdown for a table in
`examples/peripherals/temp_sensor_esp32s2/README.md`

Merges https://github.com/espressif/esp-idf/pull/4609
2020-02-18 12:30:56 +01:00
Alexander Borsuk
e489e48dfa Fixes compilation error on verbose level (IDFGH-2439)
Closes #4552

Merges https://github.com/espressif/esp-idf/pull/4786
2020-02-18 12:30:47 +01:00
Rusty Eddy
a81d231791 Added semi-colon to esp_event_loop_create(...)
Title sums it up.

Merges https://github.com/espressif/esp-idf/pull/4711
2020-02-18 12:30:38 +01:00
Mooli Tayer
311983eb55 Fix typo
Merges https://github.com/espressif/esp-idf/pull/4752
2020-02-18 12:30:29 +01:00
Jiang Jiang Jian
1a7d0b3b6f Merge branch 'bugfix/esp32s2_rng' into 'master'
soc: esp32s2: fix address of WDEV_RND_REG

Closes IDF-1390

See merge request espressif/esp-idf!7640
2020-02-18 19:07:51 +08:00
Ivan Grokhotkov
9be3cd883b docs: docker: add instructions for binding tools/kconfig to a volume
Closes https://github.com/espressif/esp-idf/issues/4790
2020-02-18 11:43:29 +01:00
Wang Jia Lin
f02399948d Merge branch 'bugfix/i2s_adc_output_invert' into 'master'
bugfix(i2s): fix adc output invert issue

See merge request espressif/esp-idf!7180
2020-02-18 18:29:23 +08:00
Mahavir Jain
9bcd84b0d0 Merge branch 'bugfix/doc_cxx_fix' into 'master'
C++: fixed documentation MR regression leading to doc build error

See merge request espressif/esp-idf!7642
2020-02-18 17:33:40 +08:00
Ivan Grokhotkov
e94cf2f807 Merge branch 'bugfix/make_monitor' into 'master'
make: fix 'make monitor' target when core dump is not enabled

See merge request espressif/esp-idf!7641
2020-02-18 16:22:20 +08:00
Jakob Hasse
7e7f87a70d DOC: fixed MR regression leading to doc build error 2020-02-18 09:01:33 +01:00
Ivan Grokhotkov
f31fc368bf make: fix 'make monitor' target when core dump is not enabled 2020-02-18 08:34:16 +01:00
Ivan Grokhotkov
19c2337168 soc: esp32s2: fix address of WDEV_RND_REG
Ref. ESP32-S2 TRM.

Closes IDF-1390
2020-02-18 08:24:33 +01:00
Mahavir Jain
6355775e68 Merge branch 'bugfix/unified_prov_bluedroid' into 'master'
Unified Provisioning - BLE: Fix characteristics read response issue

See merge request espressif/esp-idf!7609
2020-02-18 14:42:08 +08:00
Hrishikesh Dhayagude
3080cad4da Unified Provisioning - BLE: Fix characteristics read response issue
Fix the issue when number of bytes to be read is an exact multiple of [MTU-1]
2020-02-18 14:42:07 +08:00
Jiang Jiang Jian
1b4787765d Merge branch 'bugfix/change_hci_task_size_back' into 'master'
components/bt: change HCI task size back

See merge request espressif/esp-idf!7566
2020-02-18 12:51:55 +08:00
Mahavir Jain
b181d9ab1d Merge branch 'feature/cxx_project_reordering' into 'master'
C++: examples folder and experimental component

See merge request espressif/esp-idf!7524
2020-02-18 12:48:57 +08:00
Jakob Hasse
31edd48b43 C++: Moved all C++ examples to own folder
* moved C++ examples to a new cxx folder in
  examples
* added experimental C++ component
* added ESPException class to the C++ experimental
  component
* added test cases for ESPException and
  corresponding test macros
2020-02-18 12:48:57 +08:00
baohongde
66a01ef490 components/coex: Fix watchdog timeout when sleep enabled
Fix crash without enabling sw coex
2020-02-18 03:35:24 +00:00
blueMoods
6a922ea07c components/bt: change HCI task size back 2020-02-18 03:06:09 +00:00
Angus Gratton
a0644bf8ae Merge branch 'test/resume_ut_esp32s2' into 'master'
ci: resume esp32s2 unit tests

See merge request espressif/esp-idf!7436
2020-02-18 10:58:14 +08:00
Angus Gratton
a6066c801d Merge branch 'feature/efuse_using_rom_set_timing_func' into 'master'
(S2) efuse: Using a ROM function for set_timing

Closes IDF-990

See merge request espressif/esp-idf!7594
2020-02-18 10:29:16 +08:00
Angus Gratton
e95ba301d8 Merge branch 'bugfix/use_quotes_in_embedding_ulp_apps' into 'master'
ulp: use quotes when specifying files for embedding ulp binaries

See merge request espressif/esp-idf!7606
2020-02-18 09:15:50 +08:00
KonstantinKondrashov
146c788bd4 (S2) efuse: Using a ROM function for set_timing
Closes: IDF-990
2020-02-18 01:10:57 +00:00
Angus Gratton
7bce9ad686 Merge branch 'doc/check_link_roles' into 'master'
docs: Check link roles in build, fix broken links

See merge request espressif/esp-idf!7538
2020-02-18 08:26:47 +08:00
Angus Gratton
b92882a0e6 Merge branch 'bugfix/kconfig_cmake_escape' into 'master'
confgen.py: Escape special characters for cmake

Closes IDFGH-2677

See merge request espressif/esp-idf!7580
2020-02-18 08:13:13 +08:00
Renz Christian Bagaporo
bb639bb91d ulp: use quotes when specifying files for embedding ulp binaries 2020-02-18 00:12:56 +00:00
Angus Gratton
99cdddeb63 docs: Fix broken or incorrect link roles to IDF files & directories 2020-02-18 10:34:11 +11:00
Angus Gratton
a825985283 docs: Check local files exist (and are correct type) for custom link roles 2020-02-18 10:34:11 +11:00
Ivan Grokhotkov
cee7377e3c esp32s2: hide “FPGA” as an option for CPU frequency
unless IDF_ENV_FPGA is set.
2020-02-17 17:33:56 +01:00
Ivan Grokhotkov
a8ad9d6b43 esp32s2: use smaller RTC_CLK_CAL_CYCLES by default
Reduce the number proportionally to the frequency (160k on ESP32,
90k on ESP32-S2).
2020-02-17 17:33:56 +01:00
Ivan Grokhotkov
383ace9443 rtc_clk_cal: make compatible with the ESP32 2020-02-17 17:33:56 +01:00
Ivan Grokhotkov
490bf29767 esp32s2: fix enabling 32k XTAL clock
On the ESP32S2, rtc_clk_cal(RTC_CAL_RTC_MUX) measures the frequency
of the 90kHz RTC clock regardless of the selected slow clock
frequency. Keep track which clock is selected and pass the argument
to rtc_clk_cal accordingly.

fix clock choices

update rtc 32k xtal code for s2

missed api in rtc.h

bootloader_clock: update for S2
2020-02-17 17:33:56 +01:00
Ivan Grokhotkov
74ac618287 soc/rtc: update frequency switching APIs to match the master branch
esp32s2 code was based in IDF v3.1, and used outdated APIs.

Closes IDF-670
2020-02-17 17:23:32 +01:00
Ivan Grokhotkov
d2d3269159 esp32s2: sync esp_pm code from esp32 2020-02-17 16:03:47 +01:00
Ivan Grokhotkov
d37a419dfc esp_pm: esp_pm_dump_locks: don't print from a critical section 2020-02-17 16:03:47 +01:00
xiongyu
61778d5b7c bugfix(i2s): fix adc output invert issue 2020-02-17 17:15:01 +08:00
Michael (XIAO Xufeng)
b00cea250f idf_monitor: fix gdb issue opening large COM port on Windows
The GDB uses CreateFile to open COM port on Windows. However this
function requires COM path to be `\\.\COMx` to open COM port whose
number is larger than 10.

Replace the port name from `COM` to `\\.\COM` when on Windows to fix
this.
2020-02-17 07:39:21 +00:00
morris
0d521e8f9d rmt: fix missing 0x in rmt_ll.h
Closes https://github.com/espressif/esp-idf/issues/4760
2020-02-17 15:20:41 +08:00
DeeFuse
c788351c94 Update ir_builder_rmt_nec.c
fixes standard protocol mode wich would fail due to integer promotion in inversion

Merges https://github.com/espressif/esp-idf/pull/4750
2020-02-17 15:20:41 +08:00
DeeFuse
a63a0be6ed Update ir_protocols_main.c
RMT write should be non-blocking to wait the correct time for sending the repeat frame
2020-02-17 15:20:41 +08:00
Jiang Jiang Jian
23c62a4225 Merge branch 'bugfix/update_docs_for_wifi_header' into 'master'
esp_wifi: Update docs for wifi headers

See merge request espressif/esp-idf!7604
2020-02-17 15:17:28 +08:00
Angus Gratton
d9d7a906b1 confserver docs: Merge the build-system docs info about confserver into the README
Add link into the README from the docs
2020-02-17 17:21:22 +11:00
Angus Gratton
89fb104747 confserver: Standardize and document the handling of hex values
Previously, server always sent back "hex" types as JSON integers but would only accept setting them as a
JSON string of hex digits. This still works, but also possible to use JSON integers in both directions.

Add tests for both representations, add a note in the README about types.
2020-02-17 17:21:22 +11:00
Anton Maklakov
8222ab7330 Merge branch 'bugfix/ci_no_attempts_no_custom_toolchain_url' into 'master'
ci: no stage attempts variables,  no custom toolchain url

See merge request espressif/esp-idf!6689
2020-02-17 11:05:58 +08:00
Angus Gratton
effefc2329 Merge branch 'feat/sdio_example_without_intr' into 'master'
sdio: update the host example to support working with a slave without DAT1

See merge request espressif/esp-idf!7098
2020-02-17 07:04:31 +08:00
Krzysztof Budzynski
41bc06b9b9 Merge branch 'bugfix/docs_ledc' into 'master'
drivers: Remove high speed mode from LEDC docs for ESP32-S2, update headers to match

See merge request espressif/esp-idf!7532
2020-02-17 05:00:36 +08:00
Krzysztof Budzynski
b41079d8b6 Merge branch 'feature/esp-ble-mesh-faq-cn' into 'master'
Add Chinese translation for esp-ble-mesh-faq.

See merge request espressif/esp-idf!6637
2020-02-17 04:58:56 +08:00
Tian Yang Min
63ed8a4aed docs: Add Chinese translation for esp-ble-mesh-faq
This commit adds the Chinese translation for the
esp-ble-mesh-faq document.
2020-02-17 04:58:56 +08:00
michael
2529eda907 ci: disable failed cases for s2 temporarily 2020-02-15 18:28:25 +08:00
michael
1c7ffbaa19 app_update: rename ut name 2020-02-15 18:28:25 +08:00
michael
d16ad4a67a ci: disable case witout runners 2020-02-15 18:28:25 +08:00
michael
24b16b0b19 ci: resume esp32s2 unit tests 2020-02-15 18:28:24 +08:00
Jiang Jiang Jian
4c48208e2c Merge branch 'bugfix/sock_lock_crash' into 'master'
lw-ip:fix bug for crash when socket lock not initialized

Closes WIFI-1713

See merge request espressif/esp-idf!7597
2020-02-15 13:41:49 +08:00
Jiang Jiang Jian
c012011c16 Merge branch 'bugfix/sntp_init_can_run_before_net_connection' into 'master'
lw_ip: Add to sys_arch_protect() a check that the mutex is created before use if not then creates it

Closes WIFI-1019

See merge request espressif/esp-idf!7495
2020-02-15 13:14:09 +08:00
Konstantin Kondrashov
565eee12a0 lwip: Add to sys_arch_protect() a check that the mutex is created before use if not then creates it
Closes: https://github.com/espressif/esp-idf/issues/944
Closes: https://github.com/espressif/esp-idf/issues/3931
Closes: WIFI-1019
2020-02-15 13:14:08 +08:00
Jiang Jiang Jian
7d39f435a3 Merge branch 'bugfix/ble_crash_irq_miss' into 'master'
Fix ble crash issue triggered by ble event irq miss(0x20000) (819979b9)

See merge request espressif/esp-idf!7490
2020-02-14 19:53:49 +08:00
Jiang Jiang Jian
928438056d Merge branch 'bugfix/btdm_hfp_ag_crash_in_unknown_at_cmd' into 'master'
components/bt: Fix connection fail and crash when receive unknown AT cmd

Closes BT-565

See merge request espressif/esp-idf!7389
2020-02-14 19:46:46 +08:00
Jiang Jiang Jian
d058be6720 Merge branch 'bugfix/btdm_error_type_in_config_eir_evt' into 'master'
components/bt: Fix error EIR type in config eir event

Closes BT-593

See merge request espressif/esp-idf!7404
2020-02-14 16:38:08 +08:00
Michael (XIAO Xufeng)
699c6db836 doc: add multi-target rules for writing unit tests 2020-02-14 14:54:30 +08:00
Nachiket Kukade
883071fe8c esp_wifi: Update docs for wifi headers 2020-02-14 12:23:27 +05:30
Jiang Jiang Jian
54a50f4532 Merge branch 'feature/support_esp32s2_wifi_v2' into 'master'
WiFi: Add support for ESP32S2

See merge request espressif/esp-idf!7505
2020-02-14 11:54:13 +08:00
Ivan Grokhotkov
d4ec1842f0 Merge branch 'feature/monitor_coredump_decode' into 'master'
tools/idf_monitor: automatically decode UART core dumps

See merge request espressif/esp-idf!7520
2020-02-14 02:45:38 +08:00
Ivan Grokhotkov
25041ba583 tools/idf_monitor: automatically decode UART core dumps
This adds detection of UART core dumps to IDF monitor. By default,
core dumps are not printed to the console, but are processed by
espcoredump.py using 'info_corefile' command. The result is printed
to stdout.

This feature can be disabled in menuconfig.

In the future this can be extended to allow running espcoredump.py
with 'dbg_corefile' argument, which is similar to the current GDB Stub
behavior.

Related to IDF-52.
2020-02-13 18:46:26 +01:00
Ivan Grokhotkov
605da33c3d Merge branch 'fix/app_update_test_s2' into 'master'
app_update: fix unit tests

See merge request espressif/esp-idf!7581
2020-02-13 23:05:13 +08:00
Ivan Grokhotkov
cdb947113e Merge branch 'feature/esp_event_multiple_register' into 'master'
ESP-Event: Feature/esp event multiple register

See merge request espressif/esp-idf!7384
2020-02-13 19:02:09 +08:00
Ivan Grokhotkov
a70a6f8974 Merge branch 'feature/nvs_support_data_encodings' into 'master'
Feature/nvs support data encodings

See merge request espressif/esp-idf!7557
2020-02-13 19:00:25 +08:00
sushant.chougule
74c7db3f49 Fix ble crash issue triggered by ble event irq miss(0x20000) (d2a1d18d) 2020-02-13 16:16:21 +05:30
xueyunfei
5f904c5b4e fix bug for crash when socket lock not initialized 2020-02-13 18:00:46 +08:00
ChenJianxing
3e3753faf4 update WiFi libs for both esp32 and esp32s2. 2020-02-13 16:58:36 +08:00
michael
98ee6f55df app_update: fix unit tests 2020-02-13 15:51:42 +08:00
Ivan Grokhotkov
8d8337e80c Merge branch 'feat/sdspi_polling_spi' into 'master'
sdspi: allow using sdspi with other devices on the same bus

See merge request espressif/esp-idf!3177
2020-02-13 15:18:59 +08:00
Jiang Jiang Jian
b42fc77e11 Merge branch 'bugfix/ble_mesh_utf_8_comma' into 'master'
ble_mesh: Kconfig included a UTF-8 comma

See merge request espressif/esp-idf!7574
2020-02-13 11:10:43 +08:00
Roland Dobai
935b34e829 confgen.py: Escape special characters for cmake
Closes https://github.com/espressif/esp-idf/issues/4751
2020-02-12 14:30:53 +01:00
lly
326ccfca88 ble_mesh: Fix compile error with c++ files 2020-02-12 21:24:32 +08:00
Jiang Jiang Jian
dbe1164ecc Merge branch 'bugfix/fix_airkiss_bug' into 'master'
fix the bug for Airkiss

Closes WIFI-1670

See merge request espressif/esp-idf!7347
2020-02-12 20:12:19 +08:00
Jiang Jiang Jian
f87793fd9a Merge branch 'bugfix/bt_interrupt_disable_timing_error' into 'master'
btController: Future events scheduling error in case of wifi and bluetooth.

See merge request espressif/esp-idf!7540
2020-02-12 20:04:22 +08:00
Chinmay Chhajed
6d96217204 Future events scheduling error in case of wifi and bluetooth.
After this commit, global interrupts will be disabled before taking
current time for scheduling further bluetooth events. Earlier disabling
interrupts was taking some time because of which WiFi events were
interrupting in current bluetooth scheduling.

Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-02-12 20:04:21 +08:00
lly
bfb27addda ble_mesh: Kconfig included a UTF-8 comma 2020-02-12 18:21:09 +08:00
Ivan Grokhotkov
b942327a25 Merge branch 'bugfix/esp_netif_hostname' into 'master'
esp_netif: fix get/set hostname API to reflect user settings

See merge request espressif/esp-idf!7547
2020-02-12 17:53:58 +08:00
zhangyanjiao
50b9ccf8b4 fix the bug for Airkiss
Closes https://github.com/espressif/esp-idf/issues/3362
2020-02-12 08:27:09 +00:00
Angus Gratton
d8a4159a83 Merge branch 'bugfix/build_docs_add_warning_check' into 'master'
bugfix/build_docs_add_warning_check: Added null value check for warnings

See merge request espressif/esp-idf!7556
2020-02-12 16:27:07 +08:00
Jiang Jiang Jian
cedea18acb Merge branch 'bugfix/wifi_clear_phy_status_when_cpu_start' into 'master'
soc: clear PHY status when cpu start

Closes AUD-1125

See merge request espressif/esp-idf!7493
2020-02-12 15:34:46 +08:00
Michael (XIAO Xufeng)
48a62b3490 sdspi: use polling transactions to increase reading speed. 2020-02-12 15:16:19 +08:00
Michael (XIAO Xufeng)
067f3d21c9 sdspi, vfs_fat: allow sharing SPI bus among devices, and mounting multiple SD cards 2020-02-12 15:16:08 +08:00
Michael (XIAO Xufeng)
278634dcbd sdspi: support crc16_be for esp32s2 2020-02-12 15:15:46 +08:00
Supreet Deshpande
ef7b5ff9e4 bugfix/build_docs_add_warning_check: Added null value check for warnings 2020-02-12 12:32:41 +05:30
Angus Gratton
c1d0daf36d Merge branch 'refactor/restructure_soc_component' into 'master'
soc: separate abstraction, description and implementation

See merge request espressif/esp-idf!7261
2020-02-12 07:50:10 +08:00
Angus Gratton
80e03a2d2d Merge branch 'bugfix/win_tools_installer_fixes' into 'master'
tools: Windows tools installer release v2.3

Closes IDFGH-2670 and IDFGH-1929

See merge request espressif/esp-idf!7550
2020-02-12 07:22:50 +08:00
Ivan Grokhotkov
f9bc4fc08b Merge branch 'bugfix/watchpoint_on_shared_stacl' into 'master'
shared_stack: fixed watchpoint placement on shared stack

See merge request espressif/esp-idf!7522
2020-02-12 06:32:49 +08:00
Ivan Grokhotkov
700161921c docs: update version of IDF tools installer for windows to v2.3 2020-02-11 19:05:17 +01:00
Ivan Grokhotkov
69e91959ff tools: bump version of windows tools installer to v2.3
Includes the following fixes:

- bc43d48e: fix Windows Defender checkbox
  https://github.com/espressif/esp-idf/issues/4225

- 7a18f02a: idf_tools.py compatibility with virtualenv 20.0

- Fix extracting IDF to a destination on another drive
  https://github.com/espressif/esp-idf/issues/4128
  https://github.com/espressif/esp-idf/issues/4744
2020-02-11 19:05:17 +01:00
Ivan Grokhotkov
24e793baa3 tools: installer: add PYTHONUNBUFFERED=1 when calling idf_tools.py
Fixes the issue that there is no output from 'idf_tools.py install'
stage.
2020-02-11 19:05:17 +01:00
Ivan Grokhotkov
972aeec265 tools: installer: use bundled idf_tools when installing IDF 3.3.1, 4.0
This is a workaround for the 'no-site-packages' bug in the version of
idf_tools.py shipped in v4.0 and v3.3.1 (see 7a18f02ac).

When installing IDF v4.0 and v3.3.1, the installer will use the
bundled version of idf_tools.py instead of the version which comes
with IDF.
2020-02-11 19:05:17 +01:00
Ivan Grokhotkov
b67a7f48a9 tools: installer: fix copying IDF to a destination on another drive
Closes https://github.com/espressif/esp-idf/issues/4128
Closes https://github.com/espressif/esp-idf/issues/4744
2020-02-11 19:05:17 +01:00
Bruno Binet
7084015884 Update NVS Partition Generator Utility documentation
to add support for i16, u64, i64 types
2020-02-11 11:18:19 +00:00
Bruno Binet
cab895f459 NVS: add support for i16, u64, i64 types to NVS partition generation tool 2020-02-11 11:18:19 +00:00
Jakob Hasse
9b4815e3c8 ESP Event: multiple registrations to one event
* It's possible now to register the same handler
  several times to one specific event, using
  a dynamic handle object.
2020-02-11 10:52:05 +01:00
Renz Christian Bagaporo
16e0c93e40 ci: solve public headers errors 2020-02-11 14:30:42 +05:00
Renz Christian Bagaporo
b675df4b08 soc: use include_next for including common touch sensor hal header 2020-02-11 14:30:42 +05:00
Renz Christian Bagaporo
1f2e2fe8af soc: separate abstraction, description and implementation 2020-02-11 14:30:42 +05:00
Jiang Jiang Jian
7f4309d0f1 Merge branch 'feature/esp32_5p0_code_optimize' into 'master'
controller flash code optimize

See merge request espressif/esp-idf!7409
2020-02-11 17:29:08 +08:00
Ivan Grokhotkov
bcd2358eb6 Merge branch 'bugfix/idf_tools_virtualenv' into 'master'
idf_tools.py: fix install-python-env failure with virtualenv 20.0.0

See merge request espressif/esp-idf!7549
2020-02-11 16:42:41 +08:00
Jiang Jiang Jian
7647b5c668 Merge branch 'bugfix/eapol_log_verbosity' into 'master'
wpa_supplicant: Add wpa_supllicant debug logging as a configurable option

Closes WIFI-976

See merge request espressif/esp-idf!7289
2020-02-11 16:10:07 +08:00
David Cermak
3904be6b0f ESP-NETIF: add unit test for get/set hostname API 2020-02-11 07:36:32 +01:00
David Cermak
7c8cbe02e4 ESP-NETIF: fix get/set hostname API to reflect user settings
On startup of the common interface (ethernet, wifi), the lwip netif hostname was assigned to confg value .
Fixed to assign to esp-netif hostname if it exists

Closes https://github.com/espressif/esp-idf/issues/4737
2020-02-11 07:35:12 +01:00
Angus Gratton
2e8a894ea7 Merge branch 'bugfix/modem_ppp_close_fix' into 'master'
esp_modem: post PPP stop event when requested

Closes IDFGH-2557

See merge request espressif/esp-idf!7528
2020-02-11 12:05:44 +08:00
Angus Gratton
c1eef95ec1 Merge branch 'bugfix/test_fp_switch' into 'master'
esp32: use semaphore in FP switch test, raise worker task priority

See merge request espressif/esp-idf!7526
2020-02-11 12:05:04 +08:00
Angus Gratton
ab5dad3be5 Merge branch 'feature/esp_netif_flexible_init' into 'master'
esp netif: minor API update, more flexible wifi init

Closes IDFGH-2523

See merge request espressif/esp-idf!7487
2020-02-11 12:01:20 +08:00
Angus Gratton
ea34f3bb27 drivers: Remove high speed mode from LEDC docs for ESP32-S2, update headers to match 2020-02-11 14:36:47 +11:00
Angus Gratton
7bd2677d5d Merge branch 'bugfix/ci_doc_fixes' into 'master'
docs: CI fixes

See merge request espressif/esp-idf!7539
2020-02-11 06:38:34 +08:00
David Cermak
9bdcd40f2b ESP-NETIF: add CI compile only tests for common init/config pattern in C/C++ 2020-02-10 19:40:28 +01:00
David Cermak
50588ff3f7 esp-compiler: add designated init macros to make esp configuration pattern viable under C++ 2020-02-10 19:40:28 +01:00
David Cermak
d8da662dec ESP-NETIF: Add unit test for additional API 2020-02-10 19:40:23 +01:00
Ivan Grokhotkov
7a18f02acd idf_tools.py: fix install-python-env failure with virtualenv 20.0.0
--no-site-packages is the default behavior since virtualenv 1.7
(released in Nov 2011). This option was removed in virtualenv 20.0.
2020-02-10 19:14:41 +01:00
Felipe Neves
9c8289b0d9 shared_stack: using watchpoint 1 to monitor the shared_stack instead of watchpoint 0 2020-02-10 12:03:30 -03:00
Felipe Neves
33c9826372 shared_stack: fixed watchpoint placement on shared_stack 2020-02-10 12:03:30 -03:00
David Cermak
02cdef086f ESP-NETIF: easier creation for WiFi interfaces with custom parameters
Closes https://github.com/espressif/esp-idf/issues/4611
Closes IDFGH-2523
2020-02-10 14:22:07 +01:00
Ivan Grokhotkov
7304651320 esp32: use semaphore in FP switch test, raise worker task priority 2020-02-10 13:36:43 +01:00
Anton Maklakov
d6a5bb60da ci: remove using IDF_XTENSA_TOOLCHAIN_URL because there are idf_tools.json and multi-target support 2020-02-10 18:05:21 +07:00
Anton Maklakov
69d8eddbe4 ci: Use ARTIFACT_DOWNLOAD_ATTEMPTS and others from the project settings 2020-02-10 18:01:03 +07:00
Angus Gratton
c5d05b5c4f Merge branch 'feature/usb_support4soc' into 'master'
Added usb registers structures

See merge request espressif/esp-idf!6811
2020-02-10 18:00:39 +08:00
Francesco Giancane
d8755fff3f esp_modem.c: post PPP stop event when requested
When library users call esp_stop_ppp(), it is expected that the PPP link
is closed and the DCE is moved into command mode.

If the STOP event is not posted into the event loop, then the PPP stack
would not be turned off, resulting in the impossibility to switch into
command mode, as the modem is still sending PPP binary data.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

Merges https://github.com/espressif/esp-idf/pull/4642
2020-02-10 09:49:27 +00:00
Ivan Grokhotkov
f11b8f14c7 Merge branch 'feature/support_enc28j60' into 'master'
Added ENC28J60 Example

Closes IDFGH-2295

See merge request espressif/esp-idf!6877
2020-02-10 17:18:38 +08:00
Ivan Grokhotkov
70d99fa986 Merge branch 'bugfix/stage_two_bootloader_linking' into 'master'
Fixes accessing some files from 2nd part of the bootloader.

See merge request espressif/esp-idf!7531
2020-02-10 17:13:12 +08:00
Angus Gratton
0441c5d744 docs ci: Use the final version of the esp-idf-doc-env image
(Content is the same)
2020-02-10 19:55:46 +11:00
Angus Gratton
f906095789 docs ci: Ensure deploy directory exists 2020-02-10 19:55:15 +11:00
Andrei Gramakov
4e8b4b9e49 soc: add USB peripheral register definitions, hal level, reg map, etc 2020-02-10 08:33:39 +00:00
Angus Gratton
59c39173f2 Merge branch 'feature/mqtt_unit_test' into 'master'
mqtt: basic set of unit tests, modify example tests to check ssl connect

See merge request espressif/esp-idf!7393
2020-02-10 15:10:56 +08:00
Supreet Deshpande
2bf329eb2c Fixes accessing some files from 2nd part of the bootloader. 2020-02-10 12:34:18 +05:30
Angus Gratton
64654c0444 Merge branch 'fix/tools_py_environ_str' into 'master'
idf_py: fix the ESPPORT environ variable type issue

See merge request espressif/esp-idf!7433
2020-02-10 14:28:35 +08:00
morris
9e59be1aab ethernet: add enc28j60 example 2020-02-10 12:56:14 +08:00
Henry Gilbert
eda07acc81 Add ENC28J60 Ethernet Driver
Merges https://github.com/espressif/esp-idf/pull/4435
2020-02-10 12:56:14 +08:00
Ivan Grokhotkov
966f4227ad Merge branch 'refactor/simplify_console_examples' into 'master'
console: simplify console examples

Closes IDF-1110

See merge request espressif/esp-idf!7040
2020-02-10 04:18:58 +08:00
Ivan Grokhotkov
91111263f9 Merge branch 'feature/esp32s2_ref_clock_use_ll_of_rmt_pcnt' into 'master'
rmt/esp32s2: Update RMT: reg, struct, LL and test_utils/ref_clock.c

See merge request espressif/esp-idf!7514
2020-02-09 20:03:32 +08:00
Konstantin Kondrashov
daa9c30c8e rmt/esp32s2: Update RMT: reg, struct, LL and test_utils/ref_clock.c 2020-02-09 20:03:31 +08:00
Ivan Grokhotkov
4bfd0b961b Merge branch 'fix/spi_on_esp32s2' into 'master'
spi: support esp32s2

See merge request espressif/esp-idf!7432
2020-02-09 19:45:16 +08:00
Ivan Grokhotkov
e5cb972c3a Merge branch 'bugfix/fix_esp32s2_flash_rw' into 'master'
flash(esp32s2): fix setting address field in spi user mode.

See merge request espressif/esp-idf!7380
2020-02-09 18:05:22 +08:00
Mahavir Jain
577abc4472 Merge branch 'bugfix/newlib_nano_lib_linking' into 'master'
esp_rom: link newlib nano from ROM only if SPIRAM cache workaround is disabled

See merge request espressif/esp-idf!7527
2020-02-08 12:48:12 +08:00
David Cermak
911be99054 mqtt-tests: migrate the publish-connection test from example-test to test-apps 2020-02-07 21:14:24 +01:00
Ivan Grokhotkov
98bb3772e0 soc: spi_flash LL fixes 2020-02-07 16:18:31 +01:00
Wangjialin
aaf119e930 flash(esp32s2): fix setting address field in spi user mode. 2020-02-07 16:10:51 +01:00
Ivan Grokhotkov
dc14d027ce Merge branch 'bugfix/ci_build_test_rebuild' into 'master'
ci: test_build_system_cmake: ensure sdkconfig timestamp changes

See merge request espressif/esp-idf!7525
2020-02-07 20:54:20 +08:00
suda-morris
75cadc2e41 console: simplify examples
1. simplify console examples
2. add "quit" command
3. support console command overwrite
4. add API reference
2020-02-07 20:15:06 +08:00
Mahavir Jain
3803b17048 esp_rom: link newlib nano from ROM only if SPIRAM cache workaround is disabled 2020-02-07 16:17:25 +05:30
David Cermak
3ecb731c23 mqtt: example test to check connection with different ssl parameters 2020-02-07 10:35:40 +01:00
David Cermak
b8e47eb56f mqtt: add basic set of unit tests 2020-02-07 10:35:40 +01:00
Ivan Grokhotkov
13623ef430 Merge branch 'feature/esp32s2_image_version' into 'master'
bootloader_support: add esp_chip_id_t value for ESP32-S2

See merge request espressif/esp-idf!7521
2020-02-07 16:43:21 +08:00
Ivan Grokhotkov
627d9b3142 ci: test_build_system_cmake: ensure sdkconfig timestamp changes
idf.py bootloader runs very quickly on some build servers, so when
sdkconfig is modified, the next idf.py invocation doesn't pick up the
timestamp difference. Add some delays to make sure the change is
noticed.
2020-02-07 09:35:41 +01:00
Angus Gratton
3017bfb8e3 Merge branch 'feature/test_apps_v2' into 'master'
test apps (2nd attempt)

Closes IDF-641

See merge request espressif/esp-idf!7084
2020-02-07 15:23:26 +08:00
Angus Gratton
613c4e985f Merge branch 'doc/multi_target' into 'master'
docs: Multi target build support

Closes IDF-523

See merge request espressif/esp-idf!6791
2020-02-07 15:20:53 +08:00
Angus Gratton
f91080637c Merge branch 'bugfix/part_gen_subtype_fix' into 'master'
partition_table: Fix subtype in gen_esp32part.py

Closes IDFGH-2646

See merge request espressif/esp-idf!7508
2020-02-07 14:31:02 +08:00
Angus Gratton
2c03d2cc4e docs: Re-run the 'set-target' target each time, use a unique sdkconfig file for each lang/target combo
Fixes some problems with CMake errors in stale builds, and of sdkconfig file being shared between
parallel jobs.
2020-02-07 16:47:50 +11:00
Angus Gratton
54e7cb4d8b docs: Require UTF-8 as default encoding to build docs
Making everything work for both docs & non-docs builds with Py2 is too fiddly otherwise.
2020-02-07 16:47:50 +11:00
Angus Gratton
67bb6f8dc4 README: Drop the RTD docs status badge, add a note about docs not updating for a period 2020-02-07 16:47:50 +11:00
Angus Gratton
291735c7dd docs: Move to Python 3.5+ and Sphinx 2.3 2020-02-07 16:47:50 +11:00
Mahavir Jain
41e29e9037 Merge branch 'bugfix/esp_log_timestamp' into 'master'
Use proper API to get Tick Count is esp_log_timestamp

See merge request espressif/esp-idf!7501
2020-02-07 13:46:19 +08:00
Angus Gratton
4636e8a34c docs/documenting-code: Add a couple of follow up notes on top of last commit 2020-02-07 16:37:45 +11:00
Marius Vikhammer
9f617c7874 docs: Add a short user guide for how to write multi target docs 2020-02-07 16:37:45 +11:00
Angus Gratton
c7209b110e check_python_dependencies: If overriding requirements.txt path, provide a pip command line
Advice about install.sh/install.bat, etc only works for the default requirements.txt
2020-02-07 16:37:45 +11:00
Angus Gratton
d03af45731 docs: flake8 fixes 2020-02-07 16:37:45 +11:00
Angus Gratton
ac8e931179 confgen: Avoid including invisible (due to target) choice items in kconfig.rst renames 2020-02-07 16:37:45 +11:00
Angus Gratton
eb85cfb9f6 docs: Temporarily mark RF calibration chapter as ESP32 only
Can be re-enabled once ESP32-S2 calibration support is added
2020-02-07 16:37:45 +11:00
Angus Gratton
4bfd004c83 build_docs gh-linkcheck: Use Python, ignore links to master branch SUPPORT_POLICY.md 2020-02-07 16:37:45 +11:00
Anton Maklakov
775448c792 docs: Make Python 3 compatible 2020-02-07 16:37:45 +11:00
Angus Gratton
50324b505d docs: Note that the idf target formatting filters don't work on "included" documents 2020-02-07 16:37:45 +11:00
Angus Gratton
740d422134 docs: Possible fix for blockdiag & seqdiag UnicodeEncodeErrors 2020-02-07 16:37:45 +11:00
Angus Gratton
844bdd8154 docs: Allow incremental builds 2020-02-07 16:37:45 +11:00
Angus Gratton
11fac8637a docs: Resolve doxygen & Sphinx warnings 2020-02-07 16:37:45 +11:00
Marius Vikhammer
268816649c Replace all TRM urls will generic template variable and remove duplicate sections
All references to TRM had the section duplicated for both targets using .. only:: , replaced these with a generic template url
2020-02-07 16:37:45 +11:00
Anton Maklakov
b9effd8c06 fixup build_docs.py, show doxygen and sphinx warnings together 2020-02-07 16:37:44 +11:00
Anton Maklakov
fb3edc9c87 docs: Add features to build_docs.py: check warnings, check links, check GH links
The old check_doc_warnings.sh was deleted
2020-02-07 16:37:44 +11:00
Angus Gratton
50fcdf115d doc builder: Change default to 1 job per Sphinx instance, add a warning 2020-02-07 16:37:44 +11:00
Anton Maklakov
a2516c6188 doc: Add a link to CN translation for power_management_esp32 2020-02-07 16:37:44 +11:00
Angus Gratton
ee03e04947 docs: Run build_docs script in ci 2020-02-07 16:37:44 +11:00
Angus Gratton
35db219be2 docs: Manage parallel sphinx-build runs with optional parallel jobs within them 2020-02-07 16:37:44 +11:00
Marius Vikhammer
105567d077 doc: updated peripherals api-reference for s2 2020-02-07 16:37:44 +11:00
Marius Vikhammer
46dab1b4e8 doc: removed reference to idf_target in core dump title 2020-02-07 16:37:44 +11:00
Marius Vikhammer
83521dbc51 doc: Include paths for chip specific headers now depend on target
Input for Doxygen now depend on idf_target for some paths, updated path name generated in run_doxygen.py to show the target dependent path.
2020-02-07 16:37:44 +11:00
Marius Vikhammer
1a90470f02 doc: Split HW-Reference into seperate files/folders for different chips 2020-02-07 16:37:44 +11:00
Marius Vikhammer
cfeb9e68cb doc: Changed Chinese doc to use dynamic chip name 2020-02-07 16:37:43 +11:00
Marius Vikhammer
a7bac4721a doc: Add external ram note link to CN translation 2020-02-07 16:37:43 +11:00
Marius Vikhammer
d56ea52ea1 doc: EN doc update and fixed warnings 2020-02-07 16:37:43 +11:00
Marius Vikhammer
e06a57f34f doc: Changed toc filter reg.ex to be non-greedy
Stops the parsing from crashing when the content contains a ":", e.g. in web-links
2020-02-07 16:37:43 +11:00
Marius Vikhammer
9352899d69 doc: Update English pages with generic target name 2020-02-07 16:37:43 +11:00
Marius Vikhammer
c848aa74ac doc: Add extension that replaces generic target variable with idf_target
Also changed event trigger for idf-extension to use config-updated, as this makes more logical sense

Includes functionality for defining local (single .rst file) substitution strings that depend on chip target.

Substitutions can be defined with {IDF_TARGET_X: default = "IO3", esp32 = "IO4"} and then used locally as {IDF_TARGET_X}

Also added global substitution for TRM links {IDF_TARGET_TRM_URL}
2020-02-07 16:37:43 +11:00
Angus Gratton
1318623831 docs: Don't search in _static directories for rst files 2020-02-07 16:37:43 +11:00
Angus Gratton
d97b587871 docs: Clear _Static_assert related warnings
Unclear why defining _Static_assert(x, y) in PREDEFINED list
doesn't match anything, but defining _Static_assert() does match.
2020-02-07 16:37:43 +11:00
Angus Gratton
fdbcc12401 doc: Fix RMT waveform path warnings 2020-02-07 16:37:43 +11:00
Angus Gratton
66462ca26f docs: Apply the same basic ESP32/ESP32-S2 warning filters to Chinese docs 2020-02-07 16:37:43 +11:00
Angus Gratton
a148d8e6ba docs: Refactor extensions into packages, update the add-ons-reference docs page
Includes converting some of the remaining standalone scripts into Sphinx extensions.

Make flake8 clean
2020-02-07 16:37:43 +11:00
Angus Gratton
cbede3a3a4 docs: Try to enable parallel reads & writes
Reads still single threaded in Sphinx 1.8.5, though.
2020-02-07 16:37:43 +11:00
Angus Gratton
d1373119e1 docs: Cleanup build warnings 2020-02-07 16:37:43 +11:00
Angus Gratton
b0748b4364 docs: Mark some more docs sections as ESP32 only 2020-02-07 16:37:43 +11:00
Angus Gratton
e753c1b509 docs: Edit out some unnecessary instances of "ESP32" in the doc text 2020-02-07 16:37:43 +11:00
Angus Gratton
9399f04da0 docs: Add 'toctree filter' directive & filter out ESP32-only pages from S2 docs 2020-02-07 16:37:43 +11:00
Angus Gratton
37d5e2fba6 docs: Add "explicit only" directive & use only:: to block out some chip-specific parts of docs 2020-02-07 16:37:43 +11:00
Angus Gratton
e6211c7864 docs: add new top-level docs builder that builds docs for a single chip 2020-02-07 16:37:43 +11:00
Angus Gratton
783856d557 docs: Move Doxygen build to a Sphinx extension, load sdkconfig & soc caps headers 2020-02-07 16:37:12 +11:00
Angus Gratton
fcf76320c8 docs: Start refactoring IDF-specific docs features into extensions
Run the actual IDF build system to determine what components are linked
for a particular target.
2020-02-07 16:37:12 +11:00
Shubham Kulkarni
e1c0fb0c62 log: Check for ISR context and use proper API to get Tick Count 2020-02-07 04:49:53 +00:00
Ivan Grokhotkov
0d69ed8620 bootloader_support: add esp_chip_id_t value for ESP32-S2 2020-02-06 19:50:14 +01:00
David Cermak
30c6e27bcc CI: document test-apps feature, updated test-apps structure 2020-02-06 16:46:41 +00:00
David Cermak
692deac5ae CI: assign and target-test stages updated to run test-apps in the ci 2020-02-06 16:46:41 +00:00
Ivan Grokhotkov
e63764b468 CI: test-apps introduction
Introducing feature of adding arbitrary projects which could be build or
executed in the CI for the only purpose as testing

Closes IDF-641
2020-02-06 16:46:41 +00:00
Ivan Grokhotkov
9d333424a1 Merge branch 'bugfix/smtp_strict_prototypes_fix' into 'master'
Fixes for CI regresions

See merge request espressif/esp-idf!7511
2020-02-07 00:43:14 +08:00
Ivan Grokhotkov
d1b7d51dec Merge branch 'bugfix/doc_nwdiag' into 'master'
docs: Fix nwdiag dependency for documentation build

See merge request espressif/esp-idf!7512
2020-02-07 00:42:52 +08:00
Ivan Grokhotkov
8a6c3c254c examples/smtp: fix strict prototypes error in SMTP example 2020-02-06 16:40:13 +01:00
Ivan Grokhotkov
cbf8b60466 ci: re-add the lost PEDANTIC_{C,CXX}FLAGS in CMake example builds 2020-02-06 16:15:58 +01:00
Roland Dobai
8102996b0c docs: Fix nwdiag dependency for documentation build 2020-02-06 12:36:47 +01:00
Sagar Bijwe
4f93a707f8 WiFi: Add support for ESP32S2
1) Update WiFi and PHY libs for ESP32S2.
2) Remove KConfig options ESP32S2 PHY lib selection.
3) Change target macros from ESP32S2BETA to ESP32S2
2020-02-06 14:19:30 +05:30
boarchuz
d0eb6c9701 Fix subtype in PartitionTable.find_by_type
Fix ptype->subtype

Closes https://github.com/espressif/esp-idf/pull/4723
2020-02-06 08:48:35 +01:00
Angus Gratton
c9cc694dbb Merge branch 'fix/ci_target_test' into 'master'
CI - Fix target variable default value

See merge request espressif/esp-idf!7424
2020-02-06 14:52:10 +08:00
Angus Gratton
fec005ec15 Merge branch 'bugfix/nvs_missing_get' into 'master'
NVS: Fixed missing implementations for string/blob

See merge request espressif/esp-idf!7492
2020-02-06 14:31:16 +08:00
Angus Gratton
5c05af2641 Merge branch 'example/simple_smtp_client' into 'master'
Added simple SMTP email client.

Closes IDF-1292

See merge request espressif/esp-idf!7309
2020-02-06 14:29:43 +08:00
Angus Gratton
fda4efa300 Merge branch 'bugfix/rtc_wdt_timeout' into 'master'
soc/esp32s2: Fix setting timeout for RTC_WDT. ESP32-S2 uses 90KHz instead of 150kHz

See merge request espressif/esp-idf!7499
2020-02-06 14:27:35 +08:00
Angus Gratton
bd9cb9a307 Merge branch 'bugfix/spiffs_case_when_use_mtime_is_not_set' into 'master'
spiffs: Fix for case when CONFIG_SPIFFS_USE_MTIME is not defined

See merge request espressif/esp-idf!7496
2020-02-06 14:26:42 +08:00
Angus Gratton
34b1ea9b3d Merge branch 'feature/netif_ppp_authtype_none' into 'master'
esp-netif: PPPoS fixes

Closes IDFGH-2553 and IDFGH-2548

See merge request espressif/esp-idf!7488
2020-02-06 14:14:43 +08:00
Angus Gratton
98618333a1 Merge branch 'bugfix/wps_config_init' into 'master'
WPS_CONFIG_INIT_DEFAULT(type) error

See merge request espressif/esp-idf!7311
2020-02-06 14:04:31 +08:00
Angus Gratton
8848b2c980 Merge branch 'feature/esp_timer_lact_and_systimer' into 'master'
esp_timer: Create esp_timer as a separate component + LAC timer + SYSTIMER for s2

Closes IDF-1365 and IDF-979

See merge request espressif/esp-idf!7472
2020-02-06 14:00:19 +08:00
Konstantin Kondrashov
739eb05bb9 esp32: add implementation of esp_timer based on TG0 LAC timer
Closes: IDF-979
2020-02-06 14:00:18 +08:00
Ivan Grokhotkov
67b0a79167 Merge branch 'bugfix/macos_build_system_test' into 'master'
ci: fix build system test on macOS

See merge request espressif/esp-idf!7504
2020-02-06 02:58:53 +08:00
Ivan Grokhotkov
902024f980 ci: fix build system test on macOS
Replaces ${var^^} expansion supported with Bash >= 4 with 'tr'
2020-02-05 19:05:04 +01:00
Mahavir Jain
f515db1a3e Merge branch 'bugfix/fix_ota_with_chunked_servers' into 'master'
Fixed OTA with chunked servers

See merge request espressif/esp-idf!7457
2020-02-05 16:54:01 +08:00
Mahavir Jain
229b599494 Merge branch 'bugfix/remove_cjson_test_file_from_cmake_build' into 'master'
cJSON: include only source file objects for cmake build

See merge request espressif/esp-idf!7498
2020-02-05 16:46:29 +08:00
KonstantinKondrashov
47a5d14e59 soc/esp32s2: Fix setting timeout for RTC_WDT. ESP32-S2 uses 90KHz instead of 150kHz 2020-02-05 15:16:28 +08:00
Shubham Kulkarni
ba31458347 OTA: Fixed OTA with chunked servers and added example_test with chunked server 2020-02-05 11:56:37 +05:30
Mahavir Jain
e366b6ac21 cJSON: include only source file objects for cmake build
Test file can cause build issues in some cases, since it has its own main() function
2020-02-05 11:14:23 +05:30
Angus Gratton
9ebb48ff9d Merge branch 'bugfix/idf_fullclean_loses_target' into 'master'
idf.py: guess IDF_TARGET from sdkconfig/sdkconfig.defaults, error out if IDF_TARGET is inconsistent

Closes IDF-869 and IDF-1040

See merge request espressif/esp-idf!7486
2020-02-05 07:41:11 +08:00
KonstantinKondrashov
e85e99189f spiffs: Fix for case when CONFIG_SPIFFS_USE_MTIME is not defined
Closes: 2c793cef06
2020-02-05 03:00:22 +08:00
Ivan Grokhotkov
50466a5e4f Merge branch 'bugfix/esp32s2_ldscripts' into 'master'
esp32s2: LD script fixes/improvements and re-enable SystemView examples

Closes IDF-1357, IDF-1354, and IDF-1346

See merge request espressif/esp-idf!7431
2020-02-05 02:09:29 +08:00
Rusty Eddy
92f2d79521 Added semi-colon to esp_event_loop_create(...)
Title sums it up.
2020-02-04 07:38:44 -08:00
Vikram Dattu
405186c866 Added simple SMTP email client.
This is based on `ssl_mail_client` from mbedtls.

The client also adds functionality to send attachments.

Signed-off-by: Vikram Dattu <vikram.dattu@espressif.com>
2020-02-04 18:13:28 +05:30
Mahavir Jain
0b8f17e618 Merge branch 'nimble/bugfix_ble_hs_hci_rx_evt' into 'master'
NimBLE: Update submodule to fix bug in `ble_hs_hci_rx_evt`

See merge request espressif/esp-idf!7494
2020-02-04 19:35:50 +08:00
Ivan Grokhotkov
41631587f8 Merge branch 'feature/esp32s2_brownout' into 'master'
esp32s2: add brownout detector support

Closes IDF-751

See merge request espressif/esp-idf!7428
2020-02-04 17:00:46 +08:00
Prasad Alatkar
bc7ce8e584 Update NimBLE submodule to fix bug in ble_hs_hci_rx_evt 2020-02-04 12:27:47 +05:30
Xia Xiaotian
1833b8aeab soc: clear PHY status when cpu start 2020-02-04 14:37:16 +08:00
Jakob Hasse
e228a2102d Fixed missing implementations 2020-02-03 17:18:21 +01:00
Angus Gratton
6d2fa2e0f1 Merge branch 'feature/support_app_update_ut_for_s2_chip' into 'master'
app_update(s2): Enable app_update UTs

Closes IDF-1007

See merge request espressif/esp-idf!7415
2020-02-03 14:56:23 +08:00
Mahavir Jain
9ee50266cc Merge branch 'nimble/misc_host_flow_ctrl_changes' into 'master'
NimBLE: Misc fixes in NimBLE host flow control and `blecent` example

See merge request espressif/esp-idf!7042
2020-02-03 13:59:45 +08:00
David Cermak
7d45bfda21 esp_netif_lwip_ppp: fix posting ip-event data
Closes https://github.com/espressif/esp-idf/issues/4634
2020-01-31 15:21:30 +01:00
Axel Lin
3f5d19016a esp_netif_lwip_ppp: Allow esp_netif_ppp_set_auth set auth_type with NETIF_PPP_AUTHTYPE_NONE
The ppp_set_auth() is guard by #if PPP_AUTH_SUPPORT in lwIP, so
make it consistent. This also simplify the code a bit because the code
in #if PAP_SUPPORT guard and #if CHAP_SUPPORT guard are exactly the same.

Once NETIF_PPP_AUTHTYPE_NONE added to esp_netif_auth_type_t, it also allows
setting NETIF_PPP_AUTHTYPE_NONE with this change.

Signed-off-by: Axel Lin <axel.lin@gmail.com>

Merges https://github.com/espressif/esp-idf/pull/4639
2020-01-31 15:19:09 +01:00
Axel Lin
57a56b55c0 esp_netif_ppp: Add NETIF_PPP_AUTHTYPE_NONE to esp_netif_auth_type_t
To allow setting auth_type to PPPAUTHTYPE_NONE, add NETIF_PPP_AUTHTYPE_NONE
to esp_netif_auth_type_t.
So even PAP/CHAP are enabled in lwIP, the application still can set
auth_type to PPPAUTHTYPE_NONE.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
2020-01-31 13:41:50 +01:00
KonstantinKondrashov
aa42177e19 app_update(s2): Enable app_update UTs
Closes: IDF-1007
2020-01-31 10:34:08 +00:00
Ivan Grokhotkov
9bff344ef5 idf.py: fail and show instructions on IDF_TARGET mismatch
Closes IDF-869
2020-01-31 11:08:22 +01:00
Ivan Grokhotkov
036a29bb3d docs: update build system guide on setting IDF_TARGET 2020-01-31 10:19:44 +01:00
June
4f9c3e977e controller flash code optimize
fix ld file to link 3 bt rom functions
2020-01-31 06:29:46 +00:00
Hrudaynath Dhabe
9ebd2cc0f6 Fix wps config for support with gnu++11 as well as c99. 2020-01-31 05:36:41 +00:00
Hrudaynath Dhabe
ec50c5344b wpa_supplicant: Fix configurable debug log feature's warning issue 2020-01-31 05:34:07 +00:00
GOPTIONS\pfrost
851658109c Reduce log level of hexdumps to verbose
Revert "Reduce log level of hexdumps to verbose"

Add a menuconfig option to enable or disable the logging in wpa_supplicant

Clarify help message
2020-01-31 05:34:07 +00:00
Prasad Alatkar
4047f7e180 NimBLE: Misc changes in host flow control, ble_gap_unpair, ble_hs_hci_rx_evt & example
- Add menuconfig option for NimBLE host flow control
- Include changes in `blecent` example from upstream PR!702
- add ble_hs_lock in ble_gap_unpair Upstream PR!584
- ble_hs_hci_rx_evt, upstream PR!738

Closes https://github.com/espressif/esp-idf/issues/4243
2020-01-31 10:46:55 +05:30
Angus Gratton
340ffcb1a9 Merge branch 'bugfix/build_ota_examples_s2' into 'master'
OTA: enable example builds for esp32s2 target

Closes IDF-1035

See merge request espressif/esp-idf!7474
2020-01-31 13:01:07 +08:00
Angus Gratton
1d28aa0194 Merge branch 'bugfix/doc_visible_kconfigs_only' into 'master'
Docs: Omit kconfig configurations not available for the target

Closes IDF-1212

See merge request espressif/esp-idf!7473
2020-01-31 12:57:00 +08:00
Ivan Grokhotkov
a1c1af72bf idf.py: guess IDF_TARGET from sdkconfig if CMakeCache doesn't exist
This solves the issue that target is changed to the default one after
idf.py fullclean.

Also allow setting the default target using sdkconfig.defaults, e.g.
CONFIG_IDF_TARGET="esp32s2"

Closes IDF-1040
2020-01-30 19:09:37 +01:00
Ivan Grokhotkov
9b7a038583 Merge branch 'bugfix/esp32s2_ut_reset_reason' into 'master'
unit-test-app: make compatible with ESP32-S2 reset reasons

See merge request espressif/esp-idf!7449
2020-01-30 18:12:01 +08:00
Roland Dobai
5454c268f7 Docs: Omit kconfig configurations not available for the target 2020-01-30 10:30:06 +01:00
Angus Gratton
86034ad049 Merge branch 'feature/freertos_fpu_isr' into 'master'
feature/fpu: Enable usage of FPU inside of a ISR

Closes IDF-100

See merge request espressif/esp-idf!7348
2020-01-30 13:38:37 +08:00
Angus Gratton
f8e7285591 Merge branch 'feature/idfpy_add_baud_parameter_to_monitor' into 'master'
idf.py: add monitor-baud option to monitor command

Closes IDF-978

See merge request espressif/esp-idf!6613
2020-01-30 13:38:29 +08:00
Ivan Grokhotkov
f5d37c453a unit-test-app: make compatible with ESP32-S2 reset reasons
ESP32-S2 has slightly different names of reset reasons, printed by
the ROM. Allow using ESP32 reset reason names in test cases.
2020-01-29 19:05:33 +01:00
David Cermak
3f10c4af06 OTA: enable example builds for esp32s2 target
Closes IDF-1035
2020-01-29 15:20:42 +01:00
Ivan Grokhotkov
ac1834e288 Merge branch 'feature/freertos_xtensa_folder' into 'master'
freertos: moved all xtensa specific files into a separated folder

See merge request espressif/esp-idf!7377
2020-01-29 17:04:34 +08:00
Ivan Grokhotkov
ce7af82e05 Merge branch 'bugfix/idf_monitor_usbser_sys' into 'master'
tools: work around usbser.sys bug in IDF monitor

Closes IDFGH-2592

See merge request espressif/esp-idf!7460
2020-01-29 17:02:44 +08:00
Rosa Elena Veiga Otero
af6541e773 tools: work around usbser.sys bug in idf_monitor
implemented workaround in idf_monitor for known usbser.sys bug which
causes changes in RTS signal to only be sent if DTR signal also changes.
Works by forcing a dummy change in DTR signal (re-assigning its current
value, as it has previously been done in the flashing tool)

Closes https://github.com/espressif/esp-idf/pull/4676
2020-01-28 11:47:45 +01:00
Angus Gratton
f5b82c5b1f Merge branch 'bugfix/esptool_elf2image_flashmode' into 'master'
esptool_py: pass flash mode/frequency/size to elf2image

See merge request espressif/esp-idf!7440
2020-01-28 14:22:35 +08:00
Felipe Neves
429712c6eb freertos: moved all xtensa specific files into a separated folder 2020-01-27 16:05:30 -03:00
Ivan Grokhotkov
37edc8f6e9 Merge branch 'feature/idf_docker_updates' into 'master'
Docker image improvements

Closes IDFGH-2559

See merge request espressif/esp-idf!7454
2020-01-28 02:28:34 +08:00
Felipe Neves
5cbb3f05c0 freertos: Added experimental, optional FPU usage on level 1 ISR 2020-01-27 10:55:03 -03:00
Felipe Neves
670ea56df2 freertos: added fpu in isr test case 2020-01-27 10:55:03 -03:00
Ivan Grokhotkov
f74b83b5b4 Merge branch 'feature/idf_tools_doc' into 'master'
docs: add API guide page about IDF Tools

See merge request espressif/esp-idf!7378
2020-01-27 17:10:21 +08:00
Shivani Tipnis
770a1eae01 ci: Fix target variable default value 2020-01-27 09:05:23 +00:00
Ivan Grokhotkov
600d542f53 Merge branch 'bugfix/http_client_chunked_test' into 'master'
http_client: fix example test to expect -1 as content-len for chunked transfer

See merge request espressif/esp-idf!7455
2020-01-27 03:21:42 +08:00
David Cermak
0c21e677cc http_client: fix example test to expect -1 as content-len for chunked transfer 2020-01-26 16:42:37 +01:00
Michael (XIAO Xufeng)
7026087dc0 spi: support esp32s2 2020-01-26 17:24:12 +08:00
Michael (XIAO Xufeng)
9d41829e09 spi: update esp32s2 hardware description files 2020-01-26 17:24:11 +08:00
Ivan Grokhotkov
287d0039ff tools/docker: enable ccache by default 2020-01-24 19:12:22 +01:00
Ivan Grokhotkov
54eed09d70 tools/docker: install CMake version provided in tools.json
Closes https://github.com/espressif/esp-idf/issues/4644
Closes IDFGH-2559
2020-01-24 19:11:56 +01:00
Ivan Grokhotkov
1cd6f67679 docs: add API guide page about IDF Tools 2020-01-24 14:02:21 +01:00
Ivan Grokhotkov
4145ca591f examples: re-enable SystemView examples for esp32s2
Closes IDF-1357
2020-01-24 10:48:38 +01:00
Ivan Grokhotkov
3eb190ce48 esp32s2: fix interrupt names used by SystemView 2020-01-24 10:48:38 +01:00
Ivan Grokhotkov
bb59ca3ab3 esp32s2: add missing ESP32S2_MEMMAP_TRACEMEM_TWOBANKS option
It is used when app-trace is enabled, to provide ping-pong buffers.
2020-01-24 10:48:38 +01:00
Ivan Grokhotkov
02a99e84c8 esp32s2: move trace memory reservation to soc_memory_layout.c 2020-01-24 10:48:38 +01:00
Ivan Grokhotkov
110f3c9ff5 esp32s2: put static .data and .bss directly after .iram.text
This results in a single large heap section instead of two smaller
ones.

Closes IDF-1354
2020-01-24 10:48:38 +01:00
Ivan Grokhotkov
27bff3517f esp32s2: fix "loadable ELF" build
Closes IDF-1346
2020-01-24 10:48:20 +01:00
Ivan Grokhotkov
fd15acb50f esp32s2: bootloader: move iram_loader segment higher
This gives extra 16kB for the application's static .data/.bss
2020-01-24 10:48:20 +01:00
Ivan Grokhotkov
354ce68dce soc: move reserved regions out of memory_layout_utils.c
These definitions have ended up being chip specific. Moving them into
respective soc_memory_layout.c makes the whole picture of memory
regions easier to see, and also makes adding support for new chips
easier.
2020-01-24 10:48:20 +01:00
Ivan Grokhotkov
81f0e7d90f Merge branch 'bugfix/esp32s2_freertos_tls' into 'master'
esp32s2: fix THREADPTR calculation, re-enable FreeRTOS TLS tests

Closes IDF-1239

See merge request espressif/esp-idf!7403
2020-01-24 17:47:43 +08:00
Ivan Grokhotkov
9fafdb7e6d Merge branch 'bugfix/esp32s2_newlib_nano' into 'master'
esp32s2: esp_rom: separate nano formatting functions, fix newlib tests

See merge request espressif/esp-idf!7447
2020-01-24 17:46:54 +08:00
Anton Maklakov
a92a922b51 Merge branch 'bugfix/esp32s2_nostdlib' into 'master'
esp32s2: remove -nostdlib accidentally added

See merge request espressif/esp-idf!7446
2020-01-24 12:25:56 +08:00
Angus Gratton
c9e35ccf41 Merge branch 'bugfix/esp32s2_disable_hw_crypto' into 'master'
mbedtls: temporary disable HW crypto for ESP32-S2

See merge request espressif/esp-idf!7448
2020-01-24 07:43:25 +08:00
Ivan Grokhotkov
6e527fb763 mbedtls: temporary disable HW crypto for ESP32S2
To be re-enabled once HW crypto accelerators support is merged:
IDF-714, IDF-716, IDF-803.
2020-01-23 18:14:10 +01:00
Ivan Grokhotkov
16e63f6a3f esp32s2: esp_rom: separate nano formatting functions, fix newlib tests 2020-01-23 18:07:37 +01:00
Ivan Grokhotkov
cbb6beccd9 ci: add build system tests for bootloader flash mode/freq/size 2020-01-23 17:03:52 +01:00
Ivan Grokhotkov
90af8531d8 esp32s2: remove -nostdlib accidentally added
-nostdlib was removed in 9a2af7a and then accidentally added
in 1c2cc54.

The issue manifested itself as a failure to link some symbols from
libgcc, even though libgcc should implicitly appear at the end of the
linker command line when -nostdlib is not given.
2020-01-23 17:00:31 +01:00
Ivan Grokhotkov
caef7ad9f2 esp32, esp32s2beta: move brownout.c to esp_common 2020-01-23 13:44:19 +01:00
Ivan Grokhotkov
70752baba4 esp32s2: add brownout detector support
1. add brownout detector HAL for esp32 and esp32s2
2. enable brownout reset for esp32 rev. 1 and above
3. add approximate brownout detector levels for esp32s2
2020-01-23 13:44:19 +01:00
Ivan Grokhotkov
09950797cb esptool_py: pass flash mode/frequency/size to elf2image
Otherwise the image gets generated with wrong parameters, and the
binary does not boot unless it has been "fixed" by esptool during the
upload.
2020-01-23 12:19:15 +01:00
Ivan Grokhotkov
46035032cf esp32s2: fix inconsistency between reg and struct headers
test_mux register doesn't exist in RTCCNTL anymore, remove it from
struct header. Also remove adc_ll_vref_output implementation, which
depends on that register.
2020-01-23 11:30:11 +01:00
Ivan Grokhotkov
cbb84e8f5e esp32s2: fix THREADPTR calculation, re-enable FreeRTOS TLS tests
1. Clarify THREADPTR calculation in FreeRTOS code, explaining where
the constant 0x10 offset comes from.

2. On the ESP32-S2, .flash.rodata section had different default
alignment (8 bytes instead of 16), which resulted in different offset
of the TLS sections. Unfortunately I haven’t found a way to query
section alignment from C code, or to use a constant value to define
section alignment in the linker script. The linker scripts are
modified to force a fixed 16 byte alignment for .flash.rodata on the
ESP32 and ESP32-S2beta. Note that the base address of .flash.rodata
was already 16 byte aligned, so this has not changed the actual
memory layout of the application.

Full explanation of the calculation below.

Assume we have the TLS template section base address
(tls_section_vma), the address of a TLS variable in the template
(address), and the final relocation value (offset). The linker
calculates:
offset = address - tls_section_vma + align_up(TCB_SIZE, alignment).

At run time, the TLS section gets copied from _thread_local_start
(in .rodata) to task_thread_local_start. Let’s assume that an address
of a variable in the runtime TLS section is runtime_address.
Access to this address will happen by calculating THREADPTR + offset.
So, by a series of substitutions:

THREADPTR + offset = runtime_address THREADPTR = runtime_address - offset
THREADPTR = runtime_address - (address - tls_section_vma + align_up(TCB_SIZE, alignment)) THREADPTR = (runtime_address - address) + tls_section_vma - align_up(TCB_SIZE, alignment)

The difference between runtime_address and address is same as the
difference between task_thread_local_start and _thread_local_start.
And tls_section_vma is the address of .rodata section, i.e.
_rodata_start. So we arrive to

THREADPTR = task_thread_local_start - _thread_local_start + _rodata_start - align_up(TCB_SIZE, alignment).

The idea with TCB_SIZE being added to the THREADPTR when computing
the relocation was to let the OS save TCB pointer in the TREADPTR
register. The location of the run-time TLS section was assumed to be
immediately after the TCB, aligned to whatever the section alignment
was. However in our case the problem is that the run-time TLS section
is stored not next to the TCB, but at the top of the stack. Plus,
even if it was stored next to the TCB, the size of a FreeRTOS TCB is
not equal to 8 bytes (TCB_SIZE hardcoded in the linker). So we have
to calculate THREADPTR in a slightly obscure way, to compensate for
these differences.

Closes IDF-1239
2020-01-23 11:29:22 +01:00
Angus Gratton
c1ab87b580 Merge branch 'bugfix/fix_broken_example_link' into 'master'
doc:fix icmp initialization and broken example links

Closes IDFGH-2563

See merge request espressif/esp-idf!7402
2020-01-23 14:32:55 +08:00
Angus Gratton
4e4bfb4348 Merge branch 'bugfix/ci_handle_retried_jobs' into 'master'
CI: fix CI fail when have retried build jobs

See merge request espressif/esp-idf!7435
2020-01-23 09:30:07 +08:00
Angus Gratton
d672809080 Merge branch 'refactor/rename_esp32s2beta_to_esp32s2' into 'master'
global: rename esp32s2beta to esp32s2

See merge request espressif/esp-idf!7369
2020-01-23 09:16:30 +08:00
Angus Gratton
fbb5844151 Merge branch 'bugfix/esp_timer_stucks_into_esp_timer_impl_set_alarm' into 'master'
esp_timer/esp32: Fix esp_timer_impl_set_alarm() when CPU and APB freqs are changed

Closes WIFI-1576

See merge request espressif/esp-idf!7303
2020-01-23 09:14:53 +08:00
Mahavir Jain
7be7839690 Merge branch 'nimble/dynamic_buffers' into 'master'
NimBLE: Use dynamic buffers instead of static memory.

See merge request espressif/esp-idf!7337
2020-01-23 00:55:51 +08:00
Hrishikesh Dhayagude
91c8f324a9 NimBLE: Use dynamic buffers instead of static memory.
The NimBLE host buffers that consume a significant amount of memory are
now allocated dynamically.
The advantage is that, the memory can be reclaimed in cases where BLE
is turned off and not required for the current boot cycle
2020-01-23 00:55:51 +08:00
morris
405b0e7f06 esp_rom: splict libgcc and libc outof rom.ld bundle file 2020-01-23 00:27:47 +08:00
KonstantinKondrashov
6061d5d65a esp_timer/esp32: Fix case when alarm_reg > counter_reg but FRC_TIMER_INT_STATUS is not set
Closes: WIFI-1576
Closes: https://github.com/espressif/esp-idf/issues/2954
2020-01-22 14:30:34 +08:00
michael
1f43f33567 sdio: update the host example to support working with a slave without DAT1
The interrupt line (DAT1) is an extra pin comparing to SD memory,
allowing the slave to actively inform the host some events.

It's possible for two ESP32 chips to communicate with each other in
1-bit mode or SPI mode without the DAT1 line by polling the slave's
interrupt registers. But this will increase the CPU load of the host,
and do harm to the response speed to slave events.
2020-01-22 05:34:21 +00:00
morris
e30cd361a8 global: rename esp32s2beta to esp32s2 2020-01-22 12:14:38 +08:00
Michael (XIAO Xufeng)
cff1815177 idf_py: fix the ESPPORT environ variable type issue
Python 2 expect the environ variables are all of type 'str', but
sometimes wrong 'unicode' type is given.

Here we force all variables that are not str to become str.
2020-01-22 12:05:08 +08:00
morris
95743f4ee6 update rtc_sleep_init for esp32s2 2020-01-22 10:19:05 +08:00
He Yin Ling
739affb5b0 ci: add find job id argument job status:
if we retry failed job, we will have 2 jobs with same name in one pipeline. we need to use status to find the retried job instead of failed job.
2020-01-22 10:04:54 +08:00
Angus Gratton
3c44ab4192 Merge branch 'bugfix/idf_tools_pylauncher' into 'master'
idf_tools.py: fix typo in __PYVENV_LAUNCHER__ env variable name

See merge request espressif/esp-idf!7421
2020-01-22 06:42:20 +08:00
Angus Gratton
e787cb1730 Merge branch 'feature/mux_to_spinlock' into 'master'
soc/spinlock:  initial implementation of spinlock refactor

Closes IDF-967

See merge request espressif/esp-idf!6251
2020-01-22 06:20:34 +08:00
Felipe Neves
73592d9bc4 spin_lock: added new spinlock interface and decoupled it from RTOS
spin_lock: cleaned-up port files and removed portmux files

components/soc: decoupled compare and set operations from FreeRTOS

soc/spinlock: filled initial implementation of spinlock refactor

It will decouple the spinlocks into separated components with not depencences of freertos
an similar interface was provided focusing the readabillity and maintenance, also
naming to spinlocks were adopted. On FreeRTOS side the legacy portMUX macros
gained a form of wrapper functions that calls the spinlocks component thus
minimizing the impact on RTOS side.

This feature aims to close IDF-967

soc/spinlock: spinlocks passed on unit test, missing test corner cases

components/compare_set: added better function namings plus minor performance optimization on spinlocks

soc/spinlock: code reordering to remove ISC C90 mix error

freertos/portmacro: gor rid of critical sections multiline macros, placed inline functions instead

soc/spinlock: improved spinlock performance from internal RAM

For cases where the spinlock is executed from IRAM, there is no
need to check where the spinlock object is placed on memory,
removing this checks caused a great improvement on performance.
2020-01-22 06:20:34 +08:00
Ivan Grokhotkov
a7bbc74a20 Merge branch 'bugfix/rom_opi_flash_cpp_guards' into 'master'
rom: add header guards in rom/opi_flash.h

See merge request espressif/esp-idf!7423
2020-01-22 00:13:16 +08:00
Ivan Grokhotkov
cc3df01f8f rom: add header guards in rom/opi_flash.h, fix error in rom/spi_flash.h 2020-01-21 11:58:10 +01:00
Ivan Grokhotkov
9746dbe643 idf_tools.py: fix typo in __PYVENV_LAUNCHER__ env variable name
Fixes the workaround added in 9279b72a6.
2020-01-21 10:48:24 +01:00
Ivan Grokhotkov
2c3e6481bb Merge branch 'feature/ci_check_cpp_guards' into 'master'
ci: add job to check for C++ guards in header files

Closes IDF-288

See merge request espressif/esp-idf!7050
2020-01-21 17:18:23 +08:00
Ivan Grokhotkov
f619a3174b Merge branch 'bugfix/nvs_new_nothrow' into 'master'
NVS: Change all new to new (nothrow)

See merge request espressif/esp-idf!6930
2020-01-21 17:06:19 +08:00
Ivan Grokhotkov
c11f77cb1a Merge branch 'feature/use_underlying_cmake_targets_for_idf_py' into 'master'
CMake: Use underlying flash targets for idf.py

See merge request espressif/esp-idf!7067
2020-01-21 17:05:47 +08:00
Jiang Jiang Jian
95f9db79d2 Merge branch 'feature/lwip_netinet_tcp_pr4637' into 'master'
lw_ip: Add netinet compatibility headers (PR 4637)

Closes IDFGH-2551

See merge request espressif/esp-idf!7408
2020-01-21 15:00:03 +08:00
morris
f2cb6bd4b6 doc: fix broken example links 2020-01-21 12:11:24 +08:00
morris
1c710a1b31 doc: fix incomplete ping session initialization
Thanks @nopnop2002 for reporting this issue.
Closes https://github.com/espressif/esp-idf/issues/4648
2020-01-21 12:07:38 +08:00
Angus Gratton
e0fe136bf9 Merge branch 'bugfix/select_driver_not_installed' into 'master'
VFS: Check in select() if the UART driver is installed or not

Closes IDFGH-2540

See merge request espressif/esp-idf!7331
2020-01-21 11:08:38 +08:00
Angus Gratton
78e219bbe2 Merge branch 'bugfix/eth_int_allocate' into 'master'
PSRAM related fix

Closes IDFGH-2263 and IDFGH-2549

See merge request espressif/esp-idf!7310
2020-01-21 07:31:26 +08:00
Francesco Giancane
e48fe540be include/sys/socket.h: ensure SOMAXCONN symbol is defined
SOMAXCONN is expected to be defined in this header, but for the esp32
port is found in net/if.h from newlib.

Avoid the issue by including the net/if.h header in sys/socket.h so that
compatibility is preserved.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

Merges https://github.com/espressif/esp-idf/pull/4637
2020-01-21 10:11:33 +11:00
Francesco Giancane
64377b54d1 include/netinet/tcp.h: wrap lwip/tcp.h header for compatibility
Some applications (i.e. Azure IoT SDK) are expecting this header to
exist and to contain the tcp constants and description.

The esp32 did not wrap the lwip/tcp.h header, thus this commit adds a
compatibility layer.

Signed-off-by: Francesco Giancane <francesco.giancane@accenture.com>

Merges https://github.com/espressif/esp-idf/pull/4637
2020-01-21 10:11:29 +11:00
Jiang Jiang Jian
10c426e5ef Merge branch 'bugfix/fix_sniffer_bug_caused_by_mode_switch' into 'master'
FIx sniffer bug caused by mode switch

Closes WIFI-466

See merge request espressif/esp-idf!5846
2020-01-20 21:08:31 +08:00
Jiang Jiang Jian
34e5f664be Merge branch 'bugfix/btdm_hci_timeout' into 'master'
Bugfix/btdm hci timeout

See merge request espressif/esp-idf!7338
2020-01-20 21:03:07 +08:00
baohongde
097777ed66 components/bt: Fix error EIR type in config eir event 2020-01-20 20:46:05 +08:00
Tian Hao
30fbd99ad0 fix bug sleep may cause HCI timeout
When Host run different cpu and sleep enable, it may cause hci
timeout about 10s.
2020-01-20 17:44:03 +08:00
Tian Hao
f351effdb2 fix Kconfig use mistake cause some config not effect
1. Fix bluedroid task pinned_to_core un-effected
2. other minor sdkconfig bugs
2020-01-20 17:43:36 +08:00
Ivan Grokhotkov
422791cd45 Merge branch 'bugfix/ulp_s2_linux_32bit' into 'master'
tools: mark ULP toolchain as not available on 32-bit Linux

Closes IDFGH-2533

See merge request espressif/esp-idf!7299
2020-01-20 17:32:42 +08:00
Krzysztof Budzynski
52f49590b3 Merge branch 'bugfix/broken_links_to_examples' into 'master'
doc: Fix broken links to examples

See merge request espressif/esp-idf!7273
2020-01-20 12:10:18 +08:00
Krzysztof Budzynski
ac27ab29fd doc: Fix broken links to examples 2020-01-20 12:10:18 +08:00
xiehang
6cb271c20b esp_wifi: Small refactor for ic_set_vif 2020-01-20 11:47:02 +08:00
baohongde
5ca4c85497 components/bt: Fix connection fail and crash when receive unknown AT cmd 2020-01-20 11:32:26 +08:00
Angus Gratton
3f532c8895 Merge branch 'bugfix/esp_tls_blocking_timeout' into 'master'
esp-tls: add timeout for blocking connection

See merge request espressif/esp-idf!7316
2020-01-20 09:35:23 +08:00
Angus Gratton
f72aae3055 Merge branch 'bugfix/esp_netif_pppos_dce_off' into 'master'
pppos_client: Fix power_down dce immediately after got IP

See merge request espressif/esp-idf!7368
2020-01-20 09:24:03 +08:00
Jiang Jiang Jian
1c8937bf14 Merge branch 'feature/esp32_5p0_new_features' into 'master'
esp32 5p0 features support

See merge request espressif/esp-idf!7028
2020-01-19 23:06:45 +08:00
Jiang Jiang Jian
c684818eac Merge branch 'bugfix/fix_double_recycly_bar_crash_issue' into 'master'
esp_wifi:Fix double recycle bar crash issue

Closes WIFI-1666

See merge request espressif/esp-idf!7373
2020-01-19 21:16:09 +08:00
morris
cc0459eea2 ethernet: always put eth_driver handle in SRAM
Closes https://github.com/espressif/esp-idf/issues/4635
2020-01-19 16:25:44 +08:00
morris
5ad0bdd8db ethernet: work with cache disabled
add ETH_MAC_FLAG_WORK_WITH_CACHE_DISABLE flag, make ethenret driver
possible to work when cache disabled

Closes https://github.com/espressif/esp-idf/issues/4406
2020-01-19 16:25:24 +08:00
morris
4fb879c11e spi: always put spihost handle in SRAM
Closes https://github.com/espressif/esp-idf/issues/4635
2020-01-19 16:08:53 +08:00
June
19730c81f0 esp32 5p0 new features support 2020-01-17 10:34:54 +00:00
Axel Lin
fdda7b3bdf pppos_client: Fix power_down dce immediately after got IP
This was accidently commited bug when convert to use esp-netif, fix it.

Fixes: 25913af2cc ("pppos_client: udated example code to use esp-netif in PPP configuration")
Signed-off-by: Axel Lin <axel.lin@gmail.com>

Merges https://github.com/espressif/esp-idf/pull/4618
2020-01-17 07:38:15 +01:00
xiehang
0d1a20ba18 esp_wifi:Fix double recycle bar crash issue 2020-01-17 14:28:27 +08:00
Ivan Grokhotkov
0c99aef08d Merge branch 'feature/bringup_723_cmake' into 'master'
bringup 723 cmake

See merge request espressif/esp-idf!6578
2020-01-17 09:20:34 +08:00
Mahavir Jain
7ca10ca43b Merge branch 'nimble/example_update_doc' into 'master'
NimBLE: Update the documentation link in the examples

See merge request espressif/esp-idf!7364
2020-01-16 22:00:37 +08:00
Hrishikesh Dhayagude
482d7f651d NimBLE: Update the documentation link in the examples 2020-01-16 22:00:36 +08:00
Mahavir Jain
c7f44a301d Merge branch 'feature/modify_esp_tls_structure' into 'master'
esp-tls: add API to retrieve sockfd for tls connection.

See merge request espressif/esp-idf!7329
2020-01-16 18:12:16 +08:00
Jiang Jiang Jian
a23b87e344 Merge branch 'bugfix/wifi_display_cipher_suite' into 'master'
esp_wifi: esp_wifi_sta_get_ap_info function returns actual values of group.

Closes WIFI-984

See merge request espressif/esp-idf!6376
2020-01-16 17:53:01 +08:00
Hrudaynath Dhabe
93bc830ac6 esp_wifi: esp_wifi_sta_get_ap_info function returns actual values of group cipher and pairwise cipher 2020-01-16 17:52:59 +08:00
morris
2422c52851 global: hello world on real esp32-s2 2020-01-16 17:43:59 +08:00
duyi
18a05e2ee0 update ld file for esp32-s2 2020-01-16 17:43:59 +08:00
Wangjialin
d4e5980823 flash: fix 80Mhz for new spi flash driver on esp32s2 2020-01-16 17:43:59 +08:00
Wangjialin
fad639f0d4 feature(psram): update psram initialization.
1. use spi functions in rom
2. remove unnecessary GPIO configurations.
3. remove unnecessary dummy settings.
4. enable dummy out function
5. flash and psram have independent timing setting registers.
6. no need to set 1.9v for LDO in 80Mhz
7. set IO driver ability to 1 by default.
8. no need to use GPIO matrix on esp32s2, IO MUX is recommended
9. enable spi clock mode and IO mode settings
2020-01-16 17:41:31 +08:00
Du Ya Yuan
0ad7602efe make spiram work 2020-01-16 17:41:31 +08:00
duyi
30a525aeb1 update cache config 2020-01-16 17:41:31 +08:00
morris
a8d31b0385 rtc: enable super wdt auto feed 2020-01-16 17:41:31 +08:00
morris
1c2cc5430e global: bring up esp32s2(not beta) 2020-01-16 17:41:31 +08:00
Michael (XIAO Xufeng)
a85b207d68 ci: temporarily disable ut for esp32s2beta 2020-01-16 17:41:31 +08:00
duyi
9c5a981ef1 remove unnecessary function in bootloader_support
1. Delete bootloader_clock_get_rated_freq_mhz, esp32s2 do not need it right now
2. Remove bootloader_flash_gpio_config () because it has the same function as bootloader_flash_dummy_config
2020-01-16 17:41:31 +08:00
Angus Gratton
eaafe7f599 Merge branch 'feature/add_setting_project_version_from_kconfig' into 'master'
build: Add CONFIG_APP_PROJECT_VER to set the project version from Kconfig

See merge request espressif/esp-idf!7125
2020-01-16 15:54:14 +08:00
David Cermak
98cf3142fa esp_tls: fail connection if esp_tls_conn_new() timeouts 2020-01-16 07:32:19 +00:00
David Cermak
aa3b1da384 esp_tls: added connection timeout to esp_tls_conn_new_sync() 2020-01-16 07:32:19 +00:00
Aditya Patwardhan
c7418042b4 esp32/esp-tls: provide API to retrieve sockfd value from esp_tls_t 2020-01-16 12:27:44 +05:30
Jiang Jiang Jian
2a6a560eb3 Merge branch 'bugfix/hfp_disconn_bridgera' into 'master'
hfp disconn issue for bridgera

See merge request espressif/esp-idf!7336
2020-01-16 11:33:36 +08:00
Krzysztof Budzynski
c3b26487b7 Merge branch 'docs/peripherals/ledc' into 'master'
Add Chinese translation to LEDC

See merge request espressif/esp-idf!5728
2020-01-16 10:13:40 +08:00
Wang Ning
0093f50214 Add Chinese translation to LEDC.
Need technical and language review.
2020-01-16 10:13:40 +08:00
Ivan Grokhotkov
e9426d4ed1 Merge branch 'feature/improved_cxx_tests' into 'master'
Improved C++ tests

Closes IDF-1322

See merge request espressif/esp-idf!7283
2020-01-16 10:11:32 +08:00
KonstantinKondrashov
b49a657448 build: Add CONFIG_APP_PROJECT_VER to set the project version from Kconfig 2020-01-15 11:02:27 +00:00
Jakob Hasse
c75ec644f4 NVS: Changed all new to new (nothrow) 2020-01-15 14:01:35 +08:00
Angus Gratton
0da18955aa Merge branch 'bugfix/doc_remove_cmake_defconfig' into 'master'
Doc: replace defconfig with reconfigure

Closes IDFGH-1730

See merge request espressif/esp-idf!5958
2020-01-15 13:29:52 +08:00
Angus Gratton
c1a1e19c2b Merge branch 'feature/freertos_optimized_taskselection' into 'master'
feature/freertos optimized task selection o S2 Beta or unicore configurations

Closes IDF-1116

See merge request espressif/esp-idf!6616
2020-01-15 13:29:21 +08:00
Angus Gratton
ed45760ca7 Merge branch 'feature/wave_generator_example' into 'master'
example: software controlled analog signal generator

See merge request espressif/esp-idf!5994
2020-01-15 13:27:13 +08:00
Angus Gratton
ee899cb2aa Merge branch 'feature/ver-4.2' into 'master'
global: bump version to 4.2

See merge request espressif/esp-idf!7335
2020-01-15 13:07:59 +08:00
weitianhua
8b2919ee2b hfp disconn issue for bridgera 2020-01-15 12:22:58 +08:00
Ivan Grokhotkov
34fd845242 Merge branch 'bugfix/update_kconfiglib' into 'master'
tools: Update kconfiglib to 13.7.1

Closes IDF-1299

See merge request espressif/esp-idf!7307
2020-01-15 12:11:47 +08:00
Ivan Grokhotkov
80d7db9466 Merge branch 'bugfix/esp32s2_mac_addr_allocation' into 'master'
esp32s2 mac address allocation

Closes IDF-1191

See merge request espressif/esp-idf!7286
2020-01-15 11:58:14 +08:00
Renz Christian Bagaporo
fd74ec75d7 esptool_py: retain flash targets when building RAM loadable apps 2020-01-15 03:36:47 +00:00
Renz Christian Bagaporo
7ddd39ec7d idf.py: use underlying flash targets 2020-01-15 03:36:47 +00:00
Renz Christian Bagaporo
38b3fbfbfb cmake: add description to add_prebuild_library utility 2020-01-15 03:36:47 +00:00
Renz Christian Bagaporo
cc8bff703e esptool_py: create flash target functions 2020-01-15 03:36:47 +00:00
Ivan Grokhotkov
da8c06eafc Merge branch 'doc/minor_cxx_additions' into 'master'
doc: small changes for cxx code style

See merge request espressif/esp-idf!7210
2020-01-15 11:36:40 +08:00
Jiang Jiang Jian
5f803b8283 Merge branch 'bugfix/enable_ipv6_address_autoconfig' into 'master'
lw-ip:  Enable IPv6 stateless address autoconfiguration

Closes WIFI-1237

See merge request espressif/esp-idf!6313
2020-01-15 11:27:56 +08:00
Ivan Grokhotkov
5466ff3f4d global: bump version to 4.2 2020-01-15 10:22:22 +08:00
Felipe Neves
5d7564a039 freertos/Kconfig: make optimized task selection dependent on FREERTOS_UNICORE option
freertos: fix decrement loop of high priority task selection
2020-01-14 09:58:14 -03:00
Felipe Neves
2c612ec1dc components/freertos: using the optimized task selection on esp32s2beta
components/freertos: cleaned up multicore option scheduler.

components/freertos:  more cleanup and test optimization to present realistic results

components/freertos: remove unused macros of optimized task selection when multicore is used
2020-01-14 09:58:14 -03:00
Felipe Neves
77bf1ff1c0 freertos/tests: added test to evaluate scheduling time
freertos/Kconfig: fix trailing space on optimized scheduler option

freertos/tests: moved test context variables inside of test task.

The public variables used on scheduling time test now were packed into a structure allocated on  test case task stack and passed to tasks as arguments saving RAM comsumption.
2020-01-14 09:58:14 -03:00
Felipe Neves
d4c82606fb components/freertos: added and enabled the optimized task selection
FreeRTOS  have an platform dependent configuration to enable selection task in a optimized way.

Provided the platform dependent functions in order to allow the scheduler to use the optimized algorithms by telling to the port layer where to found bitscan instruction i.e. NSAU.

This closes IDF-1116

components/freertos: added option to disable the optimized scheduler
2020-01-14 09:58:14 -03:00
Roland Dobai
a9c4dab4d3 VFS: Check in select() if the UART driver is installed or not
Closes https://github.com/espressif/esp-idf/issues/4627
2020-01-14 13:52:27 +01:00
ziyuan_yin
e8ac0bd429 wave_gen example: analog signal generator
This wave generator example does following:

 - An analog signal generator.
 - Offering four kinds of waveform:
 sine, triangle, sawtooth, square.
 - Customer can select their expected waveform, frequency, etc. All of them can be configured in menuconfig.
2020-01-14 09:23:44 +00:00
Roland Dobai
3909208852 tools: Update kconfiglib to 13.7.1
This fixes the crash on MacOs under Python 3 and improves the menuconfig
colors on some terminals.
2020-01-14 09:30:05 +01:00
Jiang Jiang Jian
647cb628a1 Merge branch 'bugfix/btdm_fix_open_event_trigger_multiple_times' into 'master'
Component/bt: Fix GATTC trigger open event multiple times

See merge request espressif/esp-idf!7056
2020-01-14 16:05:49 +08:00
morris
e1f9b283bc esp32s2: mac addr allocation 2020-01-14 15:19:38 +08:00
xiehang
c0148ef1e8 lwip: Enable IPv6 stateless address autoconfiguration 2020-01-14 07:15:26 +00:00
Ivan Grokhotkov
1512219905 Merge branch 'bugfix/test_psram_size' into 'master'
test: Move freertos & mbedtls tests to psram_2 config

See merge request espressif/esp-idf!7318
2020-01-14 15:11:09 +08:00
zhiweijian
86bebae4fb Component/bt: Fix GATTC trigger open event multiple times 2020-01-14 03:24:29 +00:00
Jiang Jiang Jian
68be5f6ca7 Merge branch 'bugfix/assign_test' into 'master'
test: increase number of unit test jobs

See merge request espressif/esp-idf!7305
2020-01-14 11:21:28 +08:00
Angus Gratton
6662b60bc1 test: Move freertos & mbedtls tests to psram_2 config
Before:

psram before 2490560 (2490368 is the size allowed by partition)
psram after  2413136

psram_2 before 1218464
psram_2 after  1326320
2020-01-14 12:14:43 +10:00
Angus Gratton
ee269ed687 Merge branch 'bugfix/fatfs_corrupted_assert' into 'master'
fatfs: handle FR_INT_ERR as "filesystem corrupted"

Closes IDF-894

See merge request espressif/esp-idf!5912
2020-01-14 08:37:07 +08:00
Angus Gratton
e40c9684dc Merge branch 'bugfix/fix_rmt_err_interrupt_crash_bug' into 'master'
Bugfix(rmt):  Fix the rmt err interrupt crash bug

See merge request espressif/esp-idf!7282
2020-01-14 08:27:53 +08:00
Jakob Hasse
c8137c5298 C++: rtti unit tests, corresponding CI config 2020-01-13 16:39:21 +08:00
houwenxiang
4c065c217e driver(rmt): Fix the rmt err interrupt crash bug when sending 63 items 2020-01-13 08:30:20 +00:00
Ivan Grokhotkov
404d2ae908 test: increase number of unit test jobs 2020-01-13 16:13:44 +08:00
Jiang Jiang Jian
0a6e61ae6d Merge branch 'bugfix/btdm_fix_blufi_prepare_buf_len_invalid' into 'master'
component/bt: fix blufi prepare write buf len invalid

See merge request espressif/esp-idf!7048
2020-01-13 15:59:14 +08:00
Jiang Jiang Jian
f8e3bf4a7a Merge branch 'bugfix/mesh_ie_issues' into 'master'
mesh: fix mesh ie issues

See merge request espressif/esp-idf!7214
2020-01-13 15:58:00 +08:00
Angus Gratton
28d64e7f82 Merge branch 'bugfix/cmake_failure_on_spiffsgen_clean_project' into 'master'
spiffs: fix build issue on clean project

See merge request espressif/esp-idf!6596
2020-01-13 12:14:04 +08:00
Angus Gratton
0929c91d1a Merge branch 'bugfix/idf_monitor_windows_console' into 'master'
idf_monitor: Ignore OS-level errors writing to Windows Console

Closes IDF-810

See merge request espressif/esp-idf!5607
2020-01-13 12:13:42 +08:00
Angus Gratton
a5a5c318f9 Merge branch 'bugfix/mmap_fail_on_esp32s2beta' into 'master'
spi_flash: reenable mmap tests on esp32s2beta

See merge request espressif/esp-idf!6595
2020-01-13 12:02:55 +08:00
Angus Gratton
ec20cf01b5 Merge branch 'feature/wider_alignment_range_malloc' into 'master'
feature/wider alignment range malloc

Closes IDF-648

See merge request espressif/esp-idf!6691
2020-01-13 12:02:35 +08:00
Angus Gratton
42d7b1d641 Merge branch 'bugfix/mbedtls_esp_bignum' into 'master'
mbedtls: esp bignum fix for 4096 keys

See merge request espressif/esp-idf!7211
2020-01-13 12:01:23 +08:00
chenyudong
79f0d460f5 mesh: fix mesh ie issues
Fix an error of mesh deinit lock.
Fix mesh send returns TIMEOUT.
Increase root window close time to 120s.
Clear ie.child when the child connected or fully associated.
Update rc_rssi when roots direct/forward.
Fix assoc in mesh ie wrong.
Mesh packets use AC_VI instead of AC_BE.
2020-01-13 10:58:18 +08:00
Jiang Jiang Jian
a27dfe6993 Merge branch 'bugfix/fix_ble_config_error_log_in_first_use_nvs' into 'master'
bugfix: remove the error code when there is no file in the nvs in config.c

See merge request espressif/esp-idf!7296
2020-01-13 10:24:43 +08:00
Ivan Grokhotkov
216dac8721 Merge branch 'test/add_esp32s2beta_ssc_build_job' into 'master'
test: add build ssc job for esp32s2beta

See merge request espressif/esp-idf!7068
2020-01-13 10:19:48 +08:00
Ivan Grokhotkov
763bd72c18 tools: mark ULP toolchain as not available on 32-bit Linux
Also install ULP toolchain by default on ARM Linux.

Closes https://github.com/espressif/esp-idf/issues/4621
2020-01-13 09:41:05 +08:00
Jiang Jiang Jian
7a7c4a5486 Merge branch 'bugfix/coex_schm' into 'master'
Bugfix/coex schm

See merge request espressif/esp-idf!7176
2020-01-12 20:37:42 +08:00
Jiang Jiang Jian
a9cf334f0a Merge branch 'feature/Add_tcp_sack' into 'master'
feature for add tcp sack

Closes WIFI-1600

See merge request espressif/esp-idf!7241
2020-01-12 20:28:21 +08:00
Jiang Jiang Jian
3634192ded Merge branch 'bugfix/ble_throughput_heap_size_too_large_fix' into 'master'
bugfix:Fixed throughput wasting memory and packet loss issues.

Closes BT-437 and BCI-141

See merge request espressif/esp-idf!7063
2020-01-12 20:25:02 +08:00
Jiang Jiang Jian
8ec233dfd0 Merge branch 'bugfix/sync_zephyr_v2.0_ble_mesh_fixes' into 'master'
ble_mesh: sync Zephyr v2.0 ble mesh fixes

Closes BLEMESH-56

See merge request espressif/esp-idf!6892
2020-01-12 20:23:57 +08:00
Ivan Grokhotkov
ca979fb110 Merge branch 'bugfix/ci_deploy_tags' into 'master'
ci: fix tags for internal deploy jobs

See merge request espressif/esp-idf!7290
2020-01-11 14:08:26 +08:00
Felipe Neves
6a307ee70f heap: removed ptr check in diram area since aligned allocator does not support data allocated from IRAM 2020-01-10 10:15:32 -03:00
Felipe Neves
0d8a5ebec7 heap: added aligned calloc function plus tests 2020-01-10 10:05:28 -03:00
Felipe Neves
8e5ea171d3 newlib: reverted support of memalign function 2020-01-10 10:05:28 -03:00
Felipe Neves
45766daa4f test_multi_heap_host/test_multi_heap: fix undefined reference error when testing aligned_alloc with no heap poisoning 2020-01-10 10:05:28 -03:00
Felipe Neves
aa100d2dfe newlib: added heap_caps_aligned_alloc on bottom of memalign 2020-01-10 10:05:28 -03:00
Felipe Neves
a2db437c46 heap/heap_caps: Added tests for align allocation on both internal and external ram 2020-01-10 10:05:28 -03:00
Felipe Neves
7fbf4c74d7 heap/heap_caps: added initial, top level heap_caps_aligned_alloc and heap_caps_aligned_free 2020-01-10 10:05:27 -03:00
Felipe Neves
f31b8a8ab8 heap/multi_heap_poisoning: aligned alloc now working togheter with heap poisining code 2020-01-10 10:05:27 -03:00
Felipe Neves
8bd09429d3 heap/test_multi_heap_host: added initial tests for heap aligned alloc 2020-01-10 10:05:27 -03:00
Felipe Neves
d26ddaa644 heap/multi_heap: added initial implementation of aligned alloc function 2020-01-10 10:05:27 -03:00
gengyuchao
38d962bb38 Add notes 2020-01-10 20:37:46 +08:00
gengyuchao
3366467980 ble:set a esp api to get size of controller send packets buffer. 2020-01-10 20:32:07 +08:00
gengyuchao
189cd21660 bugfix:Fixed throughput wasting memory and packet loss issues. 2020-01-10 20:32:07 +08:00
gengyuchao
8e1a28940c ble:config.c remove the error code when there is no file in the nvs because it is not an error. 2020-01-10 20:04:10 +08:00
Anton Maklakov
ac0c7cce9c ci: fix tags for internal deploy jobs 2020-01-10 17:36:52 +07:00
Angus Gratton
a05c00c2b3 Merge branch 'bugfix/esp_netif_get_dns' into 'master'
esp_netif: fix esp_netif_get_dns_info() to copy the entire ip_addr_t

Closes IDFGH-2472

See merge request espressif/esp-idf!7266
2020-01-10 17:51:29 +08:00
David Cermak
2c0bd88786 ci: public header check: add test for sdkconfig values
if the CONFIG_XXX macros used then sdkconfig.h should be included.
Also added support for multi-process execution
2020-01-10 10:11:21 +01:00
David Cermak
ff0128dd02 drivers: fixed c++ guards in driver public headers 2020-01-10 09:44:39 +01:00
David Cermak
cf9cab4723 ci: public header check: add test whether all headers compile
script checks cpp guards preprocessing with C and CPP compiler and
compares outputs. As a part of this check also a test whether all header
files compile is performed.

IDF-288
2020-01-10 09:44:39 +01:00
Ivan Grokhotkov
c6d6fe0316 ci: add job to check for C++ guards in header files 2020-01-10 09:44:39 +01:00
baohongde
a2398f0dcc components/esp_wifi: improve coexistence performance according to specific WiFi/BT/BLE scienario
1. Improve WiFi throughput in some Classic BT scienarios(idle, inquire scan,
       connected, sniff, a2dp pause, etc).

    2. Support WiFi + Classic BT + BLE mesh coexistence scienario.

    3. Improve WiFi scan and connect succeed ratio in coexistence scienario.

    4. Do not support to choose software coexistence preference anymore for it is
       determined according to coexistence scienario automatically.

components/lwip: increase TCP send buffer and receive window limitation when TCP window scale is enabled

components/ble_mesh: Fix some bugs about ble mesh

    1. fix send acl pkt after ble have sent terminate ind modify min adv interval to 10ms.
2020-01-10 16:00:12 +08:00
Angus Gratton
c7738f24fc Merge branch 'bugfix/ledc_driver_enums' into 'master'
driver: Avoid possible accidental mismatch between ledc_clk_src_t & ledc_clk_cfg_t enum

See merge request espressif/esp-idf!7021
2020-01-10 15:34:43 +08:00
Krzysztof Budzynski
5aa21584cf Merge branch 'doc/ulp_cmake_fix' into 'master'
doc: Remove duplicate ulp-cmake

See merge request espressif/esp-idf!7259
2020-01-10 15:29:56 +08:00
Jiang Jiang Jian
0f9ab61619 Merge branch 'bugfix/fix_wifi_buffer_reload_issue' into 'master'
esp_wifi: fix WiFi buffer reload issue

Closes WIFI-1634

See merge request espressif/esp-idf!7230
2020-01-10 15:08:19 +08:00
Jiang Jiang Jian
2f23fa8ab7 Merge branch 'bugfix/bt_osi_config_snprintf_add_length_check' into 'master'
bugfix:Fix length check for snprintf in osi config

See merge request espressif/esp-idf!7155
2020-01-10 15:06:37 +08:00
Jiang Jiang Jian
8cf4d02720 Merge branch 'bugfix/ble_mesh_update_lightness_last' into 'master'
ble_mesh: Update lightness last state when actual state is changed

See merge request espressif/esp-idf!7206
2020-01-10 14:47:29 +08:00
Angus Gratton
782fc0df5f Merge branch 'refactor/can_driver' into 'master'
Refactor CAN to use HAL and LowLevel layers

Closes IDF-617

See merge request espressif/esp-idf!7019
2020-01-10 14:22:02 +08:00
He Yin Ling
21a7580dc1 test: update SSC bin path of nvs compatible test 2020-01-10 14:14:51 +08:00
He Yin Ling
bb442bd015 test: add build ssc job for esp32s2beta 2020-01-10 14:14:51 +08:00
Angus Gratton
b2404513db Merge branch 'doc/cmake_external_lib' into 'master'
docs: Add example of using IDF APIs from an external CMake library

See merge request espressif/esp-idf!6527
2020-01-10 14:13:07 +08:00
Angus Gratton
bdf6c00154 Merge branch 'feature/likely_unlikely' into 'master'
Adding likely unlikely macros to hot code paths

Closes IDF-284

See merge request espressif/esp-idf!6368
2020-01-10 14:05:07 +08:00
Angus Gratton
13f67d4279 doc: Remove duplicate ulp-cmake
This file was renamed in 62ed221 when CMake became default, but 8fe3ecd accidentally reintroduced it.

A redirect is still generated from ulp-cmake to ulp, so the old URL continues to work.
2020-01-10 16:38:06 +11:00
Angus Gratton
8bc618f070 Merge branch 'feature/sntp_add_desc' into 'master'
docs: Add System time chapter and for sntp a description about using...

Closes IDFGH-2237, IDF-1199, and IDF-38

See merge request espressif/esp-idf!6818
2020-01-10 13:29:47 +08:00
Renz Christian Bagaporo
fb1dec37d8 spi_flash: reenable mmap tests on esp32s2beta 2020-01-10 16:17:01 +11:00
Angus Gratton
58755cc2f5 Merge branch 'doc/review_api-ref_periph-i2c' into 'master'
Review the file api-reference/peripherals/i2c.rst

See merge request espressif/esp-idf!6519
2020-01-10 13:13:23 +08:00
Angus Gratton
5ee92c259b Merge branch 'bugfix/mdns_fix_typos' into 'master'
mdns: fixed typos in the variable names and the comments

See merge request espressif/esp-idf!7060
2020-01-10 13:13:07 +08:00
Angus Gratton
214904b3af Merge branch 'feature/support_time_t_64_bit_test_' into 'master'
Support time_t 64-bits

Closes IDF-350

See merge request espressif/esp-idf!6367
2020-01-10 12:58:54 +08:00
Konstantin Kondrashov
2c793cef06 idf: Support a custom toolchain with time_t wide 64-bits
Allows resolving the Y2K38 problem.

Closes: IDF-350

Closes: https://github.com/espressif/esp-idf/issues/584
2020-01-10 12:58:54 +08:00
Angus Gratton
a39e8e5de9 Merge branch 'feature/asio_update' into 'master'
asio: updated ASIO port to use latest asio and esp-idf features

See merge request espressif/esp-idf!6623
2020-01-10 12:57:25 +08:00
Angus Gratton
426319c123 Merge branch 'feature/nvs_cxx_new' into 'master'
NVS: exposing C++ functionality via C++ handle

See merge request espressif/esp-idf!6926
2020-01-10 12:32:17 +08:00
Angus Gratton
880cc02ef2 Merge branch 'bugfix/mqtt_submodule_ref_update' into 'master'
MQTT: update submodule to point to latest commit.

Closes IDF-1162, IDF-1126, IDFGH-2197, IDFGH-2235, IDFGH-2293, FCS-254, and FCS-267

See merge request espressif/esp-idf!7216
2020-01-10 12:32:03 +08:00
Angus Gratton
6ab9f846c9 Merge branch 'bugfix/compare_and_setextram' into 'master'
bugfix/pthread: fix pthread_once() race condiion possibility adding critical section in compare and set function

Closes IDFGH-2448

See merge request espressif/esp-idf!7236
2020-01-10 12:29:54 +08:00
Angus Gratton
264abd8b34 Merge branch 'bugfix/esp32s2_xtal_choice' into 'master'
esp32s2:remove unsupported xtal choice

Closes IDF-1228

See merge request espressif/esp-idf!7085
2020-01-10 12:01:26 +08:00
KonstantinKondrashov
c23549c04f docs: Add System time chapter and for sntp a description about using CONFIG_LWIP_SNTP_UPDATE_DELAY option
Closes: https://github.com/espressif/esp-idf/issues/4386
Closes: IDFGH-2237
Closes: IDF-1199
2020-01-10 14:49:07 +11:00
Jiang Jiang Jian
9ecc2c3309 Merge branch 'bugfix/fix_ble_mesh_memory_leak' into 'master'
ble_mesh: Fix memory leak when node is reset

Closes BLEMESH-122

See merge request espressif/esp-idf!7076
2020-01-10 11:43:49 +08:00
Angus Gratton
4847c2adb0 Merge branch 'docs/fix_tasK_create_static_doxygen_comment' into 'master'
Fixed error in return type of xTaskCreateStatic

Closes IDFGH-2185

See merge request espressif/esp-idf!7253
2020-01-10 11:41:15 +08:00
Angus Gratton
b98981e7ae Merge branch 'feature/call_with_shared_stack' into 'master'
Call with shared stack improvements

See merge request espressif/esp-idf!7228
2020-01-10 11:40:11 +08:00
Angus Gratton
0999f6d698 Merge branch 'bugfix/gh_issue_template' into 'master'
gh: remove default label on new issues

See merge request espressif/esp-idf!7267
2020-01-10 11:39:02 +08:00
Jiang Jiang Jian
4dee412191 Merge branch 'bugfix/fix_crash_when_send_udp_too_big' into 'master'
lw-ip: Drop packets larger than MTU

Closes WIFI-1524

See merge request espressif/esp-idf!7147
2020-01-10 11:37:00 +08:00
Ivan Grokhotkov
a559014ff0 Merge branch 'bugfix/coredump_bin_fmt_ver_update' into 'master'
Fixes coredump compatibility with legacy binary core dumps

See merge request espressif/esp-idf!6794
2020-01-10 10:04:17 +08:00
David Cermak
b7ef7feaeb newlib: using lwip implementation of interface name/index conversion
Links https://github.com/espressif/esp-idf/issues/3557
2020-01-09 21:53:50 +01:00
David Cermak
13d603e486 asio: updated ASIO port to use latest asio and esp-idf features
closes https://github.com/espressif/esp-idf/issues/4296
2020-01-09 21:53:50 +01:00
David Cermak
2efb3288a0 mbedtls: fix hw accelerated big-num mul if operand and result overlap
this issue is mainly exposed when using larger (4096) client key in TLS mutual auth,
since it uses multiplications > 2048 when mbedtls_mpi_mul_mpi is used in recursion,
which works only if both operands point to different location than result since
mpi_mult_mpi_overlong() called mbedtls_mpi_grow() to reallocate buffers used in previous
pointer arithmetics and thus corrupting it. Fixed by growing the mpi buffer before
calling mpi_mult_mpi_overlong()
2020-01-09 18:11:18 +00:00
David Cermak
b0a714476a mbedtls: added mpi multiplication test for large numbers 2020-01-09 18:11:18 +00:00
David Cermak
1acf4d46ef mbedtls: bugnum test for rsa operations with blinding 2020-01-09 18:11:18 +00:00
Ivan Grokhotkov
1fd7f21d8c Merge branch 'bugfix/IDFGH-2036_2' into 'master'
Tools Setup: fixed WD task checkbox disabling

Closes IDFGH-2036

See merge request espressif/esp-idf!7204
2020-01-09 22:39:48 +08:00
gengyuchao
8a687d46ad reduce useless calloc size 2020-01-09 21:12:48 +08:00
gengyuchao
945e4f7162 bugfix:Fix length check for snprintf in osi config 2020-01-09 21:12:48 +08:00
Felipe Neves
57edda15a0 shared_stack: added minimal stack size for shared stack, configurable via menuconfig 2020-01-09 09:59:00 -03:00
David Cermak
ecca39e19f mdns: fixed typos in the variable names and the comments 2020-01-09 12:50:13 +00:00
gengyuchao
373a31abb7 btdm: Add comments to clarify the two different device names of GAP and ADV in the ble_spp_server_demo example, as the old example might confuse users. 2020-01-09 20:45:56 +08:00
Marius Vikhammer
e8787fc49e mqtt: update submodule to point to latest commit.
Adds bugfixes for:
 - Too early publishing
 - Potential mutex memory leak
 - CI related issues.
 - Wait for entire connack message
 - Event loop not getting cleaned up

Adds support for ALPN, configurable reconnect time, QEMU CI tests and password
protected client key.

MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/46
Closes IDF-1162
Closes https://github.com/espressif/esp-mqtt/issues/137

MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/47
Closes IDF-1126

MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/48
Closes IDFGH-2197
Closes https://github.com/espressif/esp-idf/issues/4349
Closes https://github.com/espressif/esp-mqtt/issues/140

MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/48
Closes IDFGH-2235
Closes https://github.com/espressif/esp-idf/issues/4384

MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/49
Closes https://github.com/espressif/esp-idf/issues/4433
Closes IDFGH-2293

MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/50
Closes FCS-254

MQTT MR: https://gitlab.espressif.cn:6688/espressif/esp-mqtt/merge_requests/53
Closes FCS-267
2020-01-09 11:35:49 +00:00
Jakob Hasse
d286876d34 NVS: expose C++ API
Closes https://github.com/espressif/esp-idf/issues/3540
2020-01-09 18:29:23 +08:00
zhiweijian
b820b3fc56 component/bt: fix blufi prepare write buf len invalid 2020-01-09 09:38:35 +00:00
morris
28bfc93419 gh: remove default label on new issues 2020-01-09 17:07:34 +08:00
Kirill Chalov
c5f77cf6cb Review the file api-reference/peripherals/i2c.rst 2020-01-09 17:04:41 +08:00
Jiang Jiang Jian
6655fa8a93 Merge branch 'bugfix/btdm_btc_bta_unified_count_pointer_type' into 'master'
component/bt: Fix the issue with pointer type conversion in gattc.

Closes BCI-130

See merge request espressif/esp-idf!6815
2020-01-09 16:30:56 +08:00
Geng Yu Chao
090843fa17 component/bt: Fix the issue with pointer type conversion in gattc. Unified count pointer type in bta and btc, change pointer type in bta from int to uint16_t. 2020-01-09 16:30:55 +08:00
David Cermak
92087edbb8 esp_netif: fix esp_netif_get_dns_info() to copy the entire ip_addr_t
closes https://github.com/espressif/esp-idf/issues/4584
closes IDFGH-2472
2020-01-09 09:17:38 +01:00
Darian Leung
a049e02d96 can: Refactor CAN to use HAL and LowLevel layers
The following commit refactors the CAN driver such that
it is split into HAL and Lowlevel layers. The following
changes have also been made:

- Added bit field members to can_message_t as alternative
  to message flags. Updated examples and docs accordingly
- Register field names and fields of can_dev_t updated
2020-01-09 16:13:51 +08:00
Jiang Jiang Jian
dd8db6621b Merge branch 'bugfix/add_missing_gatt_descriptors_GH' into 'master'
bugfix: ble add missing gatt descriptors

Closes BCI-138

See merge request espressif/esp-idf!6978
2020-01-09 15:57:08 +08:00
Krzysztof Bociurko
c7dfb435f8 Fixed error in return type of xTaskCreateStatic*
Signed-off-by: Darian <darian@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/2651
2020-01-09 14:01:20 +08:00
xueyunfei
d8d2991692 feature for add tcp sack 2020-01-09 13:58:08 +08:00
liu zhifu
3750fe945f esp_wifi: fix WiFi buffer reload issue 2020-01-09 13:42:27 +08:00
Angus Gratton
4ece6eedae Merge branch 'bugfix/ws_rcv_exceed_buf' into 'master'
tcp_transport/ws_client: websockets now correctly handle messages longer than buffer

Closes IDF-1084 and IDF-1083

See merge request espressif/esp-idf!6740
2020-01-09 13:18:31 +08:00
suda-morris
1ffb546135 esp32s2:remove unsupported xtal choice
ESP32-S2 only supports 40MHz XTAL and doesn't have XTAL autodetection.
2020-01-09 13:09:21 +08:00
Jiang Jiang Jian
da877bcc8f Merge branch 'bugfix/coex_bt_ble_stuck' into 'master'
components/bt: Fix A2DP stuck when BLE's interval is too small

See merge request espressif/esp-idf!5587
2020-01-09 11:37:35 +08:00
Angus Gratton
e1833fa3de docs: Add example of using IDF APIs from an external CMake library 2020-01-09 13:51:30 +11:00
Angus Gratton
dba3c241a9 Merge branch 'feature/nvs_storage_copy_part_name' into 'master'
NVS: partition name is copied now

Closes IDF-1231

See merge request espressif/esp-idf!6933
2020-01-09 10:42:25 +08:00
Angus Gratton
ca8fac876f Merge branch 'refactor/move_esp_adapter' into 'master'
esp_wifi: Move wifi OS adapter structures into esp_wifi component

See merge request espressif/esp-idf!6546
2020-01-09 07:35:19 +08:00
Angus Gratton
baac6145cd Merge branch 'bugfix/task_delay_until_esp32_s2' into 'master'
bugfix/freertos: fixing task delay until tests for esp32s2

Closes IDF-1016

See merge request espressif/esp-idf!6598
2020-01-09 07:17:09 +08:00
Jiang Jiang Jian
7e7f867d6e Merge branch 'minor/esp_ble_mesh_onoff_state' into 'master'
ESP-BLE-Mesh: Printf the current on/off state to the application during the GET request

See merge request espressif/esp-idf!6826
2020-01-08 22:28:25 +08:00
Hrishikesh Dhayagude
8aeacd7478 ESP-BLE-Mesh: Printf the current on/off state to the application during the GET request 2020-01-08 22:28:25 +08:00
Felipe Neves
b4c7c1b3fb components/freertos: moved task delay until tests to common test directory for esp32 and esp32-s2 2020-01-08 10:57:37 -03:00
Krzysztof Budzynski
b06f251c3b Merge branch 'bugfix/from_github' into 'master'
Fix typos in README

See merge request espressif/esp-idf!7231
2020-01-08 20:58:16 +08:00
Krzysztof
6070f610cc Implement review comments 2020-01-08 18:41:43 +08:00
Jiang Jiang Jian
21e24aef1d Merge branch 'bugfix/sniff_mode_for_hfp' into 'master'
components bt/: Disable sniff mode during (e)SCO connection for HFP.

See merge request espressif/esp-idf!7017
2020-01-08 16:28:19 +08:00
Angus Gratton
459b3195ac esp_wifi: Move esp32 DPORT access wrappers into esp_wifi component 2020-01-08 18:23:29 +11:00
Angus Gratton
b63d28730c ci: Use real esp32s2beta target for all tests 2020-01-08 18:23:29 +11:00
Angus Gratton
65dad0d46f build system: Remove some dependencies from esp32 & esp32s2beta
Possible now that wifi related source files are all in esp_wifi
2020-01-08 18:13:12 +11:00
Angus Gratton
f616d2f2de esp_wifi: Move wifi OS adapter structures into esp_wifi component 2020-01-08 18:13:12 +11:00
Angus Gratton
5cd1f5e7c1 Merge branch 'bugfix/esp_tls_client_key_password' into 'master'
tcp_transport/esp-tls: support for client-key password

Closes FCS-267

See merge request espressif/esp-idf!7151
2020-01-08 14:40:38 +08:00
Mahavir Jain
717674e2c2 Merge branch 'bugfix/softap_prov_disconnect' into 'master'
Bugfix/softap prov disconnect

See merge request espressif/esp-idf!7205
2020-01-08 12:30:42 +08:00
gengyuchao
7e54ac08e6 ble Fix typo and add some comment 2020-01-08 04:17:49 +00:00
Brian Friedkin
efc514fa0a add missing gatt descriptors 2020-01-08 04:17:49 +00:00
Jiang Jiang Jian
2e7e05a79a Merge branch 'bugfix/fix_amsdu_decrypt_bug' into 'master'
esp_wifi: fix a WiFi A-MSDU decrypt bug

Closes WIFI-1611

See merge request espressif/esp-idf!7157
2020-01-08 11:15:44 +08:00
Angus Gratton
8421114264 Merge branch 'feat/ut_disabled_for_targets' into 'master'
ut: use DISABLED_FOR_TARGETS macro in unit tests

See merge request espressif/esp-idf!7117
2020-01-08 09:22:29 +08:00
Felipe Neves
9800750f15 freertos/port: Put critical sections around uxPortCompareSetExtram() to prevent preemption during its execution.
Closes: https://github.com/espressif/esp-idf/issues/4561
2020-01-07 10:53:30 -03:00
Piyush Shah
868f317c19 wifi_prov_manager: Delay the Wi-Fi connect call
For SoftAP provisioning, if we start Wi-Fi connection as soon as the
apply config request is received, it has been observed that the clients
(Phone apps mostly) do not get the response for this as we switch the
Wi-Fi channel, causing a momentary disconnection.

Delaying the connection calls helps mitigate the issue.

Signed-off-by: Piyush Shah <piyush@espressif.com>
2020-01-07 09:51:54 +00:00
Piyush Shah
c4fb524d03 wifi_prov_manager: Change the name of an internal timer handle to better reflect the purpose
Signed-off-by: Piyush Shah <piyush@espressif.com>
2020-01-07 09:51:54 +00:00
Angus Gratton
71b4768df8 Merge branch 'doc/secure_boot_ref' into 'master'
doc: secure boot: Fix relative reference to key generation step

See merge request espressif/esp-idf!7171
2020-01-07 16:01:09 +08:00
Jakob Hasse
9a10c1bccd doc: small changes for cxx code style 2020-01-07 15:13:41 +08:00
Angus Gratton
262ce6b9c6 Merge branch 'bugfix/pthread_examples' into 'master'
Fix syntax errors on examples contained in esp_pthread documentation

Closes IDF-1313

See merge request espressif/esp-idf!7194
2020-01-07 14:41:06 +08:00
Angus Gratton
3b9c8a6677 Merge branch 'bugfix/netif_cpp_issues' into 'master'
esp_netif c++ fixes

See merge request espressif/esp-idf!7045
2020-01-07 14:34:57 +08:00
Angus Gratton
6f2a00c425 doc: secure boot: Fix relative reference to key generation step 2020-01-07 06:14:03 +00:00
Nathan Phillips
23e6ee9d01 Fix typos in README
Fix a broken link as well as updating the text.

Merges https://github.com/espressif/esp-idf/pull/4531
2020-01-07 13:12:13 +08:00
Mahavir Jain
8bfb32735f Merge branch 'bugfix/use_mbedtls_spiram_strategy' into 'master'
Use mbedtls SPIRAM strategy in example_test.py

Closes IDF-1293

See merge request espressif/esp-idf!7132
2020-01-07 11:37:08 +08:00
weitianhua
39a5eb84f3 Disable sniff mode during (e)SCO connection. 2020-01-07 03:15:32 +00:00
Angus Gratton
e890137ad3 Merge branch 'bugfix/cmake_reflashable_build_targets' into 'master'
secure boot: Fix bootloader build system target for bootloader digest

Closes IDFGH-2396

See merge request espressif/esp-idf!7069
2020-01-07 06:40:33 +08:00
David Cermak
b69ac4448e tcp_transport: added API for client-key password 2020-01-06 21:16:24 +00:00
Felipe Neves
c309112b8a expression_with_stack:make stack overflow detection watchpoint optional 2020-01-06 17:01:53 -03:00
Martin Vychodil
bc43d48ec9 * use 'Windows Defender' substring to identify proper checkbox
https://github.com/espressif/esp-idf/issues/4225
2020-01-06 15:09:56 +01:00
baohongde
f9802da461 components/bt: Fix A2DP stuck when BLE's interval is too small
1. Fix the cumulative time switch from BLE to classic BT
2. Enhance classic BT performance while enable calssic BT and BLE at the same time
2020-01-06 20:22:04 +08:00
liu zhifu
c54e11537f esp_wifi: fix WiFi AMSDU decrypt issue 2020-01-06 17:58:03 +08:00
Jiang Jiang Jian
0a8c641e6f Merge branch 'bugfix/sniffer_crash_issue' into 'master'
esp_wifi: wifi stop bug when sniffer enable

Closes WIFI-1563 and WIFI-1137

See merge request espressif/esp-idf!7187
2020-01-06 17:22:01 +08:00
Marius Vikhammer
ffeda3003c tcp_transport/ws_client: websockets now correctly handle messages longer than buffer
transport_ws can now be read multiple times in a row to read frames larger than the buffer.

Added reporting of total payload length and offset to the user in websocket_client.

Added local example test for long messages.

Closes IDF-1083
2020-01-06 17:18:13 +08:00
michael
f676a3b190 driver, soc: update multichip support headers 2020-01-06 17:13:54 +08:00
michael
4220752aed ut: Move tests back from "esp32" subfolder
DISABLED_FOR_TARGETS macros are used

Partly revert "ci: disable unavailable tests for esp32s2beta"

This partly reverts commit 76a3a5fb48.

Partly revert "ci: disable UTs for esp32s2beta without runners"

This partly reverts commit eb158e9a22.

Partly revert "fix unit test and examples for s2beta"

This partly reverts commit 9baa7826be.

Partly revert "efuse: Add support for esp32s2beta"

This partly reverts commit db84ba868c.
2020-01-06 17:13:53 +08:00
Michael (XIAO Xufeng)
bc0eac579c ut: add DISABLED_FOR_TARGETS macros to control ut building 2020-01-06 17:13:47 +08:00
lly
8116a787cd ble_mesh: Fix PreviousAddress endianess in Friend Request
The upper transport layer is using big endian ordering. The
PreviousAddress field of a Friend Request message should therefore
be converted to native endianess using sys_cpu_to_be16().
2020-01-06 16:19:03 +08:00
lly
fc80d107ad ble_mesh: Fix next_period computation
If the duration to publish is roughly the same as the period, we might
end up with elapsed == period, which returns 0 and cancel the periodic
publication. Instead 1 should be returned, just like when the elapsed
time is greater than the period.
2020-01-06 16:17:36 +08:00
lly
7d7bbec5fe ble_mesh: Make model publication struct more compact
Previously the FastPeriodDivisor value was introduced to the model
publication struct. Based on the way it was grouped it seems the
intention was to fit it within the same octet as other bit fields,
but it actually makes the octet overflow by one bit. This ends up
creating another u8_t variable which in turn adds 24 bits of padding
after it.

To keep the size of the struct as compact as possible, group the flag
together with the key index, since that only requires 12 bits. Some
care is needed here, since the mesh stack does have special internal
key index values that require more than 12 bits such as
BLE_MESH_KEY_UNUSED and BLE_MESH_KEY_DEV. In this case restricting
ourselves to 12 bits is fine since the value in the model publication
struct follows 1:1 the value received in the Config Model Publication
Set message, and there the parameter is defined to be exactly 12 bits.
2020-01-06 16:17:36 +08:00
lly
82b4b89dea ble_mesh: Fix compile error when using release optimization level 2020-01-06 16:17:36 +08:00
lly
b836674d8e ble_mesh: Remove useless CONFIG_BLE_MESH_NODE
For Low Power node and Proxy Server, the two features
depend on BLE_MESH_NODE in Kconfig.in, here in the
stack there is no need to judge if CONFIG_BLE_MESH_NODE
is enabled.
2020-01-06 16:17:36 +08:00
lly
d83c37faed ble_mesh: Fixes Provisioner not support friend feature 2020-01-06 16:17:36 +08:00
lly
77e7d023b9 ble_mesh: Fixes wrong subnet info used for Friend Clear
When Friend node tries to send Friend Clear message to other
Friend nodes, it should use the subnet information based on
the net_idx from friendship.
2020-01-06 16:17:36 +08:00
lly
131a4e7c22 ble_mesh: fix provisioner failed to send msg to 0xFFFF
According to Mesh Spec 3.4.5.3, a node shall implement a local
network interface. And here we limit the situation just based
on the spec, and Provisioner directly sending the msg without
passing through the local network interface.
2020-01-06 16:17:36 +08:00
lly
197e54053e ble_mesh: fix virtual addr wrong return value
Fixes missing return value on `va_del`
Fixes wrong return value on `va_add`
2020-01-06 16:17:36 +08:00
lly
e8440ac2f9 ble_mesh: Persistent storage of Virtual Address
The 16-bit format group addresses will be stored,
but we don't store (or restore) the virtual label UUIDs,
i.e. after a power cycle the 16-bit group addresses
would be meaningless.
2020-01-06 16:17:36 +08:00
lly
74d0bd3134 ble_mesh: Proxy forwards ALL_NODES addr
Unless explicitly blacklisted, the Proxy node will forward all messages
for the ALL_NODES address to the GATT proxy client.
2020-01-06 16:17:36 +08:00
lly
1338fc4ff1 ble_mesh: Model message macros
Creates macros for determining model message lengths based on opcode,
payload length and MIC size. Also adds macro wrapping
NET_BUF_SIMPLE_DEFINE to serve the most common use case.
2020-01-06 16:17:36 +08:00
lly
f3b9b099cd ble_mesh: Use net_buf_simple_clone
Uses net_buf_simple_clone to access the sdu of an unsegmented app packet
for re-encryption.
2020-01-06 16:17:36 +08:00
lly
aec696a3a4 ble_mesh: Skip local messages in rx
Local messages are already enqueued for the LPN in the tx path, and
don't have to be added again in the rx path.
2020-01-06 16:17:36 +08:00
lly
6516ab71ea ble_mesh: Ensure seqnum match in app/net
Re-encrypts single-segment application messages when the network seqnum
has changed, to avoid encrypting messages with different seqnums in
network and transport. This operation is only required for unsegmented
messages, as segmented messages don't need to use the same seqnum in
network.

Reinstates the special adv data for friend messages to store the app key
index.
2020-01-06 16:17:36 +08:00
lly
b88dbf6348 ble_mesh: Expose app key get function 2020-01-06 16:17:36 +08:00
lly
906fb9d6e3 ble_mesh: Expose header parsing outside net 2020-01-06 16:17:36 +08:00
lly
865434e6de ble_mesh: Remove unused macro FRIEND_BUF_SIZE 2020-01-06 16:17:36 +08:00
lly
67cb3062a6 ble_mesh: Make RSSI value available to mesh applications 2020-01-06 16:17:36 +08:00
lly
89a681fd4a ble_mesh: Encrypt friend packets on send
Stores friend queue packets unencrypted, removing any out-of-order
issues caused by seqnum allocation. Also moves as much of the metadata
storage as possible into the packet, allowing us to free up some bytes
of net_buf user data for friend packets.
2020-01-06 16:17:36 +08:00
lly
99a63ce81d ble_mesh: Expose SeqZero mask
Makes a define for the seqzero 13-bit mask in transport, and exposes it
in the header for use in the friend module.
2020-01-06 16:17:36 +08:00
Angus Gratton
826b9f6380 Merge branch 'bugfix/wifi_event_bits' into 'master'
examples: station waiting with xEventGroup bits

Closes IDF-1177

See merge request espressif/esp-idf!7196
2020-01-06 12:09:18 +08:00
lly
9f6dd19033 ble_mesh: Update lightness last state when actual state is changed 2020-01-04 14:57:08 +08:00
Felipe Neves
5db46ab9e6 assert: extend likely macro to be called when silent assertions are off 2020-01-03 14:42:58 -03:00
Felipe Neves
d059a955ae freertos: removed likely macros from non-port specifics parts of freertos
fatfs: moved esp_compiler header file inside of disk implementation file
2020-01-03 14:42:57 -03:00
Felipe Neves
668b33dcf3 esp_compiler: generate likely and unlikely macros only when performance optimization is selected as build option 2020-01-03 14:42:57 -03:00
Felipe Neves
1b76253e0e newlib/assert: placed unlikely macro as part of assertion
newlib/assert: replace unlikely with likely to keep original assertion

newlib/assert: fix assert macro that uses likely

freertos/port: add the missing sdkconfig.h back

newlib/assert: assert macro back to a single line
2020-01-03 14:42:55 -03:00
Felipe Neves
fc00236d79 components/esp_common: added esp_macros.h that aims to hold useful macros
esp_common/esp_compiler: renamed esp_macros file to a more specific one

esp_common/esp_compiler: removed CONTAINER_OF macro, it was a duplicate

components/freertos: placed likely macros around port and critical sections

component/freertos: placed likely macros on lists module

components/freertos: placed unlikely macros inside of assertion points, they likely wont fail

components/freertos: added likely macros on queue modules

FreeRTOS queues are one of most hot code path, because to queues itself tend to
be used a lot by the applications, besides that, queues are the basic primitive
to form both mutexes and semaphores, The focus here is to place likely
macros inside lowest level send and receive routines, since they're common
from all kobjects: semaphores, queues, mutexes and FR internals (like timer queue)

components/lwip: placed likely/unlikey on net-interfaces code

components/fatfs: added unlikely macros on disk drivers code

components/spiffs: added unlikely macros on low level fs driver

components/freertos: added likely/unlikely macros on timers and ticker

freertos/event_group: placed likely/unlikely macros on hot event group code paths

components/sdmmc: placed likely / unlikely macros on lower level path of sdmmc

components/bt: placed unlikely macros around bt HCI functions calling

components/lwip: added likely/unlikely macros on OS port code section

components/freertos: fix code style on tick handler
2020-01-03 14:42:49 -03:00
Felipe Neves
e5e8ee8912 docs: fix esp_pthread example syntax error 2020-01-03 11:21:35 -03:00
Shubham Kulkarni
563175d90a mbedtls: Use SPIRAM strategy in example_test.py 2020-01-03 15:30:03 +05:30
Ivan Grokhotkov
3c5190aefc Merge branch 'bugfix/legacy_msys2_environment' into 'master'
doc: Update the legacy MSYS2 environment to use 2019r2 toolchain version

See merge request espressif/esp-idf!7077
2020-01-03 17:53:55 +08:00
Ivan Grokhotkov
52f8aa2adb Merge branch 'feature/heap_non_os_build' into 'master'
heap: make compatible with non-OS builds, remove target dependence

Closes IDF-1236

See merge request espressif/esp-idf!7051
2020-01-03 17:12:51 +08:00
xiehang
3321999e4a lwip: Drop packets larger than MTU 2020-01-03 08:55:35 +00:00
xiehang
ea1b821a60 Fix wifi stop bug when sniffer enable 2020-01-03 08:52:56 +00:00
Jakob Hasse
bcefbb03ad examples: using xEventGroup bits properly
Closes IDF-1177

* changed
  ../../wifi/getting_started/station/README.md
  ../../wifi/getting_started/station/main/station_example_main.c
2020-01-03 16:10:27 +08:00
Angus Gratton
e08e720e11 Merge branch 'bugfix/esp_ptr_executable_single_core' into 'master'
soc: Fix esp_ptr_executable() for single core ESP32 config & cache memory

See merge request espressif/esp-idf!7197
2020-01-03 15:47:18 +08:00
Angus Gratton
7dc7557aa9 soc: Fix esp_ptr_executable() for single core ESP32 config & cache memory
In single core mode, APP CPU cache region is added to the available range.
2020-01-03 17:31:40 +11:00
Angus Gratton
e08fc62071 Merge branch 'bugfix/backtrace_rom_fn' into 'master'
soc: fix backtraces containing ROM functions

See merge request espressif/esp-idf!6719
2020-01-03 14:30:21 +08:00
Angus Gratton
3a451afb82 doc: Update the legacy MSYS2 environment to use 2019r2 toolchain version
As reported at https://www.esp32.com/viewtopic.php?p=52805
2020-01-03 06:05:00 +00:00
Angus Gratton
4b03fa3053 Merge branch 'feature/idf_size_py_json_dump' into 'master'
idf_size.py: can write data to json file now

Closes IDF-1246

See merge request espressif/esp-idf!7046
2020-01-03 11:19:56 +08:00
Angus Gratton
4132923ebe Merge branch 'bugfix/ws_user_context' into 'master'
websocket: added missing event data

Closes IDF-1271

See merge request espressif/esp-idf!7059
2020-01-03 09:29:41 +08:00
Ivan Grokhotkov
43de2cc84c test: add a (non-automated) case for backtraces with ROM functions 2020-01-02 18:50:32 +01:00
Ivan Grokhotkov
b4aba189ab heap: recognize 0x40000000 as an address terminating the backtrace
On Xtensa, backtrace can not recover the two most significant bits of
the address, as the window call size is encoded in these bits.
Because of this, __builtin_return_address modifies these MSBs to
match those of the callee, "fixing" the address. An unfortunate side
effect is that the zero return address, which usually terminates the
backtrace, gets converted to 0x40000000. While there is a valid
instruction at this address, its occurrence in the backtrace is
highly unlikely: this is the first instruction of WindowOverflow4
vector, and IDF apps switch VECBASE to an IRAM location very early at
startup.
2020-01-02 18:42:46 +01:00
Ivan Grokhotkov
d9534b3d6a soc: fix backtraces containing ROM functions
esp_ptr_executable would return false for pointers to ROM, which would
interrupt the backtrace. This makes ROM ranges recognized as
executable.
2020-01-02 18:42:46 +01:00
David Cermak
b2c8ce8e2b esp_netif: fixed initialization order of items in a struct
Closes https://github.com/espressif/esp-idf/issues/4389
Closes https://github.com/espressif/esp-idf/issues/4507
2020-01-02 17:16:47 +00:00
David Cermak
ddf59520c6 wifi: fixed missing c++ guards
Closes https://github.com/espressif/esp-idf/issues/4497
2020-01-02 17:16:47 +00:00
Mahavir Jain
97c8b90083 Merge branch 'bugfix/advanced_https_ota_example' into 'master'
Bugfix for failing OTA example

Closes IDF-1080 and IDFGH-2249

See merge request espressif/esp-idf!6979
2020-01-02 17:29:35 +08:00
Jakob Hasse
53aadafac8 idf_size.py: can alternatively write data to file
* Also Changed json separators - no spaces at eol
2020-01-02 09:33:51 +08:00
Jakob Hasse
c31c45cae7 NVS: partition name is copied now
Closes IDF-1231
2020-01-02 09:18:24 +08:00
Angus Gratton
2cb7534bc5 Merge branch 'bugfix/gh_python_lint' into 'master'
gh-action:fix python lint

See merge request espressif/esp-idf!7149
2020-01-02 07:19:50 +08:00
morris
8f98c3746a ci: increase parallel count for esp32s2 unitest 2020-01-01 13:58:50 +08:00
morris
13b98e17a6 ci: enable python2 lint 2020-01-01 13:04:50 +08:00
morris
e51bd6deaf gh-action:fix python lint 2020-01-01 12:56:33 +08:00
Ivan Grokhotkov
f30e920116 Merge branch 'bugfix/esp32s2beta_fix_wifi_init_crash' into 'master'
Fix ESP32S2BETA WiFi initialization crash issue

Closes WIFI-1597

See merge request espressif/esp-idf!7154
2019-12-31 17:57:41 +08:00
Shubham Kulkarni
032a041395 Bugfix for failing OTA example
example_test.py is added to test advanced_https_ota_example and native ota_example.

Closes https://github.com/espressif/esp-idf/issues/4394
2019-12-31 14:18:16 +05:30
Angus Gratton
17b5df4d72 Merge branch 'feature/function_call_with_stack' into 'master'
esp_common: added a macro to allow call functions using user allocated stack

Closes IDF-535

See merge request espressif/esp-idf!6709
2019-12-31 15:08:27 +08:00
Angus Gratton
cf2f732b2c Merge branch 'bugfix/heap_tests_esp32s2beta' into 'master'
bugfix/heap test failure fixing for esp32s2 beta

Closes IDF-1021

See merge request espressif/esp-idf!6659
2019-12-31 15:03:01 +08:00
Krzysztof Budzynski
c55643b855 Merge branch 'docs/translate_network_docs' into 'master'
Add translation for Network files

Closes WIFI-873

See merge request espressif/esp-idf!7058
2019-12-31 14:53:56 +08:00
Natasha
1b740c55a3 Add translation for Network files 2019-12-31 14:53:55 +08:00
Angus Gratton
91f953eba2 Merge branch 'bugfix/fix_python3_errors_for_ttfw' into 'master'
test: fix python3 errors for ttfw

See merge request espressif/esp-idf!7139
2019-12-31 14:45:15 +08:00
Angus Gratton
d4366e0e05 Merge branch 'bugfix/pthread_cxx_test_race' into 'master'
test: Fix possible race in pthread C++ test

Closes IDF-1270

See merge request espressif/esp-idf!7054
2019-12-31 07:06:54 +08:00
Angus Gratton
2087a1805b Merge branch 'bugfix/idf_size_peformance_pr4518' into 'master'
Improve idf-size performance substantially (PR)

Closes IDFGH-2404

See merge request espressif/esp-idf!7148
2019-12-31 07:06:22 +08:00
Angus Gratton
4ae9dad9a3 Merge branch 'bugfix/panic_cache_err_dig_reset' into 'master'
esp32: panic: do digital reset if cache error interrupt is set

See merge request espressif/esp-idf!7152
2019-12-31 07:04:22 +08:00
He Yin Ling
269af21ce6 test: fix multiple devices cases fail on python3 2019-12-30 20:21:00 +08:00
He Yin Ling
07f186a6a5 CI: reduce number of unit test jobs 2019-12-30 20:21:00 +08:00
He Yin Ling
f63e91b950 test: let unit test jobs use python3 2019-12-30 20:20:14 +08:00
He Yin Ling
8df08de486 ttfw: fix incorrect relative import for python3 2019-12-30 20:20:14 +08:00
Mahavir Jain
c3eb27e1e8 Merge branch 'nimble/update_doc_link' into 'master'
NimBLE: Update the link to NimBLE upstream documentation

See merge request espressif/esp-idf!7156
2019-12-30 20:05:38 +08:00
Hrishikesh Dhayagude
cca2613a01 NimBLE: Update the link to NimBLE upstream documentation 2019-12-30 20:05:37 +08:00
Ivan Grokhotkov
4bbfa6e494 Merge branch 'feature/soc_ledc_caps' into 'master'
soc: add ledc_caps.h, replace target-based ifdefs with caps-based

See merge request espressif/esp-idf!6858
2019-12-30 18:47:11 +08:00
Ivan Grokhotkov
9e93b619d9 Merge branch 'bugfix/coredump_epc_level' into 'master'
core dump: only get EPC/EPS registers up to XCHAL_NUM_INTLEVELS

See merge request espressif/esp-idf!7064
2019-12-30 18:45:59 +08:00
Ivan Grokhotkov
f2f008e167 Merge branch 'bugfix/xt_context_save' into 'master'
freertos: save/restore PS and EPC1 around window spilling, fixes setjmp regression

Closes IDFGH-2428

See merge request espressif/esp-idf!7135
2019-12-30 18:05:25 +08:00
Xia Xiaotian
b7e3886bf2 Fix ESP32S2BETA WiFi initialization crash issue
ESP32S2BETA does not need to enable WiFi common clock in WiFi library, for
WiFi common clock is not disabled when WiFi is in sleep state.
2019-12-30 16:51:12 +08:00
Ivan Grokhotkov
f52952cb45 esp32: panic: do digital reset if cache error interrupt is set
Even if frame->exccause != PANIC_RSN_CACHEERR, it is possible that
the cache error interrupt status is set. For example, this may happen
due to an invalid cache access in the panic handler itself.
Check cache error interrupt status instead of frame->exccause to
decide whether to do CPU reset or digital reset.

Also remove unnecessary esp_dport_access_int_pause from
esp_cache_err_get_cpuid, since the panic handler already calls
esp_dport_access_int_abort on entry.
2019-12-30 09:49:07 +01:00
Anthony Casagrande
874cfda54c idf_size.py: Major performance improvements
Merges https://github.com/espressif/esp-idf/pull/4518
2019-12-30 17:14:49 +11:00
Angus Gratton
03f6179211 Merge branch 'bugfix/app_partition_sha_values' into 'master'
bootloader_support: Fix for app SHA-256 calculation, chip revision log spam

See merge request espressif/esp-idf!6862
2019-12-30 12:45:30 +08:00
Angus Gratton
bc02b128be Merge branch 'feature/add_eth_download_test' into 'master'
ethernet: test download blob && phy addr auto detect

Closes IDF-1238

See merge request espressif/esp-idf!6957
2019-12-30 11:52:40 +08:00
Angus Gratton
ba3f47efd6 bootloader_support: fix crash in image verification is SHA doesn't match 2019-12-30 13:48:11 +11:00
Angus Gratton
b2ed553bbf bootloader_support: Reduce log spam about chip revisions
* Don't bother checking the chip revision if it looks like the partition
  doesn't really contain an app
* Don't print the "info" level about the revision & min revision unless
  we're in the bootloader (otherwise it gets printed at random times
  during the OTA process)
2019-12-30 13:48:11 +11:00
Angus Gratton
5139934767 bootloader_common: Fix esp_partition_get_sha256(), add unit tests
Regression in 438d513a95

Reported here: https://esp32.com/viewtopic.php?f=13&t=13250&p=52460
2019-12-30 13:47:47 +11:00
Krzysztof Budzynski
2303dfaffc Merge branch 'doc/review_api-ref_periph-i2s' into 'master'
Reveiw the file api-reference/peripherals/i2s.rst

See merge request espressif/esp-idf!6750
2019-12-30 05:59:49 +08:00
Kirill Chalov
ab6311c548 Reveiw the file api-reference/peripherals/i2s.rst 2019-12-29 21:05:57 +00:00
Jiang Jiang Jian
c8b839b3d5 Merge branch 'bugfix/btdm_revert_changes_of_security_mask' into 'master'
components/bt: Revert changes of security mask

See merge request espressif/esp-idf!7118
2019-12-29 14:12:27 +08:00
Ivan Grokhotkov
e4d45608d3 soc: add ledc_caps.h, replace target-based ifdefs with caps-based 2019-12-28 20:33:21 +00:00
lly
3b9fe36494 ble_mesh: Fix memory leak when node is reset
When node is being reset, the init functions of each sig-defined
models will be invoked again, this will cause memory leak because
some model internal data will be allocated again.
Hence before trying to allocate memory for them, we add some check
to make sure no memory has been allocated previously.
And for client model, when the init functions are invoked again,
we will clear the list items.
2019-12-28 08:00:44 +00:00
Ivan Grokhotkov
3285ed116d heap: make compatible with non-OS builds, remove target dependence 2019-12-27 12:40:06 +01:00
Ivan Grokhotkov
6c0044cc65 Merge branch 'bugfix/rtc_cntl_h_cpp_guards' into 'master'
Add missing extern "C" to rtc_cntl.h

Closes IDFGH-2419

See merge request espressif/esp-idf!7093
2019-12-27 19:21:06 +08:00
Ivan Grokhotkov
acca61c714 Merge branch 'bugfix/spiffs_partition_label_usage' into 'master'
spiffs: clarify the usage of partition_label, fix the example

Closes IDFGH-2313

See merge request espressif/esp-idf!7092
2019-12-27 19:20:46 +08:00
Ivan Grokhotkov
0682575458 Merge branch 'bugfix/heap_trace_event' into 'master'
Updated tracing Python classes

See merge request espressif/esp-idf!7121
2019-12-27 19:06:16 +08:00
Ivan Grokhotkov
83d63b4673 unity: re-enable test case exit by longjmp 2019-12-27 11:27:01 +01:00
Ivan Grokhotkov
891eb3b020 freertos: save/restore PS and EPC1 around window spilling
Since in b0491307, which has introduced the optimized window spill
procedure, _xt_context_save did not work correctly when called from
_xt_syscall_exc. This was because unlike _xt_lowint1, _xt_syscall_exc
does not save PS and EPC1. The new version of _xt_context_save
modified PS (on purpose) and EPC1 (accidentally, due to window
overflow exceptions), which resulted in a crash upon 'rfi' from the
syscall.

This commit adds restoring of PS and EPC1 in _xt_context_save. It also
slightly reduces the number of instructions used to prepare PS for
window spill.

Unit test for setjmp/longjmp (which were broken by this regression)
is added.

Closes https://github.com/espressif/esp-idf/issues/4541
2019-12-27 11:27:01 +01:00
Mahavir Jain
b5b30736de Merge branch 'bugfix/httpd_file_serving_example_chunked_resp' into 'master'
file_server: fix issue with sending last chunk

Closes IDFGH-2414

See merge request espressif/esp-idf!7089
2019-12-27 14:44:02 +08:00
Alexey Gerenkov
eb2aa6fd67 apptrace: Adds HeapTraceEvent.callers property used by OpenOCD tests 2019-12-27 00:13:45 +03:00
Mahavir Jain
e0b667804f Merge branch 'fix/test_flash_timeout_sdio_throughput' into 'master'
Fix several CI issues

See merge request espressif/esp-idf!7101
2019-12-26 20:25:31 +08:00
Mahavir Jain
3be94b6952 Merge branch 'bugfix/can_critical_section_logs' into 'master'
can: Fix critical section ESP_LOG functions

Closes IDFGH-2270 and IDF-1067

See merge request espressif/esp-idf!7081
2019-12-26 16:22:17 +08:00
Mahavir Jain
9738bc58ed Merge branch 'bugfix/can_semaphore_take_in_critical' into 'master'
can: Fix semaphore take in critical section

Closes IDFGH-2115

See merge request espressif/esp-idf!7083
2019-12-26 16:15:07 +08:00
baohongde
3977ba7bc6 components/bt: Revert changes of security mask 2019-12-25 20:03:16 +08:00
Jiang Jiang Jian
c378bd210c Merge branch 'bugfix/fix_the_bugs_for_ESPNOW' into 'master'
fix bugs in ESP-NOW

Closes WIFI-1451

See merge request espressif/esp-idf!6912
2019-12-25 19:06:26 +08:00
zhangyanjiao
56c309b40b fix the bugs in ESP-NOW:
1. fix the bug when modifying the channel info of peer node
2. fix the crash when modifying peer node between unencrypted and encrypted
3. fix the bug for fetch peer
4. modify the esp_wifi_set_channel() function
5. fix the bug that the channel parameter doesn't work when adding peer node

Closes https://github.com/espressif/esp-idf/issues/2833
Closes https://github.com/espressif/esp-idf/issues/4311
2019-12-25 11:46:27 +08:00
Jiang Jiang Jian
b57be2afe1 Merge branch 'bugfix/fix_wifi_timer_bug' into 'master'
esp_wifi: fix some WiFi timer bugs

Closes WIFI-1412

See merge request espressif/esp-idf!6771
2019-12-25 11:11:02 +08:00
liu zhifu
97e7bdd161 esp_wifi: fix WiFi timer bug 2019-12-25 09:10:45 +08:00
Jiang Jiang Jian
2753dd2fc2 Merge branch 'bugfix/fix_a_wifi_rx_bug' into 'master'
esp_wifi: fix a WiFi receiving bug

Closes WIFI-492

See merge request espressif/esp-idf!5834
2019-12-24 22:55:37 +08:00
liu zhifu
e1eeef2276 esp_wifi: fix a WiFi receiving bug
Support WiFi/BT MAC register writting when the WiFi/BT common clock is disabled.
2019-12-24 21:32:03 +08:00
Jiang Jiang Jian
c5708c89ed Merge branch 'bugfix/espnow_tx_failure' into 'master'
esp_wifi: Update wifi lib

Closes WIFI-1471

See merge request espressif/esp-idf!6969
2019-12-24 18:39:29 +08:00
Michael (XIAO Xufeng)
2ffe0aca12 esp_flash: increase the timeout for block erase 2019-12-24 16:50:09 +08:00
Michael (XIAO Xufeng)
72cf67cba3 sdio_slave_hal: fix the TAG non-static issue
(MINOR CHANGE)
2019-12-24 16:50:09 +08:00
Michael (XIAO Xufeng)
41e37ebabe ci: decrease the performance threshold for sdio throughput 2019-12-24 16:50:08 +08:00
Jack
3f22448fdf Fixes ESPNOW unicast packet Tx failure 2019-12-24 11:59:18 +08:00
Jiang Jiang Jian
a3501deb22 Merge branch 'bugfix/fix_the_bugs_for_bandwidth' into 'master'
fix the bugs for bandwidth

Closes WIFI-1306

See merge request espressif/esp-idf!6965
2019-12-24 11:43:44 +08:00
morris
7baf7ce273 ethernet: optimise tx and rx 2019-12-24 11:18:31 +08:00
morris
fce6a9c735 ethernet: test ethernet download 2019-12-24 11:18:30 +08:00
morris
197d5d7378 ethernet: support phy addr auto detect 2019-12-24 11:18:30 +08:00
Ivan Grokhotkov
f687cedebe Merge branch 'bugfix/wa_dport_and_intr' into 'master'
esp32: Fix for DPORT

See merge request espressif/esp-idf!7070
2019-12-24 01:30:56 +08:00
Ivan Grokhotkov
750818de72 spiffs: clarify the usage of partition_label, fix the example
* If esp_vfs_spiffs_register is called with an explicit partition
  label, other SPIFFS functions (info, format, unregister) must be
  called with the same label.

* On the other hand, if label was NULL in the call to
  esp_vfs_spiffs_register and the first matching partition was used,
  calls to the rest of the SPIFFS functions should be done with NULL
  partition_label argument.

Fix the Doxygen documentation. Update the example accordingly, in case
a user modifies "partition_label" value in esp_vfs_spiffs_conf_t conf
initializer.

Closes https://github.com/espressif/esp-idf/issues/4450
2019-12-23 18:20:14 +01:00
zhangyanjiao
7416c37fe1 fix the bug for getting channel and bandwidth 2019-12-23 20:06:13 +08:00
Jiang Jiang Jian
698350ff1f Merge branch 'bugfix/fix_performance_issues_new' into 'master'
improve wifi performance

Closes WIFI-265, WIFI-1349, WIFI-23, WIFI-296, WIFI-397, WIFI-1255, WIFI-1256, and FCS-175

See merge request espressif/esp-idf!6928
2019-12-23 17:38:43 +08:00
Ivan Grokhotkov
c029888bf1 Merge branch 'fix/spi_ut_esp32s2beta' into 'master'
spi: re-enable the unit tests for esp32s2beta

Closes IDF-1020

See merge request espressif/esp-idf!6327
2019-12-23 15:10:31 +08:00
Mahavir Jain
6797703827 Merge branch 'refactor/bootloader_support_restructure' into 'master'
restructure bootloader_init

Closes IDF-1057

See merge request espressif/esp-idf!6674
2019-12-23 14:53:37 +08:00
Jiang Jiang Jian
36ef48eb04 Merge branch 'bugfix/ble_mesh_remove_useless_file' into 'master'
ble_mesh: Remove useless example files

See merge request espressif/esp-idf!7088
2019-12-23 14:41:54 +08:00
Mahavir Jain
9ef8cafeca file_server: fix issue with sending last chunk
Closes: https://github.com/espressif/esp-idf/issues/4528
Closes IDFGH-2414
2019-12-23 12:01:16 +05:30
morris
888316fc64 bootloader_support: refactor to better support multi target 2019-12-23 05:45:17 +00:00
suda-morris
ba7c67ece8 bootloader won't have dependency on wifi 2019-12-23 05:45:17 +00:00
lly
2ac8900a58 ble_mesh: Remove useless example files 2019-12-23 13:32:23 +08:00
michael
2dd12ae5f8 spi: fix speed test issues on esp32s2beta
Also support performance value for different targets.
2019-12-23 10:23:01 +08:00
michael
3d1ec3f451 intr_alloc: fix the issue intr_enable/disable cannot be used in ISR in
esp32s2beta.

This issue is reported in config freertos_compliance_s2.
2019-12-23 10:23:00 +08:00
michael
262ba6f825 spi: fix iomux, timing and address phase issues for esp32s2beta 2019-12-23 10:23:00 +08:00
michael
11fa11000f spi: re-enable the unit tests for esp32s2beta 2019-12-23 10:22:59 +08:00
Jack
1e47b01563 improve wifi performance 2019-12-22 19:34:53 +08:00
KonstantinKondrashov
9432ebddf9 esp32: Add UT for DPORT 2019-12-21 14:10:38 +00:00
KonstantinKondrashov
c4dcf6f917 esp32: Fix esp_dport_access_reg_read 2019-12-21 14:10:38 +00:00
KonstantinKondrashov
1687c53700 freertos: Fix save_context. Add RSYNC after WSR
RSYNC waits for all previously fetched WSR.* instructions to be performed before inter-
preting the register fields of the next instruction.
2019-12-21 14:10:38 +00:00
boarchuz
5dc10a4191 Add missing extern "C" to rtc_cntl.h
Related: https://github.com/espressif/arduino-esp32/issues/3149
2019-12-21 12:12:54 +11:00
Felipe Neves
8795b2681c heap: added test case for realloc to verify if successive realloc in IRAM still ends there. 2019-12-20 13:48:09 -03:00
Felipe Neves
4909fdfe02 heap_caps: small fixes on comments plus cleaning 2019-12-20 13:35:56 -03:00
Felipe Neves
31145f38fa heap_caps: added special case for realloc when previous area is an diram_iram ptr, this will force a malloc/copy/free 2019-12-20 13:35:56 -03:00
Felipe Neves
ce9f84fba9 heap_caps: enable check of pointer on diram_iram for both S2 and non-S2 platform 2019-12-20 13:35:56 -03:00
Felipe Neves
d9ab33118e heap/multi_heap_poisoning: include heap_private.h only when no host heap tests 2019-12-20 13:35:56 -03:00
Felipe Neves
4a392932f1 heap/heap_caps: added special case for esp32s2 when handling memory allocated (and aliased) from IRAM 2019-12-20 13:35:56 -03:00
Felipe Neves
ecc4955c68 heap/test_malloc_caps: changed malloc caps test to deal with esp32 and esp32s2 memory differencies. 2019-12-20 13:35:56 -03:00
Felipe Neves
cf95ea40d4 heap/test_leak: changed requested memory on leak checks to match the threshold 2019-12-20 13:35:56 -03:00
Felipe Neves
785abfeb82 docs: update esp_expresstion_with_stack code snippet to check shared stack and mutex allocation. 2019-12-20 13:30:30 -03:00
Felipe Neves
d1b76d13bb exp_expression_with_stack: added check for null pointer after obtaining a mutex in test 2019-12-20 13:28:29 -03:00
Felipe Neves
f0e82311a5 esp_expression_with_stack: fix wrong top of stack calculation plus documentation update 2019-12-20 13:23:47 -03:00
Felipe Neves
e4fb50e6f3 expression_with_stack_xtensa: fixed stack pointer to avoid its overflow on heap block metadata. 2019-12-20 13:18:13 -03:00
Felipe Neves
8bfb8e885e docs: update on expression with stack api usage regard the stack setup. 2019-12-20 13:18:13 -03:00
Felipe Neves
fab50ccf7c expression_with_stack_xtensa: call esp watchpoint function using a callx4 to fix range problem of call4 function 2019-12-20 13:18:13 -03:00
Felipe Neves
674cb1c21c esp_expression_with_stack: added fake stack frame plus some cleanup on main macro 2019-12-20 13:18:13 -03:00
Felipe Neves
5e18cd4e13 esp_expression_with_stack: added watchpoint on stack parameter before use it 2019-12-20 13:18:13 -03:00
Felipe Neves
88dd15c806 docs: synchronized the contents of en with cn folders adding the esp-expression-with-stack documentation 2019-12-20 13:18:13 -03:00
Felipe Neves
dfea4196a2 docs: added esp-expression-with-stack on documentation 2019-12-20 13:18:13 -03:00
Felipe Neves
002f38c7f5 expression_with_stack_xtensa: protected switch stacks function to compile only on window ABI supported platform 2019-12-20 13:18:13 -03:00
Felipe Neves
11266ef05d expression_with_stack_xtensa: renamed and moved assembly helpes of esp_expression_wit_stack to xtensa component 2019-12-20 13:18:13 -03:00
Felipe Neves
7b90f34c5a esp_expression_with_stack: renamed macro and functions to have esp_ prefix 2019-12-20 13:18:13 -03:00
Felipe Neves
98b76617be test_shared_stack_printf: moved the test stack inside the heap 2019-12-20 13:18:13 -03:00
Felipe Neves
debcc68c41 esp_common: added a macro to allow call functions using user allocated stack 2019-12-20 13:18:13 -03:00
Darian Leung
4c3d49e3f0 can: Fix semaphore take in critical section
This commit fixes can_reconfigure_alerts() which
could lead to a call to xSemaphoreTake() whilst
inside a critical section.

Closes https://github.com/espressif/esp-idf/issues/4277
2019-12-20 22:00:33 +08:00
Ivan Grokhotkov
c0d12988d3 Merge branch 'feature/component_manager' into 'master'
Component manager for IDF (preview)

See merge request espressif/esp-idf!6929
2019-12-20 21:06:12 +08:00
Darian Leung
b6af587975 can: Fix critical section ESP_LOG functions
This commit removes any function calls within
the CAN driver that result in a call to ESP_LOG
whilst inside a critical section.

These function calls are either moved outside
critical sections (e.g., intr_alloc and gpio
functions), or substituted (e.g., assert()).

Closes https://github.com/espressif/esp-idf/issues/4412
2019-12-20 20:58:48 +08:00
Mahavir Jain
9d196ce51f Merge branch 'feature/sntp_api_sync_interval' into 'master'
sntp: Add API to set update interval

Closes IDFGH-2298

See merge request espressif/esp-idf!6956
2019-12-20 18:26:23 +08:00
Konstantin Kondrashov
98495e5939 sntp: Add API to set update interval
Closes: https://github.com/espressif/esp-idf/issues/4437
Closes: IDFGH-2298
2019-12-20 18:26:23 +08:00
Angus Gratton
28314f9bb0 Merge branch 'bugfix/parttool_regression' into 'master'
parttool: Fix regression when parsing binary partition data

See merge request espressif/esp-idf!7075
2019-12-20 17:33:21 +08:00
Jiang Jiang Jian
e977cc24ff Merge branch 'bugfix/fix_ble_mesh_adv_buf_unref' into 'master'
ble_mesh: Fix adv buf unref and link_id in exceptional list

See merge request espressif/esp-idf!6828
2019-12-20 17:11:08 +08:00
Angus Gratton
8f15664be0 parttool: Fix regression when parsing binary partition data
Regression in a91de43537
2019-12-20 19:09:10 +11:00
Jiang Jiang Jian
abe26a1c02 Merge branch 'bugfix/ble_mesh_client_check_remain_time' into 'master'
ble_mesh: Client model check timer remaining time

See merge request espressif/esp-idf!7010
2019-12-20 15:21:26 +08:00
Angus Gratton
9f038edbfd Merge branch 'feature/github_issue_templates' into 'master'
github: Update to new issue templates

Closes IDF-1163

See merge request espressif/esp-idf!7018
2019-12-20 14:31:16 +08:00
Mahavir Jain
ba0a22f59d Merge branch 'fix/run_esptool_absolute_path' into 'master'
project_include.cmake: Make esptool_py_custom_target callable from other directories

See merge request espressif/esp-idf!7062
2019-12-20 14:05:53 +08:00
Angus Gratton
a26e78f66c Merge branch 'doc/mqtt_api_ref_add_event_info' into 'master'
doc/mqtt: add event description to API reference

See merge request espressif/esp-idf!6518
2019-12-20 13:11:56 +08:00
Angus Gratton
f517c8efe4 Merge branch 'doc/review_api-ref_periph-uart' into 'master'
Review the file api-reference/peripherals/uart.rst

See merge request espressif/esp-idf!6639
2019-12-20 13:10:02 +08:00
Angus Gratton
f0680b99b3 Merge branch 'bugfix/mdns_netif_local' into 'master'
mdns: fix preset of esp_netif ptr for local interfaces

Closes WIFI-1538

See merge request espressif/esp-idf!7009
2019-12-20 12:53:50 +08:00
lly
fbdaed0248 ble_mesh: Add unlock when failed to create alarm 2019-12-20 12:25:01 +08:00
lly
619e606356 ble_mesh: Rename ble mesh lock/unlock functions
Rename BLE Mesh internal lock/unlock functions, also seperate
the list, buf and atomic lock/unlock functions
2019-12-20 12:23:10 +08:00
Angus Gratton
7e72e12e4c github: Update to new issue templates
- Add a separate template for feature requests
- Add links to Programming Guide, Documentation pages, forum in config.yml
2019-12-20 15:20:13 +11:00
Angus Gratton
3faa2a48d1 Merge branch 'test/uart_unit_tests' into 'master'
driver: test: Fix for 'uart read write' test failure, use some more verbose macros

See merge request espressif/esp-idf!6996
2019-12-20 12:15:45 +08:00
Angus Gratton
8099a90d46 Merge branch 'bugfix/parttool_backtraces' into 'master'
parttool: Avoid unnecessary exception backtrace for legitimate errors

See merge request espressif/esp-idf!7022
2019-12-20 12:14:23 +08:00
Angus Gratton
0cc98b8d76 secure boot: Fix bootloader build system target for bootloader digest
Closes https://github.com/espressif/esp-idf/issues/4513
2019-12-20 15:09:15 +11:00
Angus Gratton
15e67a49f4 Merge branch 'bugfix/nvs_flash_iterator' into 'master'
NVS: BUGFIX iterator corrupting entries.

Closes IDFGH-2229

See merge request espressif/esp-idf!6789
2019-12-20 11:40:23 +08:00
Jiang Jiang Jian
546aa18c84 Merge branch 'bugfix/fix_wifi_stop_memory_leak' into 'master'
esp_wifi/supplicant: fix some WiFi stop memory leak

Closes WIFI-1488

See merge request espressif/esp-idf!7043
2019-12-20 11:07:13 +08:00
Angus Gratton
4344add798 Merge branch 'bugfix/make_undefined_variable_warning' into 'master'
make: fix undefined variable warning (IDF_SKIP_CHECK_SUBMODULES)

See merge request espressif/esp-idf!7061
2019-12-20 10:59:28 +08:00
Sergei Silnov
dfafa98253 Use component manager if available as python package 2019-12-19 16:48:36 +01:00
Ivan Grokhotkov
37a8ff9040 core dump: only get EPC/EPS registers up to XCHAL_NUM_INTLEVELS 2019-12-19 16:47:57 +01:00
Ivan Grokhotkov
86d65b88f4 make: fix undefined variable warning (IDF_SKIP_CHECK_SUBMODULES) 2019-12-19 13:28:31 +01:00
Amit Sheth
8f3987099e project_include.cmake: Make esptool_py_custom_target callable from other directories 2019-12-19 17:53:09 +05:30
Kirill Chalov
9da268bd32 Review the file api-reference/peripherals/uart.rst 2019-12-19 19:13:38 +08:00
Krzysztof Budzynski
2fa24d6e39 Merge branch 'doc/hr-ref/gs-wrover-kit-v4.1-fix-header-name' into 'master'
JP8 -> JP2

See merge request espressif/esp-idf!7053
2019-12-19 17:44:43 +08:00
Marius Vikhammer
7c0e3765ec websocket: added missing event data
user_context was missing from websocket event data, added. Also added the websocket client handle to the event data.

Removed  unused event data struct.

Closes: IDF-1271
2019-12-19 17:36:37 +08:00
Ivan Grokhotkov
9addf631e5 Merge branch 'bugfix/mdns_deinit_event_crash' into 'master'
mdns: fixed crash on event during deinit

Closes WIFI-1485

See merge request espressif/esp-idf!6951
2019-12-19 15:42:05 +08:00
Krzysztof Budzynski
287580ff90 Merge branch 'docs/tanslate_esp_mesh' into 'master'
add translation for esp_mesh doc

See merge request espressif/esp-idf!7005
2019-12-19 15:16:50 +08:00
Natasha
0c444c06a7 add translation for esp_mesh doc 2019-12-19 15:16:50 +08:00
Jakob Hasse
38aa21fd15 WIFI: added log for wifi test, increased timeout 2019-12-19 14:53:28 +08:00
Kirill Chalov
db32140eea JP8 -> JP2 syncing changes in cn version
Fixes https://github.com/espressif/esp-idf/pull/4147
2019-12-19 13:52:33 +08:00
Angus Gratton
852462f4e2 test: Fix possible race in pthread C++ test
Also use TEST_ASSERT_EQUAL to get better debugging

Debugging intermittent UT failures on S2 release config

In the old version, the 300ms delay in between the two kinds of test
was supposed to keep the tasks in lockstep so it didn't matter that
global_sp was protected by two muxes.

However it seems like sometimes they could get out of sync -
I think because of a race in the sleep_until test. If the
second counter ticks over at that exact moment sleeping starts,
then the task doesn't sleep and will immediately keep running
 for the next iteration, possibly racing the other tasks.
2019-12-19 15:55:51 +11:00
Romain
35bbd996af JP8 -> JP2
Signed-off-by: Kirill Chalov <kirill.chalov@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/4147
2019-12-19 12:43:41 +08:00
Angus Gratton
505a82488a Merge branch 'bugfix/esp_log_from_critical' into 'master'
intr_alloc: don't call ESP_LOG from a critical section

Closes FCS-268

See merge request espressif/esp-idf!7047
2019-12-19 08:47:19 +08:00
Angus Gratton
981d8c6c30 Merge branch 'feature/idfpy_list_targets' into 'master'
idf.py: add --list-targets option to list support targets

See merge request espressif/esp-idf!7049
2019-12-19 08:35:59 +08:00
Angus Gratton
2e43d107b4 idf_monitor: Ignore OS-level errors writing to Windows Console
Windows Console write or flush may fail (throwing WindowsError, a subclass of OSError) if the data
written can't be displayed. This may be the case if the serial port is producing garbage bytes.

Ignore the error, in the hope that the serial port may "come good" and write non-garbage later.
2019-12-18 23:35:35 +00:00
Sergei Silnov
97f7b918c1 idf.py: add --list-targets option to list support targets 2019-12-18 16:50:49 +01:00
Mahavir Jain
e8db1c4da0 Merge branch 'feature/enable_i2s_tests_on_esp32s2beta' into 'master'
Enable i2s and freertos test/s on esp32s2beta

See merge request espressif/esp-idf!6790
2019-12-18 17:51:54 +08:00
Ivan Grokhotkov
2b6c85e182 intr_alloc: don't call ESP_LOG from a critical section
Calling ESP_LOG from a critical section leads to abort() in 4.1, and
may also randomly abort() in earlier versions.

Closes FCS-268
2019-12-18 10:11:24 +01:00
Jiang Jiang Jian
f106e14400 Merge branch 'bugfix/iperf_example_configs' into 'master'
examples/wifi/iperf: fix test not finding any configs

See merge request espressif/esp-idf!6802
2019-12-18 15:35:20 +08:00
Krzysztof Budzynski
fcbe89c67a Merge branch 'feature/esp-ble-mesh-architecture-cn' into 'master'
Add Chinese translation for ble-mesh-architecture; add a link for ble-mesh-architecture-en.

See merge request espressif/esp-idf!6550
2019-12-18 14:37:10 +08:00
Tian Yang Min
666337eb7a Add Chinese translation for ble-mesh-architecture; add a link for ble-mesh-architecture-en. 2019-12-18 14:37:09 +08:00
Krzysztof Budzynski
9ae07d75f6 Merge branch 'feature/esp-ble-mesh-index-cn' into 'master'
Add Chinese translation for esp-ble-mesh-index.

See merge request espressif/esp-idf!6641
2019-12-18 14:34:58 +08:00
Tian Yang Min
2b589fbabd Add Chinese translation for esp-ble-mesh-index. 2019-12-18 14:34:56 +08:00
Krzysztof Budzynski
60d3fd8457 Merge branch 'feature/esp-ble-mesh-terminology-cn' into 'master'
Add Chinese translation for esp-ble-mesh-terminology. Add link to Chinese...

See merge request espressif/esp-idf!6761
2019-12-18 14:34:02 +08:00
Tian Yang Min
ee93da1826 Add Chinese translation for esp-ble-mesh-terminology. Add link to Chinese version in English original text. 2019-12-18 14:34:01 +08:00
liu zhifu
fde2f33912 esp_wifi/supplicant: fix some WiFi stop memory leak 2019-12-18 13:51:27 +08:00
Angus Gratton
30372f5a4f Merge branch 'docs/esp_netif_programmer_manual' into 'master'
esp netif: formal fixes (docs and c++ sentinels again)

Closes IDFGH-2265

See merge request espressif/esp-idf!6819
2019-12-18 13:12:36 +08:00
Angus Gratton
3d9bcf2eb2 Merge branch 'bugfix/docs-link-whitespace' into 'master'
Fix the whitespace after everything which is link

Closes IDF-903

See merge request espressif/esp-idf!5865
2019-12-18 13:11:54 +08:00
Soumesh Banerjee
e969115a23 Fix the whitespace after everything which is link 2019-12-18 13:11:54 +08:00
Angus Gratton
4325c98a27 Merge branch 'bugfix/esp_netif_netsuite_test_fix' into 'master'
esp_netif: update netsuite test example to use I/O driver configuration

Closes IDFGH-2259

See merge request espressif/esp-idf!6834
2019-12-18 11:23:46 +08:00
Angus Gratton
43fe904260 Merge branch 'feature/ws_local_server_test' into 'master'
websocket_client: added example_test with a local websocket server

Closes IDF-907

See merge request espressif/esp-idf!6366
2019-12-18 11:15:33 +08:00
Jakob Hasse
5249d33c1f NVS: bugfix nvs_set_str/blob checks write mode 2019-12-18 09:06:45 +08:00
Jakob Hasse
bb1cd9a440 NVS: BUGFIX non-matching type iterator works
Closes IDFGH-2229
2019-12-18 09:06:45 +08:00
Ivan Grokhotkov
de43b8406b Merge branch 'feature/qemu_mqtt_test' into 'master'
ci: QEMU tests in tiny-test-fw

See merge request espressif/esp-idf!6959
2019-12-18 07:10:30 +08:00
David Cermak
eaa2f12d67 mdns: fixed crash on event during deinit
mdns library deinitialization destroys internal structures including action queue. if an event (e.g. network update) received
after some essential stucture is destoyed, an unexpected behavour might be introduced (e.g. crash of adding the event notification
to the action queue which was already destroyed

Closes WIFI-1485
2019-12-17 18:18:22 +00:00
David Cermak
74d768fe6d ci: updated mqtt weekend test for qemu support
Added default sdkconfig for qemu build for the mqtt publish example,
Added environment configuration for running the same test on target
or in qemu
Updated missing example tests per latest ttfw refactoring
2019-12-17 14:06:40 +01:00
David Cermak
cec408c760 ci: ttfw update to support qemu dut_class
Updated missing example tests per latest ttfw refactoring,
updated pythons requirements.txt for ttfw_idf
2019-12-17 14:06:40 +01:00
Ivan Grokhotkov
85c97967d5 tiny-test-fw: add QEMU DUT 2019-12-17 14:06:40 +01:00
Jiang Jiang Jian
259d43db83 Merge branch 'bugfix/fix_block_scan_crash_issue' into 'master'
esp_wifi: Fix wifi block scan crash issue

Closes AUD-873 and WIFI-922

See merge request espressif/esp-idf!6422
2019-12-17 20:03:10 +08:00
Jiang Jiang Jian
08b1ccb7b7 Merge branch 'bugfix/esp_netif_receive_null_netif' into 'master'
esp_netif: store netif before register wifi rxcb

Closes WIFI-1499

See merge request espressif/esp-idf!6947
2019-12-17 20:01:34 +08:00
David Cermak
31b2702387 esp_netif, examples: esp_netif_init() moved into ESP_ERROR_CHECK()
esp_netif_init() returns standard esp_err_t error code (unlike tcpip_adapter init), so shall be checked for the return value
Also to make the initialization code more consistent.
2019-12-17 09:07:49 +01:00
David Cermak
b61b927008 esp_netif: minor log message fix in dhcps cb
To make it more general, since the DHCP server does not necessarily runs only on softAP.
2019-12-17 09:02:51 +01:00
Thomas Schaub
f21107d12d esp_netif/tcpip_adapter: declare functions extern "C"
Merges https://github.com/espressif/esp-idf/pull/4408
2019-12-17 09:02:51 +01:00
David Cermak
ac47c74ec4 esp_netif, docs: Added programmer's manual section
Also added guide for creating a custom network capable I/O driver
And added notes about default wifi interfaces and implications of using
default short-hand creation functions.
2019-12-17 09:02:51 +01:00
Mahavir Jain
c86c1ecc7e Merge branch 'support/add_uart_fifo_threshold_set_api' into 'master'
add simplified API to set UART threshold values for RX FIFO full and TX FIFO empty

See merge request espressif/esp-idf!6749
2019-12-17 11:30:11 +08:00
Angus Gratton
0bc6f2b42c Merge branch 'bugfix/fix_crash_when_use_one_speed_mode' into 'master'
bugfix(ledc): fix crash when use one speed mode

See merge request espressif/esp-idf!6788
2019-12-17 11:16:11 +08:00
Angus Gratton
2c28f1ec0a Merge branch 'bugfix/doc_fix_debian_requirements' into 'master'
Docs: Update Debian & Ubuntu install prerequisites

Closes IDFGH-2352

See merge request espressif/esp-idf!7024
2019-12-17 09:22:14 +08:00
Angus Gratton
a0887fcf84 Merge branch 'feature/esp_netif_pppos_client' into 'master'
esp-netif: PPP support, update example and modem subcomponent

See merge request espressif/esp-idf!6744
2019-12-17 09:11:12 +08:00
Angus Gratton
431066f164 Merge branch 'bugfix/gcov_stub_invocation' into 'master'
Fixes aborted calls to _lock_acquire_recursive from gcov stub

Closes IDF-1195

See merge request espressif/esp-idf!6896
2019-12-17 08:57:38 +08:00
kewal shah
eec8212237 add simplified API to set UART threshold values for RX FIFO full and TX FIFO empty 2019-12-16 20:26:04 +00:00
David Cermak
bbbdcbfe4c esp_netif: update netsuite test example to use I/O driver configuration
closes https://github.com/espressif/esp-idf/issues/4403
2019-12-16 19:38:01 +00:00
Alexey Gerenkov
184e1785ff gcov: Fixes aborted calls to _lock_acquire_recursive from gcov stub 2019-12-16 19:15:37 +00:00
David Cermak
04a25394aa esp_modem: add simple compatibility layer for new esp_modem connecting over esp-netif 2019-12-16 17:34:10 +00:00
David Cermak
25913af2cc pppos_client: udated example code to use esp-netif in PPP configuration 2019-12-16 17:34:10 +00:00
David Cermak
52ca3a917d esp_netif: Support for PPPoS in esp_netif using lwip ppp client 2019-12-16 17:34:10 +00:00
David Cermak
09e36f9f33 mdns: fix preset of esp_netif ptr for local interfaces
mdns module store local copy of esp_netif for common interfaces,
but it was correctly initialized only when interface started.
If the event were missed (e.g. mdns_init after interface start)
the local copy wouldn't be initialized. Fixed by restoring the local
copy.

Closes WIFI-1538
2019-12-16 15:39:23 +01:00
Ivan Grokhotkov
211c54cef3 examples/wifi/iperf: fix test not finding any configs
Regression from ebd7004
2019-12-16 11:51:49 +00:00
Roland Dobai
bbbc12478a Docs: Update Debian & Ubuntu install prerequisites
Latest versions of apt-get don't install as much packages by default
as older ones. This fix adds some missing packages discovered for an OS
derived from the latest stable Debian. These packages exist for older
Debian derivatives as well (tested with Ubuntu 16.04 LTS).

Closes https://github.com/espressif/esp-idf/issues/4480
2019-12-16 11:41:28 +01:00
Angus Gratton
435dd546cc driver: Avoid possible accidental mismatch between ledc_clk_src_t & ledc_clk_cfg_t enum
ledc_types.h includes two similar enums, ledc_clk_src_t & ledc_clk_cfg_t. Latter was added in
ESP-IDF v4.0.

The two enums do different things but there are two similar names: LEDC_REF_TICK / LEDC_USE_REF_TICK
and LEDC_APB_CLK / LEDC_USE_APB_CLK.

Because C will accept any enum or integer value for an enum argument, there's no easy way to check
the correct enum is passed without using static analysis.

To avoid accidental errors, make the numeric values for the two similarly named enums the same.,

Noticed when looking into https://github.com/espressif/esp-idf/issues/4476
2019-12-16 19:43:11 +11:00
xiehang
a159fc15fc esp_wifi: Fix wifi block scan crash issue 2019-12-16 07:47:08 +00:00
Angus Gratton
a91de43537 parttool: Avoid unnecessary exception backtrace for legitimate errors
Previous version used exception handling for program control flow,
which makes for long and confusing backtrace messages if an error
occurs while parsing the CSV (as it also prints the phony error that
occurred while trying to parse as a binary, then prints
"During handling of the above exception, another exception occurred:",
then prints the real error).

Use the same heuristic that is applied in gen_esp32_part, instead.

Also, avoid printing the entire backtrace if the error is a gen_esp32_part
InputError, same as gen_esp32part does.

Found while looking into https://github.com/espressif/esp-idf/issues/4474
2019-12-16 18:24:10 +11:00
Mahavir Jain
2e73c2818b freertos: re-enable mutext test for esp32s2beta 2019-12-16 11:55:32 +05:30
Mahavir Jain
8b05cf41ad i2s: enable tests for esp32s2beta 2019-12-16 11:53:33 +05:30
Angus Gratton
f7b51c164d Merge branch 'bufgix/esp_timer_set_alarm' into 'master'
esp_timer: Fix set_alarm. Case when timestamp < now_time

Closes WIFI-1511

See merge request espressif/esp-idf!6960
2019-12-16 13:39:44 +08:00
Ivan Grokhotkov
1f6bb6ef4f Merge branch 'feat/mmc_check_data_switching_freq' into 'master'
sdmmc: add communication check for eMMC after frequency switch

See merge request espressif/esp-idf!6893
2019-12-16 13:05:03 +08:00
Angus Gratton
8b219c0884 Merge branch 'bugfix/menuconfig_py3' into 'master'
tools: Fix menuconfig for Python 3

See merge request espressif/esp-idf!6991
2019-12-16 12:59:34 +08:00
chenjianqiang
41fca84064 bugfix(ledc): fix crash when use one speed mode and enable ledc fade test case 2019-12-16 02:49:26 +00:00
Angus Gratton
9dbb7526c5 Merge branch 'bugfix/ulp_supported_version' into 'master'
ulp: remove 20190801 version, update supported version for Make

See merge request espressif/esp-idf!7014
2019-12-16 10:47:44 +08:00
Angus Gratton
1843630ef3 Merge branch 'feature/sdio_slave_support_hal_new' into 'master'
sdio_slave: support HAL layer

See merge request espressif/esp-idf!6314
2019-12-16 07:22:04 +08:00
Angus Gratton
433d046a2a Merge branch 'feature/tools_installer_v2.2' into 'master'
tools: bump windows tools installer version to v2.2

Closes IDFGH-2036 and IDFGH-2202

See merge request espressif/esp-idf!6999
2019-12-16 07:20:43 +08:00
Ivan Grokhotkov
917889dfdf ulp: remove 20190801 version, update supported version for Make 2019-12-15 21:39:42 +01:00
lly
31a4738bd4 ble_mesh: Use mutex to protect client list operations 2019-12-14 17:32:47 +08:00
lly
e4223df60f ble_mesh: Remove useless parameters of lock/unlock 2019-12-14 16:28:22 +08:00
lly
d2bc597e9f ble_mesh: Client model check timer remaining time
Before handling status message, client models need check if the
corresponding timer has expired. And if timeout happens, the
status message will be treated as a publish message.
2019-12-14 15:43:59 +08:00
Sergei Silnov
767cde7b1c idf.py: add monitor-baud option to monitor command 2019-12-13 21:40:21 +01:00
Ivan Grokhotkov
f91c5c6f23 docs: update Windows tools installer link 2019-12-13 15:03:09 +01:00
Ivan Grokhotkov
d021e71419 tools: bump windows tools installer version to v2.2
Includes the fix for Windows Defender exceptions installation.

Closes https://github.com/espressif/esp-idf/issues/4225
Closes https://github.com/espressif/esp-idf/issues/4354
Closes IDFGH-2036
Closes IDFGH-2202
2019-12-13 15:03:09 +01:00
Martin Vychodil
66aac70286 tools: WD exclusions support - internal improvements
* use {group} symbolic path instead of {autostartmenu) due to backward compatibility
* don't check Defender module existence in PS scripts (done by the installer)
2019-12-13 15:03:08 +01:00
Krzysztof Budzynski
4184cc936d Merge branch 'docs/contribute/documenting-code' into 'master'
Add Chinese translation to Documenting Code

See merge request espressif/esp-idf!6888
2019-12-13 20:13:50 +08:00
Wang Ning
63b0d6c977 Add Chinese translation to Documenting Code 2019-12-13 20:13:50 +08:00
Ivan Grokhotkov
b4b6e938b1 Merge branch 'feature/esp32s2-ulp-doc' into 'master'
Documentation witn instruction set for Esp32s2 ULP core processor added.

See merge request espressif/esp-idf!5118
2019-12-13 18:38:59 +08:00
Dmitry Yakovlev
8fe3ecd000 Added description for difference between ESP32 ULP and ESP32-S2 ULP
Jumpr instruction updated.
2019-12-13 18:38:57 +08:00
Michael (XIAO Xufeng)
0ec08ca21b sdio_slave: support HAL layer 2019-12-13 18:33:15 +08:00
Jiang Jiang Jian
09615245a5 Merge branch 'bugfix/fix_softap_crash_when_assoc_illegal' into 'master'
esp_wifi: Fix association request RSN information length too big lead crash.

Closes WIFI-1253

See merge request espressif/esp-idf!6380
2019-12-13 18:12:25 +08:00
Angus Gratton
ecf85555b6 Merge branch 'bugfix/small_unit_test_fixes' into 'master'
test: Small unit test fixes

See merge request espressif/esp-idf!6981
2019-12-13 14:00:05 +08:00
KonstantinKondrashov
c6b681827d target-test.yml: Increase parallel count +1 for ESP32_IDF, UT_T1_1 2019-12-13 13:51:47 +08:00
KonstantinKondrashov
ada09f8fad esp_timer: Add Test case when set_alarm needs set timer < now_time 2019-12-13 13:51:47 +08:00
Angus Gratton
4f1d49d8c2 Merge branch 'feature/esp32s2beta_hw_crypto_support' into 'master'
hw crypto: activated hardware acceleration for esp32s2beta

Closes IDF-757

See merge request espressif/esp-idf!6615
2019-12-13 13:40:33 +08:00
Angus Gratton
40b657d4fe Merge branch 'feature/prebuilt_binary_example' into 'master'
cmake: import prebuilt library

See merge request espressif/esp-idf!6838
2019-12-13 13:36:47 +08:00
Ivan Grokhotkov
7bda06f7f4 Merge branch 'bugfix/console_example' into 'master'
esp32s2beta: add missing sleep APIs, re-enable console example

Closes IDF-1033

See merge request espressif/esp-idf!6572
2019-12-12 22:44:43 +08:00
Ivan Grokhotkov
522cef42ab examples: re-enable console example for esp32s2beta 2019-12-12 14:34:15 +01:00
Ivan Grokhotkov
792598c04a esp32s2beta: add APIs added to esp32 target after IDF 3.1 2019-12-12 14:34:15 +01:00
Jiang Jiang Jian
77290ddd07 Merge branch 'demo/hfp-client-demo' into 'master'
component_bt/: Add HFP HF Unit Example

Closes BT-459

See merge request espressif/esp-idf!6495
2019-12-12 21:19:04 +08:00
Jiang Jiang Jian
e304efd7fc Merge branch 'demo/hfp-ag-demo' into 'master'
component_bt/: Add HFP AG example and bugfix for WBS

See merge request espressif/esp-idf!6894
2019-12-12 21:18:50 +08:00
weitianhua
4cba4ddadc Make only for ESP32 2019-12-12 17:12:38 +08:00
weitianhua
c2e97b1042 Enable mSBC for demo 2019-12-12 17:12:38 +08:00
weitianhua
392eb79704 Format the BTM_WBS_INCLUDED macro 2019-12-12 17:12:38 +08:00
weitianhua
ad4b11a4f1 Fix crash when WBS enabled. 2019-12-12 17:12:38 +08:00
weitianhua
45fb144224 Add hfp_ag example with updated doc 2019-12-12 17:12:38 +08:00
weitianhua
d900971deb Make only for ESP32 2019-12-12 17:12:19 +08:00
weitianhua
10e5f16974 remove BTM_WBS_INCLUDED for bta_hf_client_version select 2019-12-12 17:12:19 +08:00
weitianhua
742cb8df9e Update the README.md
Fix the m_rb bug in bt_app_hf.c

Change the log level into information.
2019-12-12 17:12:19 +08:00
weitianhua
88c8791b1d HFP HF Client Example 2019-12-12 17:12:19 +08:00
michael
232d98608a sdmmc: add communication check for eMMC after frequency switch 2019-12-12 08:11:17 +00:00
lly
1a8199dd41 ble_mesh: Fix using wrong name for PB-GATT 2019-12-12 15:59:37 +08:00
lly
c354b0993d ble_mesh: Fix adv buf unref and link_id in exceptional list 2019-12-12 15:58:43 +08:00
Jiang Jiang Jian
bcb9ba6783 Merge branch 'bugfix/Fix_typo_in_idf' into 'master'
Fix some typo in idf

See merge request espressif/esp-idf!6950
2019-12-12 15:55:43 +08:00
Geng Yu Chao
6c923cf330 Fix some typo in idf 2019-12-12 15:55:42 +08:00
Jiang Jiang Jian
767917bcf7 Merge branch 'bugfix/btdm_avrc_metadata_length_error' into 'master'
components/bt: Fix AVRC metadata length error

See merge request espressif/esp-idf!6879
2019-12-12 15:53:08 +08:00
Angus Gratton
6c2d667971 Merge branch 'ci/keep_build_artifacts' into 'master'
ci: Keep build artifacts for 4 days

See merge request espressif/esp-idf!6993
2019-12-12 14:27:58 +08:00
Angus Gratton
ee7cd4e1d8 driver: test: Ensure UART is fully idle before starting loopback RX/TX test
Possible fix for sporadic failures of this test in CI, may be due to a byte already
being queued in one of the FIFOs
2019-12-12 17:21:46 +11:00
Angus Gratton
b79a6c2576 driver: test: Use more detailed macros than TEST_ASSERT() to get better errors 2019-12-12 17:21:40 +11:00
KonstantinKondrashov
e6223440b3 esp_timer: Fix set_alarm. Case when timestamp < now_time
arg1 = MAX(int64_t arg1, uint64_t arg2) gave the wrong result, if arg1 < 0, it was presented as a larger value.
And ALARM_REG = (uin32_t)arg1. This leads to an infinite loop.
Fixed: both args are int64_t.

Closes: WIFI-1511
2019-12-12 14:02:26 +08:00
Marius Vikhammer
c63684cf6c hw crypto: activated hardware acceleration for esp32s2beta
Activated AES, RSA and SHA hardware acceleration for esp32s2 and enabled related unit tests.

Updated with changes made for ESP32 from 0a04034, 961f59f and caea288.

Added performance targets for esp32s2beta

Closes IDF-757
2019-12-12 12:37:29 +08:00
Marius Vikhammer
67c5225c14 websocket_client: added example_test with a local websocket server
- Added a example test that connects to a local python websocket server.
- Added readme for websocket_client example.

Closes IDF-907
2019-12-12 11:00:58 +08:00
Marius Vikhammer
fd63746d8e doc/mqtt: add event description and more details about configuration to API reference 2019-12-12 10:58:39 +08:00
Angus Gratton
ba07a7dd6c unit-test: Update README for current usage of unit-test.py
Example command lines shown here were tested and Notes added
for anything which didn't work as expected.
2019-12-12 11:05:22 +11:00
Angus Gratton
9b8fffef53 unit_test.py: Add some additional console logging for context 2019-12-12 11:05:05 +11:00
Angus Gratton
18853ae509 ttfw: Fix the build directory detection when using the default build/ dir for binaries 2019-12-12 11:05:05 +11:00
Angus Gratton
b20eaf3306 ttfw: Fix exception message when an error occurs finding files to flash 2019-12-12 11:05:05 +11:00
Angus Gratton
9fa87f04da unit_test.py: Allow identifying a unit test which has : in the name 2019-12-12 11:05:05 +11:00
Angus Gratton
0978fc1b84 unit_test: Log each test case to console as we run it
Include a dump of the test tags
2019-12-12 11:05:05 +11:00
Angus Gratton
d35debcd99 unit_test: Print the timeout value when an 'expect' times out 2019-12-12 11:05:04 +11:00
Angus Gratton
50aad77f3a driver: Rename "local" tests to "single board" tests, add some description to the names 2019-12-12 11:05:04 +11:00
Angus Gratton
b18e7b94a2 ci: Keep build artifacts for 4 days 2019-12-12 09:39:27 +11:00
Angus Gratton
3b52eddf6b Merge branch 'bugfix/optimize_some_build_system_tests' into 'master'
cmake: some optimizations to build system tests

See merge request espressif/esp-idf!6972
2019-12-12 06:34:54 +08:00
Angus Gratton
82d9a7b6bf Merge branch 'bugfix/make_clean_kconfig' into 'master'
Don't try to clean the old kconfig tools on Unix

See merge request espressif/esp-idf!6855
2019-12-12 06:32:57 +08:00
Angus Gratton
b3eb4395c9 Merge branch 'feature/wifi_prov_ext_httpd' into 'master'
wifi_provisioning_softap: Allow applications to start webserver externally

See merge request espressif/esp-idf!6860
2019-12-12 06:32:26 +08:00
Angus Gratton
64cde1e93c Merge branch 'bugfix/libc_link_issues' into 'master'
newlib: fix linking issues (fcntl, system, raise)

Closes IDF-1220, IDFGH-1811, IDFGH-1417, and IDFGH-2264

See merge request espressif/esp-idf!6971
2019-12-12 06:32:04 +08:00
Ivan Grokhotkov
87a41fabfa esp-tls: check return value of fcntl 2019-12-11 14:53:27 +01:00
Ivan Grokhotkov
23848fd1b9 newlib: define fcntl as strong symbol
Closes https://github.com/espressif/esp-idf/issues/3694
Closes https://github.com/espressif/esp-idf/issues/4407
2019-12-11 14:53:26 +01:00
Ivan Grokhotkov
08286ac20f newlib: add definitions of system, raise
Closes IDF-1220
Closes IDFGH-1811
Closes https://github.com/espressif/esp-idf/pull/4020
2019-12-11 14:52:51 +01:00
Roland Dobai
7ab43bffde tools: Fix menuconfig for Python 3 2019-12-11 14:29:07 +01:00
xiehang
3eaf86fbf1 esp_wifi: Fix association req RSN info lengeh too big lead crash 2019-12-11 10:59:18 +00:00
Jiang Jiang Jian
20742db676 Merge branch 'test/ci_check_wifi_lib_md5_fail' into 'master'
ci: fix check wifi lib md5 fail

See merge request espressif/esp-idf!6970
2019-12-11 18:56:23 +08:00
Renz Christian Bagaporo
f766866167 cmake: remove intermediary libraries for some component 2019-12-11 16:43:47 +08:00
Renz Christian Bagaporo
17876d3d73 cmake: some optimizations to build system tests 2019-12-11 16:43:47 +08:00
Angus Gratton
ef732fae97 Merge branch 'bugfix/doc_package_versions' into 'master'
doc: Limit sphinxcontrib versions to <2.0.0 as we use Sphinx 1.8.5

See merge request espressif/esp-idf!6973
2019-12-11 14:41:28 +08:00
chenyudong
a6de0e8846 ci: fix job "check_wifi_lib_md5" 2019-12-11 13:10:23 +08:00
Angus Gratton
f78b2158b1 Merge branch 'bugfix/menuconfig_argv_encoding' into 'master'
menuconfig: fix the MENUCONFIG_STYLE encoding issue and CLI env issue

See merge request espressif/esp-idf!6910
2019-12-11 12:47:32 +08:00
Angus Gratton
c03642ff89 Merge branch 'bugfix/mdns_send_sdptr_answer' into 'master'
mdns: respond to discovery with the proper pseudo name _services._dns-sd._udp

Closes IDFGH-2219

See merge request espressif/esp-idf!6868
2019-12-11 12:45:30 +08:00
Angus Gratton
ef0c26bfce doc: Limit sphinxcontrib versions to <2.0.0 as we use Sphinx 1.8.5 2019-12-11 14:34:18 +11:00
Jiang Jiang Jian
960a834bc7 Merge branch 'bugfix/wifi_reauth_eapol' into 'master'
wifi: fix eapol frames encryption during reauth

Closes WIFI-965

See merge request espressif/esp-idf!6652
2019-12-11 11:29:31 +08:00
Hrudaynath Dhabe
04e024bfd2 wifi: fix eapol frames encryption during reauth 2019-12-11 11:29:30 +08:00
Angus Gratton
563227d9f8 Merge branch 'bugfix/gitlab_api_error_with_python3' into 'master'
ci: fix fetch submodule error on python3

See merge request espressif/esp-idf!6961
2019-12-11 07:23:53 +08:00
Renz Christian Bagaporo
2ebaf53edc examples: add import prebuilt example 2019-12-10 19:22:25 +08:00
Renz Christian Bagaporo
91b421c35f cmake: implement utility to import prebuilt libraries 2019-12-10 19:22:25 +08:00
Jiang Jiang Jian
4100f2e84f Merge branch 'optimize_tcp_random_close' into 'master'
optimize tcp random close

Closes WIFI-1433

See merge request espressif/esp-idf!6907
2019-12-10 16:47:34 +08:00
Mahavir Jain
86c3562c51 Merge branch 'bugfix/nimble_apps_conn_handle' into 'master'
examples/bluetooth/nimble: Correct the connection handle in update and enc_change event

See merge request espressif/esp-idf!6953
2019-12-10 15:54:50 +08:00
Hrishikesh Dhayagude
9b64ef7850 examples/bluetooth/nimble: Correct the connection handle in update and enc_change event 2019-12-10 15:54:49 +08:00
Angus Gratton
882f5d0b56 Merge branch 'bugfix/fix_s2_cpp_exceptions' into 'master'
C++: enable exceptions ESP32S2-beta

Closes IDF-1039

See merge request espressif/esp-idf!6579
2019-12-10 15:13:15 +08:00
Angus Gratton
449755071e Merge branch 'bugfix/freemodbus_fix_merge_conflicts' into 'master'
freemodbus: fix merge issues

See merge request espressif/esp-idf!6825
2019-12-10 14:30:25 +08:00
Alex Lisitsyn
ba1ee4092a freemodbus: fix merge issues 2019-12-10 14:30:25 +08:00
Angus Gratton
671fea5c58 Merge branch 'bugfix/freemodbus_multiple_poll_event_processing' into 'master'
freemodbus: fix multiple event processing

See merge request espressif/esp-idf!6675
2019-12-10 14:27:09 +08:00
Alex Lisitsyn
44444208b7 freemodbus: update poll event processing
update modbus poll event loop processing to process multiple events
2019-12-10 14:27:09 +08:00
He Yin Ling
486f1a05b3 test: fix incorrect error type in xunit result 2019-12-10 13:50:32 +08:00
Angus Gratton
f50df36ebf Merge branch 'feature/external_github_prs' into 'master'
Include external github PRs

Closes IDFGH-2291, IDFGH-2306, IDFGH-2315, and IDFGH-2307

See merge request espressif/esp-idf!6931
2019-12-10 12:33:32 +08:00
xueyunfei
fdea4b54c6 optimize tcp random close 2019-12-10 11:55:07 +08:00
Ryan Kurte
4ee78f8496 added KConfig option to allow loading CA certs with unsupported extensions
Close https://github.com/espressif/esp-idf/pull/4445
2019-12-10 08:47:26 +05:30
Jakob Hasse
78e4b0ff96 CXX: enable exceptions ESP32S2-beta
Closes IDF-1039

* Enabled test cases for -fno-exceptions to S2-beta again
* Added different reset tag for S2-beta
2019-12-10 10:23:00 +08:00
He Yin Ling
fe521c9d12 ci: fix fetch submodule error on python3 2019-12-10 09:38:31 +08:00
Ivan Grokhotkov
86e5bea50d Merge branch 'bugfix/server_down_message' into 'master'
tools: Produce user friendly error during install when the server is down

Closes IDFGH-2175

See merge request espressif/esp-idf!6718
2019-12-09 22:48:32 +08:00
Ivan Grokhotkov
9859d8867d Merge branch 'feature/sysview_json_traces' into 'master'
Support for converting SystemView traces to JSON format

See merge request espressif/esp-idf!5674
2019-12-09 22:46:13 +08:00
Ivan Grokhotkov
9e73a038a6 Merge branch 'feature/freertos_authentic_includes' into 'master'
Added freertos property allowing use "authentic" include path

See merge request espressif/esp-idf!6808
2019-12-09 22:39:27 +08:00
Ivan Grokhotkov
2f20ad523c Merge branch 'bugfix/menuconfig_term_warning' into 'master'
Give info and warnings about the TERM environment variable

See merge request espressif/esp-idf!6717
2019-12-09 22:38:24 +08:00
Jiang Jiang Jian
b603322856 Merge branch 'doc/update_several_ble_mesh_docs' into 'master'
doc: update ble mesh docs based on the feature and example update

Closes BLEMESH-78

See merge request espressif/esp-idf!6836
2019-12-09 22:25:20 +08:00
Mahavir Jain
8e28226935 Disable few test cases for ESP32S2BETA
These test cases will be fixed in subsequent MR
2019-12-09 16:30:55 +05:30
Mahavir Jain
a737fd4865 Fix issue with timer usage in FreeRTOS tests 2019-12-09 13:33:45 +05:30
Axel Lin
489c815eb8 esp_http_client: add esp_http_client_set_authtype function
Since currently there are APIs to set url/username/password, it would be
good to also allow setting authtype.

Link: https://github.com/espressif/esp-idf/issues/4444
Closes https://github.com/espressif/esp-idf/pull/4454
Signed-off-by: Axel Lin <axel.lin@gmail.com>
2019-12-09 13:33:44 +05:30
Axel Lin
6fdc8d7f92 esp_http_client: fix memory leak in esp_http_client_set_username/password
Fix memory in case username/password was set before calling
esp_http_client_set_username/password.

Closes https://github.com/espressif/esp-idf/issues/4444
Fixes: 9fd16c6a5f ("fixes : set_url discards username and password")
Signed-off-by: Axel Lin <axel.lin@gmail.com>
2019-12-09 13:33:44 +05:30
Aidan Cyr
5f6fd238b6 fix: esp_http_client and esp_https_ota can follow 307 Redirects
Closes https://github.com/espressif/esp-idf/pull/4431
2019-12-09 13:33:44 +05:30
Mathias Bredholt
594cec54bd Removed relative path for lwip/arpa/inet.h
The relative path breaks compatibility with arduino-esp32 as the path doesn't exist in arduino-esp32.
https://github.com/espressif/arduino-esp32/pull/3425

Closes https://github.com/espressif/esp-idf/pull/4308
2019-12-09 13:33:44 +05:30
Jiang Jiang Jian
5991e7dd7a Merge branch 'bugfix/btdm_fix_doc_and_host_bug_gyc' into 'master'
Bugfix/btdm fix doc and host bug

Closes BCI-86, BCI-33, BT-257, and FCS-217

See merge request espressif/esp-idf!6916
2019-12-09 15:21:50 +08:00
Geng Yu Chao
46c53ab8c8 btdm:fix the problem that Not getting complete Identity Address (Public Address) of the Privacy-enabled Bonded Device after bonding. beacuse of the wrong memcpy in LE_KEY callback handler. 2019-12-09 15:21:49 +08:00
chenyudong
66f6d8c3ef esp_netif: store netif before register wifi rxcb 2019-12-09 15:16:00 +08:00
lly
2daa8e6587 doc: update ble mesh docs based on the feature and example update 2019-12-09 14:57:15 +08:00
Angus Gratton
58355f7e21 Merge branch 'refactor/update_xtensa_header_file' into 'master'
update xtensa header file

Closes IDF-1197

See merge request espressif/esp-idf!6872
2019-12-09 13:08:52 +08:00
Jiang Jiang Jian
f830f66876 Merge branch 'bugfix/mesh_stop_recv_crash' into 'master'
mesh: fix mesh stop recv crash

See merge request espressif/esp-idf!6919
2019-12-09 13:05:36 +08:00
Jiang Jiang Jian
972098c9c5 Merge branch 'bugfix/improve_performance' into 'master'
LW-IP: bugfix for performance lose when update to lw-ip 2.1.2

Closes WIFI-1292

See merge request espressif/esp-idf!6755
2019-12-09 12:40:38 +08:00
chenyudong
e48efd8a4d mesh: fix mesh stop recv crash
Add a mutex.
2019-12-09 03:56:10 +00:00
xueyunfei
2fcdbb74f7 fix bug for improve performance 2019-12-09 03:16:12 +00:00
Angus Gratton
f50626dca6 Merge branch 'feature/ci_optimize_artifact_download' into 'master'
CI: optimize submodule fetch and artifact download

See merge request espressif/esp-idf!6842
2019-12-09 11:09:20 +08:00
morris
01ca687caa esp32s2beta: only support unicore 2019-12-09 09:48:37 +08:00
morris
a86d741fc9 esp_rom: remove esp_rom.c 2019-12-09 09:48:31 +08:00
morris
5efb1140ac esptool: add chip and stub option 2019-12-09 09:48:16 +08:00
morris
2237cc11a3 add IDF_ENV_FPGA option 2019-12-09 09:44:56 +08:00
morris
13cb9f8718 xtensa: update header file 2019-12-09 09:44:56 +08:00
He Yin Ling
ca0ce7171d CI: reduce number of test jobs 2019-12-08 20:32:11 +08:00
He Yin Ling
164e8ba21f test: support loadable elf test cases:
loadable elf example is different for 2 reasons:

1. loadable elf binary don't have flasher_args.json, so we can't use normal
to get from CI artifacts
2. it don't have binary and don't need to downloaded binary to DUT. Some
related functions can be ignored
2019-12-08 20:32:11 +08:00
He Yin Ling
cca08b3d2b CI: remove not exist file from executable-list.txt 2019-12-08 20:32:10 +08:00
He Yin Ling
a11b15b92b CI: build system do not check submodule for CI 2019-12-08 20:32:10 +08:00
He Yin Ling
b4863551a9 CI: modify fetch submodule method:
download archive for submodules instead of clone
2019-12-08 20:32:10 +08:00
Jiang Jiang Jian
3224f24ef6 Merge branch 'Bugfix/add_netif_assert_master' into 'master'
fix bug for netif add crash

Closes WIFI-1219

See merge request espressif/esp-idf!6937
2019-12-07 17:33:32 +08:00
Jiang Jiang Jian
33c4fa5c13 Merge branch 'bugfix/btdm_fix_bt_security_info_restore_bug' into 'master'
btdm:BT device security info resetore bug

See merge request espressif/esp-idf!6031
2019-12-07 16:19:58 +08:00
Xu Jun Jun
e20e47809d For BT device restore security info from NV to SRAM, should set the ble_hci_handle to a invalid value, otherwise BLE devices may have pairing problem 2019-12-07 16:19:57 +08:00
xueyunfei
9894691e11 fix bug for netif add crash 2019-12-07 16:11:30 +08:00
He Yin Ling
5d1be3bb8b CI: raise import error instead of exit for ble tools 2019-12-07 10:34:54 +08:00
He Yin Ling
89f8e19850 CI: support only download artifacts by request:
use CI dependencies could waste a lot bandwidth for target test jobs, as
example binary artifacts are very large. Now we will parse required
artifacts first, then use API to download required files in artifacts.
2019-12-07 10:34:54 +08:00
He Yin Ling
c906e2afee test: update example and unit tests with new import roles:
tiny_test_fw is a python package now. import it using normal way.
2019-12-07 10:34:54 +08:00
He Yin Ling
4d45932c5e CI: add utility gitlab_api 2019-12-07 10:34:54 +08:00
Andrei Gramakov
6cd17c1e8c freertos: added a FreeRTOS property returning "original" include path 2019-12-06 12:16:54 +01:00
He Yin Ling
d621d0e88e tiny-test-fw: move to tools/esp_python_packages:
make `tiny_test_fw` as a package and move to root path of idf python
packages
2019-12-06 17:29:47 +08:00
Wang Jia Lin
f5e60524ac Merge branch 'bugfix/fix_i2c_driver_breakingchange_issue' into 'master'
bugfix(i2c): fix I2C driver breaking change issue

See merge request espressif/esp-idf!6809
2019-12-06 16:50:16 +08:00
Wang Jia Lin
d0034f5a12 Merge branch 'bugfix/fix_uart_driver_spinlock_misused_bug' into 'master'
bugfix(UART): fix uart driver spinlock misused bug

See merge request espressif/esp-idf!6870
2019-12-06 11:12:54 +08:00
Krzysztof Budzynski
01cf379621 Merge branch 'doc/add_updates_in_api_guides' into 'master'
add updates to some files in api guides

See merge request espressif/esp-idf!6387
2019-12-05 15:12:12 +08:00
Hao Ning
8070746530 add updates to some files in api guides
modified errors in making html

add modifications based on the first review

modified grammar problems of the original text
2019-12-05 15:12:12 +08:00
Jiang Jiang Jian
0be0859e73 Merge branch 'feature/new_gap_char' into 'master'
Enable characteristic 0x2A04 in GAP service

See merge request espressif/esp-idf!5809
2019-12-05 12:17:15 +08:00
Hrishikesh Dhayagude
a2adcea802 Enable characteristic 0x2A04 in GAP service
Add support to enable Peripheral Preferred Connection Parameters in GAP service and update it correctly
2019-12-05 12:17:14 +08:00
Angus Gratton
a7aea56977 Merge branch 'feature/interrupt_overhead_improvement' into 'master'
feature/interrupt overhead improvement

Closes IDF-248

See merge request espressif/esp-idf!6328
2019-12-05 10:21:46 +08:00
Angus Gratton
02bf3fbfcc Merge branch 'bugfix/update_libexpat' into 'master'
expat: Update library from 2.2.5 to 2.2.9

See merge request espressif/esp-idf!6782
2019-12-05 07:38:23 +08:00
michael
3e55baea90 menuconfig: fix the MENUCONFIG_STYLE encoding issue and CLI env issue
1. Call cli with explicit argv

When using debugging tools like `pydbg.py --some_arg idf.py -G Ninga
build`, those tools usually call the python script with sys.argv
modified to correct value. But if the cli is called with argv blank, the
cli will get the argv again, and finally get the original command line,
which is incorrect for debugging.

2. Encode the style unicode string back to ascii in menuconfig cmd

On Windows MSYS python2.7, the unicode string set in os.environ will
cause the subprocess creating to fail. All os.environ values should be
strings.
2019-12-05 01:39:46 +08:00
Alexey Gerenkov
b81e537b7f apptrace: Extends SystemView heap & log example to run many allocator/freer tasks 2019-12-04 18:04:11 +03:00
Alexey Gerenkov
884717fb2f apptrace: Adds support for converting SystemView traces to JSON format 2019-12-04 18:04:07 +03:00
Felipe Neves
b0491307fc target-test: bumping test cases parallel count 2019-12-04 10:41:00 -03:00
Felipe Neves
57522059aa freertos/tests: fixed wrong header file on isr latency test 2019-12-04 10:41:00 -03:00
Felipe Neves
0ea6453b1c freertos: changed isr time test case variables to static 2019-12-04 10:41:00 -03:00
Felipe Neves
3882d986bd components/unity: reverted the inclusion of test protect based on setjmp 2019-12-04 10:40:27 -03:00
Felipe Neves
8cd2831ec1 components/unity: re-enabled setjmp longjmp block on unity 2019-12-04 10:40:27 -03:00
Felipe Neves
55cbc213f3 components/freertos: create the test task with highest priority to ensure peer-to-peer ISR to task sync 2019-12-04 10:40:27 -03:00
Felipe Neves
64a50f0423 components/freertos: fixed isr test failling when run multiple times 2019-12-04 10:40:27 -03:00
Felipe Neves
f119cc58cf components/freertos: tuned performance value for ISR exit cycles to pass in test in -Og 2019-12-04 10:39:22 -03:00
Felipe Neves
c64e108a1d components/freertos: removed CONFIG_FREERTOS_ISR_STATS the ISR test is now self contained 2019-12-04 10:39:22 -03:00
Felipe Neves
bcdc35be59 components/freertos: refactor of isr_latency tests to perform full measurement 2019-12-04 10:39:22 -03:00
Felipe Neves
8b6b97ec57 freertos/xtensa_context: fixed small typo 2019-12-04 10:39:22 -03:00
Felipe Neves
e480435879 components/freertos: removed some dead ifdefs 2019-12-04 10:39:22 -03:00
Felipe Neves
c14fc39b0a components/freertos: fixed typos and licence placement on external code 2019-12-04 10:39:22 -03:00
Felipe Neves
64f918bd70 freertos/xtensa_context: added conditional compiling option around isr cycle measurement
It is possible to enable and disable the isr time measurement on context save and
it related test via menuconfig by the new option: FREERTOS_ISR_STATS
2019-12-04 10:39:22 -03:00
Felipe Neves
346b12e29a freertos/test: added spill register timer measurement test 2019-12-04 10:39:22 -03:00
Felipe Neves
5ce7a33c87 freertos/xtensa_context.S: fix some dread tabs 2019-12-04 10:39:22 -03:00
Felipe Neves
d7d8b47b89 unity/unity_config.h: changed configuration for setjmp usage
For some reason after use modified context save routine, the local unit test
app were crashed, the reason behind this resides on setjmp usage of test_runner,
since this feature seems to not be used for nothing special (just was a default config),
I changed the unity_config to replace the setjmp macros, this sounds less hacky.
2019-12-04 10:39:22 -03:00
Felipe Neves
cd11787153 freertos/xt_asm_utils: added documentation of current windows spill solution 2019-12-04 10:39:22 -03:00
Felipe Neves
768d115e85 freertos/Kconfig: removed isr optimization option from menuconfig 2019-12-04 10:39:22 -03:00
Felipe Neves
eb740ca8e4 freertos/xtensa_context: modification of interrupt handler is workin, needs stabilization 2019-12-04 10:39:22 -03:00
Felipe Neves
d185625162 freertos/xtensa_context: added infrastructure to receive the spill register optimized code 2019-12-04 10:39:22 -03:00
David Cermak
de17a1487f mdns: respond to discovery with the proper pseudo name _services._dns-sd._udp
Closes https://github.com/espressif/esp-idf/issues/4369
Closes IDFGH-2219
2019-12-04 12:57:09 +00:00
Jiang Jiang Jian
d24fe09356 Merge branch 'feature/reorganise_bluetooth-bluedroid-hci' into 'master'
Moved HCI examples from bluetooth/bluedroid/hci to bluetooth/hci.

See merge request espressif/esp-idf!6686
2019-12-04 20:28:20 +08:00
Jiang Jiang Jian
0c0430a169 Merge branch 'bugfix/btdm_allow_start_adv_again' into 'master'
component/bt: allow to send stop adv again and fix tx prog crash

See merge request espressif/esp-idf!6573
2019-12-04 20:23:36 +08:00
Angus Gratton
9b06b5cdf9 Merge branch 'bugfix/idf_py_fallback' into 'master'
idf.py: fix fallback to build system target

See merge request espressif/esp-idf!6874
2019-12-04 16:53:11 +08:00
houwenxiang
aac935ec81 bugfix(i2c): fix I2C driver breaking change issue.
1. Fixed I2C driver breaking change issue.
    2. Add I2C UT test case.
2019-12-04 15:51:36 +08:00
Ivan Grokhotkov
562a3980b2 idf.py: fix fallback to build system target 2019-12-04 07:13:31 +00:00
Angus Gratton
70cfd7e24c Merge branch 'bugfix/ethernet_pm_lock' into 'master'
ethernet: add pm lock

Closes IDF-1053

See merge request espressif/esp-idf!6881
2019-12-04 15:06:12 +08:00
Angus Gratton
af382a1b8e Merge branch 'bugfix/update_menuconfig' into 'master'
Update kconfiglib from v12.14.0 to v13.3.2

See merge request espressif/esp-idf!6816
2019-12-04 15:06:09 +08:00
Angus Gratton
ad21456971 Merge branch 'bugfix/doc_rm_mconf' into 'master'
Doc: Remove menuconfig tool which is not used anymore

See merge request espressif/esp-idf!6764
2019-12-04 15:05:00 +08:00
Jiang Jiang Jian
3a54047c66 Merge branch 'bugfix/coex_fix_wifi_scan_and_connect_bugs_master' into 'master'
esp_wifi: fix WiFi scan and connect bugs when coexist with Bluetooth

See merge request espressif/esp-idf!6840
2019-12-04 14:56:39 +08:00
Angus Gratton
054724596d Merge branch 'feature/add_ir_protocol_example_test' into 'master'
rmt: enable ir protocols example test

Closes IDF-906

See merge request espressif/esp-idf!6856
2019-12-04 14:35:22 +08:00
Angus Gratton
6563378812 Merge branch 'bugfix/ci_check_first' into 'master'
CI: Do trivial checks first in order to save build time

See merge request espressif/esp-idf!6671
2019-12-04 13:57:35 +08:00
Angus Gratton
bc36d20371 Merge branch 'feature/idfpy_exit_with_error_deprecated_options' into 'master'
idf.py: add exit_with_error for deprecated commands and options

Closes IDF-949

See merge request espressif/esp-idf!6704
2019-12-04 13:45:37 +08:00
Jiang Jiang Jian
71ae2956cd Merge branch 'bugfix/phy_critical' into 'master'
Bugfix/phy critical

See merge request espressif/esp-idf!6890
2019-12-04 11:26:58 +08:00
Angus Gratton
38be5c140a Merge branch 'feat/esp_ser_and_sdio_test' into 'master'
essl: new component to communicate with esp serial slave devices

Closes IDF-1002

See merge request espressif/esp-idf!6166
2019-12-04 11:03:14 +08:00
Ivan Grokhotkov
6647e0625d Merge branch 'bugfix/IDFGH-2036' into 'master'
Fix for Windows Defender PS task hanging (IDF tools installation)

Closes IDFGH-2036

See merge request espressif/esp-idf!6796
2019-12-04 03:00:23 +08:00
Ivan Grokhotkov
c066d55554 Merge branch 'bugfix/ci_link_check_deps' into 'master'
ci: remove dependencies from link_check job

See merge request espressif/esp-idf!6900
2019-12-03 23:32:38 +08:00
Michael (XIAO Xufeng)
17b7c9036f sdio_example: use the new esp_ser component and new evboard 2019-12-03 22:58:43 +08:00
Michael (XIAO Xufeng)
d158fa3f5c sdio: add unit test between host and slave 2019-12-03 22:58:42 +08:00
Michael (XIAO Xufeng)
e91c7bcc3a sdspi: revert pin configs when deinit 2019-12-03 22:58:42 +08:00
Michael (XIAO Xufeng)
e2b20f2e4b sdio_slave: fix deinit pin and memory leak issues 2019-12-03 22:58:41 +08:00
Michael (XIAO Xufeng)
087c8f6065 essl: new component to communicate with esp serial slave devices 2019-12-03 22:58:41 +08:00
morris
cf161b1c83 ethernet: add start/stop stress test 2019-12-03 17:58:03 +08:00
Roland Dobai
b7f16594de expat: Update library from 2.2.5 to 2.2.9 2019-12-03 09:57:29 +00:00
Ivan Grokhotkov
a4addc88f2 ci: remove dependencies from link_check job 2019-12-03 10:40:30 +01:00
morris
ac11545e0a ethernet: warning when double start/stop 2019-12-03 16:10:20 +08:00
morris
57ef88a91f ethernet: add pm lock 2019-12-03 16:10:20 +08:00
houwenxiang
e4230d11ca bugfix(UART): fix uart driver spinlock misused bug
1. fix uart driver spinlock misused bug
    2. add uart driver ut test case
    3. undo the change in light_sleep_example_main.c
2019-12-03 16:06:31 +08:00
Roland Dobai
81b116b1b9 Update kconfiglib from v12.14.0 to v13.3.2
Thank you @ulfalizer for fixing the aquatic color theme in upstream
kconfiglib.

Now "xterm" or "screen" values of TERM environment variable is
sufficient to use our default blue menuconfig. "xterm-256color" or
"screen-256color" was necessary before this fix.

See https://github.com/espressif/esp-idf/issues/4387#issuecomment-557823262
2019-12-03 07:33:02 +00:00
Angus Gratton
7c8139734d Merge branch 'doc/ota_flashenc_config' into 'master'
docs: Add note that flash encryption is required in OTA app updates

See merge request espressif/esp-idf!6835
2019-12-03 15:03:46 +08:00
Angus Gratton
6bb09224b5 docs: Add note that flash encryption is required in OTA app updates 2019-12-03 15:03:46 +08:00
Krzysztof Budzynski
0ac47a6269 Merge branch 'feature/ethernet-kit-v1.1-cn' into 'master'
Feature/ethernet kit v1.1 cn

See merge request espressif/esp-idf!6379
2019-12-03 14:29:44 +08:00
Wang Jia Lin
1ffcb54444 Merge branch 'bugfix/fix_esp32-s2_rtc_io_issue' into 'master'
bugfix(gpio): fix esp32 s2 rtc io issue and gpio testcase issues

See merge request espressif/esp-idf!6832
2019-12-03 11:17:41 +08:00
morris
c43fe5e52e rmt: enable ir protocols example test 2019-12-03 10:45:53 +08:00
baohongde
e94c2a04c1 components/bt: Fix AVRC metadata length error 2019-12-03 02:44:49 +00:00
Angus Gratton
78891a9571 Merge branch 'feature/add_kconfig_for_jsmn' into 'master'
jsmn configuration added

Closes IDFGH-2274

See merge request espressif/esp-idf!6873
2019-12-03 10:43:06 +08:00
tianyangmin
be3e52b49c doc: Finalize Ethernet get-started guide. Add Chinese translation. 2019-12-03 02:22:06 +00:00
Jack
134a627ad8 esp_wifi: fix WiFi scan and connect bugs when coexist with Bluetooth
1. Fix WiFi scan leads to poor performance of Bluetooth.
2. Improve WiFi connect success ratio when coexist with Bluetooth.
3. Check if WiFi is still connected when CSA or beacon timeout happen.
4. add coex pre init
2019-12-02 18:20:40 +08:00
Sergei Silnov
506c46fddc idf.py: add exit_with_error for deprecation 2019-12-02 10:41:23 +01:00
Roland Dobai
b52b49c8b6 CI: Do check first in order to save build time 2019-12-02 09:58:31 +01:00
Roland Dobai
d1541c74a6 Give info and warnings about the TERM environment variable 2019-12-02 09:49:21 +01:00
Jiang Jiang Jian
f9335a1785 Merge branch 'bugfix/invalid_mmie_issue' into 'master'
esp_wifi: fix invalid mmie issue

See merge request espressif/esp-idf!6887
2019-12-02 16:44:15 +08:00
Tian Hao
bcce4e3052 fix bug that phy_enter_critical cannot effect on dual-core
Sometimes, libphy.a call phy_enter_critical() to protect accessing
critical sections, such like operating on I2C, but it may not effect
when both the CPU core call it. It may cause accessing I2C blocking
and cannot recover by esp_restart(), until do HW reboot.
2019-12-02 14:56:18 +08:00
Jiang Jiang Jian
f696a29664 Merge branch 'bugfix/hfp_hci_sco' into 'master'
component bt/ Bugfix for HFP hci audio crash

See merge request espressif/esp-idf!6864
2019-12-02 13:55:57 +08:00
Jiang Jiang Jian
4e687db2ca Merge branch 'bugfix/wifi_wpa2_ent_example' into 'master'
Minor bugfix in wpa2_enterprise_example

See merge request espressif/esp-idf!6875
2019-12-02 13:54:51 +08:00
Hrudaynath Dhabe
cde8df7887 Minor bugfix in wpa2_enterprise_example 2019-12-02 13:54:51 +08:00
Angus Gratton
0855fba8a6 Merge branch 'bugfix/reduce_ci_job_number'
Manually merge !6863
2019-12-02 15:01:10 +11:00
Mahavir Jain
cf5c070e72 Merge branch 'NimBLE/fix_send_after_controller_ready' into 'master'
NimBLE: Fix erroneous behaviour of NimBLE porting layer when controller is not ready to receive

See merge request espressif/esp-idf!6756
2019-12-01 15:22:51 +08:00
Prasad Alatkar
656005ef3d NimBLE: Fix erroneous behaviour of NimBLE porting layer when controller is not ready to receive 2019-12-01 15:22:51 +08:00
morris
68dc6b2158 jsmn: define macros in build system 2019-11-29 18:05:24 +08:00
Nachiket Kukade
460b1d6bb5 esp_wifi: Update wifi lib
Add fix to "Invalid MMIE" issue.
2019-11-29 14:47:36 +05:30
weitianhua
adf8a96602 fix hci sco crash bug for HFP 2019-11-29 06:51:18 +00:00
Alexey Lapshin
1263a38038 jsmn configuration added 2019-11-28 16:44:16 +03:00
He Yin Ling
5ba70e713a Merge branch 'test/http_server_advanced_tests' into 'master'
test: Refactor http_server advanced_tests to use regular import method

See merge request espressif/esp-idf!6803
2019-11-28 19:25:52 +08:00
Angus Gratton
da4cb76f5a test: Refactor TFW load_source() method to only take the file path
Fixes issues where example tests for persistent_sockets and advanced_tests both
loaded a module named "client", causing a race condition.
2019-11-28 19:25:52 +08:00
Jiang Jiang Jian
c8f483034d Merge branch 'bugfix/fix_nullptr_ref_esp_event_possibility' into 'master'
esp_event: fix possibility of null ptr dereference

See merge request espressif/esp-idf!6839
2019-11-28 17:22:55 +08:00
Roland Dobai
105267d537 Doc: Remove menuconfig tool which is not used anymore 2019-11-28 10:07:49 +01:00
Jiang Jiang Jian
e2e2de95b4 Merge branch 'feature/check_wifi_lib_md5_on_host' into 'master'
esp_wifi: check header files MD5 on host

See merge request espressif/esp-idf!6656
2019-11-28 16:48:53 +08:00
Jiang Jiang Jian
abd7031f71 Merge branch 'bugfix/btdm_fix_the_ble_throuthput_client_crash_bug_gyc' into 'master'
example/ble_throughput fix the throughput clinet crash bug when open the CONFIG_GATTC_WRITE_THROUTHPUT option

Closes BT-421

See merge request espressif/esp-idf!6830
2019-11-28 11:30:57 +08:00
Geng Yu Chao
979b05f933 example/ble_throughput fix the throughput clinet crash bug when open the CONFIG_GATTC_WRITE_THROUTHPUT option 2019-11-28 11:30:56 +08:00
Jiang Jiang Jian
d6ddae3693 Merge branch 'bugfix/ramdom_tcp_crash' into 'master'
fix bug for random tcp crash

Closes WIFI-1433

See merge request espressif/esp-idf!6837
2019-11-28 11:30:02 +08:00
He Yin Ling
6b6b42a0b5 ci: reduce the number of UT jobs 2019-11-28 10:44:31 +08:00
Angus Gratton
b8af7dd7cb Merge branch 'feature/esp32s2beta_spi_flash_driver' into 'master'
Use new SPI flash driver abstraction layers

See merge request espressif/esp-idf!5504
2019-11-28 09:20:01 +08:00
Renz Christian Bagaporo
e6ad330018 ble_mesh_wifi_coexist example: Disable Wi-Fi RX IRAM optimisation
Otherwise IRAM usage is too high in this example.
2019-11-28 09:20:00 +08:00
Angus Gratton
ecaf816c0b Merge branch 'bugfix/freemodbus_fix_clang_warnings' into 'master'
freemodbus: fix clang warnings of freemodbus stack

See merge request espressif/esp-idf!5193
2019-11-28 07:06:19 +08:00
Ivan Grokhotkov
a9b7f74f7f Merge branch 'bugfix/macos_link_toomany_open_files' into 'master'
build system: explicitly disable LTO plugin to reduce the number of simultaneously open files

Closes IDF-923 and IDFGH-1764

See merge request espressif/esp-idf!6776
2019-11-28 01:38:53 +08:00
Jack
5d377e5b6e esp_wifi: update to include MD5 symbols 2019-11-27 23:08:57 +08:00
Ivan Grokhotkov
4872dcea2e wpa_supplicant: remove header file MD5 unit test 2019-11-27 23:00:11 +08:00
Ivan Grokhotkov
680c48f86f esp_wifi: remove MD5 related unit tests 2019-11-27 23:00:11 +08:00
Ivan Grokhotkov
568f0af61a esp_wifi: check header files MD5 on host 2019-11-27 23:00:11 +08:00
Jiang Jiang Jian
1fbeb8c9a4 Merge branch 'bugfix/hfp_ag' into 'master'
component bt/ Bugfix for hfp ag

See merge request espressif/esp-idf!6742
2019-11-27 22:48:59 +08:00
Jiang Jiang Jian
f76ac480c1 Merge branch 'fix/supplicant_md5sum_mismatch' into 'master'
wpa_supplicant: Fix MD5 mismatch in esp_wifi_driver.h

See merge request espressif/esp-idf!6843
2019-11-27 22:47:17 +08:00
xueyunfei
77b23951e7 fix bug for ramdom tcp crash 2019-11-27 13:39:54 +00:00
weitianhua
897ee41a51 Change this MR from adding example to bugfix in HFP AG Component 2019-11-27 13:35:35 +00:00
weitianhua
7c18299571 Add AG component API_REFERENCE
Expose esp_hf_indchange_notification to this example.
2019-11-27 13:35:35 +00:00
weitianhua
0c6e1f7ef8 Fix the audio crash bugs
Fix voice recognition bugs

Fix audio memory leak bug.
2019-11-27 13:35:35 +00:00
weitianhua
a47c07d319 Update the README.md 2019-11-27 13:35:35 +00:00
weitianhua
78cbdfa332 HFP AG Example 2019-11-27 13:35:35 +00:00
Piyush Shah
f9ec0a7172 wifi_provisioning_softap: Allow applications to start webserver externally
If an application wants to use webserver, instead of creating another
webserver instance, the wifi provisioning manager can re-use the same.
The webserver handle can be passed using this new API.

Signed-off-by: Piyush Shah <piyush@espressif.com>
2019-11-27 18:42:43 +05:30
Nachiket Kukade
5618cf5100 wpa_supplicant: Fix MD5 mismatch in esp_wifi_driver.h
Make cosmetic changes in esp_wifi_driver.h in both IDF
and wifi library to match the md5sum.
2019-11-27 12:43:04 +00:00
Martin Vychodil
880197307a Windows setup: fix Defender detection and add desktop shortcut option
* use Environment::Exit() to avoid PS process hanging
* old-fashioned exceptions
* try-catch-finally necessary
* disable Windows Defender Task when Defender module not installed
* cleanup script checks Defender module existence too
* fixed uninstall of Start Menu LNK
* use Command Prompt instead of Command Line wording
+ Desktop shortcut
* iterate through PSMODULEPATH when looking for WD module
JIRA IDFGH-2036
2019-11-27 13:40:51 +01:00
Wang Jia Lin
ca8e9a7589 Merge branch 'feature/touch_driver_hal_support' into 'master'
Refactor the touch sensor driver

See merge request espressif/esp-idf!6687
2019-11-27 20:08:45 +08:00
Fu Zhi Bo
3a468a1ffd Refactor the touch sensor driver 2019-11-27 20:08:44 +08:00
zhiweijian
fb369577d9 component/bt: allow adv stop again when adv is already stoped and fix crash when tx prog sometimes 2019-11-27 10:03:06 +00:00
Jiang Jiang Jian
c487df288c Merge branch 'bugfix/hfp_hci_audio_crash' into 'master'
component bt/ Bugfix for HFP hci audio crash

See merge request espressif/esp-idf!6739
2019-11-27 17:48:52 +08:00
xiongyu
af4c455417 bugfix(gpio):fix esp32 s2 rtc io issue
* Modify the function implementation of ESP32-S2 RTC GPIO
  On ESP32 those PADs which have RTC functions must set pullup/down/capability via RTC register.
  On ESP32-S2, Digital IOs have their own registers to control pullup/down/capability, independent with RTC registers.
* Add ESP32-S2 support of unit test
* Modify the pull-up test of unit test
* Modify the interrupt test of unit test
* Modify input and output mode test of unit test
2019-11-27 17:18:20 +08:00
Roland Dobai
59a04e21b0 Don't try to clean the old kconfig tools on Unix 2019-11-27 10:13:01 +01:00
Angus Gratton
89f1786754 Merge branch 'bugfix/eth_remove_dep_on_netif' into 'master'
ethernet: remove dependency on esp_netif && add reference counter

Closes IDF-1104

See merge request espressif/esp-idf!6711
2019-11-27 16:08:31 +08:00
Jiang Jiang Jian
3a8b346263 Merge branch 'component_bt/osi_fixed_queue' into 'master'
component bt/: Bugfix for pointer type in file fixed_queue.c

Closes BT-492

See merge request espressif/esp-idf!6831
2019-11-27 15:56:49 +08:00
morris
dcd99b0ad1 enlarge example cmake build job parallel num 2019-11-27 14:14:08 +08:00
morris
c3ee156df0 ethernet: move netif glue && add ref counter
1. move netif glue into single file
2. add reference counter for Ethernet driver
2019-11-27 10:36:32 +08:00
Jiang Jiang Jian
e349f86d18 Merge branch 'bugfix/ble_mesh_device_with_wrong_name_on_ios' into 'master'
ble_mesh: fix ble mesh device with wrong name on iOS

Closes BLEMESH-54

See merge request espressif/esp-idf!6516
2019-11-27 10:30:25 +08:00
Angus Gratton
91b7a7beaf Merge branch 'bugfix/timer_intr_status_get' into 'master'
bugfix(timer): fix get intr status function

See merge request espressif/esp-idf!6807
2019-11-27 09:13:16 +08:00
Angus Gratton
64c8b640a1 Merge branch 'feature/log_component_noos' into 'master'
log: make compatible with non-OS builds

See merge request espressif/esp-idf!6787
2019-11-27 08:34:22 +08:00
Angus Gratton
c810f3c3b2 Merge branch 'bugfix/menuconfig_colors' into 'master'
Make menuconfig colors configurable

Closes IDFGH-2238

See merge request espressif/esp-idf!6795
2019-11-27 08:30:19 +08:00
Angus Gratton
fd27c0a113 Merge branch 'bugfix/bootloader_unicore_cache_enable' into 'master'
bootloader: revert support for booting dual-core apps on single-core bootloader

See merge request espressif/esp-idf!6609
2019-11-27 08:01:59 +08:00
Angus Gratton
b034c52a93 Merge branch 'feature/uart_hal_support' into 'master'
Driver(uart):  Uart HAL driver refactor

Closes IDF-608

See merge request espressif/esp-idf!4849
2019-11-27 07:57:02 +08:00
Ivan Grokhotkov
f287f59ae3 build system: move -fno-rtti link option next to the compile option
Previous commit has added `link_options` to the root CMakeLists.txt,
can use it to collect such global link options now.
2019-11-26 19:12:56 +01:00
Ivan Grokhotkov
f49a78d543 build system: explicitly disable LTO plugin
... to reduce the number of simultaneously open files at link time.

When plugin support is enabled in the linker, BFD's (and the
corresponding file handles) are cached for the plugin to use. This
results in quite a large number of simultaneously open files, which
hits the default limit on macOS (256 files).

Since we aren't using LTO now, disable it explicitly when invoking the
linker.

Closes IDF-923
Closes IDFGH-1764
Closes https://github.com/espressif/esp-idf/issues/3989
2019-11-26 19:12:56 +01:00
Mahavir Jain
9e49a5dc34 Merge branch 'bugfix/include_cpp_guard_headers_in_app_trace' into 'master'
bugfix/esp32: add cpp guard headers for app_trace component

See merge request espressif/esp-idf!6827
2019-11-26 23:47:03 +08:00
weitianhua
f1116be195 bugfix for osi_fixed_queue pointer type 2019-11-26 21:16:47 +08:00
chenjianqiang
bcfe684951 bugfix(timer): add a macro to control making the XTAL related functions 2019-11-26 12:39:46 +00:00
chenjianqiang
856d9f7d89 bugfix(timer): recover get raw interrupt status function 2019-11-26 12:39:46 +00:00
Aditya Patwardhan
320608c85a bugfix/esp32: add cpp guard headers for app_trace component so that its
API's can be can be used in cpp files.
2019-11-26 17:44:15 +05:30
houwenxiang
f27ae9b0e2 feature: Add uart hal support. 2019-11-26 20:01:50 +08:00
Anton Maklakov
1dd2443758 Merge branch 'docs/openocd_cmd_line_fixup' into 'master'
docs: Fix up some OpenOCD cmdline-s

See merge request espressif/esp-idf!6814
2019-11-26 19:44:22 +08:00
Anton Maklakov
def05480b8 docs: Fix up some OpenOCD cmdline-s 2019-11-26 19:44:22 +08:00
Jiang Jiang Jian
899f3decab Merge branch 'feature/wpa3_SAE_support' into 'master'
wpa_supplicant: Add SAE authentication support for WPA3 Personal

Closes IDF-715

See merge request espressif/esp-idf!5903
2019-11-26 18:59:19 +08:00
Wang Jia Lin
7948a9f6f0 Merge branch 'bugfix/fix_i2c_driver_ut_issue_esp32s2' into 'master'
bugfix(i2c): fix esp32-s2 i2c driver UT issue

See merge request espressif/esp-idf!6820
2019-11-26 18:52:59 +08:00
aleks
6e14b6265b freemodbus: fix merge issues 2019-11-26 11:25:12 +01:00
Roland Dobai
bd2fc9f832 Make menuconfig colors configurable
Closes https://github.com/espressif/esp-idf/issues/4387
2019-11-26 10:40:34 +01:00
aleks
cf4c95532f freemodbus: fix clang warnings 2019-11-26 10:37:14 +01:00
Anton Maklakov
a3b47da377 Merge branch 'bugfix/freemodbus_fix_supported_targets' into 'master'
freemodbus: fix supported targets ci issue

See merge request espressif/esp-idf!6823
2019-11-26 17:16:44 +08:00
aleks
4f9742d90c freemodbus: fix supported targets ci issue 2019-11-26 09:07:47 +01:00
Angus Gratton
81c9ca52ed Merge branch 'feature/ws_config_agent_header' into 'master'
ws_client: Add User-Agent and additional headers to esp_websocket_client

See merge request espressif/esp-idf!6777
2019-11-26 14:42:01 +08:00
Angus Gratton
a29f667b87 Merge branch 'bugfix/kconfig_write_empty_files' into 'master'
tools: Write Kconfig files always

See merge request espressif/esp-idf!6763
2019-11-26 13:58:49 +08:00
Angus Gratton
0d5056f683 Merge branch 'bugfix/idf_tool_git_worktree' into 'master'
tools: Don't use git work-tree in idf_tools.py and try to parse IDF version from C header

Closes IDFGH-2203

See merge request espressif/esp-idf!6743
2019-11-26 13:57:12 +08:00
Sagar Bijwe
e679b3c79e wifi: Add PMF and WPA3 documentation 2019-11-26 11:00:20 +05:30
Nachiket Kukade
f2e37c4ca8 wpa_supplicant: Support WPA3 4-way handshake, add config option
1. Add changes in 4-way handshake path to allow SAE key mgmt.
2. Support for configuring WAP3 at init time, added Kconfig option.
3. Handle and propagate error conditions properly.
4. Link changes from WiFi library.
2019-11-26 10:59:55 +05:30
Angus Gratton
2345895302 Merge branch 'feature/freemodbus_master_ascii_support' into 'master'
freemodbus: add support for master ascii mode

Closes IDFGH-1639

See merge request espressif/esp-idf!6032
2019-11-26 13:16:27 +08:00
Alex Lisitsyn
67f62a79c1 freemodbus: add modbus master ascii
add support of modbus master ascii
rename base dir name of master and slave example to be mb_slave, mb_master to avoid conflict with sdio/slave example test
add Kconfig option to enable ASCII and RTU mode separately
update ASCII options + remove cast for errors
added baudrate for examples into Kconfig
updated magic numbers for timer timeout
put ascii private definitions into one file
2019-11-26 13:16:25 +08:00
Angus Gratton
e8089c1edb Merge branch 'bugfix/spi_slave_dma_free_chan' into 'master'
spi_slave.c:fix DMA channel set to zero which might gets conflict with assert

See merge request espressif/esp-idf!6748
2019-11-26 13:11:50 +08:00
Andrew
1669dc40d1 spi_slave.c:fix DMA channel set to zero which might gets conflict with assert
close #2740
2019-11-26 13:11:48 +08:00
Nachiket Kukade
da07b2b4a7 wpa_supplicant: Add SAE handshake support for WPA3-PSK
Under WPA3-Personal, SAE authentication is used to derive PMK
which is more secure and immune to offline dictionary attacks.
1. Add modules to generate SAE commit/confirm for the handshake
2. Add modules that build and parse SAE data in Auth frames
3. Add WPA3 association and key mgmt definitions
4. Invert y-bit while solving for ECC co-ordinate -
     Once an X co-ordinate is obtained, solving for Y co-ordinate
     using an elliptical curve equation results in 2 possible values,
     Y and (P - Y), where p is the prime number. The co-ordinates are
     used for deriving keys in SAE handshake. As par the 802.11 spec
     if LSB of X is same as LSB of Y then Y is chosen, (P - Y) otherwise.
     This is not what is implemented, so fix this behavior to obtain the
     correct Y co-ordinate.
2019-11-26 04:24:57 +00:00
Sagar Bijwe
aceb141d2b wpa_supplicant: Adding SAE modules with testcase
This change ports SAE(Simultaneous Authentication of Equals)
feature from wpa_supplicant and makes it work with mbedtls
crypto APIs. Currently only group 19 is supported. A sample
SAE handshake is included in the testcase. Other minor
changes for DH groups are also included.
2019-11-26 04:24:57 +00:00
Jiang Jiang Jian
54eeb77a56 Merge branch 'feature/support_pmf' into 'master'
Feature/support pmf

See merge request espressif/esp-idf!5708
2019-11-26 12:13:43 +08:00
kooho
f0f20e0496 bugfix(i2c): fix esp32-s2 i2c driver UT issue 2019-11-26 12:01:18 +08:00
Angus Gratton
649f27c620 Merge branch 'bugfix/idfpy_cmake_cache_encoding' into 'master'
idf.py: add encoding option

Closes IDFGH-1905

See merge request espressif/esp-idf!6589
2019-11-26 11:50:15 +08:00
Angus Gratton
09fb1aa008 Merge branch 'docs/netif_mighration_guide' into 'master'
esp_netif: added tcpip_adapter migration guide

See merge request espressif/esp-idf!6753
2019-11-26 10:49:49 +08:00
weitianhua
52c5cc038a bugfix for HFP hci audio crash 2019-11-26 02:34:09 +00:00
Angus Gratton
680415b9ce Merge branch 'bugfix/ci_openocd_ignore_error' into 'master'
CI: ignore a non-fatal error in the loadable ELF file example

See merge request espressif/esp-idf!6810
2019-11-26 08:10:43 +08:00
Alexey Gerenkov
e092d6f858 coredump: Makes compatible with legacy binary core dumps
Also:
 - improves coredump versioning scheme
 - Moves some API funtions to respective flash/UART dependent code
2019-11-25 22:44:51 +03:00
Ivan Grokhotkov
c56a954976 Merge branch 'bugfix/idfpy_unknown_target_message' into 'master'
idf.py: Fix error message for unknown target

See merge request espressif/esp-idf!6817
2019-11-26 00:10:09 +08:00
Sergei Silnov
dc4a5d06e3 idf.py: Fix error message for unknown target 2019-11-25 15:41:34 +01:00
Wang Jia Lin
557234d625 Merge branch 'budfix/fix_i2c_driver_ut' into 'master'
bugfix(i2c): fix i2c driver ut issue.

See merge request espressif/esp-idf!6805
2019-11-25 21:31:35 +08:00
Roland Dobai
686abe6a2f CI: ignore a non-fatal error in the loadable ELF file example 2019-11-25 13:57:39 +01:00
Ivan Grokhotkov
8eef8654a6 Merge branch 'bugfix/idfpy_verbose_flag' into 'master'
idf.py: Fix --verbose flag

See merge request espressif/esp-idf!6812
2019-11-25 20:46:37 +08:00
Sergei Silnov
262ed0e72b idf.py: Fix regression ignorance of --verbose flag 2019-11-25 11:47:55 +01:00
David Cermak
1a012b7ad2 esp_netif: docs update to include tcpip_adapter migration guide
added migration guide link to the esp-netif page and network page
added redirects from tcpip_adapter to new esp_netif
2019-11-25 08:32:11 +01:00
David Cermak
af3f821fd7 docs: update wifi documentation per recent update of esp-idf-template project to use a plain hello-world application 2019-11-25 08:24:59 +01:00
kooho
5286c8308c bugfic(i2c): fix i2c driver ut issue. 2019-11-25 07:03:02 +00:00
Renz Christian Bagaporo
bb139d2b83 esp_event: fix possibility of null ptr dereference
Closes https://github.com/espressif/esp-idf/issues/4373
2019-11-25 14:27:10 +08:00
Angus Gratton
f2a1a6105a Merge branch 'feat/mcpwm_hal'
Manual merge of !6626
2019-11-25 17:18:48 +11:00
Angus Gratton
129c9311ca Merge branch 'bugfix/menuconfig_confirm' into 'master'
Menuconfig: Don't ask to save configuration when nothing has changed

Closes IDFGH-2148

See merge request espressif/esp-idf!6643
2019-11-25 13:42:27 +08:00
Angus Gratton
dbae85dde8 Merge branch 'bugfix/timer_driver_ut' into 'master'
driver/timer: fix software reset UT (again)

See merge request espressif/esp-idf!6801
2019-11-25 12:54:52 +08:00
Angus Gratton
bf80a50c85 Merge branch 'bugfix/idf_tools_add_ULP_for_armel' into 'master'
tools: Add ULP utils for ARMEL

See merge request espressif/esp-idf!6800
2019-11-25 12:13:42 +08:00
Nachiket Kukade
75ea0df916 Add encryption/decryption support for PMF
1. Add CCMP, AES crypto modules for unicast protected Mgmt frames
2. Add support for computing SHA256 MIC on Bcast Mgmt frames
3. Add support for storing iGTK during 4-way handshake.
4. Provide APIs to MLME for utilizing the SW crypto modules
5. Link PMF changes from WiFi library submodule
2019-11-25 04:11:09 +00:00
Nachiket Kukade
773e095a65 Add support for PMF configuration and negotiation
1. Add APIs for configuring PMF through set config.
2. Map Supplicant and Wifi Cipher types.
3. Add support for PMF negotiation while generating RSN IE.
2019-11-25 04:11:09 +00:00
Jiang Jiang Jian
ddef4f9129 Merge branch 'feature/set_dhcp_timeout' into 'master'
Add feature for set dhcp time out

Closes WIFI-797 and IDF-1100

See merge request espressif/esp-idf!6370
2019-11-25 12:04:20 +08:00
Angus Gratton
6dd36fd571 Merge branch 'refactor/hal_gpio_driver'
Manual merge of !5597
2019-11-25 10:49:40 +11:00
Angus Gratton
f34edba8f3 Merge branch 'feature/adc_driver_hal_support'
Manual merge of !6044
2019-11-25 10:22:06 +11:00
Ivan Grokhotkov
82d89afe1f driver/timer: fix software reset UT (again) 2019-11-24 21:10:50 +01:00
michael
538540ce21 mcpwm: add HAL layer support
Also improved the unit tests a bit.
2019-11-25 00:36:30 +08:00
michael
1fb2fd89de mcpwm: fix the fault handling and capture issues
1. The fault signal 3 for unit 2 is corrected to the right value

2. Now `mcpwm_fault_set_oneshot_mode` will clear the status before, no
need to reset the peripheral.

3. The capture feature relies on the prescaler, but it's only
initialized in the mcpwm_init funciton, which is used to initialize a
PWM channel. This means, the capture may not work correctly if no PWM
channel is enabled.

   Now the prescaler is also updated when `mcpwm_capture_enable` is
called.
2019-11-25 00:36:30 +08:00
michael
0f6dd34971 mcpwm: enable some unit tests again 2019-11-25 00:36:30 +08:00
He Yin Ling
d839f39ed8 Merge branch 'feature/ci_optimize_assign_test' into 'master'
CI: optimize assign test

See merge request espressif/esp-idf!6785
2019-11-24 19:22:41 +08:00
Ivan Grokhotkov
60994329ce Merge branch 'bugfix/idf_tools_download_on-request_tools' into 'master'
idf_tools.py: fix downloading for tools which have "on_request" options

See merge request espressif/esp-idf!6757
2019-11-24 19:11:33 +08:00
Anton Maklakov
0ed38ca24d idf_tools.py: fix downloading for tools which have "on_request" options for some platforms.
'install' and 'download' options can be used for 'required' or 'all' tools
2019-11-24 19:11:33 +08:00
Anton Maklakov
11837f7f5d tools: Add ULP utils for ARMEL 2019-11-24 12:02:50 +07:00
He Yin Ling
857d10a926 unit-test-app: print config name in test script 2019-11-23 20:40:23 +08:00
He Yin Ling
3c99de352c tiny-test-fw: only load module from the same file one time:
we should only load one module once.
if we load one module twice, python will regard the same object loaded in the first time and second time as different objects.
it will lead to strange errors like `isinstance(object, type_of_this_object)` return False
2019-11-23 20:40:23 +08:00
He Yin Ling
9665c6ef66 unit-test-app: fix test script error when handling multiple unit test configs in one config file:
If we have multiple configs, we need to flash DUT with different binaries. But if we don't close DUT before apply new config, the old DUT will be reused, so new config name will not be applied.
2019-11-23 20:40:23 +08:00
He Yin Ling
1c65f1aed3 ci: reduce the number of unit test jobs 2019-11-23 20:40:23 +08:00
He Yin Ling
cb4c25bc67 ci: use more flexible assign for unit test cases 2019-11-23 20:39:19 +08:00
He Yin Ling
757e2d021e tiny-test-fw: print useful debug info when assign test:
* total requirements (number of required jobs vs tags)
* unused CI jobs
* missing jobs (number of missing jobs vs tags)
2019-11-23 20:39:19 +08:00
He Yin Ling
b12a8bce5f ci: optimize unit test assignment:
Currently we use config and test function as filter when assign cases to one CI job. It's not necessary as the runner can run test with different configs / test functions. Now we will try to assign as many cases to a job as possible, to reduce the amount of jobs required.
2019-11-23 20:39:19 +08:00
He Yin Ling
74ca3fc571 tiny-test-fw: revise unit test job config file:
`overwrite` should be included by each case config
2019-11-23 20:39:19 +08:00
Angus Gratton
b7b4cd3418 Merge branch 'bugfix/timer_group_reset_ut' into 'master'
timer: remove check for POWERON_RESET in the test case, add esp_reset_reason API for s2beta

See merge request espressif/esp-idf!6747
2019-11-23 14:04:41 +08:00
Ivan Grokhotkov
719c8eb627 Merge branch 'bugfix/esp_netif_early_fixes' into 'master'
esp-netif: fixed early issues on esp-netif

See merge request espressif/esp-idf!6792
2019-11-22 20:19:20 +08:00
Ivan Grokhotkov
676b5e0deb log: refactoring to make compatible with no-FreeRTOS builds 2019-11-22 11:41:35 +01:00
Ivan Grokhotkov
6fda3df953 Merge branch 'bugfix/gpio_pin_bit_mask_truncation' into 'master'
driver: fix gpio pin_bit_mask truncation in sdspi_host and others

See merge request espressif/esp-idf!6746
2019-11-22 17:41:05 +08:00
Jiang Jiang Jian
0deeae38a9 Merge branch 'bugfix/fix_timer_deleted_and_run_broken_callback' into 'master'
esp_timer: fix the bug that when timeout of timer happens try to run callback,...

Closes WIFI-1214

See merge request espressif/esp-idf!6765
2019-11-22 17:37:51 +08:00
Ivan Grokhotkov
acdb2a5dc0 ci: add test job with ESP32S2BETA_IDF tag 2019-11-22 10:36:51 +01:00
David Cermak
d9433ef692 mdns: fixed forgotten merge conflicts in debug code 2019-11-22 10:31:06 +01:00
David Cermak
c5a6bc9985 esp_netif: added missing C++ guards
Closes https://github.com/espressif/esp-idf/issues/4389
2019-11-22 10:31:06 +01:00
xiongyu
a3b79e9202 refactor(gpio): add hal gpio driver 2019-11-22 17:24:53 +08:00
xueyunfei
2eea2dbeb4 Add feature for set dhcp time out 2019-11-22 17:24:16 +08:00
Ivan Grokhotkov
e4f641f5a9 Merge branch 'bugfix/i2s_driver_apll_test_regression' into 'master'
i2s: fix regression in retrieval of chip revision causing apll test to fail

See merge request espressif/esp-idf!6786
2019-11-22 17:06:29 +08:00
Angus Gratton
989825908b Merge branch 'feature/esp32s2beta_ulp_projbuild' into 'master'
Support esp32s2beta ULP in build system

See merge request espressif/esp-idf!5412
2019-11-22 15:59:44 +08:00
fuzhibo
f49b192a5e refactor the adc driver 2019-11-22 15:42:16 +08:00
Mahavir Jain
25c0752682 i2s: fix regression in retrieval of chip revision causing apll test to fail 2019-11-22 11:46:38 +05:30
Dmitry
b38bc2f8f5 s2 support for make build removed. 2019-11-22 09:03:23 +03:00
Dmitry
845b2d1cfe Jumps change back to jumpr. because example supports esp32 only. 2019-11-22 09:03:23 +03:00
Dmitry
1518c410bc A switch between esp32 and esp32s2betta added to the ULP build process.
The new bin utils will have extension esp32s2ulp-elf, and they have to be placed to the bin directory.
2019-11-22 09:03:13 +03:00
Wang Jia Lin
a8d3e3ab4a Merge branch 'feature/dac_driver_hal_support' into 'master'
dac: add hal for dac driver

See merge request espressif/esp-idf!5591
2019-11-22 13:59:32 +08:00
Chinmay Chhajed
6a91c8d440 Changes in menuconfig options to not compile any host when using hci
examples as no host is required there.
2019-11-22 11:14:50 +05:30
Chinmay Chhajed
a104bc22ae README fixes 2019-11-22 11:11:37 +05:30
Chinmay Chhajed
85b66801b1 Moved HCI examples from bluetooth/bluedroid/hci to bluetooth/hci. 2019-11-22 11:11:37 +05:30
Angus Gratton
f64ee5aba3 Merge branch 'feature/coredump_data_in_elf_format' into 'master'
coredump: change data format to ELF

Closes IDF-43

See merge request espressif/esp-idf!4398
2019-11-22 13:25:44 +08:00
Alexey Gerenkov
27ce4d13df coredump: change data format to ELF 2019-11-22 13:25:43 +08:00
Angus Gratton
7eb89ae868 Merge branch 'feature/idfpy_unknown_targets_fallback' into 'master'
idf.py: run build system target for unknown sub-commands

Closes IDF-748

See merge request espressif/esp-idf!6644
2019-11-22 13:22:23 +08:00
fuzhibo
03ac1aaafd dac: refactor driver add hal 2019-11-22 11:44:46 +08:00
Angus Gratton
0e0994092e Merge branch 'feature/esp32s2beta_fix_rtc_peripheral_driver' into 'master'
Driver: fix touch driver and deep sleep example

See merge request espressif/esp-idf!6476
2019-11-22 11:39:41 +08:00
Angus Gratton
ea29c101cd Merge branch 'bugfix/fix_iram_intr_alloc_test' into 'master'
ccomp_timer: fix broken unit test

See merge request espressif/esp-idf!6779
2019-11-22 08:41:50 +08:00
Angus Gratton
dc00c360ab Merge branch 'bugfix/esp32s2beta_crtbegin' into 'master'
esp32s2beta: fix crash at startup due to toolchain crtbegin being linked

See merge request espressif/esp-idf!6783
2019-11-22 07:01:32 +08:00
Ivan Grokhotkov
477e66103c Merge branch 'feature/esp32s2beta_apptrace_port' into 'master'
esp32s2: Adds apptrace support

Closes IDF-510 and IDF-1032

See merge request espressif/esp-idf!5610
2019-11-22 05:33:35 +08:00
Ivan Grokhotkov
8ff801766a Merge branch 'docs/update_oocd_config_on_cmd_line' into 'master'
Updates OpenOCD configuration file names in documentation

See merge request espressif/esp-idf!6226
2019-11-22 05:32:35 +08:00
David N. Junod
9200250f51 Add User-Agent and additional headers to esp_websocket_client
Merges https://github.com/espressif/esp-idf/pull/4345
2019-11-21 21:14:29 +01:00
Ivan Grokhotkov
ad986849a6 timer: remove check for POWERON_RESET in the test case
The test case may run after an RTC_WDT_RESET (if we are on rev. 0
ESP32), or software reset (when running test cases locally).

Also moving the test case next to the other timer group driver tests.
2019-11-21 20:03:26 +01:00
Ivan Grokhotkov
ea99137e62 esp32s2beta: implement esp_reset_reason API 2019-11-21 20:03:26 +01:00
Ivan Grokhotkov
38520d3b65 Merge branch 'feature/build_apps_script' into 'master'
tools: add build_apps.py, script to build multiple apps

Closes IDF-641

See merge request espressif/esp-idf!6101
2019-11-22 02:54:28 +08:00
Ivan Grokhotkov
951ed739f7 soc/cpu: add non-xtensa-specific replacement of xthal_get_ccount 2019-11-21 19:22:35 +01:00
Ivan Grokhotkov
910f49942e examples: fix test function name in cpp_rtti example 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
d0e1edcd53 examples: add 2 CI build/test configurations for system/console 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
871ea650f6 examples: fix sdkconfig warnings 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
dbae5c93f0 examples: fix loadable elf test 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
ebd7004a31 examples: update wifi/iperf to use the new builder 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
30d21adcca ci: don't add build_examples_make as a target_test dependency 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
e1aee5ad09 ci: reimplement build_examples_cmake using {find,build}_apps.py 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
0e6e7f49be tiny-test-fw: add build config and target options 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
7ac8f28dda tools: add build warnings checking script 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
9d15c1fd40 tools: add {find,build}_apps.py, scripts to build multiple apps
This commit adds a pair of scripts, find_apps.py and build_apps.py.
These scripts are intended to be used in various CI jobs, building
multiple applications with different configurations and targets.

The first script, find_apps.py, is used to prepare the list of builds:
1. It finds apps for the given build system.
2. For each app, it finds configurations (sdkconfig files) which need
   to be built.
3. It filters out the apps and configurations which are not compatible
   with the given target.
4. It outputs the list of builds into stdout or a file. Currently the
   format is a list of lines, each line a JSON string. In the future,
   the tool can be updated to output YAML files.

The lists of builds can be concatenated and processed with standard
command line tools, like sed.

The second script, build_apps.py, executes the builds from the list.
It can execute a subset of builds based on --parallel-count and
--parallel-index arguments.

These two scripts are intended to replace build_examples_make,
build_examples_cmake, and the custom unit-test-app logic (in the
Makefile and idf_ext.py).

Closes IDF-641
2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
e1452f5d6c lw-ip: silence a warning related to CONFIG_LWIP_TCP_WND_DEFAULT value 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
096dc8fc2b esp32s2beta: rename output linker script 2019-11-21 15:29:00 +01:00
Wang Jia Lin
29623c46b4 Merge branch 'feature/i2c_hal_support' into 'master'
feature: Add i2c hal support.

Closes IDF-611

See merge request espressif/esp-idf!5500
2019-11-21 21:58:22 +08:00
Jack
50fe7e540e esp_timer: fix the bug that when timeout of timer happens try to run callback, and high priority task delete the timer and break the callback 2019-11-21 13:54:50 +00:00
houwenxiang
28286183d1 feature(I2C): Add i2c hal support. 2019-11-21 20:34:07 +08:00
fuzhibo
246242dbd5 driver: fix sens_struct.h;
driver: fix timer wakeup dsleep;
example: fix EXT1 wakeup dsleep;
example: fix touch pad wakeup dsleep;
2019-11-21 20:31:34 +08:00
Ivan Grokhotkov
1be70588f3 Merge branch 'bugfix/idf_tools_guess_idf_path' into 'master'
idf_tools.py: when guessing IDF_PATH, set it in the enviroment

Closes IDF-1141 and IDFGH-2189

See merge request espressif/esp-idf!6752
2019-11-21 20:30:08 +08:00
Mahavir Jain
43411da465 Merge branch 'bugfix/freertos_critical_section_compliance' into 'master'
Changes in uart and esp_timer for critical section compliance with vanilla FreeRTOS

See merge request espressif/esp-idf!6733
2019-11-21 19:25:14 +08:00
Wang Jia Lin
a3162754aa Merge branch 'feature/ledc_hal_support' into 'master'
feat(ledc): refactor ledc driver

See merge request espressif/esp-idf!5746
2019-11-21 19:19:43 +08:00
Ivan Grokhotkov
04324e4c3c esp32s2beta: re-enable entering the debugger on panic 2019-11-21 11:52:10 +01:00
Ivan Grokhotkov
f21261d39c esp32s2beta: don't use crtbegin from the toolchain
Similar to 22514c1dd9 for esp32
2019-11-21 11:52:10 +01:00
Wang Jia Lin
fdd05b7bef Merge branch 'feature/timer_group_hal_support' into 'master'
feat(timer): refactor timer group driver

See merge request espressif/esp-idf!5592
2019-11-21 17:05:11 +08:00
chenjianqiang
857dec108d feat(ledc): refactor ledc driver
1. add hal and low-level layer for ledc driver
2. support esp32s2beta ledc
2019-11-21 16:25:22 +08:00
Roland Dobai
be749395c4 Menuconfig: Don't ask to save configuration when nothing has changed
Closes https://github.com/espressif/esp-idf/issues/4303
2019-11-21 06:47:11 +00:00
chenjianqiang
9f9da9ec96 feat(timer): refator timer group driver
1. add hal and low-level layer for timer group
2. add callback functions to handle interrupt
3. add timer deinit function
4. add timer spinlock take function
2019-11-21 14:14:19 +08:00
Wang Jia Lin
8c3cb232f0 Merge branch 'refactor/hal_sigmadelta_driver' into 'master'
refactor(sigmadelta): add hal sigmadelta driver

See merge request espressif/esp-idf!5599
2019-11-21 13:35:07 +08:00
Renz Christian Bagaporo
6540877f23 test_utils: move ccomp timer interrupt allocation/free to init/deinit 2019-11-21 11:59:46 +08:00
xiongyu
e62b831867 refactor(sigmadelta): add hal sigmadelta driver 2019-11-21 11:53:07 +08:00
Wang Jia Lin
03d24b034e Merge branch 'feature/rtcio_driver_hal_support' into 'master'
rtcio: add hal for driver

See merge request espressif/esp-idf!5628
2019-11-21 11:47:22 +08:00
fuzhibo
0c2bf7c8bc rtcio: add hal for driver 2019-11-21 10:40:49 +08:00
Angus Gratton
b30b0e59fa Merge branch 'feature/add_rmt_hal' into 'master'
rmt: add hal layer and new examples

Closes IDF-841, IDF-844, and IDF-857

See merge request espressif/esp-idf!5649
2019-11-21 09:53:54 +08:00
Angus Gratton
bc3233782b Merge branch 'feature/remove_gcc5_support' into 'master'
global: remove gcc 5.2 support

Closes IDF-1131

See merge request espressif/esp-idf!6608
2019-11-21 09:08:41 +08:00
suda-morris
e673817530 ccomp_timer: fix broken unit test 2019-11-21 08:45:11 +08:00
Angus Gratton
e510e1779d Merge branch 'bugfix/gcov_in_components' into 'master'
Fixes libgcov and libapp_trace cross dependency linking issue

Closes IDF-834

See merge request espressif/esp-idf!6250
2019-11-21 07:09:04 +08:00
Angus Gratton
95b9b41258 Merge branch 'bugfix/ethernet_add_reference_counter' into 'master'
ethernet: add reference counter for mac and phy && add gpio config outof Kconfig

Closes IDF-1056

See merge request espressif/esp-idf!6682
2019-11-21 06:58:13 +08:00
Sergei Silnov
87c979ae09 docs: add idf.py fallback commands and subcommand options 2019-11-20 12:23:03 +01:00
Ivan Grokhotkov
9a2af7ae33 global: remove gcc 5.2 support 2019-11-20 11:17:27 +01:00
Wang Jia Lin
f9d5b67b81 Merge branch 'refactor/hal_i2s_driver' into 'master'
refactor(i2s): add hal i2s driver

Closes IDFGH-2097

See merge request espressif/esp-idf!5601
2019-11-20 17:45:21 +08:00
Krzysztof Budzynski
206fa14d68 Merge branch 'doc/jtag_debugging_at_firm_compatibility' into 'master'
Add information on compatibility issue between JTAG and AT firmware.

See merge request espressif/esp-idf!6710
2019-11-20 15:01:57 +08:00
Kirill Chalov
1d06b6b07e Add information on compatibility issue between JTAG and AT firmware. 2019-11-20 15:01:56 +08:00
Jiang Jiang Jian
5bc644bbdf Merge branch 'bugfix/example_ble_hid_device_demo_fix_error_mask' into 'master'
example/ble_hid_device_demo fix the wrong mask value according to HID protocol

Closes BCI-127

See merge request espressif/esp-idf!6758
2019-11-20 12:46:20 +08:00
morris
357cc19da3 rmt: refactor examples 2019-11-20 10:54:21 +08:00
morris
8fd8695ea1 rmt: add HAL layer 2019-11-20 10:54:21 +08:00
suda-morris
72ad9ab5eb doc: move common Ethernet config explanation into a single file 2019-11-20 10:36:45 +08:00
suda-morris
05d71319de ethernet: add gpio number into config structure 2019-11-20 10:36:45 +08:00
suda-morris
f3d0429a9e ethernet: add reference counter for mac and phy 2019-11-20 10:36:45 +08:00
He Yin Ling
bcf1f992ff Merge branch 'ci/fix_iperf_example_test_failure' into 'master'
ci: fix iperf example test and LEDC unit test error

See merge request espressif/esp-idf!6754
2019-11-20 10:34:41 +08:00
Angus Gratton
bc9267aa24 Merge branch 'feature/use_cpu_time_for_tests' into 'master'
Cache compensated timer

See merge request espressif/esp-idf!6087
2019-11-20 08:33:27 +08:00
Angus Gratton
412b202741 Merge branch 'bugfix/ws_client_fix_wait_forever_timeout' into 'master'
ws_client: fix handling timeouts by websocket client.

Closes IDFGH-2161

See merge request espressif/esp-idf!6683
2019-11-20 07:44:25 +08:00
Anton Maklakov
bd49b3f315 Merge branch 'bugfix/soc_missing_tests' into 'master'
soc: fix unit tests not included in the build

See merge request espressif/esp-idf!6723
2019-11-20 00:32:43 +08:00
xiongyu
8c76a3c10d refactor(i2s): add hal i2s driver 2019-11-19 22:19:19 +08:00
Roland Dobai
e533c88760 tools: Write Kconfig files always
Write COMPONENT_KCONFIGS_SOURCE_FILE and
COMPONENT_KCONFIGS_PROJBUILD_SOURCE_FILE files always even when
COMPONENT_KCONFIGS or COMPONENT_KCONFIGS_PROJBUILD are empty variables
because kconfiglib expects them to exist.
2019-11-19 15:11:11 +01:00
Sergei Silnov
18c594e250 idf.py: run build system target for unknown commands 2019-11-19 13:28:00 +01:00
Ivan Grokhotkov
a74988ae3b Merge branch 'bugfix/cpp_extern' into 'master'
Add extern C header guards to some files

Closes IDFGH-2025 and IDFGH-2093

See merge request espressif/esp-idf!6611
2019-11-19 19:01:29 +08:00
Wang Jia Lin
7494877b1c Merge branch 'refactor/hal_pcnt_driver' into 'master'
refactor(pcnt): add hal pcnt driver

See merge request espressif/esp-idf!5600
2019-11-19 17:22:49 +08:00
Jiang Jiang Jian
9e0b9fcf4e Merge branch 'bugfix/btdm_run_out_of_frame_element' into 'master'
components/bt: Fix assert due to no free element from

Closes BT-461

See merge request espressif/esp-idf!6574
2019-11-19 17:01:23 +08:00
Mahavir Jain
62a0659368 Merge branch 'bugfix/warning_fix_latest_freertos' into 'master'
Fixed warnings for components driver, esp32 and mbedtls

See merge request espressif/esp-idf!6673
2019-11-19 16:48:54 +08:00
gengyuchao
2af64d132f example:ble_hid_device_demo fix the wrong mask value according to HID protocol 2019-11-19 16:24:36 +08:00
Angus Gratton
af945096b2 Merge branch 'bugfix/confgen_gen_source_from_build' into 'master'
Generate source files for kconfiglib from the build system

See merge request espressif/esp-idf!6433
2019-11-19 14:19:49 +08:00
Jiang Jiang Jian
6f633b2d5b Merge branch 'bugfix/btdm_disable_some_secrity_mask' into 'master'
components/bt: Disable some unsupported security mask

See merge request espressif/esp-idf!6724
2019-11-19 12:15:25 +08:00
He Yin Ling
ca217e04ec ci: reduce the required num of jobs for ESP32S2 beta LEDC cases 2019-11-19 11:51:26 +08:00
Angus Gratton
f8476c042d Merge branch 'feature/transport_ssl_support_alpn' into 'master'
tcp_transport: added functionality for using ALPN with SSL

Closes IDF-1160

See merge request espressif/esp-idf!6684
2019-11-19 11:36:09 +08:00
Angus Gratton
3761441b0e Merge branch 'bugfix/remove_stale_files' into 'master'
Remove accidentally merged and stale files

See merge request espressif/esp-idf!6658
2019-11-19 11:28:53 +08:00
He Yin Ling
613b9b613d ci: fetch all submodules for iperf example test 2019-11-19 11:18:59 +08:00
Ivan Grokhotkov
9fa3974447 idf_tools.py: when guessing IDF_PATH, set it in the enviroment
This allows the processes launched from idf_tools.py to use the value
of IDF_PATH. One such example is the installation of Python packages,
when requirements.txt uses IDF_PATH to refer to the esp-windows-curses
package.

Closes https://github.com/espressif/esp-idf/issues/4341
2019-11-18 16:22:25 +01:00
Ivan Grokhotkov
5b6b624e1f driver: fix gpio pin_bit_mask truncation in sdspi_host and others
Closes https://github.com/espressif/esp-idf/issues/4348
2019-11-18 13:42:22 +01:00
Roland Dobai
8a02feb671 tools: Don't use git work-tree in idf_tools.py
Closes https://github.com/espressif/esp-idf/issues/4355
2019-11-18 13:15:39 +01:00
Ivan Grokhotkov
93a8603c54 Merge branch 'feature/builtin_type_exceptions_test' into 'master'
C++: Throw builtin type exception test

See merge request espressif/esp-idf!6570
2019-11-18 19:34:05 +08:00
David Cermak
e1f982921a ws_client: fix handling timeouts by websocket client.
tcp-transport component did not support wait forever. this update uses value of -1 to request this state.
websocket client uses timeouts in RTOS ticks. fixed recalculation to ms (including special value of -1) to use correctly tcp-transport component

Closes https://github.com/espressif/esp-idf/issues/4316
2019-11-18 10:59:41 +00:00
Alexey Gerenkov
1626f827d3 docs: Updates OpenOCD configuration file names 2019-11-18 13:33:32 +03:00
Ivan Grokhotkov
a0aab66509 Merge branch 'bugfix/idf_as_lib_build_on_macos' into 'master'
examples: fix idf as library example build on macOS

See merge request espressif/esp-idf!6638
2019-11-18 17:55:23 +08:00
Ivan Grokhotkov
f59170fcb9 Merge branch 'bugfix/fatfs_missing_tests' into 'master'
fatfs: fix unit tests not included in the build

See merge request espressif/esp-idf!6720
2019-11-18 17:36:20 +08:00
Anton Maklakov
f04e45b340 soc: remove invalid esp32s2beta tests
Need to update them later, ref: IDF-1169
2019-11-18 16:05:37 +07:00
Angus Gratton
a032ce7cd7 ci: Add test configs for 32kHz crystals 2019-11-18 16:05:37 +07:00
Anton Maklakov
7b0be33a7a soc: fix unit tests not included in the build
Regression from 9eccd7c082
2019-11-18 15:58:49 +07:00
Krzysztof Budzynski
29b2235506 Merge branch 'doc/mdns_zh_CN' into 'master'
zh_CN translation of mdns service

See merge request espressif/esp-idf!4590
2019-11-18 16:42:20 +08:00
Wang Jia Lin
be43bfe0c1 Merge branch 'bugfix/ledc_ut_esp32s2beta' into 'master'
bugfix(LEDC): fix ledc CI issue for esp32s2beta

Closes IDF-1011

See merge request espressif/esp-idf!6530
2019-11-18 16:19:42 +08:00
xiongyu
b1a72866ca refactor(pcnt): add hal pcnt driver 2019-11-18 14:35:46 +08:00
Jiang Jiang Jian
79f578ca41 Merge branch 'bugfix/example_blufi_fix_the_send_ble_before_connect_bug' into 'master'
example/blufi: Fix the wrong wifi storage mode and check if ble is connected before sending a ble message.

Closes BCI-120

See merge request espressif/esp-idf!6708
2019-11-18 14:21:40 +08:00
Geng Yu Chao
34083c1463 example/blufi: Fix the wrong wifi storage mode and check if ble is connected before sending a ble message. 2019-11-18 14:21:40 +08:00
Jiang Jiang Jian
45944da8ae Merge branch 'bugfix/esp32s2beta_flash_cache' into 'master'
Bugfix/esp32s2beta flash cache

See merge request espressif/esp-idf!6561
2019-11-18 14:16:16 +08:00
Krzysztof Budzynski
70a93ca0c6 Merge branch 'bugfix/docs_adc_attenuation' into 'master'
docs: Replaced 'attenuaton' with 'attenuation'

See merge request espressif/esp-idf!6672
2019-11-18 12:10:56 +08:00
Krzysztof Budzynski
1487bd2edd docs: Replaced 'attenuaton' with 'attenuation' 2019-11-18 12:10:55 +08:00
Renz Christian Bagaporo
c4dc63c4d8 ci: add jobs for tests 2019-11-18 10:29:42 +08:00
Renz Christian Bagaporo
550c0ef234 vfs: use ccomp timer in performance test 2019-11-18 10:29:02 +08:00
Renz Christian Bagaporo
df26ab13e2 test_utils: implement performance timer 2019-11-18 10:29:01 +08:00
Ivan Grokhotkov
fb3d648e07 Merge branch 'feature/unit_example_test_no_submodules' into 'master'
ci: don't fetch all submodules in unit_test and example_test

See merge request espressif/esp-idf!6688
2019-11-18 09:32:49 +08:00
Jakob Hasse
cd730b94be C++: added unit tests for builtin type exceptions 2019-11-18 08:53:50 +08:00
baohongde
2e570e78c6 components/bt: Disable some unsupported security mask 2019-11-17 13:42:09 +08:00
wanglei
5e55ffc95a fix dummy issue in spi mem and make some spiflash api called from idf 2019-11-15 15:59:07 +00:00
wanglei
f3424afaab bugfix: fix spi flash read when wrap enabled 2019-11-15 15:59:07 +00:00
wanglei
7b2348baad fix bug that wrap mode not disabled in none-QIO mode 2019-11-15 15:59:07 +00:00
wanglei
8bea8dacbc esp32s2beta: fix some macro and add flash wrap size condition 2019-11-15 15:59:07 +00:00
Jiang Jiang Jian
70df578752 Merge branch 'bugfix/wifi_scan_example_redo' into 'master'
wifi: minor changes in scan example

See merge request espressif/esp-idf!6591
2019-11-15 23:56:17 +08:00
Hrudaynath Dhabe
504172e851 wifi: minor changes in scan example 2019-11-15 23:56:16 +08:00
Jiang Jiang Jian
9399dc4fd8 Merge branch 'bugfix/btdm_fix_the_ble_throuthput_server_crash_bug_gyc' into 'master'
example/ble_throughput fix the throughput server crash bug when running with throughput client

Closes BT-421

See merge request espressif/esp-idf!6649
2019-11-15 23:55:10 +08:00
Geng Yu Chao
4cd56b19d7 example/ble_throughput fix the throughput server crash bug when running with throughput client 2019-11-15 23:55:09 +08:00
Jiang Jiang Jian
a9c162664c Merge branch 'feature/get_remote_name' into 'master'
Feature/ Read Remote Device's Name

See merge request espressif/esp-idf!6562
2019-11-15 23:47:02 +08:00
Roland Dobai
84d5cc1c17 Generate source files for kconfiglib from the build system 2019-11-15 15:25:09 +00:00
Roland Dobai
98c629987f tools: Produce user friendly error during install when the server is down
Closes https://github.com/espressif/esp-idf/issues/4329
2019-11-15 15:21:39 +01:00
Ivan Grokhotkov
28b7f11f93 fatfs: fix unit tests not included in the build
Regression from 9baa7826.
2019-11-15 15:04:57 +01:00
Mahavir Jain
f53f450380 nvs_flash: build nvs_encr.cpp only if relevant config option is enabled 2019-11-15 15:58:31 +05:30
Mahavir Jain
ecf09382da uart: critical section compliant API in ISR context 2019-11-15 15:58:31 +05:30
Mahavir Jain
d0a37704a3 esp_timer: use freertos critical section compliant APIs
Some modules use esp_timer from interrupt context and hence
with vanilla FreeRTOS it should use correct critical section
API
2019-11-15 15:57:55 +05:30
Shubham Kulkarni
c741dd0535 Fixed warnings for components driver, esp32 and mbedtls 2019-11-15 08:51:16 +00:00
Ivan Grokhotkov
c8a37c296a ci: don't fetch all submodules in unit_test and example_test 2019-11-15 07:59:44 +00:00
Ivan Grokhotkov
59d818c387 Merge branch 'bugfix/mdns_task_include' into 'master'
mdns: add missing include of esp_task.h

See merge request espressif/esp-idf!6706
2019-11-15 15:50:31 +08:00
Mahavir Jain
7c1fceb810 Merge branch 'docs/fix_esp_local_control_formatting' into 'master'
docs/en: fix formatting for esp_local_control component

See merge request espressif/esp-idf!6678
2019-11-15 13:41:26 +08:00
Angus Gratton
83b468f707 Merge branch 'feature/idfpy_hidden_commands' into 'master'
idf.py: add support for subcommands hidden from help

See merge request espressif/esp-idf!6646
2019-11-15 12:41:43 +08:00
Jiang Jiang Jian
a9c1970c03 Merge branch 'bugfix/put_more_rx_code_to_iram' into 'master'
wifi: Put some rx code to iram

Closes WIFI-490 and WIFI-1041

See merge request espressif/esp-idf!6490
2019-11-15 10:58:22 +08:00
Ivan Grokhotkov
5884b80908 mdns: add missing include of esp_task.h 2019-11-14 18:02:26 +01:00
Ivan Grokhotkov
503c37e013 Merge branch 'bugfix/mdns_configure_task_params' into 'master'
mdns: add configuration values for task priority, affinity and internal service timeouts

See merge request espressif/esp-idf!6580
2019-11-14 21:30:50 +08:00
Ivan Grokhotkov
9e8fa4bb18 Merge branch 'feature/esp_netif_interface_update' into 'master'
tcpip_adapter refactor: ready for review

Closes IDF-39

See merge request espressif/esp-idf!5373
2019-11-14 21:27:53 +08:00
Jiang Jiang Jian
2c7f949257 Merge branch 'bugfix/fix_the_bug_in_espnow_example' into 'master'
espnow: fix the bug for calling esp_wifi_set_channel

See merge request espressif/esp-idf!6690
2019-11-14 19:26:27 +08:00
lly
093cc494b9 ble_mesh: fix ble mesh device with wrong name on iOS 2019-11-14 17:03:46 +08:00
Jiang Jiang Jian
e380c59c74 Merge branch 'feat/ble_mesh_4_1_new_features' into 'master'
ESP BLE Mesh 4.1 new features

Closes BLEMESH-1, BLEMESH-2, BLEMESH-3, BLEMESH-4, BLEMESH-39, and BLEMESH-43

See merge request espressif/esp-idf!6134
2019-11-14 16:47:49 +08:00
Angus Gratton
9efbe1bb47 Merge branch 'bugfix/support_worktree_on_cmake' into 'master'
cmake: support git worktree

See merge request espressif/esp-idf!6581
2019-11-14 16:00:47 +08:00
xiehang
b7334b0366 esp_wifi: Turn off wifi iram optimization by default, when using both Bluetooth and psram 2019-11-14 15:20:53 +08:00
baohongde
e248a4fe6e components/bt: Fix assert due to no free element from 2019-11-14 06:59:23 +00:00
morris
9691a755f6 zh_CN translation of mdns service 2019-11-14 13:28:04 +08:00
houwenxiang
30b2e02088 bugfix(LEDC):fix ledc CI issue for esp32s2beta. 2019-11-14 12:20:29 +08:00
weitianhua
3f0e851a39 Feature/ Read Remote Device's Name 2019-11-14 03:33:37 +00:00
Angus Gratton
17d0ada00a Merge branch 'bugfix/idfpy_before_flash_option' into 'master'
idf.py: Add --before flag to esptool.py call

See merge request espressif/esp-idf!6577
2019-11-14 11:13:48 +08:00
Alexey Gerenkov
30ff7198b8 apptrace: Renames Kconfig options 2019-11-13 15:24:01 +03:00
Alexey Gerenkov
5909d3676c esp32s2: Adds apptrace support
Closes IDF-510.
Closes IDF-1032.
2019-11-13 15:24:01 +03:00
xiehang
5e7f43f3d1 esp_wifi: Put some rx code to iram 2019-11-13 11:44:23 +00:00
David Cermak
76f612e14f ci: increased number of parallel jobs to have enough runners for unit
tests
2019-11-13 12:36:26 +01:00
David Cermak
e535376257 tools: updated generator of error codes to names to ignore tcpip_adapter
compatibility types since the error codes are reused in esp-netif and in
tcpip_adapter mapped to the same number.
2019-11-13 12:36:26 +01:00
David Cermak
9f2a45f15f esp_netif: add dhcp state transition unit tests for default wifi interfaces 2019-11-13 12:36:26 +01:00
David Cermak
f91d69efb2 esp_netif: rename DHCP flags for client and server 2019-11-13 12:36:26 +01:00
David Cermak
064bed710e esp_netif: fix esp_netif_stop() to stop DHCP client if configured 2019-11-13 12:36:26 +01:00
David Cermak
d0afdaaf24 esp_eth: moved starting link timer to eth driver start 2019-11-13 12:36:26 +01:00
David Cermak
4857e92e2c esp_mesh: creation of wifi network interfaces for esp-mesh examples moved to used common esp_wifi_default API 2019-11-13 12:36:26 +01:00
David Cermak
7f5cda1b82 tcpip_adapter: updated tcpip_adapter compatablity layer to include all
public API and keep 100% backward compatibility
update build of tcpip adapter when ethernet disabled
2019-11-13 12:36:25 +01:00
David Cermak
7ef385963c esp_netif: minor update of coding style based on clang-tidy
guidelines and fix some copyright notices
2019-11-13 12:36:25 +01:00
David Cermak
f839a1328c esp_netif: added locking for netif list management, unit tests to use unique if_keys, updated comments 2019-11-13 12:36:25 +01:00
David Cermak
6e0d274f58 esp_netif: example init code fixed to assert only variables, not
function calls so it won't be skipped if compiled without asserts
2019-11-13 12:36:25 +01:00
David Cermak
20add7da60 esp_netif: extract wifi_netif module as an abstraction to wifi universal interface defined by if handle and callback 2019-11-13 12:36:25 +01:00
David Cermak
359f6b3a21 esp_netif: add consistency checks for configs and interface key duplication 2019-11-13 12:36:25 +01:00
David Cermak
cf710a3cb1 esp_netif: include tcpip_adapter legacy header by default to provide *implicit* compatiblity 2019-11-13 12:36:25 +01:00
David Cermak
3f60837de2 esp_eth: make esp_eth_driver_start public API so application could start ethernet when used without esp-netif 2019-11-13 12:36:25 +01:00
David Cermak
549ee87912 esp_netif: moving default netifs to wifi, moved sta_list to a separate header -- note will fail unit tests 2019-11-13 12:36:25 +01:00
David Cermak
d471266b46 esp_netif: documentation udpated and grouped the esp-netif API
structure. Updated rst documenentation and diagram of esp-netif
cooperation with other components.
2019-11-13 12:36:25 +01:00
David Cermak
eb94d87935 esp_netif: address failures on tcpip-task ipc call, deinit lwip netif and ip address issues 2019-11-13 12:36:25 +01:00
David Cermak
3a19bf055d esp_netif and examples: using wifi driver handle, update examples and tests to pass the CI 2019-11-13 12:36:25 +01:00
David Cermak
4366347fd4 esp_event: fix petty include dependency issue 2019-11-13 12:36:25 +01:00
David Cermak
ba13275c6b esp_netif: update default DHCP IP addresses to be in line with old interface, added loopback implementation, explicit esp-netif init, sanity checks for parameters added 2019-11-13 12:36:25 +01:00
David Cermak
b834c99148 examples: modify other examples and tests to use esp_netif instead of tcpip_adapter 2019-11-13 12:36:25 +01:00
David Cermak
0eec84bc4f mesh_examples: use esp_netif instead of tcpip_adapter 2019-11-13 12:36:25 +01:00
David Cermak
7f4c8a0b4f ethernet_examples: use esp_netif instead of tcpip-adapter 2019-11-13 12:36:25 +01:00
David Cermak
19e24fe61e mdns: update mdns to use esp-netif for mdns supported services such as STA, AP, ETH
removes also include dependency on lwip to use esp_netif defined address fields and structures
2019-11-13 12:36:25 +01:00
David Cermak
c00123c77b provisioning: examples updated to use esp_netif instead of tcpip_adapter 2019-11-13 12:36:25 +01:00
David Cermak
204492bd78 examples: wifi getting started examples to use esp_netif_init() and
create default netif instances for station and AP
2019-11-13 12:36:25 +01:00
David Cermak
a49b934ef8 examples: protocol examples which use common connection component
updated to use esp_netif_init instead of tcpip_adapter in initialization code
2019-11-13 12:36:25 +01:00
David Cermak
21464465ea examples: common component initialization code to use new esp_netif
instead of tcpip_adapter
2019-11-13 12:36:25 +01:00
David Cermak
ffe043b1a8 esp_netif: Introduction of esp-netif component as a replacement of tcpip_adpter
- provides object oriented access to network intefaces
- not limited to default netifs
- more generic abstraction to network input output functions
- event handler registration removed from component responsibility
- backward compatibility layer for legacy tcpip_apapter APIs

Closes IDF-39
2019-11-13 12:36:25 +01:00
David Cermak
ec9f245dd3 examples: removed ip4addr_ntoa and used prefered IP2STR for displaying IP addresses 2019-11-13 12:36:25 +01:00
Ivan Grokhotkov
d57890cdff Merge branch 'bugfix/unicore_crash_in_xtaskresumeall' into 'master'
freertos: modify configASSERTs around scheduler state check

See merge request espressif/esp-idf!6685
2019-11-13 19:20:31 +08:00
zhangyanjiao
b9da410cbb espnow: fix the bug for calling esp_wifi_set_channel(), this function only can be called after Wi-Fi started and sniffer enabled. 2019-11-13 16:40:30 +08:00
Mahavir Jain
4ccac94816 freertos: modify configASSERTs around scheduler state check
Regression introduced in commit 79e74e5d5f

It is possible that some FreeRTOS APIs are invoked prior to
scheduler start condition (e.g. flash initialization in unicore mode).
In that condition these asserts should not trigger (scheduler state being yet to be started),
hence changes per this fix.
2019-11-13 10:44:09 +05:30
Renz Christian Bagaporo
77585bd14e spiffs: fix build issue on clean project
From issue:

I did some poking around in components/spiffs/project_include.cmake and
it looks like what is failing is it isn't getting an offset from
parttool.py. I think what the problem is that the parttool.py cannot
determine the offset of the storage partition as I can't run menuconfig
to set the custom partitions.

I have tested that this problem is solvable by manually setting the
custom partitions in sdkconfig and that is a workaround but there should
be at least a better error message in the configuration when it cannot
find the partition as this would also happen if the partition name was
misspelled.

Closes https://github.com/espressif/esp-idf/issues/4236
2019-11-13 12:31:50 +08:00
Marius Vikhammer
ed85046138 tcp_transport: added functionality for using ALPN with SSL
Closes IDF-1160
2019-11-13 11:33:13 +08:00
Alexey Gerenkov
5b83b198c6 gcov: Fixes libgcov and libapp_trace cross dependency linking issue
Closes IDF-834
2019-11-12 18:42:08 +03:00
Alexey Gerenkov
02e084e2b5 examples: Collects coverage info in component 2019-11-12 18:42:02 +03:00
Ivan Grokhotkov
eca812249b Merge branch 'bugfix/freemodbus_revert_uart_isr_in_ram_by_default' into 'master'
freemodbus: fix issue with CONFIG_UART_ISR_IN_IRAM set by default

See merge request espressif/esp-idf!6655
2019-11-12 22:16:56 +08:00
Alex Lisitsyn
cfdd5f0ef7 freemodbus: configure timer handler placement
place timer interrupt handler into flash by default;
add default settings for timer and UART interrupts to place them into IRAM into example defaults;
CONFIG_FMB_TIMER_PORT_ENABLED default = n, when enabled, the UART_ISR_IN_IRAM set to y
2019-11-12 22:16:55 +08:00
Ivan Grokhotkov
bfe5662387 Merge branch 'bugfix/common_example_uart_init' into 'master'
fix common example connect and stdin/stdout

See merge request espressif/esp-idf!6642
2019-11-12 22:10:50 +08:00
Mahavir Jain
ca4a8a61c4 Merge branch 'bugfix/CMake_esp_https_ota_dependencies' into 'master'
components/esp_https_ota: Changes in public requirement list for CMake

Closes IDFGH-2066

See merge request espressif/esp-idf!6558
2019-11-12 19:43:26 +08:00
Anton Maklakov
ef3016d0d3 Remove accidentally merged and stale files 2019-11-12 11:43:36 +07:00
Angus Gratton
b4653cf391 Merge branch 'bugfix/update_can_target_test' into 'master'
CAN: Reenable example tests, update job and environment labels.

See merge request espressif/esp-idf!6487
2019-11-12 11:09:50 +08:00
Angus Gratton
12de58bfac Merge branch 'bugfix/config_assert_thread_safety' into 'master'
freertos: Fix configASSERT thread safety

Closes IDFGH-2055

See merge request espressif/esp-idf!6612
2019-11-12 10:59:00 +08:00
David Cermak
2e0d6d0e6a uart: make uart_driver_install() more backward compatible, so if the interrupt handler configured to be in IRAM and not flagged in intr_alloc_flags argument, then the flag is gracefully updated rather then error return 2019-11-11 15:27:09 +00:00
David Cermak
208feef3c9 asio: fix asio test code to start the test after ip address received from common example code
Previously set to wait until IP address got from tcpip_adapter, but since common example connect code blocks until both IP4 and IPv6 address received it could happen that test code might have started connection to the ASIO counter-part while ESP32 still waiting for IPv6 address
2019-11-11 15:27:09 +00:00
Ivan Grokhotkov
8325a2952a Merge branch 'bugfix/wifi_set_assoc_ie' into 'master'
wpa_supplicant: Set assoc_ie_len based on generated RSN/WPA IE

Closes WIFI-1380

See merge request espressif/esp-idf!6636
2019-11-11 23:22:15 +08:00
Hrudaynath Dhabe
e543dbfe79 wpa_supplicant: Set assoc_ie_len based on generated RSN/WPA IE 2019-11-11 23:22:14 +08:00
Krzysztof Budzynski
53604dad25 Merge branch 'doc/add_chinese_translation_for_support_policy' into 'master'
add chinese translation for support period policy

See merge request espressif/esp-idf!6597
2019-11-11 10:40:30 +08:00
Hao Ning
806229492e add chinese translation for support period policy 2019-11-11 10:40:30 +08:00
Sergei Silnov
2dbad4fe7b idf.py: add support for subcommands hidden from help 2019-11-08 17:54:10 +01:00
David Cermak
c6f38f04f8 mdns: add configuration values for task priority, affinity and internal service timeouts
closes https://github.com/espressif/esp-idf/issues/4217
2019-11-08 16:29:40 +01:00
Angus Gratton
8b38d79dd3 Merge branch 'feature/windows_ccache_enable' into 'master'
tools: export IDF_CCACHE_ENABLE on Windows by default

Closes IDF-955

See merge request espressif/esp-idf!6607
2019-11-08 18:57:26 +08:00
Angus Gratton
ae777b026f Merge branch 'bugfix/cmake_uninit_vars_case_error' into 'master'
cmake: Fix some uninitialized variable issues

See merge request espressif/esp-idf!6632
2019-11-08 18:54:33 +08:00
Angus Gratton
83dbf9d6d6 Merge branch 'bugfix/partition_cmake_md5' into 'master'
cmake: fix partition_table cmake when using md5 checksum

See merge request espressif/esp-idf!5399
2019-11-08 18:51:59 +08:00
Angus Gratton
79d242edd3 Merge branch 'bugfix/py_requirements' into 'master'
Fix Python requirement for setuptools

See merge request espressif/esp-idf!6588
2019-11-08 18:03:20 +08:00
Angus Gratton
932758813a Merge branch 'bugfix/http_client_buffer_overflow' into 'master'
Fix HTTP client buffer overflow

Closes IDF-694

See merge request espressif/esp-idf!6599
2019-11-08 18:02:33 +08:00
Angus Gratton
65c67faa6a Merge branch 'bugfix/freemodbus_fix_nvs_access_failure' into 'master'
modbus master example fix nvs access failure

Closes IDF-1054, IDFGH-1840, and IDFGH-1943

See merge request espressif/esp-idf!6241
2019-11-08 16:55:42 +08:00
Alex Lisitsyn
1ab9e81729 freemodbus: fix nvs access failure
place timer handler functions into IRAM
update timer port handlers
fix communication issues
fix offset issue in example
add kconfig option to place handlers into IRAM
2019-11-08 16:55:42 +08:00
Renz Christian Bagaporo
705e4189db examples: fix idf as library example build on macOS
GCC prefixes underscore on symbol names on macOS, and so the set
undefined symbol `-u app_main` won't work. However, this is unecessary,
as the source file that defines it is specified directly to the
executable, and not through a static library.

Closes https://github.com/espressif/esp-idf/issues/4168
2019-11-08 16:04:05 +08:00
Angus Gratton
6f761dd62d cmake: Fix some uninitialized variable warnings 2019-11-08 12:50:28 +08:00
Angus Gratton
4352265fa0 cmake: Fix case error passing extra CMake args to sub-projects
Bug in commit f4ea7c5a where the wrong variable case was used when passing
through to sub-projects
2019-11-08 11:56:13 +08:00
lly
2bba9d7700 ble_mesh: miscellaneous modifications
1. Clean up client_common.c
2. Clean up esp_ble_mesh directory
3. Update Kconfig.in
4. Format esp_ble_mesh files
2019-11-08 11:10:52 +08:00
lly
30aa236219 ble_mesh: adapt ble mesh with nimble host 2019-11-08 11:10:52 +08:00
lly
dfcfe467c9 ble_mesh: update ble mesh examples 2019-11-08 11:10:52 +08:00
lly
547081cc3c ble_mesh: add events for configuration server model 2019-11-08 11:10:52 +08:00
lly
f906b7caf3 ble_mesh: add Generic/Sensor/Time and Scenes/Lighting Server models 2019-11-08 11:10:52 +08:00
lly
287f80ec01 ble_mesh: add proxy client functionality 2019-11-08 11:10:52 +08:00
lly
c6286529eb ble_mesh: add ble mesh friend node event 2019-11-08 11:10:52 +08:00
lly
fdfe59d369 ble_mesh: add low power node api and event 2019-11-08 11:10:52 +08:00
lly
afc00fb5f5 ble_mesh: add heartbeat message recv callback 2019-11-08 11:10:52 +08:00
lly
2511024e44 ble_mesh: modify health server model callbacks 2019-11-08 11:10:52 +08:00
lly
729af38346 ble_mesh: add separate advertising buffers for relay packets 2019-11-08 11:10:52 +08:00
Angus Gratton
ba72de2099 Merge branch 'bugfix/i2s-bootloader-random-disable' into 'master'
bugfix(bootloader): fix  bootloader_random_disable bug

Closes IDFGH-1747 and IDFGH-1739

See merge request espressif/esp-idf!6522
2019-11-08 11:04:15 +08:00
Wu Jian Gang
1a29ddbd33 cmake: fix partition_table cmake when using md5 checksum 2019-11-08 02:59:22 +00:00
Angus Gratton
75488f1806 Merge branch 'bugfix/cmake_secure_boot' into 'master'
secure boot: CMake bug fixes

See merge request espressif/esp-idf!6523
2019-11-08 10:58:04 +08:00
Ivan Grokhotkov
d459f7bfe0 Merge branch 'bugfix/dockerfile_set_idf_branch' into 'master'
tools/docker: use correct branch and commit of IDF when building

Closes IDF-1120

See merge request espressif/esp-idf!6584
2019-11-08 03:08:45 +08:00
Ivan Grokhotkov
44af11c1b1 Merge branch 'bugfix/nvs_flash_missing_tests' into 'master'
NVS: Added nvs tests, minor corrections

Closes IDF-1135

See merge request espressif/esp-idf!6621
2019-11-07 23:01:58 +08:00
Ivan Grokhotkov
dd7dd08bfb Merge branch 'bugfix/tinyfw_local_test' into 'master'
tiny-test-fw: restore the ability to run tests locally

See merge request espressif/esp-idf!6620
2019-11-07 21:27:58 +08:00
Sergei Silnov
5f136913d2 Doc: replace defconfig with reconfigure
Closes https://github.com/espressif/esp-idf/issues/3965
2019-11-07 13:03:34 +01:00
Angus Gratton
c37cb2b5dc Merge branch 'doc/lwip_apis' into 'master'
lw_ip: Add lw_IP API Guide

Closes IDF-35

See merge request espressif/esp-idf!6473
2019-11-07 19:32:38 +08:00
Angus Gratton
1d15ce9ab3 Merge branch 'bugfix/load_elf_example_test' into 'master'
CI: Don't download s2beta builds into example tests

See merge request espressif/esp-idf!6610
2019-11-07 18:46:16 +08:00
Angus Gratton
a771b94183 lwip: Add lwIP API Guide
Try to provide a full overview of lwIP features as implemented in esp-lwip and ESP-IDF
2019-11-07 18:12:47 +08:00
Roland Dobai
86fd13230e CI: Don't download esp32s2beta builds into example tests 2019-11-07 06:56:03 +00:00
Jakob Hasse
d8242fe976 nvs: Added nvs tests, minor corrections
* closes IDF-1135:
  same namespace was used in different tests which
  could lead to conflicts when re-running tests
* removes duplicated functions declarations
* correct argument order for test case macros
2019-11-07 10:23:47 +08:00
Ivan Grokhotkov
1f323ca107 Merge branch 'feature/cxx_rtti_support' into 'master'
C++: allow enabling RTTI, add example

Closes IDFGH-751

See merge request espressif/esp-idf!6342
2019-11-07 01:00:32 +08:00
Ivan Grokhotkov
8d527243d9 tools/docker: use correct branch and commit of IDF when building 2019-11-06 17:58:23 +01:00
Jiang Jiang Jian
bda386c51a Merge branch 'bugfix/fix_the_bug_for_API_CHECK_ENABLED' into 'master'
esp_wifi: fix the bug for API_CHECK_ENABLE

See merge request espressif/esp-idf!6583
2019-11-06 23:42:41 +08:00
Ivan Grokhotkov
6306ea5a92 tiny-test-fw: fix running tests which use IDFDUT class 2019-11-06 15:31:16 +01:00
Ivan Grokhotkov
18c9e306c2 examples/system: add C++ RTTI example 2019-11-06 15:30:44 +01:00
Ivan Grokhotkov
959ca74a29 C++: add an option to enable RTTI support
Closes https://github.com/espressif/esp-idf/issues/1684
2019-11-06 15:29:19 +01:00
zhangyanjiao
bf37f8a03c 1. modify esp_wifi.h to support esp_netif feature
2. fix the bug for API_CHECK_ENABLE
2019-11-06 12:48:02 +00:00
Ivan Grokhotkov
1f22910468 Merge branch 'bugfix/unused_myrand_test_rsa' into 'master'
rsa test: fix a warning

See merge request espressif/esp-idf!6617
2019-11-06 20:41:19 +08:00
Anton Maklakov
f8bfa69060 rsa test: fix a warning 2019-11-06 18:21:39 +07:00
Ivan Grokhotkov
10abced362 Merge branch 'feature/update_toolchain_esp-2019r2' into 'master'
Introduce esp-2019r2 toolchain for both ESP32 and ESP32s2 targets

See merge request espressif/esp-idf!6575
2019-11-06 16:10:51 +08:00
Angus Gratton
5b33d6cf94 Merge branch 'feature/mbedtls_add_faster_modexp' into 'master'
mbedtls: Add a new (X^Y) mod M implementation (HAC 14.94)

Closes IDF-965

See merge request espressif/esp-idf!6418
2019-11-06 15:51:28 +08:00
Angus Gratton
796dd96757 Merge branch 'feature/hwcrypto_perf_ut' into 'master'
mbedtls: enable HW SHA by default, add SHA performance test

See merge request espressif/esp-idf!6320
2019-11-06 12:16:23 +08:00
Angus Gratton
e34bb7460f secure boot: In Reflashable mode, make sure the bootloader digest updates
... whenever the bootloader.bin is updated
2019-11-06 12:13:24 +08:00
Darian Leung
79e74e5d5f freertos: Fix configASSERT thread safety
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.

Closes https://github.com/espressif/esp-idf/issues/4230
2019-11-05 21:58:02 +08:00
Ivan Grokhotkov
2026340752 clk.h: add extern C guards
Closes https://github.com/espressif/esp-idf/issues/4215
2019-11-05 14:56:16 +01:00
Gabriel Durante
5f0d257240 Added Cpp compatibility for components/spi_flash/include/esp_flash_spi_init.h
Merges https://github.com/espressif/esp-idf/pull/4260
2019-11-05 14:52:57 +01:00
Ivan Grokhotkov
a8e3ad6bd9 bootloader: revert support for booting dual-core apps on single-core bootloader 2019-11-05 14:42:43 +01:00
Ivan Grokhotkov
c75bdcb429 tools: export IDF_CCACHE_ENABLE on Windows by default 2019-11-05 11:45:27 +01:00
Sergei Silnov
ca79a5ecb3 idf.py: add python path to flash instructions
Closes https://github.com/espressif/esptool/issues/449
2019-11-05 11:07:03 +01:00
H.Ogino
7e5d30cda4 idf.py: add encoding option
Merges https://github.com/espressif/esp-idf/pull/4106

Signed-off-by: Sergei Silnov <sergei.silnov@espressif.com>
2019-11-05 10:36:37 +01:00
David Cermak
1d904fdd81 http_client: added comments to http header generation function 2019-11-05 09:53:29 +01:00
David Cermak
9c0844da3f http_client: possible buffer overflow fixed when determining last header item to be written
closes IDF-694
2019-11-05 09:44:06 +01:00
KonstantinKondrashov
e8d3b80e4b mbedtls: Add an UT for performance RSA key operations
(New) - Montgomery exponentiation: Z = X ^ Y mod M  (HAC 14.94)
keysize = 2048 bits
RSA key operation (performance): public [21894 us], private [199119 us]
RSA key operation (performance): public [18768 us], private [189051 us]
RSA key operation (performance): public [16242 us], private [190821 us]
keysize = 3072 bits
RSA key operation (performance): public [39762 us], private [437480 us]
RSA key operation (performance): public [36550 us], private [449422 us]
RSA key operation (performance): public [40536 us], private [443451 us]
keysize = 4096 bits
RSA key operation (performance): public [65671 us], private [885215 us]
RSA key operation (performance): public [60770 us], private [880936 us]
RSA key operation (performance): public [68951 us], private [872027 us]

(Old) - Sliding-window exponentiation: Z = X ^ Y mod M  (HAC 14.85)
keysize = 2048 bits
RSA key operation (performance): public [93206 us], private [280189 us]
RSA key operation (performance): public [93060 us], private [278893 us]
RSA key operation (performance): public [97520 us], private [283252 us]
keysize = 3072 bits
RSA key operation (performance): public [293614 us], private [858157 us]
RSA key operation (performance): public [289902 us], private [843701 us]
RSA key operation (performance): public [291495 us], private [845232 us]
keysize = 4096 bits
RSA key operation (performance): public [653192 us], private [1912126 us]
RSA key operation (performance): public [656661 us], private [1901792 us]
RSA key operation (performance): public [641390 us], private [1938911 us]
2019-11-05 16:33:11 +08:00
KonstantinKondrashov
5ed8388f6b mbedtls: Add Montgomery exponentiation implementation (HAC 14.94)
It gave us a better performance of RSA operations. (2~11 times)

The old modexp implementation (Z = X ^ Y mod M) loaded all the data into
the hw registers and was waiting for completion, but due to
the hardware RSA implementation, the calculations always started with 4096 bit,
which took a lot of time.
Measurement results (measurements were made for keys: 2048, 3072 and 4096 bits)
(Old) - Sliding-window exponentiation (HAC 14.85):
keysize = 2048 bits
RSA key operation (performance): public [93206 us], private [280189 us]
keysize = 3072 bits
RSA key operation (performance): public [293614 us], private [858157 us]
 keysize = 4096 bits
RSA key operation (performance): public [653192 us], private [1912126 us]

Instead (Old) - Sliding-window exponentiation (HAC 14.85) was implemented
(New) - Montgomery exponentiation (HAC 14.94) which showed
better performance on private and public keys.
keysize = 2048 bits
RSA key operation (performance): public [14504 us], private [149456 us]
keysize = 3072 bits
RSA key operation (performance): public [35073 us], private [392743 us]
keysize = 4096 bits
RSA key operation (performance): public [58650 us], private [787186 us]

For this reason, the old implementation was removed
and the MBEDTLS_HARDWARE_MPI option was turned on by default.

Why the MPI_INTERRUPT option is removed:
the old implementation used calculations on the hardware and
it took a lot of time (10ms - 500ms). And in order not to stand idle
while waiting for completion, an interrupt option was added.
This made it possible to carry out other tasks during the calculation,
and this one to block. The new method is free from such a drawback and
the maximum duration of one RSA HW operation does not exceed 70us (usually 2-70 μs).
This option is no longer needed.

Closes: IDF-965
2019-11-05 16:33:11 +08:00
Renz Christian Bagaporo
9d33ad5e25 cmake: support git worktree
Use rev-parse to get the HEAD directory instead of manually looking for
it. This method works in the main repository, worktrees and submodules.

Closes https://github.com/espressif/esp-idf/issues/4136
2019-11-05 15:32:35 +08:00
Angus Gratton
03d07741fd Merge branch 'bugfix/esp32s2beta_vfs_performance' into 'master'
VFS: Fix performance test for esp32s2beta

Closes IDF-1024

See merge request espressif/esp-idf!6549
2019-11-05 12:42:52 +08:00
Angus Gratton
302510cd80 Merge branch 'feature/add_env_tag_for_32khz_xtal_uts' into 'master'
soc(esp32&esp32s2beta): Add test_env for 32kHz XTAL unit tests

See merge request espressif/esp-idf!6555
2019-11-05 12:05:24 +08:00
Angus Gratton
ffdb57e04d Merge branch 'bugfix/http_client_message_complete_callback_invocation' into 'master'
Fix issue in http client regarding `message_complete` callback invocation

Closes IDFGH-2040

See merge request espressif/esp-idf!6413
2019-11-05 12:02:10 +08:00
Chen Zheng Wei
b4a02c57c2 bugfix(i2s_bootloader_random_disable): fix bug about i2s bootloader_random_disable
bootloader_random_disable disables the ADC incorrectly, causing the ADC to sometimes fail to work. Fix this bug

closes https://github.com/espressif/esp-idf/issues/3973
2019-11-05 10:36:53 +08:00
Angus Gratton
8b48a8e72e Merge branch 'feature/efuse_example' into 'master'
examples: Add an example efuse API usage and the group writing mode

Closes IDF-773

See merge request espressif/esp-idf!5810
2019-11-05 10:13:21 +08:00
Roland Dobai
70b6f5397f Fix Python requirement for setuptools 2019-11-04 16:18:37 +01:00
Angus Gratton
ad79772e7e Merge branch 'bugfix/cmake_sdkconfig_issues' into 'master'
cmake: fix sdkconfig related issues

Closes IDF-1086

See merge request espressif/esp-idf!6436
2019-11-04 18:30:49 +08:00
Angus Gratton
13ff57f133 Merge branch 'feature/ipc_runs_with_caller_priority' into 'master'
esp_common: IPC works with the priority of the caller's task

Closes IDF-78

See merge request espressif/esp-idf!6191
2019-11-04 18:29:14 +08:00
Angus Gratton
f80004a74e Merge branch 'feat/spi_flash_verify_encrypted_write' into 'master'
spi_flash: support to verify written encrypted data

Closes IDF-142

See merge request espressif/esp-idf!6467
2019-11-04 18:26:07 +08:00
Angus Gratton
c5ef1cae04 Merge branch 'feature/perfmon' into 'master'
Performance monitor component

See merge request espressif/esp-idf!4705
2019-11-04 18:25:14 +08:00
Angus Gratton
c6f1a32c5c Merge branch 'bugfix/add_swp_to_gitignore' into 'master'
.gitignore: added *.swp in gitignore

See merge request espressif/esp-idf!6563
2019-11-04 18:15:57 +08:00
Hrudaynath Dhabe
87ab9df398 .gitignore: added *.swp in gitignore 2019-11-04 18:15:57 +08:00
Angus Gratton
9ac55b5e55 Merge branch 'fix/ci_ut_psram_wroverb' into 'master'
ci: fix one ut issue when using Wrover-B module with newer ver of PSRAM

See merge request espressif/esp-idf!6553
2019-11-04 18:12:44 +08:00
Ivan Grokhotkov
71b73e61e1 mbedtls: Enable SHA hardware acceleration by default 2019-11-04 10:48:08 +01:00
Ivan Grokhotkov
589a1f216f mbedtls: add SHA performance test
Results with this revision:

SHA256 rate 2.599MB/sec Debug 240MHz SW
SHA256 rate 1.147MB/sec Release 80MHz SW
SHA256 rate 3.469MB/sec Release 240MHz SW
SHA256 rate 2.687MB/sec Release 240MHz SW + PSRAM workaround

SHA256 rate 9.433MB/sec Debug 240MHz HW rev1
SHA256 rate 3.727MB/sec Release 80MHz HW rev1
SHA256 rate 10.961MB/sec Release 240MHz HW rev1
SHA256 rate 9.966MB/sec Release 240MHz HW rev1 + PRAM workaround

SHA256 rate 10.974MB/sec Debug 240MHz HW rev3
SHA256 rate 4.362MB/sec Release 80MHz HW rev3
SHA256 rate 13.207MB/sec Release 240MHz HW rev3

Debug = Og, assertions enabled
Release = O2, assertions disabled
2019-11-04 10:48:08 +01:00
Anton Maklakov
c2db6a14c4 Introduce esp-2019r2 toolchain for both ESP32 and ESP32s2 targets
Adds support of POSIX libs like regex.h

closes https://github.com/espressif/esp-idf/issues/2407
closes https://github.com/espressif/esp-idf/issues/4257
ref https://github.com/espressif/esp-idf/issues/271

Also there are some changes in the toolchain's changelog
2019-11-04 16:14:57 +07:00
Angus Gratton
49193beb6d Merge branch 'bugfix/reenable_esp_event_tests' into 'master'
esp_event: reenable esp_event tests

See merge request espressif/esp-idf!6371
2019-11-04 15:07:34 +08:00
Angus Gratton
0e9c2cdc93 Merge branch 'bugfix/esp32s2beta_enable_protocol_examples' into 'master'
Bugfix/esp32s2beta enable protocol examples

Closes IDF-1027

See merge request espressif/esp-idf!6566
2019-11-04 14:46:57 +08:00
Mahavir Jain
e1a6846ac3 examples/ota: disable WiFi power save mode for optimal performance 2019-11-04 12:15:19 +05:30
Matt Phillips
a51fe89778 Update OTA Documentation to clarify grammar.
The sentence about CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE was worded strangely.
I updated it to better explain the functionality.

Closes https://github.com/espressif/esp-idf/pull/4228
2019-11-04 12:15:19 +05:30
Mahavir Jain
4dcffdb0a9 esp_http_client: fix issue where http parser was not invoking message_complete callback
https://github.com/espressif/esp-idf/issues/2625
https://github.com/espressif/esp-idf/issues/4209
2019-11-04 12:15:19 +05:30
Mahavir Jain
917a406c0a Logging improvements in OTA example and component 2019-11-04 12:15:19 +05:30
Mahavir Jain
de9549936d examples: fix handle passed to esp_https_ota_is_complete_data_received 2019-11-04 12:15:19 +05:30
Angus Gratton
b7c2c93ecc Merge branch 'bugfix/wifi_internal_memory' into 'master'
wifi: Include DMA reserved pool when allocating internal-only memory

Closes WIFI-883

See merge request espressif/esp-idf!6545
2019-11-04 13:55:49 +08:00
Krzysztof Budzynski
efb51d1075 Merge branch 'feature/ethernet-kit-v1.1' into 'master'
Provide Ethernet-Kit V1.1 Getting Started Guide

See merge request espressif/esp-idf!6259
2019-11-04 10:44:00 +08:00
Krzysztof Budzynski
0abb3b99c1 Update missing description of board A and B connectors. Add a note about incorrect GPIO pin labels on the silkscreen besides the function switch. 2019-11-04 10:44:00 +08:00
Renz Christian Bagaporo
2dd74d4b7a ci: remove semicolon for cmake build system test 2019-11-03 16:52:06 +08:00
Renz Christian Bagaporo
42d4f39a9a cmake: consider sdkconfig defaults value from environment 2019-11-03 16:43:58 +08:00
Renz Christian Bagaporo
b0bb53de06 ci: test multiple sdkconfig defaults 2019-11-03 16:43:58 +08:00
Renz Christian Bagaporo
bf1df9b5b5 cmake: do not check if sdkconfig exists 2019-11-03 16:43:58 +08:00
Renz Christian Bagaporo
d43cc4fa4b cmake: allow multiple sdkconfig defaults to be specified 2019-11-03 16:43:58 +08:00
Renz Christian Bagaporo
f356d54365 esp_event: revert changes in !5702 2019-11-03 16:19:30 +08:00
Michael (XIAO Xufeng)
748b79e94a ci: fix one ut issue when using Wrover-B module with newer ver of PSRAM
The workaround for PSRAM that will occupy an SPI bus is enabled only when:

1. used on 32MBit ver 0 PSRAM.
2. work at 80MHz.

The test used to only check 32MBit by the config option, but for PSRAM
on Wrover-B module seems to use a newer version of 32MBit PSRAM.  So it
expects the workaround to be enabled, but actually not.

This commit split the unit test into two parts:

1. check all SPI buses are available, for all configs except psram_hspi
and psram_vspi, run on regular runners (including Wrover and Wrover-B).
a hidden option is enabled so that the compiler knows it's not building
psram_hspi or psram_vspi.

2. check the specified bus are acquired, for config psram_hspi and
psram_vspi. This only run on special runner (legacy Wrover module).
2019-11-03 03:07:37 +00:00
Jiang Jiang Jian
363b573e60 Merge branch 'bugfix/fix_tkip_ccmp_replay_attack_detection_algorithm' into 'master'
esp_wifi: fix tkip/ccmp replay detection algorithm

Closes WIFI-1012

See merge request espressif/esp-idf!6388
2019-11-02 23:42:10 +08:00
liu zhifu
c9dfdc0566 esp_wifi: fix TKIP/CCMP replay attack detection algorithm 2019-11-02 14:49:21 +00:00
tatsutaigu
e6ad82a0b2 idf.py: Add --before flag to esptool.py call
Merges https://github.com/espressif/esp-idf/pull/4125
2019-11-01 20:00:56 +01:00
Ivan Grokhotkov
fc9eddad5c Merge branch 'bugfix/test_build_system_rsync' into 'master'
ci: fix regression in build system tests

See merge request espressif/esp-idf!6576
2019-11-01 23:55:23 +08:00
Ivan Grokhotkov
88b5a9c4d6 ci: fix regression in build system tests
On macOS, rsync --exclude option accepts absolute paths as well as
relative ones. On Linux, it doesn't, which results in endless recursive
copying of test_build_system directory.
2019-11-01 15:43:21 +01:00
Ivan Grokhotkov
28b10e633d Merge branch 'bugfix/esp32s2beta_uxTopUsedPriority' into 'master'
freertos: fix defining uxTopUsedPriority for esp32s2beta

See merge request espressif/esp-idf!6378
2019-11-01 18:51:00 +08:00
Jiang Jiang Jian
d7e9d87aef Merge branch 'bugfix/bugs_in_a2dp_task' into 'master'
components/bt: Not post message to a2dp ctrl queue from btc queue, just call it.

Closes BT-436

See merge request espressif/esp-idf!6019
2019-11-01 18:46:21 +08:00
Ivan Grokhotkov
9ffd444e52 Merge branch 'feature/ci_macos_build_system_test' into 'master'
ci: add CMake build system test for macOS

See merge request espressif/esp-idf!6552
2019-11-01 18:41:30 +08:00
Roland Dobai
84bbafb6a4 VFS: Fix performance test for esp32s2beta 2019-11-01 09:40:16 +00:00
Shubham Kulkarni
0dafdd2984 Merge branch 'bugfix/CMake_esp_https_ota_dependencies' into master
components/esp_https_ota: Changes in public requirement list for CMake and esp_ota_ops.h is included in esp_https_ota.c

bootloader_support is added in public requirements of CMake

bootloader_common.h is included in esp_https_ota.h

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

Closes IDFGH-2066
2019-11-01 12:50:17 +05:30
Jiang Jiang Jian
cb6e2fc858 Merge branch 'feature/wifi_pmk_caching' into 'master'
wifi: Add PMK caching feature for station WPA2-enterprise

Closes IDF-969

See merge request espressif/esp-idf!6156
2019-11-01 15:11:20 +08:00
Krzysztof Budzynski
1c306423ad Merge branch 'doc/ble_mesh_terminology_using_wrong_title' into 'master'
doc: fix wrong title of ble mesh terminology

See merge request espressif/esp-idf!6559
2019-11-01 14:40:43 +08:00
baohongde
90b18dd4f6 components/bt: Not post message to a2dp ctrl queue from btc queue, just call it. 2019-11-01 14:12:25 +08:00
KonstantinKondrashov
6071e2f3c7 esp_common: IPC refactor
- esp_ipc_call_and_wait() can work simultaneously on two CPUs.
- This will increase the priority for ipc_task
  if the current task also wants to use it.
- Added the ESP_IPC_USES_CALLERS_PRIORITY option
  to get back the old IPC behaviour.
2019-11-01 13:41:25 +08:00
Angus Gratton
592946a2cd Merge branch 'bugfix/esp32s2beta_vfs_uart' into 'master'
Fix VFS UART unit tests for esp32s2beta

Closes IDF-1018

See merge request espressif/esp-idf!6301
2019-11-01 13:39:16 +08:00
Jiang Jiang Jian
fd4da421e5 Merge branch 'bugfix/btdm_assert_deinit_a2dp_while_playing' into 'master'
components/bt: Fix assert when deinit A2DP while playing music

Closes BT-471

See merge request espressif/esp-idf!6533
2019-11-01 11:57:01 +08:00
Marius Vikhammer
500c247030 protocol examples: enable protocol examples for esp32sbeta
Closes IDF-1027
2019-11-01 11:14:10 +08:00
Marius Vikhammer
845003a1c3 ASIO: fixed undefined ref to atomic functions and enabled examples for CI (esp32s2beta)
Implemented the atomic functions needed to compile and link the asio examples on esp32s2beta.
2019-11-01 11:12:47 +08:00
Ivan Grokhotkov
3da93b0a5e Merge branch 'bugfix/win_s2_toolchain' into 'master'
tools: Fix toolchain installer for Windows and macOS

See merge request espressif/esp-idf!6548
2019-10-31 23:29:59 +08:00
Ivan Grokhotkov
daa9955e4a Merge branch 'feature/cxx_rtti_preparation_v3' into 'master'
C++:  re-add provisions for optional RTTI support (v3)

See merge request espressif/esp-idf!6556
2019-10-31 23:26:44 +08:00
Ivan Grokhotkov
e24dda5dfb Merge branch 'bugfix/freemodbus_fix_destroy_functions' into 'master'
freemodbus: fix a bug with destroy function of modbus controller and timer port

Closes IDFGH-2056

See merge request espressif/esp-idf!6493
2019-10-31 23:23:24 +08:00
Alex Lisitsyn
4bac558ab3 freemodbus: fix a bug with destroy function of modbus controller and fix port destroy functions
adds timer interrupt handle and free it in vMBXXXPortTimerClose() in master and slave timer port
assign modbus controller interface pointer to NULL in destroy function after free
2019-10-31 23:23:24 +08:00
Jiang Jiang Jian
02a756015d Merge branch 'feature/wifi_merge_libs_to_master' into 'master'
esp_wifi: merge esp32s2beta WiFi library and fix WiFi deinit memory leak bug

See merge request espressif/esp-idf!6531
2019-10-31 20:56:39 +08:00
Mahavir Jain
09f699bf37 docs/en: fix formatting for esp_local_control component 2019-10-31 17:24:16 +05:30
Hrudaynath Dhabe
4d3356be52 wifi: Add PMK caching feature for station WPA2-enterprise
4. Pmksa cache expiry after dot11RSNAConfigPMKLifetime timeout.
2019-10-31 10:51:30 +00:00
Sagar Bijwe
bd5d086475 wifi: Add PMK caching feature for station WPA2-enterprise
1) Added PMK caching module from wpa_supplicant.
2) Modified wpa_sm to
    a) Add entry to PMK cache when first time associated to an AP.
    b) Maintain entry across the associations.
    c) Clear current PMKSA when deauth happens.
    d) Search for an entry when re-associating to the same AP and
       set it as current PMKSA
    e) Wait for msg 1/4 from AP instead of starting EAP authentication.
    f) Check PMKID in msg 1 with current PMKSA/cache.
    g) Use the cached PMK to complete 4-way handshake.
3) Remove config_bss callback as it was redundant and used to cause
   problems for PMK caching flow.

Closes IDF-969
2019-10-31 10:51:30 +00:00
lly
7fde866d8c doc: fix wrong title of ble mesh terminology 2019-10-31 17:06:17 +08:00
Ivan Grokhotkov
c0c75478fa Merge branch 'feature/idfpy_extensions' into 'master'
idf.py: Support extensions for idf.py and move commands to separate files

Closes IDF-1041

See merge request espressif/esp-idf!6416
2019-10-31 15:47:59 +08:00
Ivan Grokhotkov
a29d996191 Merge branch 'bugfix/system_api' into 'master'
system api: Refactor to esp_common, small fixes

Closes IDFGH-2096

See merge request espressif/esp-idf!6544
2019-10-31 15:40:33 +08:00
Marius Vikhammer
bf1977e48e http_server: fix sdmmc related build error for esp32s2beta
ESP32S2 does not have sdmmc, disable SD host for esp32s2
2019-10-31 14:42:29 +08:00
Angus Gratton
937e2fac2d Merge branch 'bugfix/can_critical_section_compliance' into 'master'
CAN: Fix critical section compliance

Closes IDF-986

See merge request espressif/esp-idf!6536
2019-10-31 14:00:36 +08:00
KonstantinKondrashov
e3ff160733 soc/esp32: Add test_env for 32kHz XTAL unit tests 2019-10-31 13:23:47 +08:00
KonstantinKondrashov
f9e0e3557f soc/esp32s2beta: Add test_env for 32kHz XTAL unit tests 2019-10-31 13:23:47 +08:00
Anton Maklakov
c45fdf754f C++: prepare RTTI support
Ref. https://github.com/espressif/esp-idf/issues/1684

Also, for full RTTI support, libstdc++.a in the toolchain should be built
in both with RTTI and w/o RTTI options. Multilib with -fno-rtti
flag is used for that.

Note that this commit does not actually enable RTTI support.
The respective Kconfig option is hidden, and will be made visible when
the toolchain is updated.
2019-10-31 11:20:16 +07:00
Angus Gratton
1768473eb8 bt: Include DMA reserved pool when allocating internal-only memory
Fix for root cause of https://github.com/espressif/esp-idf/issues/3592
2019-10-31 15:19:17 +11:00
Anton Maklakov
d86ec0f367 Revert "C++: add provisions for optional RTTI support"
This reverts commit 499d087c91.
2019-10-31 10:12:16 +07:00
Ivan Grokhotkov
785cc69959 Merge branch 'bugfix/esp32s2beta_ut_sdkconfig_defaults' into 'master'
unit-test-app: fix chip-specific sdkconfig options

See merge request espressif/esp-idf!6063
2019-10-31 02:55:21 +08:00
Ivan Grokhotkov
9279b72a6c idf_tools.py: fix virtualenv issue for macOS with homebrew 2019-10-30 19:44:15 +01:00
Ivan Grokhotkov
f61fd8a664 tools: remove spaces from toolchain URLs 2019-10-30 19:44:15 +01:00
Ivan Grokhotkov
cfe9244a96 ci: add build system test on macOS 2019-10-30 19:44:15 +01:00
Ivan Grokhotkov
058d13c351 ci: fixes for CMake build system test on macOS 2019-10-30 18:59:38 +01:00
Roland Dobai
bdb08de875 tools: Fix toolchain installer for Windows 2019-10-30 15:43:25 +01:00
Roland Dobai
2a0285fdb4 Fix VFS UART unit tests for esp32s2beta 2019-10-30 13:45:12 +00:00
Ivan Grokhotkov
a088678dd4 unit-test-app: apply sdkconfig.defaults.esp32 for Make builds 2019-10-30 10:43:38 +01:00
Ivan Grokhotkov
92d4b86182 ci: add tests for sdkconfig.defaults.IDF_TARGET 2019-10-30 10:43:37 +01:00
Ivan Grokhotkov
64c41cfcad make: add support for sdkconfig.defaults.IDF_TARGET 2019-10-30 10:43:37 +01:00
Ivan Grokhotkov
142e49f4cc unit-test-app: fix chip-specific sdkconfig options
DEFAULT_CPU_FREQ and ULP_COPROC_ENABLED options have chip-specific
names, and should be set in a chip-specific sdkconfig.defaults file.
This commit also changes the default CPU frequency for ESP32S2 unit
tests to 240 MHz.
2019-10-30 10:41:30 +01:00
Sergei Silnov
5e6aae3e04 Fix typo and naming format for extensions 2019-10-30 10:34:17 +01:00
Sergei Silnov
1c798393e2 Add idf.py extensions and move core actions to separate files 2019-10-30 10:34:17 +01:00
Krzysztof Budzynski
8501a8119c Merge branch 'feature/esp-ble-mesh-documentation' into 'master'
Provide BLE Mesh documentation

See merge request espressif/esp-idf!6234
2019-10-30 17:01:19 +08:00
Krzysztof Budzynski
2c3548b65e Provide BLE Mesh documentation 2019-10-30 17:01:18 +08:00
KonstantinKondrashov
cf762d91c2 efuse: Add the batch writing mode
This mode should be used when burning several efuses at one time.
2019-10-30 15:43:40 +08:00
KonstantinKondrashov
d7fa288a6c examples: Add an example efuse API usage
Added: read, write operations for the common and custom efuse tables.
Writing is possible only for CONFIG_EFUSE_VIRTUAL.

Closes: IDF-773
2019-10-30 15:43:40 +08:00
Jiang Jiang Jian
9d5a7f8df6 Merge branch 'bugfix/btdm_possibly_unable_to_enter_sleep_after_woken_up' into 'master'
bugfix/btdm_possibly_unable_to_enter_sleep_after_woken_up

See merge request espressif/esp-idf!6219
2019-10-30 15:38:58 +08:00
Michael (XIAO Xufeng)
2660cb82ae spi_flash: support to verify written encrypted data
Also add unit test for encrypted_read
2019-10-30 05:49:50 +00:00
Angus Gratton
f48285de10 wifi: Include DMA reserved pool when allocating internal-only memory
Fix for root cause of https://github.com/espressif/esp-idf/issues/3592
2019-10-30 15:57:17 +11:00
Angus Gratton
02f6bc5438 Merge branch 'bugfix/ws_client_sending_race' into 'master'
websocket_client: fix locking in ws client task

Closes IDFGH-1973

See merge request espressif/esp-idf!6266
2019-10-30 12:33:59 +08:00
Angus Gratton
045fbd4574 Merge branch 'feature/kconfiglib_package' into 'master'
Update kconfiglib to upstream version and replace mconf-idf

Closes IDF-314, IDF-739, IDFGH-1857, and IDF-1050

See merge request espressif/esp-idf!6057
2019-10-30 12:13:56 +08:00
Angus Gratton
3bddf269ab Merge branch 'doc/review_api-ref_periph-sd_pullup' into 'master'
Review the file api-reference/peripherals/sd_pullup_requirements.rst

See merge request espressif/esp-idf!5793
2019-10-30 12:01:42 +08:00
Angus Gratton
fbbcade397 Merge branch 'bugfix/handler_unregister_itself' into 'master'
esp_event: fix handler unregistering itself

See merge request espressif/esp-idf!6274
2019-10-30 12:00:49 +08:00
Angus Gratton
d0256a8867 Merge branch 'refactor/lwip_port_layer' into 'master'
clean up TCPIP Stack  port layer

Closes IDFGH-1990 and IDFGH-2041

See merge request espressif/esp-idf!6230
2019-10-30 11:58:49 +08:00
Jiang Jiang Jian
9a602920bd Merge branch 'Bugfix/close_nonblocking_tcp_crash' into 'master'
fix bug for close nonblocking socket crash

Closes WIFI-1052

See merge request espressif/esp-idf!5963
2019-10-30 11:27:57 +08:00
Angus Gratton
4827723d76 system api: Move common parts into esp_common component
Also mark esp_base_mac_addr_set argument as 'const *'
2019-10-30 14:19:22 +11:00
Angus Gratton
912bd03a5c system api: Check if Base MAC is a unicast MAC before setting
Closes https://github.com/espressif/esp-idf/issues/4263
Closes IDFGH-2096
2019-10-30 13:52:41 +11:00
liu zhifu
b09624e89a esp_wifi: fix WiFi deinit memory leak 2019-10-30 10:12:15 +08:00
Ivan Grokhotkov
053e722574 Merge branch 'bugfix/gh_action_cron_pull_requests' into 'master'
gh_action: add cron job to sync remaining PRs

Closes IDFGH-1872

See merge request espressif/esp-idf!6445
2019-10-30 03:58:07 +08:00
Ivan Grokhotkov
d90dd48e48 Merge branch 'fix/flag_attr_static' into 'master'
esp_attr: Fix multiple definition linker error for operators for C++ build including FLAG_ATTR'ed enum.

Closes IDF-1091

See merge request espressif/esp-idf!6469
2019-10-30 03:56:14 +08:00
Ivan Grokhotkov
faa219acdb freertos: fix defining uxTopUsedPriority for esp32s2beta 2019-10-29 16:38:48 +01:00
Darian Leung
d2114d70a0 CAN: Fix critical section compliance
This commit makes the CAN driver ISR use the ISR version
of critical section.
2019-10-29 20:06:39 +08:00
baohongde
a099b6f7e4 components/bt: Fix assert when deinit A2DP while playing music 2019-10-29 19:47:50 +08:00
Xia Xiaotian
9afba2abf5 esp_wifi: merge esp32s2beta WiFi library to master branch 2019-10-29 19:41:33 +08:00
Kirill Chalov
22526c1701 Review the file api-reference/peripherals/sd_pullup_requirements.rst 2019-10-29 18:56:48 +08:00
xueyunfei
ee57f5d8f3 fix bug for close nonblocking tcp crash 2019-10-29 18:51:55 +08:00
Jiang Jiang Jian
6e00988608 Merge branch 'bugfix/fix_dhcp_timeout_issue' into 'master'
Bugfix/fix dhcp timeout issue

Closes WIFI-917

See merge request espressif/esp-idf!6300
2019-10-29 18:20:14 +08:00
Roland Dobai
01887f71e7 Update kconfiglib to upstream version and replace mconf-idf
Special thanks to @ulfalizer for the helpful suggestions regarding
kconfiglib.

"rsource" option is available for relative path includes
Closes https://github.com/espressif/esp-idf/issues/4064
2019-10-29 10:40:04 +01:00
Darian Leung
81ddd9e291 CAN: Reenable example tests
This commit updates the CAN example tests and updates the job
and environment labels in the target-test.yml
2019-10-29 17:25:49 +08:00
Krzysztof Budzynski
3b91c1f4b2 Merge branch 'docs/uart_pattern_detection_clarification' into 'master'
docs: Add extra clarification on use of uart pattern detection.

See merge request espressif/esp-idf!6498
2019-10-29 16:55:50 +08:00
Krzysztof Budzynski
14ed4800d1 docs: Add extra clarification on use of uart pattern detection.
Closes https://github.com/espressif/esp-idf/issues/4187
2019-10-29 16:55:49 +08:00
Angus Gratton
dc5a7c85ff Merge branch 'bugfix/child_cmake_uninitialized_vars' into 'master'
cmake: Set uninitialized variable warnings in ULP & bootloader subprojects

See merge request espressif/esp-idf!6302
2019-10-29 16:00:05 +08:00
Angus Gratton
7637feb6ef Merge branch 'bugfix/jump_time_54_sec' into 'master'
esp_timer: Fix time jumps back ~ 54sec

Closes IDFGH-396

See merge request espressif/esp-idf!5943
2019-10-29 14:38:15 +08:00
Angus Gratton
f4ea7c5a46 cmake: Set uninitialized variable warnings in ULP & bootloader subprojects
Fixes issue where PYTHON was not being expanded when running ulp_mapgen.py,
causing Windows launch setting to be used - reported here:
https://esp32.com/viewtopic.php?f=13&t=12640&p=50283#p50283
2019-10-29 05:38:39 +00:00
Angus Gratton
a45e998534 Merge branch 'doc/support_policy' into 'master'
docs: Add ESP-IDF support period policy

See merge request espressif/esp-idf!6369
2019-10-29 13:24:06 +08:00
Angus Gratton
8569d51651 Merge branch 'bugfix/fix_i2s_include_head_bug' into 'master'
Bugfix(I2S):  Fix i2s build error

See merge request espressif/esp-idf!6512
2019-10-29 13:19:00 +08:00
suda-morris
28eae0d467 lwip: cleanup lwip port layer
1. add sys_mbox_trypost_fromisr
2. define sys_msleep
3. simpify semaphore take
2019-10-29 13:11:14 +08:00
Josu Goñi
65d18eab93 Add config option for LWIP TCP_TMR_INTERVAL
Merges https://github.com/espressif/esp-idf/pull/4213
2019-10-29 13:11:14 +08:00
Thomas Schaub
9e2f44b3c2 lwip: add missing source file
Merges https://github.com/espressif/esp-idf/pull/4186
2019-10-29 13:11:14 +08:00
suda-morris
938069de75 gh_action: add cron job to sync remaining PRs 2019-10-29 13:10:00 +08:00
Angus Gratton
055cc251b7 Merge branch 'feature/esp32s2beta_merge' into 'master'
esp32s2beta: Merge support to master

Closes IDF-513, IDF-756, IDF-758, IDF-999, IDF-753, IDF-749, IDF-754, IDF-840, and IDF-755

See merge request espressif/esp-idf!6100
2019-10-29 13:02:01 +08:00
Mahavir Jain
d2e62a1602 Merge branch 'NimBLE/update_to_nimble-1.2.0_release' into 'master'
NimBLE: Update NimBLE submodule to latest `nimble-1.2.0-idf` release

See merge request espressif/esp-idf!6350
2019-10-29 12:52:05 +08:00
Prasad Alatkar
c5339779a7 NimBLE: Update NimBLE submodule to latest nimble-1.2.0-idf release 2019-10-29 12:52:05 +08:00
Mahavir Jain
67a2f558df Merge branch 'feature/esp_tls_add_wolfssl_and_segregate_files' into 'master'
feature/esp_tls :segregate esp_tls , seperate mbedtls api and add wolfssl support for esp32

See merge request espressif/esp-idf!6095
2019-10-29 12:49:40 +08:00
Angus Gratton
e8881352c5 secure boot: Fix bug where verification key was not embedded in app 2019-10-29 12:46:09 +11:00
Jiang Jiang Jian
21d49a7e0d Merge branch 'bugfix/coex_semaphore_take_in_isr_lock' into 'master'
fix bug that semaphore may schedule out in ISR locking

See merge request espressif/esp-idf!6425
2019-10-28 18:43:37 +08:00
Tian Hao
4987a5ad90 fix bug that semaphore may schedule out in Critical Section
1. Since BLE full-scan feature for BLE mesh change the controller code cause this problem,
it cause coex semaphore take in "interrupt disable", then it may cause task schedule
and cause crash in freertos
2. Fix newlib lock ISR context and critical section check
3. Fix bt controller ISR context and critical section check
2019-10-28 18:43:35 +08:00
Aditya Patwardhan
988f0c8feb ESP_TLS: Generalizing error messages for esp_tls
:Replace mbedtls specific error messages
2019-10-28 16:05:31 +05:30
Aditya Patwardhan
f7eaa5f946 ESP_TLS: Restructuring esp_tls
1)Segregating mbedtls API into seperate file and cleaned esp_tls.c
2)Added support for wolfssl for CMake and make
3)Added support for debug_wolfssl (with menuconfig option)
4)Added info on wolfssl in ESP-TLS docs
2019-10-28 16:05:22 +05:30
Angus Gratton
36cd75d7ed spi_flash tests: Fix exclusion of new API tests in legacy mode 2019-10-28 18:58:05 +11:00
Angus Gratton
894a3b4771 spi_flash: Remove duplicate spi_flash_rom_patch in CMakeLists.txt 2019-10-28 18:58:05 +11:00
Angus Gratton
eea0a6bc56 examples: Add ESP32 DUT class to ext_flash_fatfs example test 2019-10-28 18:58:05 +11:00
Angus Gratton
c6d22c9d65 esp32s2beta: Change default version to "A"
Fixes CI, and most customers should have version "A".
2019-10-28 18:58:05 +11:00
Angus Gratton
6e1aa985e7 ci: Increase INT_WDT_TIMEOUT_MS for PSRAM configs
This shouldn't be necessary, it's a workaround for a bug
in the config system.
2019-10-28 18:58:05 +11:00
Angus Gratton
1f62d4be74 esp32s2beta: Updated the beta chip version config to match the markings 2019-10-28 18:58:05 +11:00
Xia Xiaotian
5ffb42b4dd esp_wifi: support esp32s2beta A, B and marlin3 chip 2019-10-28 18:58:05 +11:00
Romain
5491365874 Fix build error semphr.h:74:3: error: #error "include FreeRTOS.h" must appear in source files before "include semphr.h"
FreeRTOS.h must always be included before semphr.h

Merges https://github.com/espressif/esp-idf/pull/4251
2019-10-28 12:21:26 +08:00
Jiang Jiang Jian
758db1e008 Merge branch 'bugfix/fix_mesh_proxy_adv_with_wrong_dev_name' into 'master'
ble_mesh: using bt device name in mesh proxy adv

Closes BLEMESH-51

See merge request espressif/esp-idf!6438
2019-10-26 20:45:10 +08:00
Jiang Jiang Jian
ea0f0b1700 Merge branch 'feature/btdm_add_api_to_set_channel_classification' into 'master'
Feature/btdm add api to set channel classification

Closes BT-450

See merge request espressif/esp-idf!6229
2019-10-26 20:42:58 +08:00
Jiang Jiang Jian
eef065374e Merge branch 'bugfix/btdm_disable_bt_gatt' into 'master'
components/bt: Disable BR/EDR GATT

Closes BT-456

See merge request espressif/esp-idf!6420
2019-10-26 20:42:37 +08:00
Jiang Jiang Jian
87e1dfa31e Merge branch 'bugfix/btdm_check_avrc_connected_error' into 'master'
components/bt: Fix error in checking AVRC connected

See merge request espressif/esp-idf!6415
2019-10-26 20:42:04 +08:00
Jiang Jiang Jian
a334ace26a Merge branch 'doc/handle_github_prs' into 'master'
address typos fix from PR

Closes IDFGH-2054

See merge request espressif/esp-idf!6481
2019-10-26 20:24:57 +08:00
Jiang Jiang Jian
e461668ea6 Merge branch 'bugfix/mdns_invalid_hostname_queries' into 'master'
mdns: fix crash for hostname queries

See merge request espressif/esp-idf!6480
2019-10-26 20:24:29 +08:00
ronghulin
66c0a107c8 lwip: fix DHCP timeout truncation bug
Change the DHCP timeout type from u16 to u32 to fix DHCP timeout value
truncation issue.
2019-10-25 21:07:37 +08:00
Renz Christian Bagaporo
1ed77e3a8d esp_event: remove extra line from source file 2019-10-25 13:14:05 +08:00
Angus Gratton
7ce75a42c7 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-25 15:13:52 +11:00
Marius Vikhammer
3d1170031b mdns: fix crash for hostname queries
Receiving TXT, PTR, SDPTR and SRV record type queries would crash the application if the hostname
 was used as instance name.

Closes https://github.com/espressif/esp-idf/issues/4224
2019-10-25 03:56:38 +00:00
baohongde
ed984cc9b5 components/bt: Add API and EVT for BLE set channels(BLE) 2019-10-25 11:39:35 +08:00
baohongde
eaf5f6a319 components/bt: Add API and EVT for set AFH channels(BR/EDR) 2019-10-25 11:39:22 +08:00
Renz Christian Bagaporo
521f436315 esp_event: test that handlers can unregister themselves 2019-10-25 11:39:16 +08:00
Renz Christian Bagaporo
3c253295eb esp_event: iterate loop nodes safely as well 2019-10-25 11:39:16 +08:00
Xentec
4c97906fc8 esp_event: fix crash when unregistering a handler instance in itself
When a handler instance is the last one in the list und unregisters
itself, the handler iterator will be invalidated by entering free'd
memory. Same applies for event base and id, if they become empty.

Merges https://github.com/espressif/esp-idf/pull/4139
2019-10-25 11:38:32 +08:00
Jiang Jiang Jian
f974811150 Merge branch 'feature/hf_ag' into 'master'
Feature: BT/HFP AG.

Closes BT-346 and BT-428

See merge request espressif/esp-idf!6306
2019-10-25 10:57:43 +08:00
wangmengyang
11aa4ef1ef components/bt: bugfix that bluetooth controller may not be able to enter sleep after end of wake up request 2019-10-25 02:52:12 +00:00
baohongde
d6201066a3 components/bt: Fix error in checking AVRC connected 2019-10-25 02:50:31 +00:00
baohongde
93f86b8a6d components/bt: Disable BR/EDR GATT 2019-10-25 02:49:51 +00:00
Angus Gratton
caa59da5de Merge branch 'bugfix/can_reset_mode_entry' into 'master'
can: Fix reset mode entry and exit calls

See merge request espressif/esp-idf!6442
2019-10-25 10:31:08 +08:00
Angus Gratton
36d440bd59 ci: Temporarily ignore CAN example test failures
Due to internal CI issue.
2019-10-25 12:49:42 +11:00
Darian Leung
434d1d29d1 can: Fix reset mode entry and exit calls
This commit fixes multiple bugs caused by incorrect calls to
can_enter_reset_mode() and can_exit_reset_mode. Example test
scripts also updated to match new runners.
2019-10-25 03:40:43 +08:00
Rebecca (Bex) Cran
bbb4e0e8f8 Fix typo (tree/three) in uart.rst
Merges https://github.com/espressif/esp-idf/pull/4237
2019-10-24 21:20:24 +08:00
Krzysztof Budzynski
bae5062175 Merge branch 'doc/review_hw-ref-toctree-issues' into 'master'
Make "H/W Reference" toctree symmetrical

See merge request espressif/esp-idf!6449
2019-10-24 16:56:12 +08:00
David Cermak
7c5011f411 websocket_client: fix locking mechanism in ws-client task and when sending data
closes https://github.com/espressif/esp-idf/issues/4169
2019-10-24 07:09:31 +00:00
Mahavir Jain
8661f5f2e7 Merge branch 'nimble/esp_ble_mesh_adv_fix' into 'master'
nimble: Miscellaneous changes

See merge request espressif/esp-idf!6471
2019-10-24 14:38:02 +08:00
Hrishikesh Dhayagude
a26dfe70aa nimble: Miscellaneous changes
1. Update NimBLE submodule as per changes in adv interval and stop port
2. Make changes in ESP BLE Mesh NimBLE host code for the same
2019-10-24 14:38:01 +08:00
Angus Gratton
3caa54e546 Merge branch 'feature/add_ping_example' into 'master'
add ping example

Closes WIFI-1196 and IDF-1068

See merge request espressif/esp-idf!6340
2019-10-24 11:37:38 +08:00
Angus Gratton
4322c863e2 Merge branch 'bugfix/docs_rst_fix_quotation' into 'master'
docs: quotation mark fix in recently added comment

See merge request espressif/esp-idf!6459
2019-10-24 11:18:50 +08:00
X-Ryl669
5780ac3207 esp_attr: Fix multiple definition linker error for operators for C++ build including FLAG_ATTR'ed enum.
Closes: https://github.com/espressif/esp-idf/pull/4021
Closes: https://github.com/espressif/esp-idf/issues/4016
2019-10-23 17:31:24 +08:00
Angus Gratton
ba74534efb Merge branch 'bugfix/esp_tls_check_buffer_size' into 'master'
esp-tls: Asserting maximum output buffer in tls-write.

See merge request espressif/esp-idf!6317
2019-10-23 14:45:28 +08:00
Angus Gratton
c474a7c56e Merge branch 'feature/wifi_redo_scan_example' into 'master'
esp_wifi: Additional code snippets in esp_wifi_scan_example

Closes WIFI-1248

See merge request espressif/esp-idf!6310
2019-10-23 14:12:33 +08:00
Hrudaynath Dhabe
019502a36e esp_wifi: Additional code snippets in esp_wifi_scan_example 2019-10-23 14:12:32 +08:00
Angus Gratton
9f93067649 Merge branch 'bugfix/select_with_sdmmc_mount' into 'master'
VFS: Fix bug which occurs when driver is installed during a select() call

Closes IDFGH-1259

See merge request espressif/esp-idf!6359
2019-10-23 14:05:49 +08:00
Angus Gratton
b525fa2c0a Merge branch 'doc/review_api-ref_periph-spi_master' into 'master'
Review the file api-reference/peripherals/spi_master.rst.

See merge request espressif/esp-idf!5540
2019-10-23 14:04:04 +08:00
Angus Gratton
04dbe663be Merge branch 'feature/heap_caps_get_size_free' into 'master'
add heap_caps_get_allocated_size

See merge request espressif/esp-idf!6375
2019-10-23 14:02:50 +08:00
Angus Gratton
740f334b4b Merge branch 'bugfix/fix_embed_files_docs_with_cmake' into 'master'
docs: cmake docs fixes

See merge request espressif/esp-idf!5391
2019-10-23 13:19:47 +08:00
Angus Gratton
5bec9fb010 Merge branch 'bugfix/random_en_dis_for_app' into 'master'
bootloader_support: Fix using shared CLK_EN and RST_EN regs for random

See merge request espressif/esp-idf!6198
2019-10-23 13:18:01 +08:00
Angus Gratton
b216e3b5c8 Merge branch 'feature/lwip_support_mdns_queries' into 'master'
lw-IP: support mdns queries

See merge request espressif/esp-idf!5242
2019-10-23 13:10:41 +08:00
Angus Gratton
bf1d32d008 Merge branch 'feature/esptool_v2.8' into 'master'
esptool: Bump to v2.8 release

See merge request espressif/esp-idf!6437
2019-10-23 06:03:00 +08:00
David Cermak
b1fbf97802 docs: quotation mark fix in recently added comment 2019-10-22 21:26:37 +02:00
KonstantinKondrashov
b125bb50ea esp_common: IPC works with the priority of the caller's task
Closes: IDF-78
2019-10-22 22:19:34 +08:00
Kirill Chalov
bdaf201bd0 Make "H/W Reference" toctree symmetrical
Update the toctree of "H/W Reference" to make its contents symmetrical for easier and more intuitive navigation.
2019-10-22 21:27:10 +08:00
Krzysztof Budzynski
d3ee6b6225 Merge branch 'doc/add_chinese_translation_for_flash_encryption' into 'master'
add chinese translation into flash encryption

See merge request espressif/esp-idf!6185
2019-10-22 19:37:28 +08:00
Hao Ning
9ecc34e086 add chinese translation into flash encryption 2019-10-22 19:37:28 +08:00
Krzysztof Budzynski
93223ae3f0 Merge branch 'docs/Update_CN_Getting_Started_Legacy_With_Changes_in_EN' into 'master'
Sync CN translation with EN updates regarding GNU make to cmake

See merge request espressif/esp-idf!6309
2019-10-22 17:57:38 +08:00
Natasha
56ce449e7f SYNC CN translation with the lastest EN translation, to make CMAKE the default system
update CN translation
2019-10-22 17:57:37 +08:00
David Cermak
f0c6bb431f ci: mqtt ssl test updated to output larger data in form of binary partition
Testing with predefined buffer sizes for MQTT as well as mbedTLS to
exercise fragmenting outgoing data on both layers. Example test compares
received partition with the actual binary file.
2019-10-22 08:49:42 +00:00
David Cermak
a9e63d947b esp-tls: Added support for fragmenting outgoing data in tls_write(), for cases of out data being larger than the maximum out buffer of underlying tls-stack. 2019-10-22 08:49:42 +00:00
lly
2350b15451 ble_mesh: using bt device name in mesh proxy adv 2019-10-22 15:04:19 +08:00
Angus Gratton
c60370b67f esptool: Update esptool version to match master 2019-10-22 16:44:16 +11:00
Angus Gratton
d1b2c490cd esptool: Bump to v2.8 release 2019-10-22 16:39:54 +11:00
suda-morris
7bdd5f639b doc: add api reference for icmp_echo 2019-10-22 04:38:09 +00:00
suda-morris
dc6acf0033 icmp: add example and unitest 2019-10-22 04:38:09 +00:00
suda-morris
fa32a4bd93 ping: refactor with new esp_ping_xxx APIs
This refactor is only for backwards compatible.
2019-10-22 04:38:09 +00:00
Andro Nooh
a77e69c408 lwip: add icmp echo example
It piggybacks on the console example to add ping support and CLI.

Merges https://github.com/espressif/esp-idf/pull/4093
2019-10-22 04:38:09 +00:00
Ivan Grokhotkov
6c3527e2e6 Merge branch 'bugfix/fix_args_to_spiffsgen_in_make_buildsystem' into 'master'
spiffs: fix issue with args to spiffsgen in make

See merge request espressif/esp-idf!6434
2019-10-22 12:36:49 +08:00
Renz Christian Bagaporo
746322b7d6 spiffs: fix issue with args to spiffsgen in make 2019-10-22 11:35:19 +08:00
Jiang Jiang Jian
59aa07d5d9 Merge branch 'bugfix/btdm_fix_lmp_sniff_req_timeout' into 'master'
components/bt: Fix LMP sniff req timeout

See merge request espressif/esp-idf!6351
2019-10-22 11:20:14 +08:00
Angus Gratton
8675a818f9 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-22 13:51:49 +11:00
Jiang Jiang Jian
4c3c109e60 Merge branch 'feature/nimble_host_esp_ble_mesh' into 'master'
components/bt: Add support of NimBLE host in ESP BLE Mesh

See merge request espressif/esp-idf!6358
2019-10-21 20:18:25 +08:00
Hrishikesh Dhayagude
f58d7d14c7 components/bt: Add support of NimBLE host in ESP BLE Mesh 2019-10-21 20:18:21 +08:00
Jiang Jiang Jian
5b0d262489 Merge branch 'bugfix/not_restoring_ble_mesh_cfg_val' into 'master'
ble_mesh: fix not restoring ble mesh cfg value

See merge request espressif/esp-idf!6275
2019-10-21 20:16:45 +08:00
Roland Dobai
8b56496efa VFS: Fix bug which occurs when driver is installed during a select() call
Closes https://github.com/espressif/esp-idf/issues/3554
2019-10-21 11:59:38 +02:00
zhanghu
341ef5e8b2 add heap_caps_get_size_free 2019-10-21 16:47:36 +08:00
Kirill Chalov
deda0091d9 Review the file api-reference/peripherals/spi_master.rst. 2019-10-21 16:13:16 +08:00
Angus Gratton
27a4802f92 Merge branch 'bugfix/remove_mbedtls_would_block' into 'master'
Remove check for would_block in mbedtls

See merge request espressif/esp-idf!6384
2019-10-21 15:33:59 +08:00
Angus Gratton
c4fddc8590 Merge branch 'support/heap_caps_total_size_api' into 'master'
Add api to get total heap size in bytes for given capability

See merge request espressif/esp-idf!6362
2019-10-21 14:55:58 +08:00
Kewal
d3020b217d Add api to get total heap size in bytes for given capability 2019-10-21 14:55:58 +08:00
Jiang Jiang Jian
bb38d181a1 Merge branch 'bugfix/vfs_fat_sdmmc_mount' into 'master'
Fix memory leak upon failure of esp_vfs_fat_sdmmc_mount()

Closes IDFGH-1969

See merge request espressif/esp-idf!6282
2019-10-21 10:33:37 +08:00
Ivan Grokhotkov
c7d8ef52ca Merge branch 'fix/esp_flash_no_qe' into 'master'
esp_flash: fix the QE write issue in high freq, and support UT for external chips

Closes IDF-888

See merge request espressif/esp-idf!5736
2019-10-20 13:59:30 +08:00
Ivan Grokhotkov
6373196a41 Merge branch 'bugfix/mdns_BCT_fix' into 'master'
mdns: fixes to have the BCT passing with latest IDF/lw-IP

See merge request espressif/esp-idf!6286
2019-10-19 17:10:02 +08:00
Mahavir Jain
4b7a50d584 Merge branch 'bugfix/spi_flash_read_changes_for_less_than_16_bytes' into 'master'
Bugfix/spi flash read changes for less than 16 bytes

Closes IDFGH-1798

See merge request espressif/esp-idf!6126
2019-10-19 14:56:43 +08:00
Ajita Chavan
56f73d7720 flash_ops: fix spi_flash_read with source buffer not from internal memory and size < 16
Closes https://github.com/espressif/esp-idf/issues/4010
2019-10-19 14:56:43 +08:00
Ivan Grokhotkov
1821873a1d Merge branch 'feature/follow_symlinks_in_spiffsgen' into 'master'
spiffs: follow symlinks in spiffsgen

See merge request espressif/esp-idf!6280
2019-10-18 18:49:35 +08:00
Ivan Grokhotkov
5ca7cbfcc4 Merge branch 'bugfix/ci_test_idf_monitor' into 'master'
CI: Adjust the test parameters of IDF Monitor tests

See merge request espressif/esp-idf!6377
2019-10-18 18:01:11 +08:00
Angus Gratton
5db1f5fdfb docs: Add ESP-IDF support period policy 2019-10-18 18:25:20 +11:00
Jiang Jiang Jian
fe94e63de3 Merge branch 'bugfix/modify_buffer_number_type_from_u8_to_u16' into 'master'
esp_wifi: modify WiFi buffer number type from uint8_t to uint16_t

See merge request espressif/esp-idf!6355
2019-10-18 14:24:20 +08:00
Renz Christian Bagaporo
d44e3d9f56 docs: cmake docs fixes 2019-10-18 12:51:46 +08:00
Kedar Sovani
87c3decc12 Remove check for would_block in mbedtls
Basically, in the portability layer, it is checked if the socket is
NON-block, and if not, then even the EAGAIN and EWOULDBLOCK errors are
diverted to a RECV error. This causes a problem for sockets with
receive timeouts set. When such a timeout is set, the condition for
NON_BLOCK isn't met and hence a hard error is returned.

Searching for EAGAIN and EWOULDBLOCK in lwip returns only 3 results
(accept, recvfrom, close) and all of them look to be genuine cases for
EWOULDBLOCK. So removing this check to make receive timeout with TLS
work.
2019-10-17 16:36:18 +05:30
Krzysztof Budzynski
acf114895d Merge branch 'doc/review_api-ref_periph-spi_slave' into 'master'
Doc/review api ref periph spi slave

See merge request espressif/esp-idf!5625
2019-10-17 18:13:09 +08:00
Angus Gratton
05180dfb4c Merge branch 'bugfix/mqtt_reference_latest_version' into 'master'
mqtt: updated to latest version to include latest fixes and features

See merge request espressif/esp-idf!6294
2019-10-17 18:01:58 +08:00
Ivan Grokhotkov
e8af0f264c Merge branch 'feature/cxx_rtti_preparation_v2' into 'master'
C++: add provisions for optional RTTI support (v2)

See merge request espressif/esp-idf!6341
2019-10-17 16:22:06 +08:00
Ivan Grokhotkov
42e59c317a Merge branch 'bugfix/mqtt_example_url_update' into 'master'
MQTT: update default broker URL for examples

Closes IDF-1052

See merge request espressif/esp-idf!6214
2019-10-17 16:12:29 +08:00
Angus Gratton
ae21d669b9 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-17 18:22:08 +11:00
Angus Gratton
0f1923ab22 Merge branch 'bugfix/o2_build_warnings' into 'master'
Fix -O2 build warnings

Closes IDFGH-1945 and IDFGH-1946

See merge request espressif/esp-idf!6311
2019-10-17 13:09:28 +08:00
Angus Gratton
5ee27aeec8 Merge branch 'feature/openeth_driver' into 'master'
ethernet: support OpenCores ethernet MAC

Closes IDF-891

See merge request espressif/esp-idf!6252
2019-10-17 13:05:27 +08:00
Mahavir Jain
84f5322d05 Merge branch 'nimble/update_no_of_conn' into 'master'
NimBLE: Set the default number of max connections to the controller's value

See merge request espressif/esp-idf!6353
2019-10-17 12:54:37 +08:00
Hrishikesh Dhayagude
10fd2ae653 NimBLE: Set the default number of max connections to the controller's value
Also, update the NimBLE submodule to remove unwanted logging stuff
2019-10-17 12:54:34 +08:00
Angus Gratton
89d2e2a5e3 Merge branch 'feature/example_netbios' into 'master'
add netbios support in restful server example

Closes IDF-1070

See merge request espressif/esp-idf!6346
2019-10-17 12:54:01 +08:00
Angus Gratton
b7fd8166d5 Merge branch 'bugfix/ws_opcodes_fix' into 'master'
ws_client: fix for not sending ping responses, updated to pass events also for...

See merge request espressif/esp-idf!6111
2019-10-17 12:36:08 +08:00
Angus Gratton
dd326447c1 Merge branch 'feature/can_support_low_bit_rates' into 'master'
can:  Support for lower bit rates for ESP32 ECO2 and ECO3

Closes IDF-1045

See merge request espressif/esp-idf!6363
2019-10-17 12:33:18 +08:00
Darian
820fd6447d can: Add support for lower bit rates
This commit adds support for lower bit rates in the CAN Driver for
ESP32 Rev 2 or later chips.
2019-10-17 12:33:17 +08:00
Angus Gratton
d3157910e0 ci: Fix "local variable referenced before assignment" if connecting to DUT fails 2019-10-17 14:38:49 +11:00
Angus Gratton
7016cb8864 Merge branch 'doc/add_doc_for_socket_error_usage' into 'master'
doc: add LW-IP socket error usage

See merge request espressif/esp-idf!5856
2019-10-17 06:17:34 +08:00
Xia Xiaotian
dfdf04644f Support WiFi both on esp32 and esp32s2beta 2019-10-17 09:12:37 +11:00
Roland Dobai
0744b6fadb CI: Adjust the test parameters of IDF Monitor 2019-10-16 12:38:47 +02:00
KonstantinKondrashov
007d01c10a esp_timer: Fix System time jumps back ~54secs
Closes: https://github.com/espressif/esp-idf/issues/2513
2019-10-16 18:33:14 +08:00
KonstantinKondrashov
d80fae2c88 esp32: Add UTs to check the System time does not jump back 2019-10-16 16:06:39 +08:00
Angus Gratton
65940cc0da Merge branch 'feature/log_system_time' into 'master'
log: Add menuconfig option to log system time rather than RTOS time

See merge request espressif/esp-idf!6103
2019-10-16 14:56:14 +08:00
Angus Gratton
633a8376db Merge branch 'bugfix/ethernet_unitest_crash' into 'master'
ethernet: fix crash in unit test

See merge request espressif/esp-idf!6284
2019-10-16 13:05:16 +08:00
Angus Gratton
d767475fd0 Merge branch 'bugfix/ws_buffer_overflow_fix' into 'master'
tcp_transport: fix possible buffer overflow in ws transport connect

Closes IDF-692

See merge request espressif/esp-idf!5887
2019-10-16 13:04:39 +08:00
Angus Gratton
50cb3ad622 ci: Update unit test jobs to match master 2019-10-16 15:16:46 +11:00
Ivan Grokhotkov
d0f615e6f8 Merge branch 'fix/tcp_server_example' into 'master'
Bugfix of tcp_server example.

Closes IDFGH-1306

See merge request espressif/esp-idf!5211
2019-10-15 23:04:47 +08:00
Kirill Chalov
2c7165f783 Review the file api-reference/peripherals/spi_slave.rst 2019-10-15 22:13:03 +08:00
Marius Vikhammer
c6934d6175 MQTT: update default broker URL for examples
The MQTT broker URL used as default in the examples has ceased operation. All examples and documention have been updated to point to the new domain mqtt.eclipse.org.
This also required an update of the python example test scripts to use TLS 1.2
2019-10-15 09:35:23 +00:00
Krzysztof Budzynski
2e6398affa Merge branch 'docs/Update_CN_hW_Reference_With_Changes_in_EN' into 'master'
Update board getting started guides to make cmake default

See merge request espressif/esp-idf!6295
2019-10-15 17:15:17 +08:00
Natasha
c70d234ee6 Update board getting started guides to make cmake default 2019-10-15 17:15:15 +08:00
David Cermak
07e0254f06 lwip: autoip: used Kconfig parameters instead of constants to be in line with previous esp-lwip port and to have the BCT passed 2019-10-15 07:07:00 +00:00
David Cermak
7f410a0bcb mdns: fix possible race condition when checking DHCP status on WIFI_EVENT_STA_CONNECTED event.
tcpip_adapter_dhcpc_get_status() returns the actual internal value of dhcp client without any locking or TCP/IP stack context call, so when CONNECTED event fired with default settings it started DHCP client in TCP/IP stack context and at the same time mdns event handler checking actual DHCP state, which could still be INIT (not STARTED). Purpose of this check is to enable PCB if DHCP was stopped before setting network interface up (typically static IP settings), so the solutin is to check against TCPIP_ADAPTER_DHCP_STOPPED state
2019-10-15 07:07:00 +00:00
David Cermak
f3cb91ef71 mdns: updated example test to exercise also hostnames resolved by lwip gethostbyname and getaddrinfo 2019-10-15 07:02:19 +00:00
David Cermak
81cd406683 lwip: support mdns queries 2019-10-15 07:02:19 +00:00
Angus Gratton
a89000855e esptool: Update submodule adding ESP32-S2 beta support 2019-10-15 16:55:39 +11:00
Angus Gratton
f5238d5e42 Merge branch 'feature/esp32s2beta' into feature/esp32s2beta_merge 2019-10-15 15:03:45 +11:00
Angus Gratton
496ede9bcd Merge branch 'master' into feature/esp32s2beta_merge 2019-10-15 14:59:27 +11:00
Ivan Grokhotkov
7e3676f307 Merge branch 'bugfix/debug_logs_cleanup' into 'master'
Bugfix/debug logs cleanup

See merge request espressif/esp-idf!6209
2019-10-14 23:37:51 +08:00
Hrudaynath Dhabe
ac0b4c184d wpa_supplicant: Make hexdump logs more compact
When running with wpa debug prints enabled data/key hexdumps are
printed to the log in a really verbose format (one byte per line).

Make these printouts more compact. 16 bytes per line.
2019-10-14 23:37:51 +08:00
Ivan Grokhotkov
1ab458b60b Merge branch 'bugfix/console_command_exit_error_check' into 'master'
console: fix wrong param passed to esp_err_to_name

See merge request espressif/esp-idf!6360
2019-10-14 23:10:01 +08:00
Jiang Jiang Jian
b76756b5ab Merge branch 'feature/idf_monitor_detect_port' into 'master'
idf_monitor: Autodetect port

Closes IDFGH-1995

See merge request espressif/esp-idf!6345
2019-10-14 22:19:56 +08:00
Jiang Jiang Jian
93bca1dc2b Merge branch 'hfp_bugfix' into 'master'
component/bt: Fix bugs in HFP feature

Closes BT-427

See merge request espressif/esp-idf!6197
2019-10-14 21:47:56 +08:00
Jiang Jiang Jian
8b777ace9f Merge branch 'bugfix/apps_esp_ble_mesh' into 'master'
ESP BLE Mesh: Minor fix - Print the address and the on/off value appropriately

See merge request espressif/esp-idf!6322
2019-10-14 21:42:36 +08:00
Hrishikesh Dhayagude
04325d2876 ESP BLE Mesh: Minor fix - Print the address and the on/off value appropriately
The new value should be printed in the set function and not the previous
one.
2019-10-14 21:42:35 +08:00
Jiang Jiang Jian
bf87d0949b Merge branch 'bugfix/btdm_osi_queue_gycfix_master' into 'master'
Component/bt : Added handling of osi memory calloc failure

See merge request espressif/esp-idf!6140
2019-10-14 21:35:41 +08:00
liu zhifu
d56e7ec037 esp_wifi: modify WiFi buffer number type from uint8_t to uint16_t
Modify WiFi receiving buffer number type from uint8_t to uint16_t to support
configuring more than 255 buffers.
2019-10-14 21:30:45 +08:00
Jiang Jiang Jian
b6a7b35b61 Merge branch 'bugfix/fix_sta_wpa2_enterprise_issue' into 'master'
esp_wifi: fix a station wpa2 enterprise issue

Closes WIFI-1042

See merge request espressif/esp-idf!6287
2019-10-14 21:27:05 +08:00
suda-morris
81e88764d5 console: fix wrong param passed to esp_err_to_name 2019-10-14 19:49:19 +08:00
Michael (XIAO Xufeng)
eb104aa16f esp_flash: fix the quad issue for some GD flash chips
The GD flash with product ID 40H, is already used in Wrover-nosufix modules.
2019-10-14 17:25:59 +08:00
Michael (XIAO Xufeng)
1e1d50376b esp_flash: add unit test for external flash and QE toggling
Tests for external flash chips used to controlled by macros, one bin for
one chip. And tests are done manually. This commit refactored the test
so that all 3 chips can all run in single test.
2019-10-14 17:25:58 +08:00
Michael (XIAO Xufeng)
15d311bb80 esp_flash: rename internal variables for better readability
chip_drv in HAL are renamed as host
2019-10-14 17:25:58 +08:00
Michael (XIAO Xufeng)
571864e8ae esp_flash: fix set qe bit and write command issues
There used to be dummy phase before out phase in common command
transactions. This corrupts the data.

The code before never actually operate (clear) the QE bit, once it finds
the QE bit is set. It's hard to check whether the QE set/disable
functions work well.

This commit:

1. Cancel the dummy phase

2. Set and clear the QE bit according to chip settings, allowing tests
   for QE bits. However for some chips (Winbond for example), it's not
   forced to clear the QE bit if not able to.

3. Also refactor to allow chip_generic and other chips to share the same
   code to read and write qe bit; let common command and read command share
   configure_host_io_mode.

4. Rename read mode to io mode since maybe we will write data with quad
   mode one day.
2019-10-14 17:25:58 +08:00
David Cermak
abf9345b85 ws_client: fix for not sending ping responses, updated to pass events also for PING and PONG messages, added interfaces to send both binary and text data
closes https://github.com/espressif/esp-idf/issues/3982
2019-10-14 11:05:27 +02:00
weitianhua
26b69f1363 New Clean Commit for AG.
Only Support single AG control block.
2019-10-14 07:54:09 +00:00
Angus Gratton
8fbece32a9 Merge branch 'bugfix/msys2_toolchain_path_note' into 'master'
docs: update windows msys2 installer notes to unzip all-in-one toolchain to path without spaces

See merge request espressif/esp-idf!6181
2019-10-14 15:31:49 +08:00
Angus Gratton
5ce95f2bfd Merge branch 'bugfix/ci_weekend_test_update' into 'master'
CI: weekend test fixes

See merge request espressif/esp-idf!6235
2019-10-14 15:30:33 +08:00
Angus Gratton
92a507c0aa Merge branch 'bugfix/ws_client_fix_event_blocking' into 'master'
ws_client: fixed posting to event loop with websocket timeout

See merge request espressif/esp-idf!5901
2019-10-14 15:17:34 +08:00
Angus Gratton
5d59895067 Merge branch 'bugfix/ws_client_fixed_path_query_uri' into 'master'
websocket_client: fix URI parsing to include also query part in websocket connection path

See merge request espressif/esp-idf!6201
2019-10-14 15:01:59 +08:00
Angus Gratton
d4edc6a40a Merge branch 'bugfix/mdns_answer_ip6_size' into 'master'
mdns: use constant size of AAAA answer instead of lw_IP struct size

Closes WIFI-771

See merge request espressif/esp-idf!6188
2019-10-14 14:59:16 +08:00
baohongde
e1d61d03de components/bt: Fix LMP sniff req timeout 2019-10-14 14:56:07 +08:00
David Cermak
555cc11a25 tcp_transport: fix possible buffer overflow in ws transport connect
closes IDF-692
2019-10-14 06:50:22 +00:00
suda-morris
84c72863e1 add netbios support in restful server example 2019-10-14 14:26:43 +08:00
David Cermak
640eac84fa mqtt: updated to latest version to include latest fixes, support for global CA store, extended error structure to receive mqtt specific errors. updated idf ssl example to use this error struct
https://github.com/espressif/esp-mqtt/issues/135
2019-10-14 06:26:14 +00:00
Roland Dobai
72040f2c44 idf_monitor: Autodetect port
Closes https://github.com/espressif/esp-idf/issues/4191
2019-10-14 08:06:43 +02:00
Angus Gratton
e2897f4d4a Merge branch 'doc/esp_ringbuf_acquire_complete' into 'master'
esp_ringbuf: add documents for SendAcquire and SendComplete

See merge request espressif/esp-idf!6165
2019-10-14 11:34:12 +08:00
Ivan Grokhotkov
c1ccfde6dd Merge branch 'docs/update_bootloader_chip_revision_print' into 'master'
bootloader_support: fix logging prints around chip revision

See merge request espressif/esp-idf!6324
2019-10-14 11:29:49 +08:00
Ivan Grokhotkov
31dac92e5f ethernet: support OpenCores ethernet MAC
OpenCores Ethernet MAC has a relatively simple interface, and is
already supported in QEMU. This makes it a good candidate for enabling
network support when running IDF apps in QEMU, compared to the
relatively more complex task of writing a QEMU model of ESP32 EMAC.

This driver is written with QEMU in mind: it does not implement or
handle things that aren't implemented or handled in the QEMU model:
error flags, error interrupts. The transmit part of the driver also
assumes that the TX operation is done immediately when the TX
descriptor is written (which is the case with QEMU), hence waiting for
the TX operation to complete is not necessary.

For simplicity, the driver assumes that the peripheral register
occupy the same memory range as the ESP32 EMAC registers, and the
same interrupt source number is used.
2019-10-13 17:05:26 +02:00
Ivan Grokhotkov
e763a3a96f ci: add test build with -O2 -NDEBUG, cleanup 2019-10-13 16:21:08 +02:00
Ivan Grokhotkov
6e423d5cf6 drivers/can: fix skipped function calls when assertions disabled
When CONFIG_FREERTOS_ASSERT_DISABLE is set, the function calls wrapped
inside the assertion macros would be removed from the code.

Closes https://github.com/espressif/esp-idf/issues/4143
2019-10-13 15:37:19 +02:00
Ivan Grokhotkov
0be585179e spiffs: fix warning when building at release optimization level
Closes https://github.com/espressif/esp-idf/issues/4144
2019-10-13 15:37:19 +02:00
Ivan Grokhotkov
499d087c91 C++: add provisions for optional RTTI support
Ref. https://github.com/espressif/esp-idf/issues/1684

This change allows RTTI to be enabled in menuconfig. For full RTTI
support, libstdc++.a in the toolchain should be built without
-fno-rtti, as it is done now.

Generally if libstdc++.a is built with RTTI, applications which do not
use RTTI (and build with -fno-rtti) could still include typeinfo
structures referenced from STL classes’ vtables. This change works
around this, by moving all typeinfo structures from libstdc++.a into
a non-loadable section, placed into a non-existent memory region
starting at address 0. This can be done because when the application
is compiled with -fno-rtti, typeinfo structures are not used at run
time. This way, typeinfo structures do not contribute to the
application binary size.

If the application is build with RTTI support, typeinfo structures are
linked into the application .rodata section as usual.

Note that this commit does not actually enable RTTI support.
The respective Kconfig option is hidden, and will be made visible when
the toolchain is updated.
2019-10-13 14:46:44 +02:00
Mahavir Jain
99659091fb bootloader_support: fix logging prints around chip revision 2019-10-11 14:35:22 +05:30
michael
37fdcc1eb5 esp_ringbuf: add documents for SendAcquire and SendComplete 2019-10-11 15:44:27 +08:00
Angus Gratton
420ee45279 Merge branch 'feature/handle_icy_uris' into 'master'
Modified http_parser to handle ICY uris.

See merge request espressif/esp-idf!6207
2019-10-11 14:06:16 +08:00
Angus Gratton
9f9cc717e3 Merge branch 'refactor/ethernet_remove_blocking_in_timer_callback' into 'master'
Ethernet: optimize and bugfix

Closes IDF-1051

See merge request espressif/esp-idf!6213
2019-10-11 13:07:38 +08:00
Vikram Dattu
742d4689dd Modified http_parser to handle ICY uris.
ICY URIs e.g `http://uk1.internet-radio.com/proxy/vombat?mp=/;` need to
be handled differently.

For basic use case, these URIs are similar to HTTP with exception that they reply with `ICY 200` etc in place of `HTTP/1.1 200`.

In http_parser, we now also parse ICY URIs to be able to handle these similar to HTTP.

Signed-off-by: Vikram Dattu <vikram.dattu@espressif.com>
2019-10-11 05:04:08 +00:00
Angus Gratton
d2ad0f0774 Merge branch 'test/add_wifi_init_unit_test_case' into 'master'
add wifi init unit test cases

Closes IDF-77

See merge request espressif/esp-idf!4200
2019-10-11 13:00:59 +08:00
Hu Chao Ru
fc018987eb add wifi init unit test cases 2019-10-11 13:00:57 +08:00
Angus Gratton
51b4e97e42 Merge branch 'fix/cmake_req_private_comp' into 'master'
cmake: Fix cmakelists to add required private components

See merge request espressif/esp-idf!5428
2019-10-11 12:58:45 +08:00
suda-morris
13c128fd31 Ethernet: optimize and bugfix
1. simplify deallocate in esp_eth_mac_new_esp32, esp_eth_mac_new_dm9051
2. remove blocking operation in os timer callback
3. check buffer size in ethernet receive function
2019-10-11 12:15:17 +08:00
ronghulin
4e1ccd8b6f doc: add LWIP socket error usage 2019-10-11 12:09:10 +08:00
suda-morris
f0bfd33a10 ethernet: fix crash in unit test 2019-10-11 02:14:12 +00:00
lly
35353de137 ble_mesh: fix not callback net_key when device is provisioned 2019-10-11 09:51:02 +08:00
liu zhifu
0e3cdce8f7 esp_wifi: fix the bug that wpa2 enterprise sta can connect open AP 2019-10-11 09:39:35 +08:00
Roland Dobai
19c644f7fd Fix memory leak upon failure of esp_vfs_fat_sdmmc_mount()
Closes https://github.com/espressif/esp-idf/issues/4165
2019-10-10 14:28:43 +00:00
Jiang Jiang Jian
25c55405d4 Merge branch 'bugfix/wifi_lib_ci' into 'master'
ci: fix ci issues of wifi lib

See merge request espressif/esp-idf!6288
2019-10-10 22:25:36 +08:00
Mahavir Jain
6499d36441 Merge branch 'NimBLE/fix_esp_nimble_hci_delay' into 'master'
NimBLE: Misc changes in NimBLE porting layer and menuconfig option

See merge request espressif/esp-idf!6243
2019-10-10 17:20:15 +08:00
Prasad Alatkar
19375a674e NimBLE: Misc changes in NimBLE porting layer and menuconfig option
- Minor fix to remove while loop & delay while transmitting data from
  host to controller.
- Add menuconfig option to enable predefined public-private keypair for
  debugging (Vol. 3, Part H, 2.3.5.6.1)
2019-10-10 17:20:15 +08:00
Krzysztof Budzynski
74e39c9cff Merge branch 'docs/Update_CN_Getting_Started_With_Changes_in_EN' into 'master'
Add translation for getting started guide - batch 1

See merge request espressif/esp-idf!6147
2019-10-10 16:52:07 +08:00
Natasha
b0f2bb2adc Add translation for getting started guide - batch 1 2019-10-10 16:52:07 +08:00
Angus Gratton
ae236c33a2 Merge branch 'bugfix/ut_adjtime' into 'master'
newlib: Fix UT - test time adjustment happens linearly

See merge request espressif/esp-idf!6245
2019-10-10 11:08:46 +08:00
Angus Gratton
6df8658b5b Merge branch 'bugfix/fixes_from_kconfiglib_update' into 'master'
Fix of menuconfig bug for MSYS2 and a couple of cosmetic changes

See merge request espressif/esp-idf!6255
2019-10-10 11:06:29 +08:00
Ivan Grokhotkov
f8a3da024a Merge branch 'bugfix/treat_unreg_components_as_unresolved' into 'master'
CMake: Treat unregistered components as unresolved

See merge request espressif/esp-idf!5700
2019-10-09 23:53:57 +08:00
Ivan Grokhotkov
fc9a63f0b7 Merge branch 'feature/cxx_coding_style' into 'master'
doc: Added basic C++ style guide

See merge request espressif/esp-idf!6216
2019-10-09 23:52:18 +08:00
Ivan Grokhotkov
751b60b171 Merge branch 'feature/add_psram_workaround_option' into 'master'
make psram workaround depend on chip revison

Closes IDF-1004

See merge request espressif/esp-idf!6113
2019-10-09 23:41:09 +08:00
MartinValik
b7bfcf3c93 Revised tcp_server example.
Fixed error caused by unnecessary reopening of listening socket.
Extracted packet retransmit logic to separate function.
Added robust implementation for sending data

Closes https://github.com/espressif/esp-idf/pull/3597
2019-10-09 14:34:28 +02:00
Mahavir Jain
262b1c9f65 Merge branch 'bugfix/coap_mbedtls_add_define_check_for_apln' into 'master'
ESP32/coap_mbedtls:add macro checks

See merge request espressif/esp-idf!6262
2019-10-09 16:46:46 +08:00
Aditya Patwardhan
3e9a054626 ESP32/coap_mbedtls:add macro checks
Closes https://github.com/espressif/esp-idf/issues/4156
2019-10-09 16:46:46 +08:00
chenyudong
c6129b81f2 ci: fix ci issues of wifi lib
sync esp_wifi.h to wifi lib
2019-10-09 15:07:19 +08:00
Krzysztof Budzynski
2d4761f548 Merge branch 'doc/zh_CN_repo_README' into 'master'
add zh_CN translation of README in esp-idf repo

Closes IDF-957

See merge request espressif/esp-idf!6217
2019-10-09 13:48:35 +08:00
Jakob Hasse
e33153f633 Added basic C++ style guide
* C++ style guide
* Changed headings to "Title Case"
2019-10-09 12:25:48 +08:00
Angus Gratton
27aaff798b Merge branch 'feature/esp32s2beta_merge_fix_bootloader_ld' into 'feature/esp32s2beta'
bootloader: Fix bootloader ld for esp32s2beta

See merge request espressif/esp-idf!6187
2019-10-09 12:21:25 +08:00
suda-morris
18183871de add zh_CN translation of README in esp-idf repo 2019-10-09 11:50:06 +08:00
Angus Gratton
9550607b33 Merge branch 'bugfix/alt_exit_idf_monitor' into 'master'
idf_monitor: Exit with CTRL+X in menu

Closes IDFGH-1971 and IDFGH-1930

See merge request espressif/esp-idf!6260
2019-10-09 09:39:51 +08:00
Renz Christian Bagaporo
a986283997 spiffs: follow symlinks in host test 2019-10-08 17:55:59 +08:00
Marcin Borowicz
6153a0ab62 spiffs: follow symlinks feature during partition in spiffsgen 2019-10-08 17:55:59 +08:00
lly
673f58fe03 ble_mesh: fix not restoring ble mesh cfg value 2019-10-08 16:34:05 +08:00
Ivan Grokhotkov
46a65a35d6 Merge branch 'bugfix/missing_build_targets_cmake' into 'master'
esptool_py: add missing phony build targets for CMake

Closes IDFGH-370

See merge request espressif/esp-idf!5838
2019-10-08 16:24:40 +08:00
Ivan Grokhotkov
416d14ca6b Merge branch 'feat/spi_internal_header' into 'master'
spi: move deprecated functions into internal header

See merge request espressif/esp-idf!5985
2019-10-08 16:19:46 +08:00
Ivan Grokhotkov
b61c3d5d0f Merge branch 'bugfix/examples_disconnect_before_restart' into 'master'
examples: disconnect from Wi-Fi before restart (and don't try to reconnect!)

See merge request espressif/esp-idf!6267
2019-10-08 16:16:25 +08:00
Per-Olov Jernberg
6435c9f3d5 idf_monitor: Exit with CTRL+X in menu
Currently, the only way of exiting the idf_monitor program is to hit the CTRL+] button, if your keyboard doesn't have that key unless you hit another modifier key, it's not super trivial to exit.

This change adds the option to exit with CTRL+T (for menu) then hitting X (or CTRL+X) for exiting.

Closes https://github.com/espressif/esp-idf/pull/4167
Closes https://github.com/espressif/esp-idf/issues/4129
2019-10-08 08:15:51 +00:00
Ivan Grokhotkov
bf056c30d2 Merge branch 'bugfix/restful_server_make_flash' into 'master'
examples/restful_server: fix Makefile syntax for flashing SPIFFS

Closes IDFGH-1841

See merge request espressif/esp-idf!6263
2019-10-08 16:14:40 +08:00
Roland Dobai
56fcafc346 Fix cmake typo 2019-10-08 08:11:53 +00:00
Roland Dobai
d24086c529 tools: Fix idf.py menuconfig characters in MSYS2 2019-10-08 08:11:53 +00:00
Roland Dobai
d3ed17acd7 Cosmetic Kconfig fixes 2019-10-08 08:11:53 +00:00
KonstantinKondrashov
267ca19ae8 bootloader: Fix dram_seg 2019-10-08 16:07:53 +08:00
weitianhua
9f0a44f5c0 component/bt: Fix bugs in HFP feature 2019-10-08 07:07:45 +00:00
Angus Gratton
8c1f3cb6b2 Merge branch 'feature/esp32s2beta_isr_table' into 'feature/esp32s2beta'
soc: Add interrupt numbers mapping for esp32s2beta

See merge request espressif/esp-idf!6204
2019-10-08 12:45:26 +08:00
Angus Gratton
1fb461a24c Merge branch 'feature/esp32s2beta_fix_test_posix_timers_clock' into 'feature/esp32s2beta'
newlib: Fix test_posix_timers_clock for esp32s2beta

See merge request espressif/esp-idf!6170
2019-10-08 12:43:20 +08:00
Angus Gratton
4d7c955041 Merge branch 'bugfix/freertos_xTaskNotifyGive' into 'master'
freertos: remove semicolon in xTaskNotifyGive

See merge request espressif/esp-idf!6208
2019-10-08 12:21:40 +08:00
Michael (XIAO Xufeng)
afbe1ba878 spi: move deprecated functions into internal header
Resolves https://github.com/espressif/esp-idf/issues/4132
2019-10-08 11:51:39 +08:00
Angus Gratton
20456e697c Merge branch 'bugfix/rtc_wdt_timeout' into 'feature/esp32s2beta'
soc: Fix setting timeout for RTC_WDT

See merge request espressif/esp-idf!6172
2019-10-08 09:57:07 +08:00
GOPTIONS\pfrost
23e9224be6 log: Add menuconfig option to log system time rather than RTOS time
Merges https://github.com/espressif/esp-idf/pull/3958
2019-10-08 12:03:45 +11:00
Ivan Grokhotkov
5768102d4e esp_wifi: fix typo in comments (ESP_ERR_WIFI_NOT_STARTED) 2019-10-07 16:48:32 +02:00
Ivan Grokhotkov
28a440521e examples: gracefully shut down Wi-Fi before restart
This fixes the issue that if Wi-Fi is stopped from a shutdown handler,
the code in connect.c tries to reconnect, and fails because Wi-Fi is
already stopped.
Also make the error check in connect.c less strict.
2019-10-07 16:47:49 +02:00
David Cermak
271e6c4c9c websocket_client: fix URI parsing to include also query part in websocket connection path
closes https://github.com/espressif/esp-idf/issues/4090
2019-10-07 16:40:38 +02:00
Ivan Grokhotkov
f0563b3844 system_api: call shutdown handlers in reverse order
Similar to how destructors should be called in reverse order to the
constructors.
2019-10-07 16:36:18 +02:00
David Cermak
50505068c4 ws_client: fixed posting to event loop with websocket timeout
Executing event loop `esp_event_loop_run()` with timeout causes delays in receiving events from user code. Fixed by removing the timeout to post synchronously.

closes https://github.com/espressif/esp-idf/issues/3957
2019-10-07 16:34:51 +02:00
Ivan Grokhotkov
d77a7c23da Merge branch 'bugfix/ws_client_fixes' into 'master'
ws_client: various fixes

See merge request espressif/esp-idf!5879
2019-10-07 20:05:41 +08:00
Mahavir Jain
51ce458adb Merge branch 'bugfix/esp_tls_add_header_in_esp_tls_h' into 'master'
ESP32/esp_tls: include esp_err.h in esp_tls.h

See merge request espressif/esp-idf!6256
2019-10-07 19:47:33 +08:00
Aditya Patwardhan
9f86f969b2 ESP32/esp-tls: include esp_err.h in esp_tls.h
Closes https://github.com/espressif/esp-idf/issues/4100
2019-10-07 19:47:32 +08:00
Ivan Grokhotkov
75f2948e02 examples/restful_server: fix Makefile syntax for flashing SPIFFS
Closes https://github.com/espressif/esp-idf/issues/4050
2019-10-07 13:28:38 +02:00
KonstantinKondrashov
0c44f8ccbd esp32: Using periph_module_enable instead of the shared regs. 2019-10-07 06:47:00 +00:00
KonstantinKondrashov
807826f796 bootloader_support: Fix using shared CLK_EN and RST_EN regs for random
bootloader_random_enable() and bootloader_random_disable() functions
can be used in app.
This MR added the protection for shared CLK_EN and RST_EN registers.
2019-10-07 06:47:00 +00:00
Mahavir Jain
2f38a1a362 Merge branch 'bugfix/set_url_discards_username_password' into 'master'
fixes : set_url discards username and password

Closes IDFGH-1586

See merge request espressif/esp-idf!5694
2019-10-04 13:48:55 +08:00
ganeshlandge
9fd16c6a5f fixes : set_url discards username and password 2019-10-04 10:42:43 +05:30
Ivan Grokhotkov
cf7fe34cc2 ci: fix test assignment issue, rename env tag 2019-10-03 15:00:22 +02:00
Ivan Grokhotkov
a3cbc57c19 examples/flash_encryption: use ESP32 target in example test 2019-10-03 13:42:59 +02:00
Ivan Grokhotkov
569ad7545c esp_event, mdns: fixes for CONFIG_ETH_ENABLED=n 2019-10-03 10:52:53 +02:00
Ivan Grokhotkov
6bddcdac67 bootloader: move esp32 specific code from bootloader_common
Also implements bootloader_clock_get_rated_freq_mhz for esp32s2beta.

Closes IDF-758
2019-10-03 09:38:13 +02:00
David Cermak
de6ea396f1 ws_client: added subprotocol configuration option to websocket client
closes https://github.com/espressif/esp-idf/issues/3893
2019-10-03 07:33:32 +02:00
David Cermak
c0ba9e19fc ws_client: fixed path config issue when ws server configured using host and path instead of uri
closes https://github.com/espressif/esp-idf/issues/3892
2019-10-03 07:33:32 +02:00
David Cermak
adee25d90e ws_client: fixed transport config option when server address configured as host, port, transport rather then uri
closes https://github.com/espressif/esp-idf/issues/3891
2019-10-03 07:33:32 +02:00
David Cermak
ea955e1efc ws_client: fix ping-pong mechanism to use mask, support reception of zero-payload PONG and sending non-zero-payload PING
Closes https://github.com/espressif/esp-idf/issues/3890
Closes https://github.com/espressif/esp-idf/issues/4138
2019-10-03 07:32:17 +02:00
Ivan Grokhotkov
e4fda32726 Merge branch 'feature/uart_isr_iram' into 'master'
uart: add option to put ISR in IRAM

Closes IDF-893

See merge request espressif/esp-idf!5905
2019-10-03 01:21:56 +08:00
Ivan Grokhotkov
8da3c6d65b Merge branch 'bugfix/deprecated_sdkconfig_defaults' into 'master'
Handle deprecated values in sdkconfig.defaults

Closes IDF-1005

See merge request espressif/esp-idf!6203
2019-10-03 01:12:01 +08:00
Ivan Grokhotkov
5830f529d8 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-02 19:01:39 +02:00
suda-morris
f94711c316 uart: add option to put ISR in IRAM 2019-10-02 16:43:02 +00:00
Roland Dobai
15857d9cbb Handle deprecated values in sdkconfig.defaults
The issue was pointed out also in
https://github.com/espressif/esp-idf/issues/4092
2019-10-02 16:29:25 +00:00
David Cermak
784a0d21ea update mqtt weekend test to use mbedtls asymetric buffer 2019-10-02 16:22:50 +02:00
Ivan Grokhotkov
adbf0bff53 Merge branch 'bugfix/ext_flash_load_partitions' into 'master'
spi_flash: ensure partition table loaded when esp_partition_register_external is called

Closes IDFGH-1916

See merge request espressif/esp-idf!6244
2019-10-02 18:50:54 +08:00
Mahavir Jain
c2a9f0643e Merge branch 'bugfix/changes_in_idf_to_make_compatible_with_wolfssl' into 'master'
Bugfix/changes in idf to make compatible with wolfssl

See merge request espressif/esp-idf!6149
2019-10-02 14:05:10 +08:00
Mahavir Jain
3f9b0d8c2a nghttp: move config.h to private_include dirs 2019-10-01 11:19:44 +00:00
KonstantinKondrashov
737ab91742 newlib: Fix UT - test time adjustment happens linearly 2019-10-01 03:09:22 +08:00
Ivan Grokhotkov
391d7ee4c7 examples/ext_flash_fatfs: print out data partitions, add CI test 2019-09-30 17:53:14 +02:00
Ivan Grokhotkov
ccde8c7d2f spi_flash: load partition table before adding an external partition
esp_partition_register_external did not call load_partitions, so if
it was called before any call to esp_partition_find, then the main
partition table would never be loaded. Introduce new function,
ensure_partitions_loaded, and call it both from esp_partition_find and
esp_partition_register_external.

Closes https://github.com/espressif/esp-idf/issues/4116
2019-09-30 16:11:09 +02:00
Jiang Jiang Jian
1c1108d47b Merge branch 'bugfix/coex_fix_some_bugs' into 'master'
fix some coexist bugs

See merge request espressif/esp-idf!5200
2019-09-30 16:59:19 +08:00
David Cermak
b494ffaf5b ci: fix test build system when using template repository from a
different branch then master
2019-09-30 09:54:24 +02:00
David Cermak
d735f1d58d ci: fix weekend test confguration update per latest refactoring of
grouping tests
2019-09-30 09:51:41 +02:00
Mahavir Jain
87fb025b97 Merge branch 'NimBLE/add_mbedTLS_option_for_tinycrypt' into 'master'
NimBLE: Add optional mbedTLS support to NimBLE

See merge request espressif/esp-idf!6097
2019-09-30 14:15:43 +08:00
Prasad Alatkar
fe08f435dc NimBLE: Add optional mbedTLS support to NimBLE
- Additional menuconfig option to select either mbedTLS or Tinycrypt from NimBLE.
- Addition of `CMAC` and `ECP_RESTARTABLE` to mbedTLS menuconfig option and
  `esp_config.h`.
- Changes NimBLE `component.mk` and `CMakeLists.txt` to support mbedTLS option.
- Minor changes to `app_mesh.c` application.
2019-09-30 14:15:43 +08:00
Xia Xiaotian
63019689d6 Coexist: fix some coexist bugs
1. Fix high beacon and broadcast packets loss ratio of WiFi to make
   MDNS test pass.
2. Improve stability of WiFi performance with a little
   sacrifice of throughput.
3. Improve BLE advertising and connection performance with dynamic
   priority. It sacrifices a little WiFi throughput, but achieves balance
   between WiFi and Bluetooth.
2019-09-30 11:49:16 +08:00
Jiang Jiang Jian
ef5c3f3564 Merge branch 'bugfix/fix_wifi_stop_leads_to_watchdog' into 'master'
esp_wifi: fix the bug that WiFi stop leads task watchdog

Closes WIFI-526 and WIFI-746

See merge request espressif/esp-idf!5830
2019-09-30 10:53:37 +08:00
zhangyanjiao
53d57dd736 esp_wifi:
1. Fixed smartconfig ipc crash
2. Fix the WiFi init sequence bug
3. Fixed the bug that WiFi stop leads to task watchdog
2019-09-29 10:44:49 +08:00
Jiang Jiang Jian
9ef656fafd Merge branch 'bugfix/ble_mesh_client_invalid_addr_access' into 'master'
ble_mesh: fix client model invalid address access

See merge request espressif/esp-idf!6212
2019-09-29 10:23:51 +08:00
Jiang Jiang Jian
f44b4911ad Merge branch 'bugfix/fix_cache_disable_access_psram' into 'master'
esp_wifi: Put g_promis_buf to IRAM

See merge request espressif/esp-idf!6142
2019-09-29 10:08:17 +08:00
Ivan Grokhotkov
4dac7c7df8 Merge branch 'refactor/shrink_bootloader_bin_size' into 'master'
bootloader: shrink bin size

Closes IDF-1043

See merge request espressif/esp-idf!6194
2019-09-28 01:40:46 +08:00
Ivan Grokhotkov
c496268b10 Merge branch 'feature/load_elf' into 'master'
Support ELF files loadable with gdb

Closes IDF-335

See merge request espressif/esp-idf!5779
2019-09-27 19:36:25 +08:00
suda-morris
cbab3c34f8 bootloader: shrink bin size
1. write a bootloader version of "getting chip revision" function.
2. reduce wordy log.
2019-09-27 10:58:30 +08:00
Ivan Grokhotkov
9c4b4aec62 Merge branch 'feature/enable_ethernet_unit_test' into 'master'
enable Ethernet unit test

Closes IDF-959

See merge request espressif/esp-idf!6144
2019-09-26 21:28:13 +08:00
lly
7a450222f5 ble_mesh: fix client model invalid address access 2019-09-26 20:11:22 +08:00
David Cermak
5cde268cce docs: fix minor parameter description inconsistency for idf_component_set_property 2019-09-26 10:51:04 +02:00
suda-morris
e381cec35a freertos: remove semicolon in xTaskNotifyGive 2019-09-26 15:27:48 +08:00
xiehang
6fde73cdc4 esp_wifi: Put g_promis_buf to IRAM 2019-09-26 02:26:10 +00:00
KonstantinKondrashov
3e18681555 app_trace: Adds general support esp32s2beta chip 2019-09-26 01:03:06 +08:00
KonstantinKondrashov
c5c41eab46 soc: Add interrupt numbers mapping for esp32s2beta
Closes: IDF-999
2019-09-26 00:22:36 +08:00
Jiang Jiang Jian
3d8798f745 Merge branch 'bugfix/kconfig_corrections' into 'master'
Fix Kconfig issues discovered by upstream Kconfiglib

See merge request espressif/esp-idf!6183
2019-09-25 16:26:18 +08:00
Jiang Jiang Jian
ac0d2dc534 Merge branch 'bugfix/ble_mesh_queue_task_init_check' into 'master'
ble_mesh: check ble mesh queue and task init status

See merge request espressif/esp-idf!6192
2019-09-25 15:08:05 +08:00
suda-morris
7c8c9cbb68 ethernet: enable unit test 2019-09-25 11:58:16 +08:00
Jiang Jiang Jian
976423c8c3 Merge branch 'feature/bluedroid_min_encr_key_size' into 'master'
BT/Bluedroid : Add support to set min encryption key size requirement

See merge request espressif/esp-idf!6122
2019-09-25 11:56:48 +08:00
Prasad Alatkar
2c3648b619 BT/Bluedroid : Add support to set min encryption key requirement
- Modifies `smp_utils.c` to add check on encryption key size received from
  peer.
- Modifies `esp_ble_gap_set_security_param` API to add minimum encryption key
  size requirement.
2019-09-25 11:56:47 +08:00
Jiang Jiang Jian
a2b65e1649 Merge branch 'bugfix/btdm_loop_in_feature_req_ext' into 'master'
components/bt: Fix sending LMP_features_req_ext in a loop

See merge request espressif/esp-idf!6022
2019-09-25 11:51:53 +08:00
lly
0792a2fde8 ble_mesh: check ble mesh queue and task init status 2019-09-25 11:09:40 +08:00
David Cermak
e5e31c5d01 mdns: use constant size of AAAA answer in mdns packets instead of deriving from lwip struct size, since the struct could contain also zones
closes WIFI-771
2019-09-24 12:12:58 +02:00
Ivan Grokhotkov
b040386c5b Merge branch 'feature/idf_tools_installer_v2.1' into 'master'
IDF tools installer: extra fixes, bump version to v2.1

See merge request espressif/esp-idf!6176
2019-09-24 17:19:04 +08:00
Ivan Grokhotkov
847537c862 docs: update get-started to use Tools Installer v2.1 2019-09-24 10:39:27 +02:00
Roland Dobai
5a916ce126 Support ELF files loadable with gdb 2019-09-24 07:19:50 +00:00
Shivani Tipnis
38ccf5f28b cmake: Fix cmakelists to add required private components
Fixes: https://github.com/espressif/esp-idf/issues/3710
2019-09-24 10:46:26 +05:30
Ivan Grokhotkov
f7cae13d2a tools: bump windows tools installer version to v2.1
Includes the following changes:

80ad09f23 allow changing the installation path
(a fix for https://github.com/espressif/esp-idf/issues/3806)

9c5284e7b verify that IDF_PATH doesn't contain spaces

aaf3dcbda fix quoting of IDF_TOOLS_PATH
(a fix for https://github.com/espressif/esp-idf/issues/3807)

e6e179294 tools: update idf_exe to 1.0.1
76dc87e9a idf_exe: fix NULL pointer passed to WriteFile
(fixes for https://github.com/espressif/esp-idf/issues/3740)
2019-09-24 06:00:31 +02:00
Ivan Grokhotkov
c780abc6a6 tools: update Windows installer build script
Replace the outdated build_installer.sh with the steps used in CI,
call build_installer.sh from CI. Move the signing part into the new
script, sign_installer.sh.
2019-09-24 06:00:31 +02:00
Ivan Grokhotkov
3bbb758bc5 idf_tools.py: add workaround for PermissionError in os.rename
Closes https://github.com/espressif/esp-idf/issues/4063
Closes https://github.com/espressif/esp-idf/issues/3819
2019-09-24 06:00:31 +02:00
X-Ryl669
81ffc87371 idf_tools.py: pass --work-tree instead of -C option to git
Older versions of git do not support -C option. Use --work-tree option
instead.

Closes https://github.com/espressif/esp-idf/issues/4018
Merges https://github.com/espressif/esp-idf/pull/4019
2019-09-24 06:00:31 +02:00
Ivan Grokhotkov
6a9288bc73 Merge branch 'bugfix/IDF-306' into 'master'
Installer: support for WD exclusions (IDF Tools)

See merge request espressif/esp-idf!6062
2019-09-24 11:59:00 +08:00
Roland Dobai
833822c10b Fix Kconfig issues discovered by upstream Kconfiglib 2019-09-23 16:10:57 +02:00
Martin Vychodil
a3a130d0d6 Installer: support for WD exclusions (IDF Tools)
JIRA IDF-306
2019-09-23 14:42:32 +02:00
David Cermak
380801c6fa docs: update windows msys2 installer notes to unzip all-in-one toolchain to path without spaces 2019-09-23 12:00:00 +02:00
KonstantinKondrashov
c4da959fa7 soc: Fix setting timeout for RTC_WDT 2019-09-23 14:57:26 +08:00
Ivan Grokhotkov
8df2b046f4 Merge branch 'bugfix/gh_action_on_pull_request' into 'master'
gh_action: fix error on new pull request

Closes IDFGH-1824

See merge request espressif/esp-idf!6116
2019-09-23 12:54:21 +08:00
Ivan Grokhotkov
363e41eadf Merge branch 'bugfix/make_cxx_depend_on_pthread' into 'master'
cxx: force pthread to appear later in link line

See merge request espressif/esp-idf!6124
2019-09-23 12:42:50 +08:00
Ivan Grokhotkov
b6a8dfba44 examples/nimble: fix setting DUT class in example tests
Pass dut_class=ESP32DUT in the examples where this was missing.
2019-09-23 06:26:49 +02:00
Angus Gratton
f991f812ab unit test: Fix bug in idf.py ut-apply-config- targets
Bug was this sequence:

1. old sdkconfig file has some settings (maybe target=esp32s2beta)
2. idf.py builds a new sdkconfig.defaults file with full new settings
3. new settings includes something that conflicts with the old settings (for example,
CONFIG_IDF_TARGET=esp32 and BT_ENABLE=y)
4. confgen tries to apply the new "defaults" to the existing sdkconfig, settings end up a mix of both due to the conflicts

Fix is to generate the sdkconfig file directly.
2019-09-23 06:26:49 +02:00
Angus Gratton
b0bd4d0f14 Merge branch 'fix/esp_flash_adapter_in_iram' into 'master'
esp_flash: put adapter to legacy functions into IRAM to be back-compatible

See merge request espressif/esp-idf!6135
2019-09-20 18:21:58 +08:00
Angus Gratton
a68b400b9a Merge branch 'refactor/update_spi_ethernet_api' into 'master'
ethernet: update spi ethernet api

See merge request espressif/esp-idf!6123
2019-09-20 18:15:25 +08:00
Angus Gratton
f7d80ed9da Hello world example: Print ESP32-S2 Beta for esp32s2beta target 2019-09-20 17:07:34 +10:00
KonstantinKondrashov
db84ba868c efuse: Add support for esp32s2beta
Updated:
- CI test_esp32s2beta_efuse_table_on_host.
- efuse_table_gen.py.
- esp_efuse_table.csv file and generated headers files.
- splitted esp32 and esp32s2beta parts.
- unit tests and api efuse.
2019-09-20 16:59:46 +10:00
KonstantinKondrashov
6257828348 app_update: Add support esp32s2beta 2019-09-20 16:57:33 +10:00
KonstantinKondrashov
6f102125b4 bootloader: Add support esp32s2beta 2019-09-20 16:57:33 +10:00
KonstantinKondrashov
d06b2a3598 esp32s2beta: Add support esp32s2beta
Added reading MAC address
Closes: IDF-756
2019-09-20 16:57:27 +10:00
Jiang Jiang Jian
a469c179f8 Merge branch 'bugfix/fix_the_for_smartconfig_send_broadcast_to_phone' into 'master'
fix the bug that ESP32 sends broadcast to phone after smartconfig is done

Closes WIFI-1115

See merge request espressif/esp-idf!6071
2019-09-20 14:01:59 +08:00
KonstantinKondrashov
a25841bc9a newlib: Fix test_posix_timers_clock for esp32s2beta 2019-09-20 14:01:22 +08:00
Krzysztof Budzynski
4411701c2c Merge branch 'doc/add_Chinese_translation_for_documents_in_storage_folder_2st_batch' into 'master'
Add Chinese translation for the 2nd batch of the files in storage folder in api-reference

See merge request espressif/esp-idf!5737
2019-09-20 12:32:55 +08:00
Wang Fang
32adfdc307 Add Chinese translation for the 2nd batch of the files in storage folder in api-reference.
1. The translation should be first reviewed by technical reviewers;
2. and then by language reviewers.

For the translation for the first batch of files, please see !MR5620 and !MR5613
2019-09-20 12:32:55 +08:00
Angus Gratton
b5f74522a3 doc: Add page explaining ESP32-S2 status 2019-09-20 10:28:46 +10:00
Angus Gratton
adfc06a530 Merge branch 'master' into feature/esp32s2beta_merge 2019-09-20 10:28:37 +10:00
Angus Gratton
96474f33a6 Merge branch 'bugfix/gnu_make_windows_paths' into 'master'
build: In GNU Make, use "cygpath -m" to avoid backslashes

Closes IDF-961

See merge request espressif/esp-idf!6132
2019-09-19 19:34:01 +08:00
Angus Gratton
01a8e566b8 Merge branch 'bugfix/cmake_case_insenstive_filesystem' into 'master'
cmake: Account for IDF_PATH case mismatches on case insensitive filesystems

See merge request espressif/esp-idf!6137
2019-09-19 19:33:36 +08:00
Angus Gratton
83680bd96b Merge branch 'feature/esp32s2beta' into feature/esp32s2beta_merge 2019-09-19 21:08:20 +10:00
suda-morris
546ac64a9e ethernet: update spi-ethernet api 2019-09-19 09:41:21 +00:00
suda-morris
dc5b8a9a8f ethernet: test apps can build with ethernet disabled 2019-09-19 09:41:21 +00:00
Jiang Jiang Jian
d78831ab2b Merge branch 'bugfix/remove_v40_deprecations' into 'master'
Remove features deprecated before ESP-IDF V4.0

Closes IDF-507

See merge request espressif/esp-idf!5841
2019-09-19 16:07:01 +08:00
suda-morris
77eb32b710 make psram workaround depend on chip revison
Since ESP32 revision 3, the PSRAM workaround is not needed.
2019-09-19 13:20:34 +08:00
Angus Gratton
b48daafb0c Merge branch 'fix/nimble_example_test' into 'master'
nimble_example_test: Fix BlePeripehral Test thread stuck issue

See merge request espressif/esp-idf!5510
2019-09-19 11:11:08 +08:00
Angus Gratton
bcaaaa1632 Merge branch 'feature/esp32s2beta_wdt' into 'feature/esp32s2beta'
esp32s2beta: Re-enable interrupt WDT, RTC_WDT, Task wdt

See merge request espressif/esp-idf!5786
2019-09-19 11:10:58 +08:00
Angus Gratton
36ba5bc5ee cmake: Account for IDF_PATH case mismatches on case insensitive filesystems 2019-09-19 12:30:52 +10:00
gengyuchao
87995c5f75 bugfix:btmd fix the problem that fixed_queue_enqueue may give the wrong semaphore if list_append fail to calloc a new node 2019-09-18 17:43:35 +08:00
Jiang Jiang Jian
5051bb906a Merge branch 'bugfix/ble_mesh_get_timer_remaining_time' into 'master'
ble_mesh: fix ble mesh get timer remaining time

See merge request espressif/esp-idf!6060
2019-09-18 16:38:24 +08:00
Angus Gratton
d559ccb23c Merge branch 'bugfix/IDF-997' into 'master'
docs: Update eclipse setup doc with the IDF Eclipse Plugins github link

Closes IDF-997 and IDF-194

See merge request espressif/esp-idf!6105
2019-09-18 15:15:21 +08:00
michael
70d771eb2d esp_flash: put adapter to legacy functions into IRAM to be back-compatible 2019-09-18 15:07:47 +08:00
Krzysztof Budzynski
321af28ff2 Merge branch 'doc/Add_Chinese_translation_to_sdmmc_in_storage_folder' into 'master'
Add Chinese transaltion to sdmmc in storage folder

See merge request espressif/esp-idf!6029
2019-09-18 13:28:16 +08:00
Wang Fang
412a766a2a Add Chinese transaltion to sdmmc in storage folder
The translation should be first reviewed by technical reviewer Xiao Xufeng and then by Carrie

The translation for the other documents in storage folder can be found in MR5613, MR5620 and MR5737.
2019-09-18 13:28:16 +08:00
xiehang
e1496449b1 esp_wifi: Update wifi lib 2019-09-18 10:16:35 +10:00
suda-morris
58577db086 gh_action: fix error on new pull request
1. Disable the broken pull request sync temporarily
2. move python lint from travis to github action
2019-09-17 21:59:31 +08:00
Ivan Grokhotkov
d8ab12e2da Merge branch 'bugfix/fix_http_request' into 'master'
Fix http_request example

See merge request espressif/esp-idf!6064
2019-09-17 21:29:16 +08:00
Renz Christian Bagaporo
f1b5c326f4 cxx: force pthread to appear later in link line 2019-09-17 20:08:12 +08:00
Ivan Grokhotkov
3cd687b35a Merge branch 'fix/esp_flash_coredump' into 'master'
esp_flash: fix coredump issues

See merge request espressif/esp-idf!5917
2019-09-17 17:40:30 +08:00
Ivan Grokhotkov
bf68285689 Merge branch 'feature/compile_option_O0' into 'master'
build_system: add new compiler optimization levels

See merge request espressif/esp-idf!5686
2019-09-17 16:54:55 +08:00
Angus Gratton
d10107a50e idf_test: Disable tests for Wi-Fi auto reconnect
Disable one, remove IDF tag from the other
2019-09-17 18:41:09 +10:00
Angus Gratton
44c89c0e9f Merge branch 'bugfix/idf_py_dependent_tasks' into 'master'
idf.py: Fix execution order for dependent tasks

Closes IDF-901 and IDFGH-1710

See merge request espressif/esp-idf!5859
2019-09-17 16:26:25 +08:00
Kondal Kolipaka
41a1eebbd4 docs: Update eclipse setup doc with the IDF Eclipse Plugins github link 2019-09-17 13:42:32 +05:30
Angus Gratton
4df759ac81 Merge branch 'feature/add_chip_revision_to_image_header' into 'master'
app_image: add chip revision in image header

Closes IDF-811 and IDFGH-1778

See merge request espressif/esp-idf!5926
2019-09-17 12:52:00 +08:00
Angus Gratton
d371605315 build: In GNU Make, use "cygpath -m" to avoid backslashes
Fixes issues where backslashes in KCONFIG paths are later expanded as shell escape sequences.
2019-09-17 13:47:05 +10:00
Krzysztof Budzynski
7c85a2a987 Merge branch 'doc/add_Chinese_translation_for_touch_pad_in_api-reference' into 'master'
Add Chinese translation for touch_pad.rst in api-reference

See merge request espressif/esp-idf!5445
2019-09-17 11:22:30 +08:00
Wang Fang
fb0bf099a3 Add Chinese translation for touch_pad.rst in api-reference:
1. Add link to en/api-reference/peripherals/touch_pad.rst
2. Add Chinese translation to zh_CN/api-reference/peripherals/touch_pad.rst
2019-09-17 11:22:30 +08:00
Angus Gratton
96b96ae244 Merge branch 'bugfix/cmake_component_names' into 'master'
CMake: Component name related bugfixes

See merge request espressif/esp-idf!5921
2019-09-17 11:16:25 +08:00
Angus Gratton
d019f479d5 Merge branch 'feature/idf_py_version' into 'master'
idf.py: Add --version option

Closes IDF-702

See merge request espressif/esp-idf!5800
2019-09-17 08:31:59 +08:00
Sergei Silnov
1faa69a01b idf.py: Fix execution order for dependent tasks
Closes https://github.com/espressif/esp-idf/issues/3948

Add tests for idf.py
Move param check from cmake to idf_py test
Refactor task processing for idf.py
Add code comments
Fix an issue when options for dependent tasks are ignored
Add check for dupes in command list
2019-09-16 22:48:57 +08:00
Sergei Silnov
2d03af30ab Add idf.py --version option
Update docs on how to check IDF version
Show dependencies check information only in verbose mode
2019-09-16 20:32:26 +08:00
suda-morris
dd248ffc32 Add chip revision into image header
Check chip id and chip revision before boot app image

Closes https://github.com/espressif/esp-idf/issues/4000
2019-09-16 18:13:53 +08:00
lly
9ee5e3d8ed ble_mesh: fix duplicate memory free during receiving status message 2019-09-16 17:34:08 +08:00
lly
e1b04df763 ble_mesh: make unicast elem lookup O(1) 2019-09-16 14:55:41 +08:00
lly
5b53debb6f ble_mesh: use adv report flow control for ble mesh 2019-09-16 14:43:30 +08:00
Angus Gratton
6b7da96d5b ulp: Add header for common ULP definitions
Fixes problems with duplicate error codes in the two chip-specific ulp headers
2019-09-16 16:18:53 +10:00
Angus Gratton
438d513a95 Merge branch 'master' into feature/esp32s2beta_merge 2019-09-16 16:18:48 +10:00
Angus Gratton
a70c3367e8 Merge branch 'bugfix/fix_yaml_load_warnings' into 'master'
python: Fix yaml.load warnings

See merge request espressif/esp-idf!5404
2019-09-16 09:44:10 +08:00
Angus Gratton
0efdeb202e Merge branch 'fix/elf_sha256_esp32s2beta' into 'feature/esp32s2beta'
build_system/app_update: fix the linker script and re-enable elf-sha256

See merge request espressif/esp-idf!5972
2019-09-16 08:25:20 +08:00
Angus Gratton
66b0b8951f Merge branch 'bugfix/esp32s2beta_docs' into 'feature/esp32s2beta'
esp32s2beta: Fix docs build

See merge request espressif/esp-idf!6096
2019-09-16 08:19:59 +08:00
Michael (XIAO Xufeng)
9d30b04f68 coredump: use esp_flash api in coredump
Also put esp_flash functions into noflash region, when
ESP32_PANIC_HANDLER_IRAM and coredump are enabled. The option disables
the re-enabling of the CPU-cache when it's disabled during coredump.
This requires all the coredump functions including the flash API to be
in the D/IRAM.
2019-09-14 17:02:08 +08:00
Michael (XIAO Xufeng)
511820820e esp_flash: fix the coredump issue
During coredump, dangerous-area-checking should be disabled, and cache
disabling should be replaced by a safer version.

Dangerous-area-checking used to be in the HAL, but it seems to be more
fit to os functions. So it's moved to os functions. Interfaces are
provided to switch between os functions during coredump.
2019-09-14 17:01:36 +08:00
Michael (XIAO Xufeng)
6139864a4c esp_flash: fix coredump for legacy spi flash API
When legacy mode is used, the coredump still fails during linking
because "esp_flash_init_default_chip", "esp_flash_app_init" and
"esp_flash_default_chip " are not compiled and linked.

Instead of using ``if`` macros in callers, these functions are protected
by ``if`` macros in the header, and also not compiled in the sources.
"esp_flash_default_chip" variable is compiled with safe default value.
2019-09-14 16:56:31 +08:00
Sergei Silnov
c57dfbc0b8 python: Fix yaml.load warnings
Since pyyaml 5.1 yaml.load without specifing loader is deprecated
Details: https://msg.pyyaml.org/load

To keep code compatible with older versions of pyyaml
and keep best perfomance CLoader with fallback to Loader is used.
2019-09-13 10:29:38 +00:00
Sagar Bijwe
e255c48de7 Fix http_request example
1) WEB_PATH should path relative to document root of web server.
2) HTTP request should contain "Host" header of format "host:port".
3) Port number in the example should be configurable.
2019-09-13 09:21:29 +00:00
Shivani Tipnis
8ee727fb9a nimble_test: Fix nimble example test CI 2019-09-13 08:18:43 +00:00
Angus Gratton
c27fd32fbe Merge branch 'feat/esp_flash_support_encrypt' into 'master'
esp_flash: add support for encrypted read and write

See merge request espressif/esp-idf!6008
2019-09-13 14:52:01 +08:00
Angus Gratton
d6b39a8f9d Merge branch 'bugfix/use_local_kconfiglib' into 'master'
Use kconfiglib from $IDF_PATH/tools/kconfig_new

See merge request espressif/esp-idf!6078
2019-09-13 14:46:42 +08:00
Angus Gratton
ff5018d3ee Merge branch 'doc/add-extension-sphinx.ext.todo' into 'master'
Add extension "sphinx.ext.todo" for todo notes in rst files. Add info how to use it.

See merge request espressif/esp-idf!6084
2019-09-13 14:46:09 +08:00
Angus Gratton
146a0f8e14 Merge branch 'feature/idf_py_depeprecation_parameter_flag' into 'master'
idf.py: Add support for deprecation of command/options

See merge request espressif/esp-idf!5433
2019-09-13 14:30:27 +08:00
Angus Gratton
9d19f4fc8e driver docs: Fix some doxygen warnings 2019-09-13 14:30:06 +10:00
Angus Gratton
49698e15f3 docs: Don't build any docs for the esp32s2beta component
Re-enable failing CI for warnings in the docs build

This config hack can be removed once IDF-523 is implemented.
2019-09-13 14:08:21 +10:00
Angus Gratton
14730f049e Merge branch 'bugfix/do_not_use_absolute_paths_to_other_components' into 'master'
app_update: use build system api to get partition_table dir

See merge request espressif/esp-idf!6039
2019-09-13 07:51:22 +08:00
Jack
b0c893a20c Wi-Fi: remove wifi_fast_scan_threshold_t which is not suitable in name 2019-09-13 09:44:07 +10:00
Jack
95ec36afd4 dport: remove clock_en and reset bitname which is not suitable 2019-09-13 09:44:07 +10:00
Angus Gratton
33a186f630 soc: Remove deprecated LEDC struct register names (bit_num, div_num)
Deprecated since ESP-IDF V3.0
2019-09-13 09:44:07 +10:00
Angus Gratton
6195c69701 soc: remove deprecated io_mux PIN_PULLxxx_yyy macros
Deprecated before ESP-IDF V1.0!
2019-09-13 09:44:07 +10:00
Angus Gratton
c41b2b0415 mbedtls: Remove esp_aes_encrypt/decrypt
Deprecated in ESP-IDF V3.1

Anyone reading this should please include mbedtls/aes.h and use mbedTLS APIs,
not the ESP-specific APIs.
2019-09-13 09:44:07 +10:00
Angus Gratton
b022527da7 heap: Remove esp_heap_alloc_caps header
Deprecated in ESP-IDF V3.1
2019-09-13 09:44:07 +10:00
Angus Gratton
fb748bae7f fatfs: Remove esp_vfs_fat_unregister()
Deprecated in ESP-IDF V2.0
2019-09-13 09:44:07 +10:00
Angus Gratton
ba54a552c1 esp_wifi: Remove WIFI_PS_MODEM constant
Deprecated in ESP-IDF V3.1
2019-09-13 09:44:07 +10:00
Angus Gratton
d63181b5e9 esp_wifi: Remove deprecated auto connect API
Deprecated in ESP-IDF V3.1
2019-09-13 09:44:07 +10:00
Angus Gratton
2e067f5b57 ringbuf: Remove deprecated RingbufferType_t
Deprecated in ESP-IDF V3.1
2019-09-13 09:44:07 +10:00
Angus Gratton
dc7d6d592e wdt: Remove deprecated esp_task_wdt_feed() function
Deprecated in ESP-IDF V3.1
2019-09-13 09:44:07 +10:00
Angus Gratton
480bd0360f esp32/esp_common: Remove deprecated esp_efuse_read_mac() function
Deprecated since ESP-IDF V2.0
2019-09-13 09:44:07 +10:00
Angus Gratton
bdeaf138c4 esp32/esp_common: Remove deprecated system_* APIs
Mostly deprecated before ESP-IDF V1.0 & V2.0
2019-09-13 09:44:07 +10:00
Angus Gratton
a9a29b1f1e esp_adc_cal: Remove deprecated ADC calibration functions
Deprecated since ESP-IDF V3.1
2019-09-13 09:44:07 +10:00
Angus Gratton
fbc1d1c319 esp32: Remove deprecated system_deep_sleep function
Deprecated since ESP-IDF V3.0
2019-09-13 09:44:07 +10:00
Ivan Grokhotkov
88548a9b4d esp32/test: fix usage of deprecated fields 2019-09-13 09:44:07 +10:00
Angus Gratton
11c1da5276 soc/pm: Remove deprecated use of rtc_cpu_freq_t enum
Removes deprecated ways of setting/getting CPU freq, light sleep freqs.

Deprecated since ESP-IDF V3.2
2019-09-13 09:44:07 +10:00
Angus Gratton
f406d020d8 driver: Remove features deprecated pre-IDF V4.0 2019-09-13 09:44:07 +10:00
Angus Gratton
f44d99b509 app_update: Remove deprecated "make erase_ota" target
Deprecated in v3.2
2019-09-13 09:44:07 +10:00
Angus Gratton
62c06047da bootloader_support: Remove deprecated partition load/verify functions
Deprecated since v3.2
2019-09-13 09:44:07 +10:00
Angus Gratton
596ccc6793 bluetooth: Remove bt.h header (deprecated in v3.1-dev) 2019-09-13 09:44:07 +10:00
KonstantinKondrashov
e0f7fbc5fa bootloader: expand the space for iram_loader_seg
Fixed ld issue: overflowed iram_loader_seg
2019-09-13 00:39:37 +08:00
KonstantinKondrashov
d1173c8f09 esp32s2beta: task_wdt
Closes: IDF-753
2019-09-13 00:06:22 +08:00
KonstantinKondrashov
2644ddc3e1 esp32s2beta: Using rtc_wdt API 2019-09-13 00:06:22 +08:00
KonstantinKondrashov
d3637cd06b rtc_wdt: re-enable RTC_WDT 2019-09-13 00:03:52 +08:00
KonstantinKondrashov
3ffa33c84d esp32s2beta: re-enable int_wdt 2019-09-13 00:03:52 +08:00
Michael (XIAO Xufeng)
d7d5aebdee soc: fix memory map for esp32 and esp32s2beta 2019-09-12 16:17:52 +08:00
Jiang Jiang Jian
15356857b5 Merge branch 'bugfix/transport' into 'master'
fix(transport): Fix a bug of the connection whether be active or not.

See merge request espressif/esp-idf!5604
2019-09-12 13:55:48 +08:00
Liu Han
3ca07b3e70 fix(transport): Fix a bug of the connection whether be active or not by timeout option when the select function return a correct value. 2019-09-12 13:55:47 +08:00
Jiang Jiang Jian
7cdc7e193d Merge branch 'docs/wifi_update_concurrent_mode_info' into 'master'
docs: wifi: wifi_guide update for disconnection warning in case of invalid...

See merge request espressif/esp-idf!5861
2019-09-12 13:45:45 +08:00
Hrudaynath Dhabe
d740769916 docs: wifi: wifi_guide update for disconnection warning in case of invalid initiation in WIFI_MODE_APSTA.
Added warning to expect momentary disconnection of exSTA if channel of exAP is different than that of softAP and a prescribed solution.
2019-09-12 13:45:44 +08:00
Jiang Jiang Jian
850893b25b Merge branch 'bugfix/uart_select_free' into 'master'
VFS: Fix memory access after free() in UART select()

Closes IDFGH-1820

See merge request espressif/esp-idf!6045
2019-09-12 13:38:43 +08:00
Jiang Jiang Jian
9f145ff165 Merge branch 'feature/btdm_add_hf_nvrc_command' into 'master'
BT HFP: Add AT+NREC=0 command for disabling AG echo cancellation.

See merge request espressif/esp-idf!5974
2019-09-12 13:25:18 +08:00
Jiang Jiang Jian
d1e5d9c8c9 Merge branch 'bugfix/btdm_config_msbc' into 'master'
components/bt: Disable Wide Bond Speech when SCO data path is PCM

See merge request espressif/esp-idf!5978
2019-09-12 13:23:41 +08:00
Michael (XIAO Xufeng)
d008c47dac esp_flash: add support for encrypted read and write
Using legacy implementation.
2019-09-12 12:41:50 +08:00
Kirill Chalov
f0dc5f8dc2 Apply suggestion to docs/en/contribute/documenting-code.rst 2019-09-12 12:36:13 +08:00
Roland Dobai
1dcdc56a7f Use kconfiglib from $IDF_PATH/tools/kconfig_new 2019-09-11 14:30:31 +02:00
Michael (XIAO Xufeng)
df27a50866 app_update: re-enable elf-sha256 2019-09-11 18:29:11 +08:00
Kirill Chalov
7c491d2335 Allow the extension for adding todo notes to rst files. Add information on how to use this extension to the contribution section. 2019-09-11 17:15:00 +08:00
Jiang Jiang Jian
32f216441f Merge branch 'bugfix/esp32s2beta_cache_interrupt_panic' into 'feature/esp32s2beta'
cache_err_int: Add cache error interrupt panic

See merge request espressif/esp-idf!5559
2019-09-11 12:48:12 +08:00
Jiang Jiang Jian
7e81e3da89 Merge branch 'bugfix/esp32s2beta_cache_spiflash_test' into 'feature/esp32s2beta'
util-test: The cache and spi_flash tests passed

See merge request espressif/esp-idf!5363
2019-09-11 12:47:18 +08:00
Angus Gratton
15e0ee528e Merge branch 'bugfix/cmake_sdkconfig_path' into 'master'
fix bug for cmake build system

See merge request espressif/esp-idf!6052
2019-09-11 11:39:49 +08:00
jiangguangming
1b31191753 fix bug for cmake build system
The path of ${SDKCONFIG_H} does not exist, should be replaced by ${sdkconfig_header}.
2019-09-11 11:00:19 +08:00
zhangyanjiao
d885df946a fix the bug that ESP32 sends broadcast to phone after smartconfig done 2019-09-11 10:42:16 +08:00
michael
213f8cf7ef ci: forbid esp32s2beta tests from being built in make 2019-09-11 09:31:47 +08:00
Angus Gratton
2402d0952d Merge branch 'bugfix/flash_encryption_disable_plaintext' into 'master'
flash encryption: Always disable plaintext reflashes in Release mode

See merge request espressif/esp-idf!6051
2019-09-11 07:59:33 +08:00
Li Shuai
d48aac96a1 util-test: Fix the conflict target of esp32_test_logo between esp32s2beta and esp32 2019-09-10 20:49:36 +08:00
Jiang Jiang Jian
3b606aa21f Merge branch 'bugfix/wpa2_ent_eap_reauth_fail' into 'master'
wpa_supplicant: Fix EAP Re-authentication issue

See merge request espressif/esp-idf!5588
2019-09-10 20:14:22 +08:00
lly
5d1f84f69c ble_mesh: fix ble mesh get timer remaining time 2019-09-10 16:58:41 +08:00
Angus Gratton
49ca39d35c Merge branch 'bugfix/multi_heap_printf' into 'master'
heap: Fix printf usage in heap poisoning

See merge request espressif/esp-idf!6046
2019-09-10 13:26:27 +08:00
Angus Gratton
88c0e012df Merge branch 'doc/build_system_requirements' into 'master'
docs: Explain build system REQUIRES & PRIV_REQUIRES in more detail

See merge request espressif/esp-idf!5965
2019-09-10 13:10:03 +08:00
Roland Dobai
7cc225c85b VFS: Fix memory access after free() in UART select()
Closes https://github.com/espressif/esp-idf/issues/4030
2019-09-10 04:59:03 +00:00
Jiang Jiang Jian
b6455e1153 Merge branch 'bugfix/ble_mesh_related_bugfixes' into 'master'
Bugfix/ble mesh related bugfixes

See merge request espressif/esp-idf!5975
2019-09-10 09:46:26 +08:00
Angus Gratton
c052a38e2a bootloader: Link RTC clock functions to the iram_loader section
As flash encryption & secure boot needs these functions after the app is loaded.

Fixes regression introduced in fb72a6f629
2019-09-10 11:28:17 +10:00
Angus Gratton
5c5770dddb docs: Small cleanup of flash encryption docs 2019-09-10 11:28:11 +10:00
Angus Gratton
b547aef2a0 flash encryption: Ensure flash encryption can't be disabled if Secure Boot is on 2019-09-10 11:28:11 +10:00
Angus Gratton
b0710f9d0b docs: Explain build system REQUIRES & PRIV_REQUIRES in more detail
Including an example.
2019-09-10 09:48:46 +10:00
Darian Leung
e52c0d0da2 heap: Fix printf usage in heap poisoning
This commit fixes the bug where printf() is used in
verify_allocated_region() when ets_printf() should be used.
2019-09-09 21:56:39 +08:00
Krzysztof Budzynski
56231a998b Merge branch 'doc/review_api-ref_periph-sdspi_host' into 'master'
Review the file api-reference/peripherals/sdspi_host.rst

See merge request espressif/esp-idf!5732
2019-09-09 19:59:56 +08:00
Kirill Chalov
95552d4d13 Review the file api-reference/peripherals/sdspi_host.rst 2019-09-09 19:14:39 +08:00
lly
1a8f37b383 ble_mesh: update ble mesh examples sdkconfig.defaults 2019-09-09 17:15:16 +08:00
lly
d48c89b56a ble_mesh: fix ble mesh btc may caused memory leak 2019-09-09 17:15:16 +08:00
lly
8a41132507 ble_mesh: fix publication period timestamp initialization 2019-09-09 17:15:16 +08:00
lly
715cf7d578 ble_mesh: remove useless mesh_opcode 2019-09-09 17:15:16 +08:00
lly
8580a3211b ble_mesh: fix bt_mesh_net_resend() caused compiling error 2019-09-09 17:15:16 +08:00
lly
8a7ab6cb3d ble_mesh: fix adhering to the configured Friend Queue size 2019-09-09 17:15:16 +08:00
lly
29de1a9acf ble_mesh: remove useless code bt_mesh_trans_resend() 2019-09-09 17:15:16 +08:00
lly
386a5d649c ble_mesh: lpn remove msg from cache on rejection 2019-09-09 17:15:16 +08:00
lly
9a672caa7e ble_mesh: introduce a helper for send callback function 2019-09-09 17:15:16 +08:00
lly
05128c98ec ble_mesh: fix heartbeat sending on friendship established/lost 2019-09-09 17:15:16 +08:00
lly
9f80c24b74 ble_mesh: fix checking for active heartbeat publication 2019-09-09 17:15:16 +08:00
lly
b9c43cec19 ble_mesh: fix starting iv update when not on primary subnet 2019-09-09 17:15:16 +08:00
lly
3f6968e31b ble_mesh: fix canceling publication retransmit timer 2019-09-09 17:15:16 +08:00
lly
10bffaebf1 ble_mesh: fix resending segments on correct bearer 2019-09-09 17:15:16 +08:00
lly
e152df43f1 ble_mesh: fix not sending all segments through the Friend Queue 2019-09-09 17:15:16 +08:00
lly
f449cb7843 ble_mesh: fix canceled buffer memory leak 2019-09-09 17:15:16 +08:00
lly
2afc9b820d ble_mesh: remove some useless copy during ecdh calculation 2019-09-09 17:15:16 +08:00
lly
75b0f50aa0 ble_mesh: move heartbeat sending to transport layer 2019-09-09 17:15:16 +08:00
lly
edf0b9ee02 ble_mesh: fix provisioning send error handling 2019-09-09 17:15:16 +08:00
lly
1c06494293 ble_mesh: fix rejecting invalid remote public key 2019-09-09 17:15:16 +08:00
lly
3e47f3ec87 ble_mesh: add error checks for scan start/stop 2019-09-09 17:15:16 +08:00
lly
3e489d40ff ble_mesh: rename reset_link() to reset_adv_link() 2019-09-09 17:15:16 +08:00
lly
f2b0b00020 ble_mesh: fix public key mismatch error handling 2019-09-09 17:15:16 +08:00
lly
630e911958 ble_mesh: update protocol error timeout from zephyr 2019-09-09 17:15:16 +08:00
lly
716db01a7f ble_mesh: fix segmented message RPL behavior 2019-09-09 17:15:16 +08:00
lly
5f5f5cf305 ble_mesh: clear LPN sent_req on failure 2019-09-09 17:15:16 +08:00
lly
4bf4094e40 ble_mesh: update proxy sar operation from zephyr 2019-09-09 17:15:16 +08:00
lly
9c98a8d645 ble_mesh: fix postponing storage deadline indefinitely 2019-09-09 17:15:16 +08:00
lly
c44a3f1209 ble_mesh: fix RPL storage timeout handling 2019-09-09 17:15:16 +08:00
lly
9a7efd30ef ble_mesh: fix output MIC with additional data 2019-09-09 17:15:16 +08:00
lly
f3e7656c06 ble_mesh: remove non-standard relay opearation 2019-09-09 17:15:16 +08:00
lly
0c82a32524 ble_mesh: fix finding netkey/appkey/devkey for tx/rx msg 2019-09-09 17:15:16 +08:00
lly
b8cb769ce3 ble_mesh: fix failed to set device role caused mem leak 2019-09-09 17:15:16 +08:00
lly
624bf7e3a0 ble_mesh: ble mesh btc miscellaneous modifications 2019-09-09 17:15:16 +08:00
lly
1f96bf5906 ble_mesh: fix MESH/NODE/FRND/FN/BV-11-C related bug 2019-09-09 17:15:16 +08:00
lly
f25640e9e5 ble_mesh: fix MESH/NODE/CFG/GPXY/BV-02-C & MESH/NODE/CFG/NID/BV-02-C related bug 2019-09-09 17:15:16 +08:00
lly
014a35c1df ble_mesh: fix MESH/NODE/CFG/HBS/BV-01-C related bug 2019-09-09 17:15:16 +08:00
lly
b3bc60183d ble_mesh: rename ble mesh client model variables and functions 2019-09-09 17:15:16 +08:00
lly
5f6259a625 ble_mesh: reorganize ble mesh model files 2019-09-09 17:15:16 +08:00
lly
a788e7cd3d ble_mesh: sync zephyr v1.14.0 bt_hex() 2019-09-09 17:15:16 +08:00
lly
c648054e08 ble_mesh: fix provisioner prov auth bug 2019-09-09 17:15:16 +08:00
Li Shuai
d5a9b1a240 util-test: The cache and spi_flash tests passed 2019-09-09 16:59:29 +08:00
Li Shuai
fd15fd3da4 util-test: Copy the test in the esp32 directory to the esp32s2beta directory 2019-09-09 16:57:28 +08:00
Li Shuai
eb4c0ef8b2 cache_err_int: Modify cache error interrupt panic code format 2019-09-09 14:35:42 +08:00
Li Shuai
ce6c86672b cache_err_int: Add cache error interrupt panic 2019-09-09 14:35:42 +08:00
Angus Gratton
35147119f1 Merge branch 'feature/support_ut_esp32s2beta' into 'feature/esp32s2beta'
ci: support build and run UT for esp32s2beta

See merge request espressif/esp-idf!5702
2019-09-09 08:34:16 +08:00
Jiang Jiang Jian
2ca954ae0f Merge branch 'feature/esp32s2beta_memory_reorg' into 'feature/esp32s2beta'
Feature/esp32s2beta memory reorganize

See merge request espressif/esp-idf!6026
2019-09-08 23:03:31 +08:00
Mahavir Jain
f2eadc9378 Merge branch 'bugfix/mbedtls_client_only_config_build_failure' into 'master'
Fix build issues in coap library with mbedtls client only config

See merge request espressif/esp-idf!5955
2019-09-06 21:12:04 +08:00
Krzysztof Budzynski
a2f86200c7 Merge branch 'doc/add_Chinese_translation_to_README_files_in_components_and_tools_folders_1st_batch' into 'master'
Add Chinese translation for storage documents linked to README files in components and tools folders (1st batch)

See merge request espressif/esp-idf!5620
2019-09-06 20:18:20 +08:00
Wang Fang
bea507378e Add Chinese translation for README files in components and tools folders, including:
1. components/nvs_flash/nvs_partition_generator/README_CN.rst
2. components/wear_levelling/README_CN.rst
3. tools/mass_mfg/docs/README_CN.rst
2019-09-06 20:18:19 +08:00
Krzysztof Budzynski
67960020cd Merge branch 'doc/add_Chinese_translation_to_rst_files_in_storage_folder_1st_batch' into 'master'
Doc/add chinese translation to rst files in storage folder 1st batch

See merge request espressif/esp-idf!5613
2019-09-06 19:12:37 +08:00
Wang Fang
758abe6e01 Add Chinese translation for the rst documents in storage folder, including:
1. docs/zh_CN/api-reference/storage/fatfs.rst
2. docs/zh_CN/api-reference/storage/index.rst
3. docs/zh_CN/api-reference/storage/sdmmc.rst
4. docs/zh_CN/api-reference/storage/spiffs.rst
5. docs/zh_CN/api-reference/storage/wear-levelling.rst
2019-09-06 19:12:36 +08:00
Jon Shallow
430b737760 Fix libcoap building with various MbedTLS compile time options
components/coap/port/coap_mbedtls.c:

Add in additional compile time check wrappers for different MbedTLS
configurations.

components/coap/CMakeLists.txt:
components/coap/component.mk:
components/coap/port/coap_notls.c:
components/coap/port/include/coap_config_posix.h:

Add in the ability to compile and run if MbedTLS does not have any TLS
mode enabled.

examples/protocols/coap_client/main/coap_client_example_main.c:

Inform user that MbedTLS Client Mode is required for DTLS if not enabled,
and coaps:// has been requested.
[Lower libcoap library will still error and report this condition]

examples/protocols/coap_server/main/coap_server_example_main.c:

Inform user that MbedTLS Server Mode is required for DTLS if not enabled.
[Lower libcoap library will still error and report this condition]

Closes https://github.com/espressif/esp-idf/issues/3961
Closes https://github.com/espressif/esp-idf/issues/3971
Closes https://github.com/espressif/esp-idf/pull/3977
2019-09-06 16:13:52 +05:30
Andrew
4fdaeb6b6e cmake: Add new compiler optimization levels definitions
Rename and add multiple kconfig compiler options. New compiler options
COMPILER_OPTIMIZATION_PERF and COMPILER_OPTIMIZATION_NONE have been added.
Optimize "Debug" and "Release" options to "Default" and "Size" respectively.
This commit also does the following:

- The COMPILER_OPTIMIZATION_PERF option introduced multiple bug.
This commit fixes those bugs.
- build.yml also updated to test for the new optimization options.
2019-09-06 17:37:19 +08:00
Nachiket Kukade
5df2e6b19c wpa_supplicant: Fix EAP Re-authentication issue
EAP reauth frames are dropped at various stages due to current
implementation of WPA2 ENT states and EAP SM init/deinit logic.
Route EAPOL frames based on EAP pkt type and maintain EAP SM
to facilitate EAP re-authentication process.

The full fix for the change includes a fix from wifi library
(commit - 36f99df849214fbf9b0d15e58554632a568e05aa).
2019-09-06 14:59:05 +05:30
jiangguangming
4ef4b29c74 Reorganize the memory to maximize contiguous DRAM
1. Fix bug for variable sdkconfig_header in CMakeLists.txt
2. Modify the load address of bootloader
3. Modify the load address of application program
2019-09-06 16:18:42 +08:00
Angus Gratton
8b3e8f10cb Merge branch 'fix/add_parentheses_to_spi_swap_data_tx' into 'master'
spi: Put argument of macro SPI_SWAP_DATA_TX in parentheses

See merge request espressif/esp-idf!5982
2019-09-06 16:04:56 +08:00
Angus Gratton
cd68972e32 Merge branch 'bugfix/ethernet_rx_length_check' into 'master'
ethernet: bugfix and optimize

Closes IDF-864, IDF-865, IDF-866, and IDF-867

See merge request espressif/esp-idf!5944
2019-09-06 15:39:20 +08:00
Angus Gratton
a16280236f Merge branch 'feature/coredump_data_in_elf_format_cpu_cache_enable' into 'master'
espcoredump: Enable cpu cache in panic handler for core dump

See merge request espressif/esp-idf!5496
2019-09-06 15:37:56 +08:00
Alex Lisitsyn
7ff9538c48 espcoredump: fix issue with spi_flash access
spi_flash has been updated and its functions work from flash by default instead of IRAM that cause issue
add Kconfig value into espcoredump to enable spi_flash legacy mode (CONFIG_SPI_FLASH_USE_LEGACY_IMPL) when core dump is selected
fix spi_flash issues to work correctly with legacy mode when CONFIG_SPI_FLASH_USE_LEGACY_IMPL is used
2019-09-06 15:37:55 +08:00
Jiang Jiang Jian
fc62542e18 Merge branch 'bugfix/fix_the_bug_for_WPA_WPA2_PSK_connection_fail' into 'master'
fix the bug for WPA_WPA2_PSK connection fail

See merge request espressif/esp-idf!6009
2019-09-06 14:34:47 +08:00
Jiang Jiang Jian
84daad38c3 Merge branch 'bugfix/btdm_a2dp_sink_media_suspend_cmd_unack' into 'master'
bugfix/btdm_a2dp_sink_media_suspend_cmd_unack

See merge request espressif/esp-idf!5937
2019-09-06 14:29:45 +08:00
Jiang Jiang Jian
35874254b9 Merge branch 'bugfix/rom_miniz_notes' into 'master'
rom: Add warnings for miniz functions that won't work due to missing malloc

Closes IDFGH-1814

See merge request espressif/esp-idf!6012
2019-09-06 14:18:57 +08:00
baohongde
cb2e1f93d1 components/bt: Fix sending LMP_features_req_ext in a loop
Remove xtensa/xtruntime.h at the same time
2019-09-06 12:00:54 +08:00
Mahavir Jain
92d162175a Merge branch 'bugfix/http_header_parser_resolution' into 'master'
esp_http_server : Bugfix in parsing of empty header values

Closes IDFGH-1539

See merge request espressif/esp-idf!5663
2019-09-06 11:02:37 +08:00
Chinmay Chhajed
a6cc964a26 esp_http_server : Bugfix in parsing of empty header values
This MR is intended to fix incorrect parsing of HTTP requests when empty header values are present.

The issue is was due to asymmetric behavior of `http_parser` library, which in case of:

    non-empty header values : invokes callbacks with the pointer to the start of a value
    empty header values : invokes callbacks with pointer to the start of next header or section

Since HTTP server relies on this pointer (along with length of the value) to locate the end of a value, and replace the line terminators (CRLFs) with null characters, the second case needed to be handled correctly.

Closes IDFGH-1539

Closes https://github.com/espressif/esp-idf/issues/3803
2019-09-06 11:02:36 +08:00
Angus Gratton
f23b3fdbe4 rom: Add warnings for miniz functions that won't work due to missing malloc
Closes https://github.com/espressif/esp-idf/issues/4024
2019-09-06 11:01:34 +10:00
zhangyanjiao
45c72dd372 fix the bug that STA fails to connect WPA_WPA2_PSK Apple AP 2019-09-05 20:20:42 +08:00
jiangguangming
c057c141eb Fix bug for reserved memory regions
1. Release 16KB memory of reserved regions to heap
2. Modify the dram_seg address of bootloader to 0x3FFF8000, size is 16K
2019-09-05 19:00:14 +08:00
Li Shuai
bd29202520 1. Fix backtrace is incomplete
2. Optimization code style
2019-09-05 18:40:33 +08:00
wanglei
653d8b5bdd update cache and spiram related files and bug fixes
1. remove speed dependency of SPIRAM
2. support wrap mode of cache, flash and SPIRAM
3. fix some bugs on cache modes support
2019-09-05 14:14:49 +08:00
Jiang Jiang Jian
8d85792acc Merge branch 'bugfix/btdm_crash_in_sket_ist' into 'master'
Fix 2 bugs in r_ld_fm_sket_isr

See merge request espressif/esp-idf!5946
2019-09-05 12:01:35 +08:00
Jiang Jiang Jian
07bd6d49ca Merge branch 'bugfix/btdm_config_but_task_size_fail' into 'master'
Use CONFIG value instead of hard-coded value.

See merge request espressif/esp-idf!5961
2019-09-05 11:26:50 +08:00
Krzysztof Budzynski
ab7c7b7ac3 Merge branch 'doc/add_chinese_translation_for_timer_in_api-reference_folder' into 'master'
add chinese translation for timer.rst in api-reference folder

See merge request espressif/esp-idf!5692
2019-09-04 17:09:13 +08:00
Hao Ning
eb2ddbfe48 add chinese translation for timer.rst in api-reference folder 2019-09-04 17:09:13 +08:00
Xia Xiaotian
f9aaaa6c3a esp_wifi: synchronize WiFi header file with WiFi library 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
852ccd127a ci: switch to use cmake as build system for example test 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
63329b169b ci: limit example test to ESP32s 2019-09-04 10:53:25 +10:00
KonstantinKondrashov
7f270d4299 newlib: Fix UT - test time adjustment happens linearly
Obtaining accurate and adjustable time occurs closer to each other.
2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
76a3a5fb48 ci: disable unavailable tests for esp32s2beta 2019-09-04 10:53:25 +10:00
Angus Gratton
e44df658d5 spiram: Fix ESP32 SPIRAM when using SPIRAM_TYPE_AUTO, disable "AUTO" for ESP32-S2
Requirement to enable for ESP32-S2 captured in IDF-912.
2019-09-04 10:53:25 +10:00
Angus Gratton
0c88ef3232 driver: Fix UART interrupt handle read bug 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
eb158e9a22 ci: disable UTs for esp32s2beta without runners 2019-09-04 10:53:25 +10:00
Angus Gratton
c22965b22c freertos: Restore uxPortCompareSet() in ESP32 unicore & make compatible code for ESP32S2Beta
This macro is used in places which expect it to work even without dual core being on.

Still make "mux" functions in FreeRTOS into no-ops as the mux is not needed.
2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
e9901d15a1 rtc: fix memory map 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
eac802357a ci: support build esp32s2beta UT 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
3a9ae4acc6 ci: pass target from build stage to unit test 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
4558824150 IDFDUT: seperate into different classes
The DUT should be created as the correct sub classes. This can be done
in the config file (UT_xxx_x.yml) Filter
2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
1f580e3f0e idf.py add support for esp32s2beta 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
053f419ced stdatomic: support gcc built-in functions for esp32s2beta 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
55859f59cb support for esp32s2beta 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
43135dc348 spi: convenient LL macro 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
9f1c8f0c76 spi_flash: support esp32s2beta 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
b76d5d74d9 mbedtls: support esp32s2beta 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
3b39e60f97 driver: remove unused drivers for esp32s2beta 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
05739798c3 soc: s2beta support 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
9baa7826be fix unit test and examples for s2beta 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng)
5b6bd40bc6 idf_py: support new command set-target
Instead of using -DIDF_TARGET, this command is more intuitive:

1. Can limit the choice of targets
2. Easy to understand this is a destructive command
3. Easy to remember, and have an entry in the --help menu
2019-09-04 10:53:25 +10:00
Renz Christian Bagaporo
a4ee680bbf app_update: use build system api to get partition_table dir 2019-09-03 19:47:53 +08:00
Martin Thierer
3bb42d0736 spi: Put argument of macro SPI_SWAP_DATA_TX/RX in parentheses
Close https://github.com/espressif/esp-idf/pull/3996
2019-09-03 15:21:23 +08:00
Angus Gratton
b08dcefafb Merge branch 'bugfix/idf_py_ccache_options' into 'master'
idf.py: Add way to enable CCache by default, remove dead CCache options code

Closes IDF-948

See merge request espressif/esp-idf!5971
2019-09-03 12:56:20 +08:00
Angus Gratton
c5747027b4 Merge branch 'bugfix/cmake_bootloader_python' into 'master'
build system: Pass Python executable through to bootloader build

See merge request espressif/esp-idf!5956
2019-09-03 12:55:58 +08:00
suda-morris
14ffd355e6 ethernet: bugfix and optimize
1. check frame length before pass to stack
2. replace semaphore with task notify
2019-09-03 11:01:16 +08:00
baohongde
019067b6ac components/bt: Rename some macros 2019-09-03 10:23:05 +08:00
Zac Bond
f8212988c4 Use CONFIG value instead of hard-coded value.
Add intermediate defines.

Use CONFIG_BTU_TASK_STACK_SIZE instead of hard-coded value in Bluedroid component
2019-09-03 10:21:45 +08:00
Angus Gratton
5b9576e282 Merge branch 'bugfix/hide_component_internal_targets' into 'master'
cmake: hide component internal targets

See merge request espressif/esp-idf!5866
2019-09-03 09:24:34 +08:00
Angus Gratton
002104b262 Merge branch 'bugfix/err_code_collision' into 'master'
Fix error code collisions and re-enable CI check

Closes IDF-832

See merge request espressif/esp-idf!5923
2019-09-03 08:30:40 +08:00
Angus Gratton
9a7ab28cc2 idf.py: Add environment variable to enable ccache by default 2019-09-03 10:25:28 +10:00
Jiang Jiang Jian
9b070666e1 Merge branch 'bugfix/btdm_linking_fail_with_toolchain_8.2.0' into 'master'
components/bt: Fix linking fail with toolchain 8.2.0

See merge request espressif/esp-idf!5782
2019-09-02 22:21:59 +08:00
Jiang Jiang Jian
81cf2cf130 Merge branch 'bugfix/btdm_remove_unused_macro_in_menuconfig' into 'master'
components/bt: Remove unused macro in menuconfig

See merge request espressif/esp-idf!5950
2019-09-02 22:20:49 +08:00
baohongde
185f47ab7e components/bt: Disable Wide Bond Speech when SCO data path is PCM 2019-09-02 20:50:09 +08:00
nif
75578300f1 BT HFP: Add AT+NREC=0 command for disabling AG echo cancellation. 2019-09-02 09:28:38 +00:00
Jiang Jiang Jian
df5db07edf Merge branch 'doc/add_ble_mesh_example_description' into 'master'
ble_mesh: add ble mesh example description

See merge request espressif/esp-idf!5711
2019-09-02 14:28:58 +08:00
Jiang Jiang Jian
a4a95e6c67 Merge branch 'bugfix/coex_bb_reset_lock' into 'master'
fix bug that wifi start/stop may cause crash

See merge request espressif/esp-idf!5968
2019-09-02 14:25:50 +08:00
Jiang Jiang Jian
6fa20a4d33 Merge branch 'test/use_correct_config_for_nvs_compatible_case' into 'master'
test: fix nvs compatible case error:

See merge request espressif/esp-idf!5890
2019-09-02 12:40:38 +08:00
Jiang Jiang Jian
a2e0c6b1ab Merge branch 'test/fix_mesh_test_case' into 'master'
test: fix test case MESH_EST_2403

See merge request espressif/esp-idf!5813
2019-09-02 12:38:38 +08:00
lly
c310d40299 ble_mesh: add ble mesh example description 2019-09-02 12:15:03 +08:00
Angus Gratton
9134643807 idf.py: Remove dead code around ccache base dir 2019-09-02 10:56:43 +10:00
Angus Gratton
f4763a3e1a Merge branch 'bugfix/idf_py_fix_property_dict' into 'master'
idf.py: Fix PropertyDict implementation

See merge request espressif/esp-idf!5775
2019-09-02 08:51:13 +08:00
Angus Gratton
eca4b855d9 Merge branch 'bugfix/secure_boot_ecdsa_config' into 'master'
secure boot: Ensure mbedTLS enables ECDSA if signatures are checked in app

See merge request espressif/esp-idf!5960
2019-09-02 08:31:18 +08:00
Angus Gratton
6581f81a11 Merge branch 'doc/ncurses5_dependency_pr3236' into 'master'
docs: Explain ncurses5 for other distributions as well

Closes IDFGH-884

See merge request espressif/esp-idf!5966
2019-09-02 08:25:22 +08:00
Tian Hao
3af18c0422 fix some coex bugs
1. fix the bug that bb reset lock unhandled may cause assert in vPortCPUReleaseMutexIntsDisabledInternal
2. fix wifi mac reset may blocking then cause wdt timeout
3. fix bug wifi mac reset before coex init
2019-08-30 22:06:29 +08:00
Angus Gratton
a7e8d87d3e Merge branch 'bugfix/error_out_on_uninit_git' into 'master'
cmake: fix build failure when git repo is initialized but no first commit

Closes IDFGH-1676

See merge request espressif/esp-idf!5914
2019-08-30 16:27:28 +08:00
Angus Gratton
d1f2ea7cdf Merge branch 'bugfix/make_build_issue_if_build_dir_symlink' into 'master'
ldgen: fix build issue on make when build dir is a symlink

Closes IDFGH-1340

See merge request espressif/esp-idf!5915
2019-08-30 16:27:21 +08:00
Angus Gratton
879778a677 Merge branch 'refactor/move_smartconfig_ack_to_wifi' into 'master'
smartconfig: move smartconfig_ack to esp_wifi conponent

Closes IDFGH-1758

See merge request espressif/esp-idf!5881
2019-08-30 16:27:11 +08:00
Angus Gratton
ff5cb217fe Merge branch 'bugfix/unicore_config_prevent_ipc_code' into 'master'
ipc: prevent code getting pulled in for unicore configuration

See merge request espressif/esp-idf!5795
2019-08-30 16:26:47 +08:00
joedeveloper
70b1ff7bc6 docs: Explain ncurses5 for other distributions as well
Ran into ncurses5 dependency issue on popOS

stub section for covering libncurses 5 workarounds on distributions that need it, when only Arch was
mentioned it was too easy to skip over the section

Merges https://github.com/espressif/esp-idf/pull/3236
2019-08-30 18:16:30 +10:00
Angus Gratton
6123f78897 mbedtls: Make ECDHE-PSK config item depend on ECDHE 2019-08-30 15:01:53 +10:00
Angus Gratton
abd6d40796 secure boot: Ensure mbedTLS enables ECDSA if signatures are checked in app
and all ECDSA to be disabled if secure boot is not enabled

Previously if ECDSA disabled in config then secure_boot_signatures.c would
fail to build (whether or not secure boot was enabled).

To avoid breaking apps that might be using the signature scheme with custom OTA
without enabling secure boot signatures in config, this change just disables
this functionality if unavailable in mbedTLS config.

Possible fix for root cause of https://github.com/espressif/esp-idf/pull/3703
2019-08-30 14:56:11 +10:00
baohongde
d12503eb55 components/bt: Remove unused macro in menuconfig 2019-08-29 19:58:05 +08:00
Mahavir Jain
d6982e0401 Merge branch 'feature/enable_cfg_for_tls_asymmetric_content_length' into 'master'
mbedtls: keep asymmetric tls buffer length option enabled by default

See merge request espressif/esp-idf!5678
2019-08-29 19:45:06 +08:00
Angus Gratton
e3e21b7954 build system: Pass Python executable through to bootloader build
Fixes failures if the PYTHON cache setting doesn't match the
default of "python" on the PATH.
2019-08-29 18:53:18 +10:00
Roland Dobai
612db28b6f Fix error code collision and CI check 2019-08-29 08:14:08 +00:00
baohongde
b6fe44b520 Fix 2 bugs in r_ld_fm_sket_isr
1. When remove two elt in the 1st isr, then assert in then 2nd one.
2. When timestamp of first elt is equal to sket_clkn, then crash.
2019-08-29 11:27:57 +08:00
Jon Shallow
e7033716db LwIP: Make IP_PKTINFO support configurable
LwIP has support for IP_PKTINFO, but it cannot be activated as it is
not configurable. This fix adds in the ability to configure it.

Merges https://github.com/espressif/esp-idf/pull/3983
2019-08-29 11:20:56 +08:00
suda-morris
a36cc962a3 smartconfig: move smartconfig_ack to esp_wifi conponent 2019-08-29 10:39:30 +08:00
Angus Gratton
1c7aff809d Merge branch 'bugfix/test_esp_efuse_table_on_host' into 'master'
CI: Fix path in the Efuse table test

See merge request espressif/esp-idf!5924
2019-08-29 10:15:47 +08:00
Angus Gratton
31d818326d Merge branch 'docs/update_system_examples_readmes' into 'master'
examples: Update system examples README

See merge request espressif/esp-idf!5755
2019-08-29 10:12:19 +08:00
Angus Gratton
ec3510854f Merge branch 'bugfix/pass_esp_platform_to_early_expansion' into 'master'
CMake: Pass ESP_PLATFORM to early expansion

See merge request espressif/esp-idf!5932
2019-08-29 10:09:51 +08:00
Angus Gratton
1cd54d34f6 Merge branch 'bugfix/bootloader_factory_reset_with_wake_up_from_deep_sleep' into 'master'
bootloader: Blocking the Factory reset during wake up from deep sleep

Closes IDFGH-1536

See merge request espressif/esp-idf!5673
2019-08-29 09:35:08 +08:00
Angus Gratton
06898325e6 Merge branch 'bugfix/bootloader_efuse_build_regression' into 'master'
bootloader: add definition of esp_clk_apb_freq

Closes IDFGH-1734

See merge request espressif/esp-idf!5913
2019-08-29 08:35:48 +08:00
Jiang Jiang Jian
17dc04183a Merge branch 'bugfix/fix_the_bug_for_softap_set_authmode' into 'master'
wifi: fix the bug for softAP set authmode

Closes WIFI-449

See merge request espressif/esp-idf!5823
2019-08-28 19:05:00 +08:00
Darian Leung
de682a13b1 examples: Update system examples README
The following commit updates the first half of the the system
example README files. Some other changes were also made:

* Updated base_mac_address example
* Moved contents in GCOV README to GCOV docs
* Some *main.c file names updated
* Updated example README template
2019-08-28 16:19:40 +08:00
Mahavir Jain
ebe53416ad ipc: prevent code getting pulled in for unicore configuration 2019-08-28 12:47:08 +05:30
wangmengyang
30bc5953f2 bugfix that call of esp_a2d_media_ctrl(ESP_A2D_MEDIA_CTRL_SUSPEND) will not get an ACK from callback on A2DP sink
# Conflicts:
#	components/bootloader/subproject/components/micro-ecc/micro-ecc
2019-08-28 15:16:10 +08:00
Renz Christian Bagaporo
fe9edc3ebe docs: fix typo of build component aliases name 2019-08-28 14:52:09 +08:00
Mahavir Jain
5582878f8e mbedtls: keep asymmetric tls buffer length option enabled by default 2019-08-28 06:23:33 +00:00
Renz Christian Bagaporo
ba2ec73d59 cmake: fix build failure when git repo is initialized but no first commit
Closes https://github.com/espressif/esp-idf/issues/3920
2019-08-28 09:53:37 +08:00
Per Malmberg
31cdd38744 Make sure ESP_PLATFORM is defined when processing CMake files. 2019-08-28 09:44:06 +08:00
Angus Gratton
61442cdcbb Merge branch 'bugfix/tools_shebang' into 'master'
Tools: Fix shebang for MacOs

See merge request espressif/esp-idf!5906
2019-08-28 09:07:52 +08:00
Angus Gratton
a21ca2270a Merge branch 'feature/deep_sleep_fast_wake' into 'master'
bootloader: Reduce the time spent in image validation when waking from deep sleep

See merge request espressif/esp-idf!5140
2019-08-28 08:54:28 +08:00
Renz Christian Bagaporo
826568a120 cmake: introduce BUILD_COMPONENT_ALIASES
This commit makes it so that BUILD_COMPONENT holds only the component,
and a new property BUILD_COMPONENT_ALIASES hold the full name of the
component.

This also removes erroneous check for duplicate components, as this can
never happen:

(1) if two components have the same name but different prefixes,
the internal names are still unique between them

(2)if two components happen to have the same name and same prefix, the
latter would override the former
2019-08-27 20:40:29 +08:00
Jiang Jiang Jian
039f9d0a20 Merge branch 'bugfix/btdm_fix_ble_data_loss_and_send_same_pkt_twice' into 'master'
Component/bt: fix some BLE bugs

See merge request espressif/esp-idf!5896
2019-08-27 18:48:45 +08:00
Ivan Grokhotkov
fb72a6f629 bootloader: add definition of esp_clk_apb_freq
Commit 8cd04c80 has added a dependency of efuse component on
esp_clk_apb_freq, however there was no definition of this function in
the bootloader context.

Reported at https://esp32.com/viewtopic.php?f=13&t=12035
2019-08-27 12:01:11 +02:00
Roland Dobai
474f6d9d98 Fix path in the Efuse table test 2019-08-27 11:58:45 +02:00
Renz Christian Bagaporo
88320062b8 cmake: make build components available before immediately
Previous implementation only builds list of components included in the
build during component registration.

Since the build components is known as the requirements expansion is
ongoing, update the list here instead.
2019-08-27 15:24:31 +08:00
Renz Christian Bagaporo
c50a67567a ldgen: fix build issue on make when build dir is a symlink
Fixes an issue where build fails if the build directory is a symlink.
The issue is caused by the rule target and the final executable dependency
not matching.

Closes https://github.com/espressif/esp-idf/issues/3626
2019-08-27 13:53:31 +08:00
Ivan Grokhotkov
5643f627cd Merge branch 'feature/bat_scripts_to_ps1' into 'master'
Create Powershell versions of "install.bat" and "export.bat"

See merge request espressif/esp-idf!5816
2019-08-27 13:45:50 +08:00
Andrei Gramakov
79dd142ab8 tools: add install.ps1, export.ps1
Closes IDF-855
2019-08-27 13:45:50 +08:00
Ivan Grokhotkov
1b24b3663e fatfs: handle FR_INT_ERR as "filesystem corrupted"
FatFS library can sometimes return FR_INT_ERR if the filesystem is
corrupted. Propagate the error from VFS functions instead of
asserting, so that the application can handle the error. Also handle
the error during initialization of FatFS and format the filesystem if
it occurs.
2019-08-27 00:11:45 +02:00
Roland Dobai
f2a4131c24 Tools: Fix shebang for MacOs
Revert a change introduced in d296aad2a9
for intended compatibility with BSD which breaks the build on MacOs:
"clang: error: unknown argument: '-n'" for "echo".

BSD users will have to use some workaround since MacOs is a supported
OS of IDF and BSD is not.
2019-08-26 13:53:52 +02:00
Ivan Grokhotkov
aa087667df Merge branch 'bugfix/add_openocd_arm' into 'master'
Tools: Add OpenOCD for the ARM architecture

See merge request espressif/esp-idf!5878
2019-08-26 19:36:22 +08:00
Angus Gratton
8d8d4a57e1 Merge branch 'bugfix/reset_periph_modules' into 'master'
driver: Add a reset before enabling if a module is off

Closes IDF-188

See merge request espressif/esp-idf!4843
2019-08-26 16:38:23 +08:00
zhiweijian
f002d1c6aa Component/bt: fix dome BLE bugs
- fix data loss and send same pkt twice sometimes
- fix adv data error in air sometimes
- fix adv start/stop crash sometimes
2019-08-26 14:17:46 +08:00
Jiang Jiang Jian
f68cd62abd Merge branch 'bugfix/btdm_security_vulnerability_on_encryption_key_size' into 'master'
bugfix/btdm_security_vulnerability_on_encryption_key_size

See merge request espressif/esp-idf!5868
2019-08-26 14:08:22 +08:00
Angus Gratton
7ef58dbeb0 Merge branch 'bugfix/confgen_msys_path' into 'master'
Fix sdkconfig.rename paths for confgen.py in MSYS

Closes IDFGH-1712

See merge request espressif/esp-idf!5864
2019-08-26 09:35:33 +08:00
He Yin Ling
954a23be37 test: fix nvs compatible case error:
nvs compatible test case uses new test env and app. update test config
file.
2019-08-25 20:35:49 +08:00
KonstantinKondrashov
30953ba9c4 app_update: Fix UTs for FACTORY_RESET and APP_TEST 2019-08-23 10:21:06 +00:00
KonstantinKondrashov
69f45c3674 bootloader: Factory reset not for deep sleep
Closes: https://github.com/espressif/esp-idf/issues/3800

Closes: IDFGH-1536
2019-08-23 10:21:06 +00:00
Jiang Jiang Jian
8db44f67d7 Merge branch 'bugfix/wps_workaround_for_Telstra_AP' into 'master'
wps: Relax the check on older config methods in case of WPS2.0

See merge request espressif/esp-idf!5781
2019-08-23 17:32:46 +08:00
Dmitry
a0730fec2a Performance monitor component. The component contains APIs, example and
documentation.
2019-08-23 11:20:12 +03:00
Angus Gratton
99a58e5839 Merge branch 'doc/cbor_copyright' into 'master'
docs: Add TinyCBOR copyright line

See merge request espressif/esp-idf!5880
2019-08-23 15:49:10 +08:00
zhangyanjiao
ff96965a91 wifi: fix the bug for softAP set authmode 2019-08-23 14:37:08 +08:00
Mahavir Jain
141a287c8a Merge branch 'bugfix/fix_code_snippet_in_http_server_docs' into 'master'
Fixed syntax error in esp_http_server.rst

See merge request espressif/esp-idf!5844
2019-08-23 14:26:03 +08:00
Mahavir Jain
8e7c71a1a0 Merge branch 'bugfix/cmake_src_exclude_issue' into 'master'
cmake: fix issue with handling of EXCLUDE_SRCS

See merge request espressif/esp-idf!5869
2019-08-23 14:21:16 +08:00
morris
f06e6d80e7 Merge branch 'feature/esp32s2beta_for_bringup' into 'feature/esp32s2beta'
rtc: update from bringup branch

See merge request espressif/esp-idf!5733
2019-08-23 14:04:45 +08:00
Angus Gratton
ba647b9710 Merge branch 'bugfix/flash_encryption_regressions' into 'master'
fix flash encryption regressions, add tests

Closes IDFGH-1538, IDFGH-1661, and IDF-770

See merge request espressif/esp-idf!5634
2019-08-23 12:37:55 +08:00
Ivan Grokhotkov
12c9d9a564 spi_flash: remove duplicate definition of spi_flash_unlock
The other (static) definition is in flash_ops.c, all references are
also in flash_ops.c.
2019-08-23 12:37:55 +08:00
Angus Gratton
2f557d1a59 Merge branch 'bugfix/openocd_ulp_install_instructions' into 'master'
docs: ulp: update for IDF Tools installation method

Closes IDF-825

See merge request espressif/esp-idf!5860
2019-08-23 09:38:47 +08:00
wangmengyang
76b6902e96 components/bt: set the minimum encryption key size to be 7 octects for BR/EDR link for preventing KNOB attack
This patch is to address the CVE-2019-9506 vulnerability.
2019-08-23 08:26:15 +08:00
Angus Gratton
e28b6e59b6 docs: Add TinyCBOR copyright line 2019-08-23 09:20:08 +10:00
Angus Gratton
f4d03fe965 Merge branch 'feature/add_tinycbor_library' into 'master'
add tinycbor library and example

See merge request espressif/esp-idf!5794
2019-08-23 07:14:19 +08:00
Roland Dobai
8bf1ef2bfe Tools: Add OpenOCD for the ARM architecture 2019-08-22 16:51:04 +02:00
Ivan Grokhotkov
0d188c8917 Merge branch 'doc/update_ulp_install_translation' into 'bugfix/openocd_ulp_install_instructions'
update translation of ulp install instuctions

See merge request espressif/esp-idf!5862
2019-08-22 19:45:02 +08:00
Roland Dobai
8b8b2f12e4 Fix sdkconfig.rename paths for confgen.py in MSYS
Closes https://github.com/espressif/esp-idf/issues/3950
2019-08-22 11:48:19 +02:00
suda-morris
5a09de8245 cbor: add tinycbor library and example 2019-08-22 17:44:29 +08:00
Mahavir Jain
1248f17749 cmake: fix issue with handling of EXCLUDE_SRCS 2019-08-22 13:17:44 +05:30
fuzhibo
c9a911e4aa rtc: update from bringup branch 2019-08-22 15:03:18 +08:00
Angus Gratton
f85ba3516f Merge branch 'bugfix/fix_project_ver_issue' into 'master'
CMake: fix retrieving PROJECT_VER

See merge request espressif/esp-idf!5842
2019-08-22 10:47:06 +08:00
Renz Christian Bagaporo
72ddc940e0 cmake: hide internal targets
Use imported library, which does not create additional rules, but still
allows attaching arbitraty properties instead of custom targets. This
allows the targets to not appear in the target list of IDEs such as
CLion.
2019-08-22 09:39:24 +08:00
suda-morris
43b29e4f4d doc: update translation of ulp install instuctions 2019-08-21 21:52:48 +08:00
Jiang Jiang Jian
0a30468945 Merge branch 'feature/wifi_use_new_event_api' into 'master'
esp_wifi/event: wifi use new event api

Closes WIFI-696

See merge request espressif/esp-idf!5454
2019-08-21 21:12:28 +08:00
Ivan Grokhotkov
5ba9be9c2e docs: ulp: update for IDF Tools installation method
binutils-esp32ulp is installed automatically by install.sh/install.bat
or the IDF Tools Installer for Windows.
2019-08-21 14:45:33 +02:00
KonstantinKondrashov
c543aac91e bootloader: API for the fast wakeup and custom using RTC mem
Added "Reserve RTC FAST memory for custom purposes" option.
Added a boot counter.
2019-08-21 11:44:37 +00:00
KonstantinKondrashov
abffc3b11d docs: Add a description of the fast wakeup 2019-08-21 11:44:37 +00:00
KonstantinKondrashov
83db8d402b examples: Add the fast wakeup option for deep sleep examples
The CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP option is enabled
by default for the following examples:
 - system/deep_sleep,
 - system/ulp,
 - system/ulp_adc.
2019-08-21 11:44:37 +00:00
Tim Nordell
43393cf4d1 bootloader: Support for skipping validation upon wake from deep sleep
This saves time when waking up from deep sleep, but potentially decreases
the security of the system.  If the application able to modify itself
(especially areas that are loaded into RAM) in flash while running
without crashing or is modifies the cached bits of information about
what was last booted from the bootloader, this could cause security
issues if the user does a "deep sleep reset" since the full validation
is skipped.

Signed-off-by: Tim Nordell <tim.nordell@nimbelink.com>
2019-08-21 11:44:37 +00:00
Tim Nordell
82984f0539 bootloader: Do not obfuscate RAM if we are not doing image validation
No need to take this step if we are not doing image validation.  The
obfuscation only buys us a tiny bit of "security" anyways since the
main parts of flash are memory mapped, too.  This saves a little bit of
wake-up time when waking up from deep sleep when the
BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP option is set.

Signed-off-by: Tim Nordell <tim.nordell@nimbelink.com>
2019-08-21 11:44:37 +00:00
Tim Nordell
1e32fa2cf7 bootloader: Remove extraneous newlines from some debug statements
ESP_LOGD(...) provides its own new lines so remove these from these
debug strings.

Signed-off-by: Tim Nordell <tim.nordell@nimbelink.com>
2019-08-21 11:44:37 +00:00
Mahavir Jain
d9c02bc36c Merge branch 'nimble/misc_menuconfig_options' into 'master'
NimBLE: Add misc menuconfig options

See merge request espressif/esp-idf!5843
2019-08-21 19:28:47 +08:00
Prasad Alatkar
393eb1700d NimBLE: Add misc menuconfig options
- Add option to configure stack size of NimBLE host task, update NimBLE
  submodule for the same.
- Change max concurrent connections supported to 9 inline with controller.
2019-08-21 19:28:47 +08:00
Jiang Jiang Jian
14608cc0fb Merge branch 'Bugfix/nonblocking_udp_is_zero' into 'master'
fix bug for nonblocking udp is zero

Closes WIFI-756

See merge request espressif/esp-idf!5792
2019-08-21 16:44:11 +08:00
Angus Gratton
3aef62527a Merge branch 'update/cjson_v1_7_12' into 'master'
Update cJSON to v1.7.12

See merge request espressif/esp-idf!5776
2019-08-21 16:40:35 +08:00
Angus Gratton
fe376f9f04 Merge branch 'bugfix_kconfig_deps_missing' into 'master'
kconfig: Add -MP option so .d files include empty targets

See merge request espressif/esp-idf!5820
2019-08-21 16:19:59 +08:00
Angus Gratton
5a3bad6119 Merge branch 'feature/freebsd_build_system' into 'master'
build systems: Changes to work on FreeBSD

Closes IDFGH-1657

See merge request espressif/esp-idf!5821
2019-08-21 16:18:47 +08:00
Angus Gratton
319d44b1a6 Merge branch 'bugfix/esp_timer_null_checks' into 'master'
esp_timer: Add parameter NULL checks to public API

See merge request espressif/esp-idf!5804
2019-08-21 16:17:15 +08:00
Angus Gratton
38d61f83db Merge branch 'feature/esp32s2beta_update' into 'feature/esp32s2beta'
esp32s2beta: Merge master into esp32s2beta branch

See merge request espressif/esp-idf!5724
2019-08-21 15:20:28 +08:00
Michael
b7e73025fe Fixed syntax error in esp_http_server.rst
Changed the "const char[] name" into "const char name[]", so now the code doesn't produce the "expected identifier or '(' before '[' token" error.

Closes https://github.com/espressif/esp-idf/pull/3940
2019-08-21 12:31:46 +05:30
Renz Christian Bagaporo
4690152eca cmake: make default version 1 2019-08-21 12:46:38 +08:00
Renz Christian Bagaporo
3eecd43b31 cmake: fix issue with checking build process args 2019-08-21 12:20:46 +08:00
xueyunfei
36920b4062 fix bug for nonblocking udp is zero 2019-08-21 11:25:17 +08:00
Renz Christian Bagaporo
a1a2f33459 esptool_py: add missing phony build targets for CMake
Adds targets erase_flash and monitor for users not using idf.py.
Closes https://github.com/espressif/esp-idf/issues/2420.
2019-08-21 10:01:00 +08:00
Xia Xiaotian
80f1c13fd7 esp_wifi: update WiFi library to support esp32s2beta 2019-08-21 10:45:07 +10:00
Sergei Silnov
58418c790a idf.py: Add support for deprecation of command/options 2019-08-20 16:10:25 +02:00
Ivan Grokhotkov
02c7c3885e Merge branch 'bugfix/openocd_ulp_install_instructions' into 'master'
docs: jtag-debugging: update for IDF Tools installation method

Closes IDF-824

See merge request espressif/esp-idf!5803
2019-08-20 21:34:45 +08:00
suda-morris
7237e6fab7 docs: jtag-debugging: update translation 2019-08-20 14:49:48 +02:00
Ivan Grokhotkov
209fdc1e05 docs: jtag-debugging: update for IDF Tools installation method
- rely on OPENOCD_SCRIPTS variable in all cases, remove -s flags
- replace installation section with a reference to the Getting Started
  guides
- add Windows-specific commands in a few cases
2019-08-20 14:49:48 +02:00
Ivan Grokhotkov
636c6a9a30 Merge branch 'feature/ulp_macro_updates' into 'master'
ulp: updates for ULP macros (PRs from Github)

Closes IDFGH-1492

See merge request espressif/esp-idf!5801
2019-08-20 20:40:09 +08:00
Nachiket Kukade
19a1af88a5 wps: Relax the check on older config methods in case of WPS2.0
Some APs incorrectly advertize newer WPS2.0 config method bits
without setting bits for the corresponding older methods. This
results in failures during 8-way handshake. Add a workaround to
relax this check so that WPS handshake can proceed.
2019-08-20 09:58:41 +00:00
liu zhifu
003a9872b7 esp_wifi: wifi support new event mechanism
1. WiFi support new event mechanism
2. Update examples to use new event mechanism
2019-08-20 09:39:51 +00:00
Ivan Grokhotkov
5944f575cf Merge branch 'bugfix/newlib_time_test' into 'master'
newlib: Fix UT - test time adjustment happens linearly

See merge request espressif/esp-idf!5712
2019-08-20 16:24:30 +08:00
Angus Gratton
9d8c21d8fb Merge branch 'feature/esp32s2beta_rtc_vddsdio_get_config' into 'feature/esp32s2beta'
soc: Update rtc_vddsdio_get_config for esp32s2beta

See merge request espressif/esp-idf!5759
2019-08-20 13:14:07 +08:00
Angus Gratton
60eec0e969 Merge branch 'bugfix/set_mconf_idf_build_dir' into 'master'
cmake: set build dir for mconf-idf

See merge request espressif/esp-idf!5819
2019-08-20 13:10:36 +08:00
Angus Gratton
60d46f9795 Merge branch 'feat/idf_py_set_target' into 'master'
idf_py: support new command set-target

See merge request espressif/esp-idf!5785
2019-08-20 12:30:50 +08:00
Angus Gratton
0a0bb09585 Merge 'master' into feature/esp32s2beta_update 2019-08-20 13:55:23 +10:00
Krzysztof Budzynski
691b81ec25 Merge branch 'doc/bootloader_zh_CN' into 'master'
zh_CN translation of bootloader document

See merge request espressif/esp-idf!4746
2019-08-20 05:14:17 +08:00
Jiang Jiang Jian
23aef7d8d8 Merge branch 'cleanup/make_supp_headers_private' into 'master'
wpa_supplicant: Make internally used crypto headers private

Closes IDF-476

See merge request espressif/esp-idf!5666
2019-08-19 17:11:34 +08:00
Tomoyuki Sakurai
d296aad2a9 build systems: Changes to work on FreeBSD
Merges https://github.com/espressif/esp-idf/pull/2029
2019-08-19 15:33:55 +10:00
Angus Gratton
450a29e8ba Merge branch 'feature/cmake_check_mconf_version' into 'master'
cmake: check mconf-idf binary version

Closes IDF-835

See merge request espressif/esp-idf!5799
2019-08-19 13:08:33 +08:00
Angus Gratton
701ec9dae0 Merge branch 'feat/idf_monitor_event_queue_block' into 'master'
idf_monitor: fix the bug that idf_monitor not blocked when no log printed

See merge request espressif/esp-idf!5805
2019-08-19 13:06:31 +08:00
Angus Gratton
2085845c80 freertos: Have ESP32S2-Beta target select FREERTOS_UNICORE directly 2019-08-19 15:03:48 +10:00
Angus Gratton
685c9cc867 esp32sbeta: Add timer_ll.h 2019-08-19 15:03:48 +10:00
Angus Gratton
6990a7cd54 Merge branch 'master' into feature/esp32s2beta_update 2019-08-19 15:03:43 +10:00
suda-morris
ab406f8429 zh_CN translation of bootloader document 2019-08-19 11:37:59 +08:00
Angus Gratton
b1d67ad344 Merge branch 'bugfix/remove_transport_strcasestr' into 'master'
tcp_transport: replace transport_strcasestr with strcasestr

Closes IDF-548

See merge request espressif/esp-idf!5802
2019-08-19 10:36:32 +08:00
Angus Gratton
74be271f62 kconfig: Add -MP option so .d files include empty targets
Prevents make-level errors when switching IDF versions, as headers may be removed.

Similar to some mentioned here:
https://github.com/espressif/esp-idf/issues/712
2019-08-19 11:42:39 +10:00
Angus Gratton
b8997eb218 Merge branch 'bugfix/confserver_temporaryfile_windows' into 'master'
confserver: Fix NamedTemporaryFile use on Windows

See merge request espressif/esp-idf!5814
2019-08-19 08:23:02 +08:00
Nachiket Kukade
9ec363a25d wpa_supplicant: Make internally used crypto headers private
A lot of internally used crypto headers are publicly includeable
in user projects. This leads to bug reports when these headers
are incorrectly used or the API's are not used as intended.

Move all crypto headers into private crypto src folder, also move
crypto_ops into Supplicant to remove dependecy on crypto headers.

Closes IDF-476
2019-08-17 11:48:37 +00:00
Michael (XIAO Xufeng)
026ec388a6 idf_py: support new command set-target
Instead of using -DIDF_TARGET, this command is more intuitive:

1. Can limit the choice of targets
2. Easy to understand this is a destructive command
3. Easy to remember, and have an entry in the --help menu
2019-08-17 00:06:14 +08:00
Michael (XIAO Xufeng)
24f91617d7 idf_monitor: fix the bug that idf_monitor not blocked when no log printed
Inspired by @no1seman, @negativekelvin and @pglen on Github. (In post oder)

Resolves https://github.com/espressif/esp-idf/issues/3884
2019-08-16 17:56:51 +08:00
baohongde
38ae31ebc4 components/bt: Fix linking fail with toolchain 8.2.0 2019-08-16 09:54:18 +00:00
Renz Christian Bagaporo
ded0ac352d cmake: set build dir for mconf-idf
Fixes an issue where if idf_build_process is called in a CMake
subdirectory, menuconfig looks for the mconf-idf binary in the wrong
place (in the subdirectory build dir instead of root binary dir).
2019-08-16 17:46:50 +08:00
Angus Gratton
76453ccfa5 Merge branch 'bugfix/ledc_clock_mode' into 'master'
driver: ledc: Fix clock mode selection

See merge request espressif/esp-idf!5747
2019-08-16 17:39:16 +08:00
Angus Gratton
423fb9573b confserver: Fix NamedTemporaryFile use on Windows
Can't have the file open twice, so need to close and delete after reopening.
2019-08-16 19:24:37 +10:00
chenyudong
2116968d78 test: fix test case MESH_EST_2403 2019-08-16 09:15:31 +00:00
Angus Gratton
727ffbe908 esp_timer: Add parameter NULL checks to public API
Return ESP_ERR_INVALID_ARG if the handle is NULL, instead of crashing.

As reported via forum https://esp32.com/viewtopic.php?f=13&t=11721&p=47926#p47926
2019-08-16 13:00:21 +10:00
Angus Gratton
74c2eb3aff Merge branch 'fix/esp_flash_set_get_wp' into 'master'
esp_flash: fix the set/get write protection functions

See merge request espressif/esp-idf!5682
2019-08-16 06:14:48 +08:00
Ivan Grokhotkov
61a1a468bb tcp_transport: replace transport_strcasestr with strcasestr
esp32-2019r1 toolchain version includes 'strcasestr', so the version
provided in tcp_transport component is no longer needed.
2019-08-15 17:51:54 +02:00
Saket Dandawate
ccc95191ea ulp: Add aditional uint32_t object to ulp_insn_t
Used to get the encoded instruction from bit-field structs.

Merges https://github.com/espressif/esp-idf/pull/3759
2019-08-15 17:34:26 +02:00
boarchuz
28ca2d72b8 ulp: Correct misleading corrections of i2c comments
Merges https://github.com/espressif/esp-idf/pull/3580
2019-08-15 17:34:19 +02:00
boarchuz
68b3677daa ulp: Correct misleading i2c write mask comments
Merges https://github.com/espressif/esp-idf/pull/3580
2019-08-15 17:34:11 +02:00
boarchuz
88a69823cf ulp: Expand ULP macro functionality
Merges https://github.com/espressif/esp-idf/pull/3580
2019-08-15 17:34:11 +02:00
Ivan Grokhotkov
74fe282b73 cmake: check mconf-idf binary version
Print a warning if an outdated version of mconf-idf is found in
the PATH.
2019-08-15 17:25:26 +02:00
Mahavir Jain
3743d47ef0 Merge branch 'bugfix/add_error_check_in_ota_ops' into 'master'
esp_https_ota: Added error checking functionalities.

See merge request espressif/esp-idf!5672
2019-08-15 21:10:00 +08:00
Hrudaynath Dhabe
53e7beb95b esp_https_ota: Added error checking functionalities.
Current implimentation of esp_http_ota does not perform any error-checking in the data writing phase calls `esp_ota_get_next_update_partition()` irrespetive of the received state of the image. A few additional error checking mechanism have now been added inside the esp_https_ota which returns the control in case an invalid header is received and a wrapper to the function `esp_http_client_is_complete_data_received()` of `esp_http_client` has been added.
2019-08-15 21:10:00 +08:00
Ivan Grokhotkov
5863509804 Merge branch 'bugfix/vfs_concurrent_select' into 'master'
VFS: Support concurrent VFS select calls & improve the documentation

Closes IDFGH-1072

See merge request espressif/esp-idf!5538
2019-08-15 19:57:30 +08:00
Angus Gratton
6007ef4b08 Merge branch 'feature/cmake_build_internals_docs' into 'master'
Docs: Enchance build system internals docs

See merge request espressif/esp-idf!5753
2019-08-15 16:22:50 +08:00
Angus Gratton
848465da90 driver: Check ledc config result in PCNT tests 2019-08-15 06:53:46 +00:00
Angus Gratton
1dd2f3e07b driver: ledc: Fix low/high speed parameter setting
Fix regression introduced in 2e8c85d8ff
2019-08-15 06:53:46 +00:00
Renz Christian Bagaporo
6b16928fbc docs: build system internals 2019-08-15 14:25:47 +08:00
Angus Gratton
a50ae86707 Merge branch 'bugfix/mbedtls_add_source_files_to_appropriate_library' into 'master'
mbedtls: add source files to appropriate library

See merge request espressif/esp-idf!5761
2019-08-15 13:32:20 +08:00
Renz Christian Bagaporo
6875080b9b mbedtls: add source files to appropriate library 2019-08-15 12:43:45 +08:00
Angus Gratton
fce0a25b7c Merge branch 'docs/order_toctree_alphabetically' into 'master'
docs: Alphbetically sort toctree

See merge request espressif/esp-idf!5770
2019-08-15 12:41:54 +08:00
Angus Gratton
b6b7ea4f10 Merge branch 'bugfix/fix_flash_read_error_in_dio_mode' into 'master'
bugfix(flash): add spi dio address bitlen configure in psram init

See merge request espressif/esp-idf!5783
2019-08-15 11:28:19 +08:00
Angus Gratton
98280dd764 Merge branch 'bugfix/protocomm_nimble' into 'master'
NimBLE: Fix bug in `protocomm_nimble` characteristic access callback

See merge request espressif/esp-idf!5752
2019-08-15 10:50:30 +08:00
Prasad Alatkar
4c7b83defc NimBLE: Fix bug in protocomm_nimble chararcteristic access callback
Fixes bug in `protocomm_nimble` while writing to characteristic with length greater than MTU value.
2019-08-15 10:50:30 +08:00
Angus Gratton
0781868c36 Merge branch 'bugfix/mdns_send_bye_service_instance' into 'master'
mdns: fix missing bye packet if services removed with mdns_service_remove_all() or mdns_free()

See merge request espressif/esp-idf!5308
2019-08-15 10:50:17 +08:00
Angus Gratton
ee6b1399aa Merge branch 'feature/exclude_rom_from_example_header_files' into 'master'
exclude rom headers in examples

Closes IDF-557

See merge request espressif/esp-idf!5051
2019-08-15 10:50:01 +08:00
chenjianqiang
74e2e46402 bugfix(flash): add spi dio address bitlen configure in psram init 2019-08-14 20:57:30 +08:00
Angus Gratton
367ecc2d60 Merge branch 'refactor/timerg_in_test' into 'master'
timer_group: refactoring to avoid direct register access in the ISR

See merge request espressif/esp-idf!5656
2019-08-14 15:32:16 +08:00
Angus Gratton
2fcbc6aaa5 esp_eth: KConfig formatting fix 2019-08-14 16:50:30 +10:00
Angus Gratton
f8b1ef1b14 ci: kconfig rules: Allow any file starting with KConfig.* to be sourced 2019-08-14 16:50:30 +10:00
David Cermak
a001998d52 mdns: fix missing bye packet if services removed with mdns_service_remove_all() or mdns_free()
Closes https://github.com/espressif/esp-idf/issues/3660
2019-08-14 05:54:54 +00:00
Angus Gratton
70794a0776 Merge branch 'feature/ver-4.1' into 'master'
global: bump version to 4.1

See merge request espressif/esp-idf!5771
2019-08-14 09:01:48 +08:00
Angus Gratton
f72dc5b271 Update cJSON to v1.7.12
Fixes potential DoS in cJSON_Minify, see https://github.com/DaveGamble/cJSON/issues/354
2019-08-14 10:03:27 +10:00
KonstantinKondrashov
62ee29250e soc: Update rtc_vddsdio_get_config for esp32s2beta
Closes: IDF-749
2019-08-13 20:04:49 +08:00
Sergei Silnov
5b9e38fe4e idf.py: Fix PropertyDict implementation 2019-08-13 11:35:51 +02:00
Ivan Grokhotkov
0a74227cfa bump version to 4.1 2019-08-13 10:09:52 +02:00
Darian Leung
75adefe437 docs: Alphbetically sort toctree
This commit sorts the entries of variuos toctrees
alphabetically. Indentation was also fixed. The order
of some toctrees were not modified if the existing
order had some form of suggested reading order.
2019-08-13 16:04:12 +08:00
Angus Gratton
278c2f1aea Merge branch 'feature/esp32s2beta' into feature/esp32s2beta_update 2019-08-13 17:16:44 +10:00
Angus Gratton
a3a67a4452 nvs_flash: Include xtensa component when building NVS tests on hosts
esp_attr.h moved to xtensa component in 61ce868396
2019-08-13 17:16:12 +10:00
Angus Gratton
85c2df060d examples: Mark flash encryption & external flash examples as ESP32 only for now 2019-08-13 17:14:16 +10:00
Angus Gratton
e32d27e7e8 esp_eth: Add CONFIG_ETH_ENABLED flag to enable/disable ethernet at build time
Always enabled by default, as SPI/Ethernet support is enabled by default.
2019-08-13 17:14:16 +10:00
Angus Gratton
f58d2ea34d esp32s2: Add SUPPORTED_TARGETS for remaining bluetooth examples 2019-08-13 17:14:16 +10:00
Xia Xiaotian
bcff8afbba esp_wifi: update esp32s2beta WiFi library 2019-08-13 17:14:16 +10:00
Angus Gratton
9a2e29e068 esp32s2beta: Invert RSA_CONSTANT_TIME_DISABLE_REG to RSA_CONSTANT_TIME_REG 2019-08-13 17:14:16 +10:00
Angus Gratton
9a3606781f ci: Lower limit for number of examples (S2 Beta has 81 right now) 2019-08-13 17:14:16 +10:00
Angus Gratton
8111b222c8 bt: Update to match master 2019-08-13 17:14:16 +10:00
Angus Gratton
18c5cfadae Fix function prototypes 2019-08-13 17:14:16 +10:00
Angus Gratton
c47e1756f8 examples: Rename deprecate CONFIG_CONSOLE_UART_NUM macro 2019-08-13 17:14:16 +10:00
Angus Gratton
4002c6060a lwip: Enable ethernet for both ESP32 & ESP32-S2Beta (SPI ethernet) 2019-08-13 17:14:16 +10:00
Angus Gratton
eb7ad6ca17 bootloader: Fix SPI dummy clock settings for ESP32S2-beta 2019-08-13 17:14:16 +10:00
Angus Gratton
d5f5fadbee bootloader: Include FreeRTOS component for the FREERTOS_UNICORE header, only 2019-08-13 17:14:16 +10:00
Angus Gratton
309376f51a spi_flash: Force legacy mode for ESP32-S2
Can be removed once IDF-763 is merged
2019-08-13 17:14:16 +10:00
Angus Gratton
dc9170966b freertos: Force UNICORE mode on ESP32S2 2019-08-13 17:14:16 +10:00
Angus Gratton
80a4a11808 Merge branch 'bugfix/fix_mbedtls_net_sockets_error_handling' into 'master'
mbedtls: use `errno` instead of `SO_ERROR` for getting socket errors

See merge request espressif/esp-idf!5727
2019-08-13 14:38:28 +08:00
Angus Gratton
0c00aae906 Merge branch 'feature/migrate_gh_action_to_yaml' into 'master'
gh_action: converted main.workflow to Actions V2 yml files

See merge request espressif/esp-idf!5758
2019-08-13 14:10:54 +08:00
Angus Gratton
aa2a972261 Merge branch 'bugfix/fix_encrypted_project_flash_arg_file_gen' into 'master'
CMake: fix encrypted project flash arg file generation

See merge request espressif/esp-idf!5741
2019-08-13 13:45:57 +08:00
Angus Gratton
e887190895 Merge branch 'feature/dport_eco_revision2' into 'master'
make dport workaround depend on chip revision

Closes IDF-809 and IDF-813

See merge request espressif/esp-idf!5606
2019-08-13 12:13:22 +08:00
Angus Gratton
f03a398512 Merge branch 'bugfix/doc_pip_requirements' into 'master'
Add -r flag to pip install command from file

Closes IDFGH-1670 and IDFGH-1622

See merge request espressif/esp-idf!5760
2019-08-13 11:42:35 +08:00
suda-morris
b1497f2187 exclude rom headers in examples
1. avoid including rom headers directly in examples
2. add common API interface for CRC calculation in esp_common component
2019-08-13 11:10:22 +08:00
suda-morris
f86e82cb63 efuse: update the scheme of getting chip revision 2019-08-13 10:59:02 +08:00
Angus Gratton
5e39718c22 Merge branch 'bugfix/component_set_properties' into 'master'
CMake: Set component properties

See merge request espressif/esp-idf!5738
2019-08-13 10:23:30 +08:00
Jiang Jiang Jian
65b9032dba Merge branch 'bugfix/reuse_pmk_without_set_config' into 'master'
wifi: Avoid recalculating PMK when esp_wifi_set_config is not called

Closes IDFGH-1520

See merge request espressif/esp-idf!5745
2019-08-12 23:33:45 +08:00
Luke Bayes
0addc0aef1 Added -r flag to pip install command from file
Closes https://github.com/espressif/esp-idf/pull/3874
Closes https://github.com/espressif/esp-idf/issues/3915
2019-08-12 16:03:28 +02:00
suda-morris
b64551718c gh_action: converted main.workflow to Actions V2 yml files 2019-08-12 19:45:48 +08:00
Angus Gratton
872ba98cc9 Merge branch 'feature/esp32s2beta_crosscore_int' into 'feature/esp32s2beta'
esp32s2beta: crosscore_int simplify for esp32s2beta

See merge request espressif/esp-idf!5668
2019-08-12 15:23:56 +08:00
Angus Gratton
212e7be28c Merge branch 'bugfix/core_id_arg' into 'master'
doc: Add clarifications Xtensa Core ID and "Core ID" used in FreeRTOS are different

Closes IDFGH-407

See merge request espressif/esp-idf!5661
2019-08-12 15:16:51 +08:00
Angus Gratton
9af30c4ff9 Merge branch 'ci/disable_nimble_tests' into 'master'
ci: Temporarily disable NimBLE tests in CI

See merge request espressif/esp-idf!5749
2019-08-12 15:14:23 +08:00
Angus Gratton
8f74271d5d esp_rom: Fail immediately if the wrong SoC's header file is included 2019-08-12 16:57:40 +10:00
Angus Gratton
2f56116db2 Cleanup of previous merge commit 2019-08-12 16:57:40 +10:00
Angus Gratton
e8bdfe07ae Merge branch 'feature/tls_psk_authentication' into 'master'
esp_tls: add psk verification mode

Closes IDFGH-992

See merge request espressif/esp-idf!5095
2019-08-12 12:45:34 +08:00
Angus Gratton
b0ef3cdc9f Merge branch 'bugfix/check_include_dirs' into 'master'
CMake: Check if component include dirs are directories

See merge request espressif/esp-idf!5701
2019-08-12 12:45:11 +08:00
Angus Gratton
4fe74b8f64 freertos: Rename CORE_ID_PRO/CORE_ID_APP macros to CORE_ID_REGVAL_xxx
Old values remain for compatibility.

As suggested in https://github.com/espressif/esp-idf/issues/2567
2019-08-12 11:12:34 +10:00
Angus Gratton
a40e164988 doc: Add clarifications Xtensa Core ID and "Core ID" used in FreeRTOS are different
Closes https://github.com/espressif/esp-idf/issues/2567
2019-08-12 11:11:28 +10:00
Angus Gratton
8658b1633c ci: Temporarily disable NimBLE tests in CI 2019-08-12 09:38:44 +10:00
Angus Gratton
dedf346ccb Merge branch 'bugfix/hwcrypt_fault_inj' into 'master'
hwcrypto: Add more AES & SHA fault injection checks

Closes IDF-786

See merge request espressif/esp-idf!5050
2019-08-11 15:02:25 +08:00
Angus Gratton
aa3c988c17 sha: Add fault injection checks reading hash digest state
Vulnerability reported by LimitedResults under Espressif Bug Bounty Program.
2019-08-11 11:16:33 +10:00
Angus Gratton
caea2889c8 aes: Add fault injection checks when writing key to hardware
Vulnerability reported by LimitedResults under Espressif Bug Bounty Program.
2019-08-11 11:16:33 +10:00
Renz Christian Bagaporo
87ebdaa74e cmake: set component properties 2019-08-09 20:51:20 +08:00
Sagar Bijwe
b1f657fc65 wifi: Avoid recalculating PMK when esp_wifi_set_config is not called
Scenarios where this fix is applicable.
1) Every time the system is powered-on/restarted without calling
   esp_wifi_set_config.
2) esp_wifi_init()/connect()/stop()/deinit() is called multiple
   times without esp_wifi_set_config.

Closes IDFGH-1520
2019-08-09 16:28:33 +05:30
Konstantin Kondrashov
9a669bfbb9 rmt/driver: Add module reset before enabling 2019-08-09 17:09:56 +08:00
Konstantin Kondrashov
a418b603d0 pcnt/driver: Add module reset before enabling 2019-08-09 17:09:56 +08:00
Konstantin Kondrashov
5c560e0cd1 sdmmc_host/driver: Add module reset before enabling 2019-08-09 17:09:56 +08:00
Konstantin Kondrashov
437228e947 i2s/driver: Add module reset before enabling 2019-08-09 17:09:56 +08:00
Konstantin Kondrashov
d064cd485c can/driver: Add module reset before enabling 2019-08-09 17:09:56 +08:00
Konstantin Kondrashov
c082d13075 uart/driver: Add module reset before enabling
This commit prevents infinite restarts caused due to an interrupt flag
was left uncleared.

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

Closes: IDF-188
2019-08-09 17:09:56 +08:00
Renz Christian Bagaporo
e3c236d2fe cmake: fix encrypted project flash arg file generation 2019-08-09 16:35:31 +08:00
Jiang Jiang Jian
2b71eff25f Merge branch 'bugfix/efuse_write_config' into 'master'
efuse: set timing configuration before writing

See merge request espressif/esp-idf!4750
2019-08-09 14:25:45 +08:00
Angus Gratton
01f7e7cc16 Merge branch 'bugfix/confgen_sdkconfig_renames' into 'master'
tools: Support sdkconfig.rename files from outside IDF in confgen.py

Closes IDF-659

See merge request espressif/esp-idf!5551
2019-08-09 14:21:19 +08:00
Angus Gratton
d6b641949c Merge branch 'bugfix/httpd_sess_close' into 'master'
httpd_sess_close: Check for session validity before closing

See merge request espressif/esp-idf!5705
2019-08-09 14:20:51 +08:00
Michael (XIAO Xufeng)
d850a0bd1c esp_attr: add flag_attr to support enums used as flags 2019-08-09 13:46:32 +08:00
Michael (XIAO Xufeng)
264ffbeb14 timer_group: use the LL 2019-08-09 13:46:31 +08:00
Michael (XIAO Xufeng)
feea477023 timer_group: add LL functions for WDT 2019-08-09 13:46:30 +08:00
Michael (XIAO Xufeng)
c02981a99b timer_group: support interrupt LL and some utility functions in ISR 2019-08-09 13:46:30 +08:00
chenjianqiang
a97fe5615f feat(timer): refator timer group driver (partly pick) 2019-08-09 13:46:29 +08:00
Michael (XIAO Xufeng)
b413a240cb esp_attr: support force_inline 2019-08-09 13:46:28 +08:00
Angus Gratton
cb0f724e39 Merge branch 'feature/repl_suppl_crypto_by_mbedtls' into 'master'
wpa_supplicant: Port more crypto functions to use mbedtls

Closes WIFI-1590

See merge request espressif/esp-idf!5684
2019-08-09 12:52:03 +08:00
Angus Gratton
d6422229cf Merge branch 'bugfix/docs/white-space' into 'master'
🐛 Fix the white space bug in docs

Closes IDFGH-809

See merge request espressif/esp-idf!5693
2019-08-09 10:07:22 +08:00
Soumesh Banerjee
d47288d9db 🐛 Fix the white space bug in docs
Fix only the visual rendering the issue for selection of text still remains and have to be solved by updating the html generator
Closes #3208
2019-08-09 10:07:22 +08:00
Renz Christian Bagaporo
4dd2b9edb1 components: fix incorrect include dir args 2019-08-09 08:40:17 +08:00
Renz Christian Bagaporo
08de39c226 cmake: check include directories 2019-08-09 08:40:17 +08:00
Michael (XIAO Xufeng)
e947522f38 esp_flash: improve the comments a bit 2019-08-08 23:18:01 +08:00
Michael (XIAO Xufeng)
e5704ab1a8 esp_flash: fix the set/get write protection functions
Add support for get write protection support, fixed the duplicated
set_write_protection link.

All the write_protection check in the top layer are removed. The lower
levels (chip) should ensure to disable write protection before the
operation start.
2019-08-08 23:18:00 +08:00
Mahavir Jain
ab6ad844b1 mbedtls: use errno instead of SO_ERROR for getting socket errors
As per upgrade notes of lwIP v2.1.0:
socket API: according to the standard, SO_ERROR now only returns asynchronous errors.
All other/normal/synchronous errors are (and always were) available via 'errno'.
LWIP_SOCKET_SET_ERRNO has been removed - 'errno' is always set - and required!

Refer: https://www.nongnu.org/lwip/2_1_x/upgrading.html

Fixes https://github.com/espressif/esp-azure/issues/51
2019-08-08 12:17:32 +00:00
Angus Gratton
77bd32a503 Merge branch 'bugfix/libsodium_test_timeouts' into 'master'
test: Set timeout of libsodium ed25519_convert test to 60s

See merge request espressif/esp-idf!5552
2019-08-08 15:02:51 +08:00
Angus Gratton
c1e3e1cd9a Merge branch 'bugfix/fix_ledc_clock_select_bug' into 'master'
driver(ledc): fixed ledc clock selection bug

See merge request espressif/esp-idf!3612
2019-08-08 13:56:21 +08:00
Angus Gratton
cbb45b4559 Merge branch 'bugfix/config_panic_gdbstub_build_issue' into 'master'
esp32_gdbstub: fix build error with esp32-2019r1 toolchain

See merge request espressif/esp-idf!5709
2019-08-08 13:53:40 +08:00
Angus Gratton
04ae56806c Merge branch 'master' into feature/esp32s2beta_update 2019-08-08 15:26:58 +10:00
KonstantinKondrashov
24bd75955f newlib: Fix UT - test time adjustment happens linearly
Obtaining accurate and adjustable time occurs closer to each other.
2019-08-08 12:38:33 +08:00
Angus Gratton
24d26fccde Merge branch 'master' into feature/esp32s2beta_update 2019-08-08 13:44:24 +10:00
Angus Gratton
14b8ea3b87 Merge branch 'feat/sdio_slave_efuse_default_3v3' into 'master'
sdio_slave: updates the document about DAT2 pin, also the version value read from CCCR registers

See merge request espressif/esp-idf!4733
2019-08-08 10:41:14 +08:00
Jiang Jiang Jian
562218d4db Merge branch 'feature/lwip_prefer_allocate_memory_in_psram' into 'master'
Try to allocate some memories in SPIRAM first. If failed, try to allocate in internal RAM then

See merge request espressif/esp-idf!5695
2019-08-07 21:00:14 +08:00
Michael (XIAO Xufeng)
3fd896fe64 sdio_slave: update version read from CCCR to 2.0 2019-08-07 17:10:34 +08:00
Michael (XIAO Xufeng)
07166a6b18 sdio_slave: rewrite the doc and highlight efuse-burning as the default option for 3.3V modules 2019-08-07 17:10:34 +08:00
Sagar Bijwe
80a5bd8e54 wpa_supplicant: Port more crypto functions to use mbedtls
Use mbedtls PBKDF2 and SHA1 for faster calculations during four-way
handshake.

Closes WIFI-1590
2019-08-07 07:23:28 +00:00
morris
1877a9fcd8 Merge branch 'feature/esp32s2beta_rtc_driver' into 'feature/esp32s2beta'
Feature/esp32s2beta rtc driver

See merge request espressif/esp-idf!5243
2019-08-07 14:43:17 +08:00
Mahavir Jain
5203a15439 esp32_gdbstub: fix build error with esp32-2019r1 toolchain
Fixes https://github.com/espressif/esp-idf/issues/3866
2019-08-07 11:56:13 +05:30
Angus Gratton
51d811a71c Merge branch 'bugfix/idf_tool_default_encoding' into 'master'
idf_tool: fix UnicodeDecodeError

Closes IDFGH-1584

See merge request espressif/esp-idf!5323
2019-08-07 13:24:54 +08:00
David Cermak
f3d6a34e7d esp_tls: enable psk verification mode, added mqtt example using psk authentication 2019-08-07 14:27:40 +10:00
fuzhibo
572084821b add Comment for touchpad 2019-08-07 11:39:17 +08:00
Piyush Shah
c93cab858e httpd_sess_close: Check for session validity before closing
If httpd_sess_trigger_close() gets called twice for the same socket,
the first httpd_sess_close() cb closes the correct socket, but the second
invocation closes the wrong socket which was just accepted and added to
the socket db. Checking for the lru counter will help identify this as the
counter is set only for requests actually served.
2019-08-06 19:31:57 +05:30
kooho
2e8c85d8ff driver(ledc): fixed ledc clock selection bug. 2019-08-06 16:11:18 +08:00
Mahavir Jain
d260ee6955 Merge branch 'feature/coap_mbedtls_support' into 'master'
Add DTLS support to libcoap using MbedTLS

See merge request espressif/esp-idf!5560
2019-08-06 14:23:54 +08:00
Mahavir Jain
a8bfe59bd1 coap: refactor examples, stylistic cleanups, move certs to independent dir 2019-08-06 10:37:41 +05:30
Mahavir Jain
10c3b42f71 coap: kconfig cleanup, have component specific configuration for common options 2019-08-06 10:37:40 +05:30
Mahavir Jain
852c176a40 coap: add mbedtls in depedency list for CMake build 2019-08-06 10:37:40 +05:30
Jon Shallow
1aaec808da Add DTLS support to libcoap using MbedTLS
This update supports DTLS, TLS is a future TODO

components/coap/CMakeLists.txt:
components/coap/component.mk:

Add in the new files that have to be built
Replace libcoap/src/coap_notls.c with libcoap/src/coap_mbedtls.c

components/coap/libcoap:

Update the version to include the current version for supporting MbedTLS

components/coap/port/coap_debug.c:
components/coap/port/coap_mbedtls.c:
components/coap/port/include/coap/coap_dtls.h:

New port files for DTLS

components/coap/port/include/coap_config_posix.h:

Include building with MbedTLS

examples/protocols/coap_client/README.md:
examples/protocols/coap_client/main/CMakeLists.txt:
examples/protocols/coap_client/main/Kconfig.projbuild:
examples/protocols/coap_client/main/coap_client_example_main.c:
examples/protocols/coap_client/main/component.mk:

Update CoAP client to support DTLS

examples/protocols/coap_client/main/coap_ca.pem
examples/protocols/coap_client/main/coap_client.crt
examples/protocols/coap_client/main/coap_client.key

New PKI Certs for CoAP client (copied from wpa2_enterprise example)

examples/protocols/coap_server/README.md:
examples/protocols/coap_server/main/CMakeLists.txt:
examples/protocols/coap_server/main/Kconfig.projbuild:
examples/protocols/coap_server/main/coap_server_example_main.c:
examples/protocols/coap_server/main/component.mk:

Update CoAP server to support DTLS
Change "no data" to "Hello World!" to prevent confusion

examples/protocols/coap_server/main/coap_ca.pem
examples/protocols/coap_server/main/coap_server.crt
examples/protocols/coap_server/main/coap_server.key

New PKI Certs for CoAP server (copied from wpa2_enterprise example)

Closes https://github.com/espressif/esp-idf/pull/3345
Closes https://github.com/espressif/esp-idf/issues/1379
2019-08-06 10:37:40 +05:30
Angus Gratton
39f090a4f1 Merge branch 'deprecate/spi_common_claim_macros' into 'master'
spi_common: remove deprecated spi_common_periph_claim macros

See merge request espressif/esp-idf!5677
2019-08-06 11:16:17 +08:00
Renz Christian Bagaporo
4df98b5489 cmake: treat unregistered components as unresolved 2019-08-06 11:14:44 +08:00
morris
5a0e5c04d4 Merge branch 'feature/esp32s2beta_i2s_driver' into 'feature/esp32s2beta'
Driver(I2S)/ Update I2S driver for esp32s2beta

See merge request espressif/esp-idf!5245
2019-08-06 10:35:42 +08:00
suda-morris
3753283ef3 idf_tool: fix unicode decode error
Closes https://github.com/espressif/esp-idf/issues/3841
2019-08-06 10:31:34 +08:00
xueyunfei
40e808c63b Try to allocate some LWIP memories in SPIRAM first. If failed, try to allocate in internal RAM then 2019-08-06 10:23:27 +08:00
Krzysztof Budzynski
6517c5033a Merge branch 'bugfix/docs_broken_links' into 'master'
Fix broken links in 'Getting Started' gudes

See merge request espressif/esp-idf!5685
2019-08-05 21:28:50 +08:00
Krzysztof Budzynski
06fb6213c5 Merge branch 'doc/add_Chinese_translation_for_modules-and-boards_in_hw-reference' into 'master'
Add Chinese translation for modules-and-boards.rst in hw-reference folder.

See merge request espressif/esp-idf!5520
2019-08-05 21:25:15 +08:00
Wang Fang
8d8ea6f698 Add Chinese translation for modules-and-boards.rst in hw-reference folder.
Note: Also modify the table in en version
2019-08-05 21:25:15 +08:00
Jiang Jiang Jian
2d36e42b5f Merge branch 'bugfix/fix_wifi_bugs_for_authmode_and_multi_ssid' into 'master'
wifi: fix wifi bugs for authmode and multi ssid

Closes WIFI-558, WIFI-560, WIFI-449, WIFI-567, and WIFI-597

See merge request espressif/esp-idf!5387
2019-08-05 21:18:27 +08:00
Michael (XIAO Xufeng)
26fc858ea4 spi_common: remove deprecated spi_common_periph_claim macros 2019-08-05 09:26:47 +00:00
Roland Dobai
2211039b6d docs: Correct and extend the documentation about VFS select() 2019-08-05 11:17:43 +02:00
Roland Dobai
91ce5db172 VFS: Support concurrent VFS select calls
Closes https://github.com/espressif/esp-idf/issues/3392
2019-08-05 11:17:41 +02:00
fuzhibo
fbb0687b97 1.update touch driver; 2.update adc/dac driver; 3.add temp sensor driver; 2019-08-05 16:21:18 +08:00
fuzhibo
bf79e9d70a Driver: gpio and rtcio dirver update 2019-08-05 16:21:18 +08:00
fuzhibo
b055bff580 1.update touch driver; 2.update adc/dac driver; 3.add temp sensor driver; 2019-08-05 16:21:18 +08:00
fuzhibo
83e00cf643 Driver: gpio and rtcio dirver update 2019-08-05 16:21:18 +08:00
kooho
2139ca668d Update I2S driver for esp32s2beta. 2019-08-05 16:05:16 +08:00
morris
60db9e1a34 Merge branch 'feature/esp32s2beta_pcnt_timer_group_driver' into 'feature/esp32s2beta'
Driver(LEDC,PCNT, TIMER_GROUP): Update PCNT,Timer_Group driver for esp32s2beta

See merge request espressif/esp-idf!5239
2019-08-05 15:51:27 +08:00
Angus Gratton
e215a4d2c2 Merge branch 'feature/esp32s2beta_cpu_start_clean' into 'feature/esp32s2beta'
esp32s2beta: Simplify cpu_start.c remove code linked with CPU1

See merge request espressif/esp-idf!5691
2019-08-05 12:38:31 +08:00
Angus Gratton
ac5508efd5 Merge branch 'feature/idf_monitor_key_piority' into 'master'
idf_monitor: improve the responding of console commands

See merge request espressif/esp-idf!5585
2019-08-05 09:55:45 +08:00
Angus Gratton
7ef5fa8a0a Merge branch 'feature/transport_support_der_certs' into 'master'
tcp transport ssl DER-support

See merge request espressif/esp-idf!5627
2019-08-05 09:52:08 +08:00
Angus Gratton
b23718995a Merge branch 'bugfix/strict_prototypes' into 'master'
Enable strict prototypes checks

Closes IDFGH-757

See merge request espressif/esp-idf!4546
2019-08-05 09:38:39 +08:00
Angus Gratton
faeca72e24 Merge branch 'bugfix/update_example_docs_build_instructions_to_cmake' into 'master'
examples: change default build instructions in docs to CMake

See merge request espressif/esp-idf!5681
2019-08-05 08:08:53 +08:00
Jiang Jiang Jian
05094a9474 Merge branch 'bugfix/btdm_sleep_twice' into 'master'
bugfix btdm sleep twice after wakeup request

See merge request espressif/esp-idf!5637
2019-08-04 15:51:04 +08:00
Tian Hao
a9dfae66ea bugfix btdm sleep twice after wakeup request
This problem may cause HCI send command timeout.

When host call VHCI api to do btdm_wakeup_request, then controller
wakeup process will be handled in ISR and controller task context.
As host task priority is lower than controller task and ISR,
it will cause an incorrect behavior that before VHCI take the
rx_flow_on_semaphore, controller sleep again, then VHCI cannot take
the semaphore and has to wait the automatic wakeup.
2019-08-04 07:17:13 +00:00
KonstantinKondrashov
b3575ad012 esp32s2beta: crosscore_int simplify for esp32s2beta
Closes: IDF-754
2019-08-03 15:29:02 +08:00
KonstantinKondrashov
f9068a10a9 esp32s2beta: Simplify cpu_start.c remove code linked with CPU1
Closes: IDF-840
2019-08-03 15:06:39 +08:00
Mahavir Jain
66440e5975 Merge branch 'feature/file_length_validation' into 'master'
esp_http_client: Add support to check the binary length of the recieved stream...

See merge request espressif/esp-idf!5635
2019-08-02 19:18:44 +08:00
Hrudaynath Dhabe
d4091f7cda esp_http_client: Add support to check the binary length of the recieved stream and compare it with the size mentioned in the header.
While downloading OTA firmware, if their is a Origin Respnse Timeout or the binary is only partially downloaded, OTA failure is observed. Checking binary size can also be helpful for simple http client applications.

Closes https://github.com/espressif/esp-idf/issues/3004
2019-08-02 19:18:44 +08:00
Mahavir Jain
e7dba7d7bc examples: change default build instructions in docs to CMake 2019-08-02 16:32:46 +05:30
Mahavir Jain
90a6855d01 Merge branch 'move/ble_example' into 'master'
examples/bluetooth: Move the demos to the appropriate locations

See merge request espressif/esp-idf!5667
2019-08-02 18:01:58 +08:00
Hrishikesh Dhayagude
146f120f79 examples/bluetooth: Move the demos to the appropriate locations 2019-08-02 18:01:58 +08:00
Krzysztof
164fd5ad29 More link corrections 2019-08-02 17:58:08 +08:00
Ivan Grokhotkov
90e1b7616c Merge branch 'bugfix/example_ext_flash_dio' into 'master'
examples: ext_flash_fatfs: use DIO mode by default

See merge request espressif/esp-idf!5645
2019-08-02 17:53:54 +08:00
Krzysztof
d163b9e615 Fix broken links in 'Getting Started' gudes 2019-08-02 17:09:33 +08:00
Angus Gratton
74ab6375cd Merge branch 'bugfix/gitignore_cmake_files' into 'master'
CMake: Added git ignore for cache files generated by cmake (PR)

See merge request espressif/esp-idf!5675
2019-08-02 15:52:06 +08:00
David Cermak
25dd5e39af esp-tls: Naming variables refering to certificates and keys in a neutral way to suggest that both PEM and DER format could be used, added comments descibing important details about using these formats 2019-08-02 09:25:16 +02:00
Henning Fleddermann
546b625433 add _der variants for esp_transport_ssl_set_(client_cert|client_key|cert_data)
Signed-off-by: David Cermak <cermak@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/3783
2019-08-02 09:25:16 +02:00
Henning Fleddermann
73624e8560 modify comments on esp_tls_cfg, to clarify that other formats besides PEM (such as DER) might be used as well depending on mbedtls-support
Signed-off-by: David Cermak <cermak@espressif.com>
2019-08-02 09:25:16 +02:00
zhangyanjiao
02e5266778 modify WIFI_CONN_0101 case for wrong authmode of AP 2019-08-02 10:22:46 +08:00
zhangyanjiao
9f9d876799 wifi: fix wifi bugs for authmode and multi ssid 2019-08-02 10:22:20 +08:00
Jiang Jiang Jian
096b741a23 Merge branch 'bugfix/fix_the_wrong_comment_in_esp_wifi_types.h' into 'master'
fix the wrong comment in esp_wifi_types.h

See merge request espressif/esp-idf!5676
2019-08-01 21:15:52 +08:00
zhangyanjiao
017a60a69d fix the wrong comment in esp_wifi_types.h 2019-08-01 12:24:08 +00:00
RevoluPowered
e639d5cb84 CMake: Added git ignore for cache files generated by cmake
Merges https://github.com/espressif/esp-idf/pull/3639
2019-08-01 17:59:54 +08:00
Anton Maklakov
ec94ee80f7 Fix a build issue with replacing init_spi_flash() in the host tests 2019-08-01 16:28:56 +07:00
Anton Maklakov
12403e39b4 tools: Fix the build examples script to run locally 2019-08-01 16:28:56 +07:00
Anton Maklakov
75c0066f93 Fix remaining -Wstrict-prototypes warnings 2019-08-01 16:28:56 +07:00
Anton Maklakov
1beb0869e1 NimBLE: Update submodule to fix -Wstrict-prototypes warnings 2019-08-01 16:28:56 +07:00
Michael Zimmermann
c2764f6fe8 mdns: mdns_service_remove_all doesn't take an argument
Merges https://github.com/espressif/esp-idf/pull/2937
2019-08-01 16:28:56 +07:00
Michael Zimmermann
d4c098f5a9 brownout: fix rtc_brownout_isr_handler signature
Merges https://github.com/espressif/esp-idf/pull/2937
2019-08-01 16:28:56 +07:00
Ivan Grokhotkov
e8191912c8 Add -Wstrict-prototypes check in CI 2019-08-01 16:28:56 +07:00
Michael Zimmermann
74a459dd3d make code conform to Wstrict-prototypes
Merges https://github.com/espressif/esp-idf/pull/2937
2019-08-01 16:28:56 +07:00
Anton Maklakov
afbaf74007 tools: Mass fixing of empty prototypes (for -Wstrict-prototypes) 2019-08-01 16:28:56 +07:00
Anton Maklakov
50629eec27 tools: Add a script to fix up empty prototypes 2019-08-01 16:28:55 +07:00
Angus Gratton
4d97dacf56 Merge branch 'bugfix/fix_i2s_channels_swapped_issue' into 'master'
Bugfix(i2s): fixed i2s left/right channels swapped issue

Closes IDFGH-1447

See merge request espressif/esp-idf!5669
2019-08-01 16:53:37 +08:00
Angus Gratton
54eecde90a Merge branch 'bugfix/minor_cleanup_lwip_duplicate_files' into 'master'
lw_ip: remove duplicate (and stale) changelog and version files

See merge request espressif/esp-idf!5657
2019-08-01 12:13:55 +08:00
Michael (XIAO Xufeng)
a2155ff52d idf_monitor: improve the responding of console commands 2019-08-01 11:55:42 +08:00
redchenjs
ff325e84b6 Bugfix(i2s): fixed i2s left/right channels swapped issue.
The right channel data is in the high position, so the I2S_TX_MSB_RIGHT & I2S_RX_MSB_RIGHT bits should be set.

Merges https://github.com/espressif/esp-idf/pull/3717

closes https://github.com/espressif/esp-idf/issues/3399
2019-07-31 17:58:23 +08:00
kooho
f98e7bbccf Update LEDC, PCNT,Timer_Group driver for esp32s2beta. 2019-07-31 16:03:22 +08:00
Angus Gratton
df4926b723 Merge branch 'bugfix/bt_example_typos' into 'master'
Minor: Fix some typos in Bluetooth examples

See merge request espressif/esp-idf!5662
2019-07-31 15:33:03 +08:00
Hrishikesh Dhayagude
c0491fc6f1 Minor: Fix some typos in Bluetooth examples 2019-07-31 15:33:03 +08:00
Mahavir Jain
15e0a32786 lwip: remove duplicate (and stale) changelog and version files 2019-07-30 16:49:53 +05:30
Angus Gratton
eae6f5a1d6 Merge branch 'feature/esp32s2beta_rmt_driver' into 'feature/esp32s2beta'
Driver(RMT): Update RMT driver for esp32s2beta

See merge request espressif/esp-idf!5227
2019-07-30 18:21:59 +08:00
Angus Gratton
aea5561941 Merge branch 'feature/esp32s2beta_update_uart_driver' into 'feature/esp32s2beta'
feat(uart): update uart driver for esp32s2beta

See merge request espressif/esp-idf!5257
2019-07-30 18:05:54 +08:00
Angus Gratton
3b42e173e9 Merge branch 'maint/update_tool_openocd-v0.10.0-esp32-20190708' into 'master'
tools: Update recommended OpenOCD version to v0.10.0-esp32-20190708

See merge request espressif/esp-idf!5565
2019-07-30 12:51:05 +08:00
Ivan Grokhotkov
3f49d71258 Merge branch 'feature/esp32s2beta_gdbstub' into 'feature/esp32s2beta'
esp32s2beta: add gdbstub support

See merge request espressif/esp-idf!5568
2019-07-29 19:00:18 +08:00
Ivan Grokhotkov
8d35744a33 examples: ext_flash_fatfs: use DIO mode by default
DIO works with the same connections as Fast Read, so use it by
default. Also correct the note in README.md which says that DIO
requires additional pins.
2019-07-28 10:14:04 +02:00
chenjianqiang
e43513b610 bugfix(uart): uniform AT_CMD char configuration 2019-07-18 19:24:13 +08:00
Michael (XIAO Xufeng)
00b33a8e14 vfs_uart: refactor to have static context structure 2019-07-18 15:57:00 +08:00
chenjianqiang
91ae40e2ff uart: multichip support 2019-07-18 15:57:00 +08:00
chenjianqiang
4cc962353c feat(uart): update uart driver for esp32s2beta 2019-07-18 15:57:00 +08:00
Ivan Grokhotkov
d742bc85a5 gdbstub: fix CONFIG_ESP_CONSOLE_UART_NUM option name 2019-07-18 09:33:40 +02:00
Angus Gratton
e1ef0faccd esptool: Bump to v2.7
https://github.com/espressif/esptool/releases/tag/v2.7
2019-07-18 15:09:17 +10:00
Ivan Grokhotkov
8cd04c80f6 efuse: set timing configuration before writing 2019-07-18 15:08:56 +10:00
Ivan Grokhotkov
f9f13a86a7 esp32s2beta: add gdbstub support 2019-07-17 16:27:11 +02:00
Ivan Grokhotkov
7d21ece78b gdbstub: move to a separate component, support multiple targets 2019-07-17 16:01:03 +02:00
Alexey Gerenkov
e9faf132b4 tools: Update recommended OpenOCD version to v0.10.0-esp32-20190708 2019-07-17 13:11:24 +00:00
Angus Gratton
4a0733c33c test: Set timeout of libsodium ed25519_convert test to 60s
Test takes 28s-29s to run in some configs, can fail in CI.
2019-07-17 12:24:29 +10:00
Roland Dobai
bd21960955 tools: Support sdkconfig.rename files from outside IDF in confgen.py 2019-07-16 20:18:19 +02:00
morris
413a98b151 Merge branch 'feature/esp32s2beta_dport' into 'feature/esp32s2beta'
dport_access: simplify for esp32s2beta

See merge request espressif/esp-idf!5417
2019-07-16 13:32:48 +08:00
KonstantinKondrashov
ffaee97e81 soc/esp32s2beta: Exclude DPORT check 2019-07-15 06:51:03 +00:00
KonstantinKondrashov
d4ca0e186d esp32s2beta: dport_access simplify
Closes: IDF-755
2019-07-15 06:51:03 +00:00
houwenxiang
6a8fe5cf79 Update RMT driver for esp32s2beta 2019-07-11 19:15:05 +08:00
morris
cbc153786d Merge branch 'feature/esp32s2beta_update_i2c_driver' into 'feature/esp32s2beta'
feat(i2c): update i2c driver for esp32s2beta

See merge request espressif/esp-idf!5256
2019-07-11 17:30:06 +08:00
chenjianqiang
667113cf94 feat(i2c): update i2c driver for esp32s2beta 2019-07-10 11:41:36 +08:00
Angus Gratton
6410f7a259 cmake: Fix some bugs building mconf-idf from scratch
- Makefile didn't quite work with out-of-tree build unless there was already an in-tree build done.
- CMake needs to delete some of the in-tree build artifacts or they're used instead of the correct
 files.
2019-07-09 20:02:44 +08:00
Angus Gratton
0f147e0a32 Merge branch 'ci/support_build_helloworld_esp32s2beta' into 'feature/esp32s2beta'
ci: support to build esp32s2beta simple examples

See merge request espressif/esp-idf!5383
2019-07-08 09:16:07 +08:00
Michael (XIAO Xufeng)
25ab8380c8 ci: support to build esp32s2beta simple examples 2019-07-08 09:16:06 +08:00
Angus Gratton
4ce00a4829 esp32s2beta: Change esp32-s2 wifi library URL to GitHub 2019-07-01 16:53:28 +10:00
Jiang Jiang Jian
e2b88207b4 Merge branch 'feature/esp32s2beta_wifi' into 'feature/esp32s2beta'
run WiFi on ESP32SBETA

See merge request idf/esp-idf!5293
2019-06-30 00:40:34 +08:00
Xia Xiaotian
99ef587a05 run WiFi on ESP32SBETA 2019-06-28 11:34:49 +08:00
Michael (XIAO Xufeng)
1c69db44c9 Merge branch 'feature/support_spi_driver_esp32s2beta' into 'feature/esp32s2beta'
spi: support new chip esp32s2beta

See merge request idf/esp-idf!5224
2019-06-26 16:45:02 +08:00
morris
5e7552cb67 Merge branch 'bugfix/esp32s2beta_fix_compile_error_related_esp_rom_spiflash' into 'feature/esp32s2beta'
bugfix(esp_rom): add two APIs into esp32beta.rom.spiflash.ld to fix compile error

See merge request idf/esp-idf!5318
2019-06-25 16:58:50 +08:00
Michael (XIAO Xufeng)
fcf4502c6b spi_example: fix the example to pass in esp32s2beta 2019-06-23 12:17:27 +08:00
Michael (XIAO Xufeng)
17378fd4c2 spi: support new chip esp32s2beta 2019-06-23 12:17:27 +08:00
Michael (XIAO Xufeng)
93ef3980e7 spi: fix cmakelists missing 2019-06-22 19:09:06 +08:00
Michael (XIAO Xufeng)
eacae2e982 spi_slave: fix a example issue caused by word alignment 2019-06-22 19:09:00 +08:00
Michael (XIAO Xufeng)
9b13a04abf spi: multichip support
move hardcoded numbers, etc. into soc files.
create headers for shared types which needs to be documented.

(MINOR CHANGE)
2019-06-22 19:08:47 +08:00
chenjianqiang
fd8b526f7c add two APIs into esp32beta.rom.spiflash.ld to fix compile error
When config flash mode as QIO mode, the error that esp_rom_spiflash_wait_idle
and esp_rom_spiflash_config_readmode are undefined happens when compile, so
add these two APIs to fix the error.
2019-06-21 21:50:48 +08:00
morris
b395279196 Merge branch 'feature/esp32s2beta_fix_rtcio' into 'feature/esp32s2beta'
fix rtc bug in esp32s2beta

See merge request idf/esp-idf!5294
2019-06-20 13:42:37 +08:00
Michael (XIAO Xufeng)
be8bf31e48 Merge branch 'feature/support_gpio_atomic_cmakelists_esp32s2beta' into 'feature/esp32s2beta'
support atomic in esp32s2beta branch

See merge request idf/esp-idf!5268
2019-06-20 13:39:55 +08:00
Michael (XIAO Xufeng)
0bbeb502a8 atomic: support for esp32s2beta 2019-06-20 12:06:52 +08:00
Michael (XIAO Xufeng)
ea1dcf7fe4 gpio: fix missing cmakelists for esp32s2beta 2019-06-20 12:06:51 +08:00
fuzhibo
f5a21845fd fix rtc bug in esp32s2beta 2019-06-20 11:26:21 +08:00
morris
3e5997e4a0 Merge branch 'feature/esp32s2beta_can_build_helloworld_for_esp32' into 'feature/esp32s2beta'
fix some build error when building hello-world for esp32

See merge request idf/esp-idf!5235
2019-06-19 17:02:09 +08:00
suda-morris
3f7a571c90 fix errors when ci testing for esp32 2019-06-19 15:31:47 +08:00
suda-morris
b1a7f7fcdb disable ci test: docs building and submodule sync
This commit needs reverting before esp32s2 is ready to release
2019-06-19 15:28:50 +08:00
suda-morris
1b54dc214c Merge branch 'feature/esp32s2beta_gpio_rtcio_driver' into feature/esp32s2beta 2019-06-17 14:19:56 +08:00
fuzhibo
29ea0dec76 Driver: gpio and rtcio dirver update 2019-06-14 20:27:26 +08:00
suda-morris
dc24988268 Merge branch 'feature/esp32s2beta_fix_rom_ld' into feature/esp32s2beta 2019-06-14 16:59:21 +08:00
Ivan Grokhotkov
7c723e121c esp_rom: update ld scripts to export strong symbols
Similar to commits for esp32 target: e84b26f5, 8c2f2867, 5719cd6f
2019-06-13 19:34:40 +08:00
Ivan Grokhotkov
cfba50811d spi_flash: fix unit tests compilation 2019-06-13 19:34:40 +08:00
suda-morris
8cd58625d0 Merge branch 'feature/esp32s2beta_todos_to_warnings' into feature/esp32s2beta 2019-06-13 13:42:36 +08:00
Ivan Grokhotkov
7680f520f9 unit-test-app: disable CONFIG_MBEDTLS_HARDWARE_MPI for esp32s2beta 2019-06-13 01:43:38 +08:00
Ivan Grokhotkov
51a7df196d esp32s2beta: fix soc_memory_layout
1. use SOC_RESERVE_MEMORY_REGION
2. reserve part of the DRAM which is mapped to same banks as IRAM
2019-06-13 01:34:54 +08:00
Ivan Grokhotkov
ca932f80f4 esp_debug_helpers: add missing include 2019-06-12 17:13:44 +08:00
Ivan Grokhotkov
04d1ce944d freertos: pass unit tests compilation 2019-06-12 17:13:29 +08:00
Ivan Grokhotkov
25a383c521 test_utils: update for esp32s2beta 2019-06-12 16:10:11 +08:00
Ivan Grokhotkov
aeb62b5337 esp_wifi: no libraries for esp32s2beta yet 2019-06-12 16:09:52 +08:00
Ivan Grokhotkov
dcaae4a5fc esp32s2beta: convert some todos to warnings 2019-06-12 15:53:57 +08:00
suda-morris
4a79d750a5 clean up build warnings 2019-06-11 13:07:37 +08:00
Angus Gratton
a37ad24137 cmake: Always pass IDF_TARGET into mconf, avoid error about uninitialized environment variable 2019-06-11 13:07:37 +08:00
Angus Gratton
ddbd09eb15 esp32/esp32s2beta: Extract common SPIRAM options into esp_commmon component 2019-06-11 13:07:37 +08:00
Angus Gratton
06e31e243c esp32s2beta: Fix kconfig errors found by Roland 2019-06-11 13:07:37 +08:00
Angus Gratton
8d949c3c9d esp32s2beta: Apply new Kconfig names to esp32s2beta
Still using ESP32_xxx prefix on all chips: CORE_DUMP, APP_TRACE

Still using the same config prefix and duplicate names in esp32 & esp32s2beta: SPIRAM, PM
2019-06-11 13:07:37 +08:00
suda-morris
82c27a39f2 can build and run hello-world app 2019-06-11 13:07:37 +08:00
Ivan Grokhotkov
73b30af2b3 confgen.py: don't output compatibility definitions for options which are not defined
For example, if a renamed option CONFIG_NEW is a bool with value "n", kconfiglib will not generate a define for it in the Kconfig file. The define (#define CONFIG_NEW 1) will only be generated if the option is "y" or "m".
However the compatibility definition was always generated: #define CONFIG_OLD CONFIG_NEW. This broke the #ifdef checks which depended on the old option names.
2019-06-11 13:07:37 +08:00
Ivan Grokhotkov
7dcc5f4d15 idf.py: pass correct toolchain prefix to the monitor 2019-06-11 13:07:37 +08:00
Ivan Grokhotkov
fa6622aa33 Kconfig: change default toolchain prefix for esp32s2beta to "esp32s2" 2019-06-11 13:07:37 +08:00
Angus Gratton
047aca97e8 esp32s2beta: Fix heap memory regions when SPIRAM is disabled 2019-06-11 13:07:37 +08:00
Angus Gratton
b2e8d30414 esp32s2beta: esptool support 2019-06-11 13:07:37 +08:00
suda-morris
84b2f9f14d build and link hello-world for esp32s2beta 2019-06-11 13:07:37 +08:00
suda-morris
61ce868396 make bootloader_support support esp32s2beta 2019-06-11 13:07:02 +08:00
suda-morris
b146104885 add esp32s2beta component 2019-06-11 13:06:32 +08:00
suda-morris
91508ca27f add esp32s2beta in soc component 2019-06-11 13:06:32 +08:00
suda-morris
cc98b9ef60 add rom for esp32s2beta 2019-06-11 13:06:32 +08:00
suda-morris
f14a6cf51b Ethernet peripheral will depend on IDF_TARGET
esp32 has EMAC controller, but esp32s2 doesn't
2019-06-11 13:06:32 +08:00
suda-morris
12f00d9a5e make bootloader support esp32s2beta 2019-06-11 13:06:32 +08:00
suda-morris
2f4c5c51f4 update esp32 component 2019-06-11 13:06:32 +08:00
suda-morris
c926f7515e add toolchain setting for esp32s2 2019-06-11 13:06:32 +08:00
suda-morris
e9a2eae639 add IDF_TARGET_XXX in main Kconfig 2019-06-11 13:06:32 +08:00
suda-morris
b82e0d49a8 make app_trace support esp32c 2019-06-11 13:06:32 +08:00
4170 changed files with 732689 additions and 92165 deletions

View File

@@ -141,17 +141,20 @@ exclude =
__pycache__,
# submodules
components/bootloader/subproject/components/micro-ecc/micro-ecc,
components/bt/host/nimble/nimble,
components/esptool_py/esptool,
components/expat/expat,
components/json/cJSON,
components/libsodium/libsodium,
components/mbedtls/mbedtls,
components/nghttp/nghttp2,
components/bt/host/nimble/nimble,
components/tinyusb,
components/unity/unity,
examples/build_system/cmake/import_lib/main/lib/tinyxml2,
examples/peripherals/secure_element/atecc608_ecdsa/components/esp-cryptoauthlib,
# other third-party libraries
tools/kconfig_new/kconfiglib.py,
tools/kconfig_new/menuconfig.py,
# autogenerated scripts
components/protocomm/python/constants_pb2.py,
components/protocomm/python/sec0_pb2.py,
@@ -161,4 +164,4 @@ exclude =
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,
examples/provisioning/custom_config/components/custom_provisioning/python/custom_config_pb2.py,
examples/provisioning/legacy/custom_config/components/custom_provisioning/python/custom_config_pb2.py,

View File

@@ -1,6 +1,15 @@
---
name: Bug report
about: ESP-IDF crashes, produces incorrect output, or has incorrect behavior
title: ''
labels: ''
assignees: ''
---
----------------------------- Delete below -----------------------------
If your issue is a general question, starts similar to "How do I..", or is related to 3rd party development kits/libs, please discuss this on our community forum at esp32.com instead.
**Reminder: If your issue is a general question, starts similar to "How do I..", or is related to 3rd party development kits/libs, please discuss this on our community forum at https://esp32.com instead.**
INSTRUCTIONS
============
@@ -15,11 +24,13 @@ 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 on the monitor](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/idf-monitor.html#automatically-decoding-addresses) or the [coredump](https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/core_dump.html).
4. Provide more items under **Other items if possible** can help us better locate your problem.
5. Use markup (buttons above) and the Preview tab to check what the issue will look like.
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.
**IMPORTANT: If you do not follow these instructions and provide the necessary details, your issue may not be resolved.**
----------------------------- Delete above -----------------------------
## Environment
@@ -29,10 +40,12 @@ If the issue cannot be solved after the steps before, please follow these instru
- Module or chip used: [ESP32-WROOM-32|ESP32-WROOM-32D|ESP32-WROOM-32U|ESP32-WROVER|ESP32-WROVER-I|ESP32-WROVER-B|ESP32-WROVER-IB|ESP32-SOLO-1|ESP32-PICO-D4|ESP32]
- IDF version (run ``git describe`` to find it):
// v3.2-dev-1148-g96cd3b75c
- Build System: [Make|CMake]
- Build System: [Make|CMake|idf.py]
- Compiler version (run ``xtensa-esp32-elf-gcc --version`` to find it):
// 1.22.0-80-g6c4433a
- Operating System: [Windows|Linux|macOS]
- (Windows only) environment type: [MSYS2 mingw32|ESP Command Prompt|Plain Command Prompt|PowerShell].
- Using an IDE?: [No|Yes (please give details)]
- Power Supply: [USB|external 5V|external 3.3V|Battery]
## Problem Description
@@ -43,12 +56,12 @@ If the issue cannot be solved after the steps before, please follow these instru
### Actual Behavior
### Steps to repropduce
### Steps to reproduce
1. step1
2. ...
// It helps if you attach a picture of your setup/wiring here.
// If possible, attach a picture of your setup/wiring here.
### Code to reproduce this issue
@@ -59,7 +72,7 @@ If the issue cannot be solved after the steps before, please follow these instru
void app_main()
{
}
```
@@ -76,5 +89,4 @@ Please copy the plain text here for us to search the error log. Or attach the co
- [ ] sdkconfig file (attach the sdkconfig file from your project folder)
- [ ] elf file in the ``build`` folder (**note this may contain all the code details and symbols of your project.**)
- [ ] coredump (This provides stacks of tasks.)
- [ ] coredump (This provides stacks of tasks.)

16
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,16 @@
blank_issues_enabled: false
contact_links:
- name: ESP-IDF Programming Guide
url: https://docs.espressif.com/projects/esp-idf/en/latest/
about: Documentation for configuring and using ESP-IDF
- name: Espressif documentation page
url: https://www.espressif.com/en/support/download/documents
about: Hardware documentation (datasheets, Technical Reference Manual, etc)
- name: Forum
url: https://esp32.com
about: For questions about using ESP-IDF and/or ESP32 series chips. Please submit all questions starting "How do I..." here.
- name: Hardware-related services
url: https://www.espressif.com/en/products/hardware-services
about: Espressif service providing hardware design and certification support

View File

@@ -0,0 +1,26 @@
---
name: Feature request
about: Suggest an idea for ESP-IDF
title: ''
labels: 'Type: Feature Request'
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
Please give as many details as you can. Include suggestions for useful APIs or interfaces if relevant.
**Additional context**
Add any other context or screenshots about the feature request here.

22
.github/main.workflow vendored
View File

@@ -1,22 +0,0 @@
workflow "Sync issues to JIRA" {
on = "issues"
resolves = ["Sync to JIRA"]
}
workflow "Sync issue and PR comments to JIRA" {
on = "issue_comment"
resolves = ["Sync to JIRA"]
}
workflow "Sync PRs to JIRA" {
on = "pull_request"
resolves = ["Sync to JIRA"]
}
action "Sync to JIRA" {
uses = "espressif/github-actions/sync_issues_to_jira@master"
secrets = ["GITHUB_TOKEN", "JIRA_URL", "JIRA_USER", "JIRA_PASS"]
env = {
JIRA_PROJECT = "IDFGH"
}
}

87
.github/workflows/docker.yml vendored Normal file
View File

@@ -0,0 +1,87 @@
name: docker
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
on:
push:
branches:
- 'master'
- 'release/*'
tags:
- 'v*.*'
env:
# Platforms to build the image for
BUILD_PLATFORMS: linux/amd64
DOCKERHUB_REPO: ${{ github.repository_owner }}/idf
jobs:
docker:
# Disable the job in forks
if: ${{ github.repository_owner == 'espressif' }}
runs-on: ubuntu-latest
steps:
# Depending on the branch/tag, set CLONE_BRANCH_OR_TAG variable (used in the Dockerfile
# as a build arg) and TAG_NAME (used when tagging the image).
#
# The following 3 steps cover the alternatives (tag, release branch, master branch):
- name: Set variables (tags)
if: ${{ github.ref_type == 'tag' }}
run: |
echo "CLONE_BRANCH_OR_TAG=$GITHUB_REF_NAME" >> $GITHUB_ENV
echo "TAG_NAME=$GITHUB_REF_NAME" >> $GITHUB_ENV
- name: Set variables (release branches)
if: ${{ github.ref_type == 'branch' && startsWith(github.ref_name, 'release/') }}
run: |
echo "CLONE_BRANCH_OR_TAG=$GITHUB_REF_NAME" >> $GITHUB_ENV
echo "TAG_NAME=release-${GITHUB_REF_NAME##release/}" >> $GITHUB_ENV
- name: Set variables (main branch)
if: ${{ github.ref_type == 'branch' && github.ref_name == 'master' }}
run: |
echo "CLONE_BRANCH_OR_TAG=master" >> $GITHUB_ENV
echo "TAG_NAME=latest" >> $GITHUB_ENV
# Display the variables set above, just in case.
- name: Check variables
run: |
echo "CLONE_BRANCH_OR_TAG: $CLONE_BRANCH_OR_TAG"
echo "CHECKOUT_REF: $CHECKOUT_REF"
echo "TAG_NAME: $TAG_NAME"
# The following steps are the standard boilerplate from
# https://github.com/marketplace/actions/build-and-push-docker-images
- name: Checkout
uses: actions/checkout@v3
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Set up QEMU for multiarch builds
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Build and push
uses: docker/build-push-action@v3
with:
context: tools/docker
push: true
tags: ${{ env.DOCKERHUB_REPO }}:${{ env.TAG_NAME }}
platforms: ${{ env.BUILD_PLATFORMS }}
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

19
.github/workflows/issue_comment.yml vendored Normal file
View File

@@ -0,0 +1,19 @@
name: Sync issue comments to JIRA
# This workflow will be triggered when new issue comment is created (including PR comments)
on: issue_comment
jobs:
sync_issue_comments_to_jira:
name: Sync Issue Comments to Jira
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Sync issue comments to JIRA
uses: espressif/github-actions/sync_issues_to_jira@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
JIRA_PASS: ${{ secrets.JIRA_PASS }}
JIRA_PROJECT: IDFGH
JIRA_URL: ${{ secrets.JIRA_URL }}
JIRA_USER: ${{ secrets.JIRA_USER }}

19
.github/workflows/new_issues.yml vendored Normal file
View File

@@ -0,0 +1,19 @@
name: Sync issues to Jira
# This workflow will be triggered when a new issue is opened
on: issues
jobs:
sync_issues_to_jira:
name: Sync issues to Jira
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Sync GitHub issues to Jira project
uses: espressif/github-actions/sync_issues_to_jira@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
JIRA_PASS: ${{ secrets.JIRA_PASS }}
JIRA_PROJECT: IDFGH
JIRA_URL: ${{ secrets.JIRA_URL }}
JIRA_USER: ${{ secrets.JIRA_USER }}

24
.github/workflows/new_prs.yml vendored Normal file
View File

@@ -0,0 +1,24 @@
name: Sync remain PRs to Jira
# This workflow will be triggered every hour, to sync remaining PRs (i.e. PRs with zero comment) to Jira project
# Note that, PRs can also get synced when new PR comment is created
on:
schedule:
- cron: "0 * * * *"
jobs:
sync_prs_to_jira:
name: Sync PRs to Jira
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Sync PRs to Jira project
uses: espressif/github-actions/sync_issues_to_jira@master
with:
cron_job: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
JIRA_PASS: ${{ secrets.JIRA_PASS }}
JIRA_PROJECT: IDFGH
JIRA_URL: ${{ secrets.JIRA_URL }}
JIRA_USER: ${{ secrets.JIRA_USER }}

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

36
.gitignore vendored
View File

@@ -27,13 +27,7 @@ examples/**/sdkconfig.old
examples/**/build
# Doc build artifacts
docs/*/_build/
docs/*/doxygen-warning-log.txt
docs/*/sphinx-warning-log.txt
docs/*/sphinx-warning-log-sanitized.txt
docs/*/xml/
docs/*/xml_in/
docs/*/man/
docs/_build/
docs/doxygen_sqlite3.db
# Downloaded font files
@@ -46,6 +40,15 @@ tools/unit-test-app/sdkconfig.old
tools/unit-test-app/build
tools/unit-test-app/builds
tools/unit-test-app/output
tools/unit-test-app/test_configs
# Unit Test CMake compile log folder
log_ut_cmake
# test application build files
tools/test_apps/**/build
tools/test_apps/**/sdkconfig
tools/test_apps/**/sdkconfig.old
# IDF monitor test
tools/test_idf_monitor/outputs
@@ -63,8 +66,23 @@ test_multi_heap_host
# VS Code Settings
.vscode/
# Results for the checking of the Python coding style
# VIM files
*.swp
*.swo
# Clion IDE CMake build & config
.idea/
cmake-build-*/
# Results for the checking of the Python coding style and static analysis
.mypy_cache
flake8_output.txt
# ESP-IDF library
# ESP-IDF default build directory name
build
# lock files for examples and components
dependencies.lock
# managed_components for examples
managed_components

View File

@@ -1,11 +1,12 @@
stages:
- pre_check
- build
- assign_test
- host_test
- target_test
- check
- deploy
- post_check
- deploy
- post_deploy
# pipelines will not be created in such two cases:
# 1. MR push
@@ -44,7 +45,6 @@ variables:
# tell build system do not check submodule update as we download archive instead of clone
IDF_SKIP_CHECK_SUBMODULES: 1
UNIT_TEST_BUILD_SYSTEM: cmake
IDF_PATH: "$CI_PROJECT_DIR"
BATCH_BUILD: "1"
V: "0"
@@ -57,20 +57,20 @@ variables:
CI_TARGET_TEST_CONFIG_FILE: "$CI_PROJECT_DIR/tools/ci/config/target-test.yml"
# 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"
CI_AUTO_TEST_SCRIPT_REPO_URL: "https://gitlab-ci-token:${BOT_TOKEN}@${CI_SERVER_HOST}:${CI_SERVER_PORT}/qa/auto_test_script.git"
CI_AUTO_TEST_SCRIPT_REPO_BRANCH: "ci/v3.1"
# Versioned esp-idf-doc env image to use for all document building jobs
# 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:v7"
# before each job, we need to check if this job is filtered by bot stage/job filter
.apply_bot_filter: &apply_bot_filter
python $APPLY_BOT_FILTER_SCRIPT || exit 0
.setup_tools_unless_target_test: &setup_tools_unless_target_test |
if [ "$CI_JOB_STAGE" != "target_test" ]; then
if [[ -n "$IDF_DONT_USE_MIRRORS" ]]; then
export IDF_MIRROR_PREFIX_MAP=
fi
if [[ "$SETUP_TOOLS" == "1" || "$CI_JOB_STAGE" != "target_test" ]]; then
tools/idf_tools.py --non-interactive install && eval "$(tools/idf_tools.py --non-interactive export)" || exit 1
fi
@@ -78,6 +78,8 @@ variables:
python $SUBMODULE_FETCH_TOOL -s $SUBMODULES_TO_FETCH
before_script:
- source tools/ci/utils.sh
- is_based_on_commits $REQUIRED_ANCESTOR_COMMITS
- source tools/ci/setup_python.sh
# apply bot filter in before script
- *apply_bot_filter
@@ -91,7 +93,6 @@ before_script:
# Set some options and environment for CI
- source tools/ci/configure_ci_environment.sh
- *setup_tools_unless_target_test
- *fetch_submodules
# used for check scripts which we want to run unconditionally
@@ -100,6 +101,8 @@ before_script:
GIT_SUBMODULE_STRATEGY: none
before_script:
- 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
@@ -109,13 +112,15 @@ before_script:
GIT_SUBMODULE_STRATEGY: none
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 in before script
- *apply_bot_filter
- source tools/ci/configure_ci_environment.sh
.check_job_template:
stage: check
stage: pre_check
image: $CI_DOCKER_REGISTRY/esp32-ci-env$BOT_DOCKER_IMAGE_TAG
tags:
- host_test
@@ -123,12 +128,43 @@ before_script:
extends: .before_script_lesser_nofilter
.check_job_template_with_filter:
stage: check
stage: pre_check
image: $CI_DOCKER_REGISTRY/esp32-ci-env$BOT_DOCKER_IMAGE_TAG
tags:
- host_test
dependencies: []
extends: .before_script_lesser_nofilter
extends: .before_script_lesser
.python_lint_template:
stage: pre_check
image: $CI_DOCKER_REGISTRY/esp32-ci-env$BOT_DOCKER_IMAGE_TAG
tags:
- host_test
dependencies: []
.macos_build_template:
stage: build
tags:
- macos_shell
dependencies: []
before_script:
- 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_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
default:
retry:
@@ -137,9 +173,11 @@ default:
when: runner_system_failure
include:
- '/tools/ci/config/pre_check.yml'
- '/tools/ci/config/build.yml'
- '/tools/ci/config/assign-test.yml'
- '/tools/ci/config/host-test.yml'
- '/tools/ci/config/target-test.yml'
- '/tools/ci/config/check.yml'
- '/tools/ci/config/post_check.yml'
- '/tools/ci/config/deploy.yml'
- '/tools/ci/config/post_deploy.yml'

20
.gitmodules vendored
View File

@@ -67,10 +67,22 @@
path = examples/build_system/cmake/import_lib/main/lib/tinyxml2
url = ../../leethomason/tinyxml2.git
[submodule "components/esp_wifi/lib_esp32"]
path = components/esp_wifi/lib_esp32
url = ../../espressif/esp32-wifi-lib.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

View File

@@ -1,7 +0,0 @@
language: python
sudo: false
python:
- "3.4"
script:
- pip install flake8
- travis_wait 20 python -m flake8 --config=.flake8 .

View File

@@ -16,11 +16,32 @@ unset(link_options)
# Add the following build specifications here, since these seem to be dependent
# on config values on the root Kconfig.
if(CONFIG_COMPILER_OPTIMIZATION_LEVEL_RELEASE)
list(APPEND compile_options "-Os")
list(APPEND compile_options "-freorder-blocks")
else()
list(APPEND compile_options "-Og")
if(NOT BOOTLOADER_BUILD)
if(CONFIG_COMPILER_OPTIMIZATION_SIZE)
list(APPEND compile_options "-Os")
list(APPEND compile_options "-freorder-blocks")
elseif(CONFIG_COMPILER_OPTIMIZATION_DEFAULT)
list(APPEND compile_options "-Og")
elseif(CONFIG_COMPILER_OPTIMIZATION_NONE)
list(APPEND compile_options "-O0")
elseif(CONFIG_COMPILER_OPTIMIZATION_PERF)
list(APPEND compile_options "-O2")
endif()
else() # BOOTLOADER_BUILD
if(CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE)
list(APPEND compile_options "-Os")
list(APPEND compile_options "-freorder-blocks")
elseif(CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG)
list(APPEND compile_options "-Og")
elseif(CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_NONE)
list(APPEND compile_options "-O0")
elseif(CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_PERF)
list(APPEND compile_options "-O2")
endif()
endif()
if(CONFIG_COMPILER_CXX_EXCEPTIONS)
@@ -41,19 +62,20 @@ if(CONFIG_COMPILER_DISABLE_GCC8_WARNINGS)
"-Wno-sizeof-pointer-memaccess"
"-Wno-clobbered")
# doesn't use GCC_NOT_5_2_0 because idf_set_global_variables was not called before
if(GCC_NOT_5_2_0)
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()
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()
if(CONFIG_COMPILER_WARN_WRITE_STRINGS)
list(APPEND compile_options "-Wwrite-strings")
endif()
if(CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE)

View File

@@ -6,7 +6,7 @@ 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/articles/about-pull-requests/>`_.
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
-------------------
@@ -27,7 +27,7 @@ Before sending us a Pull Request, please consider this list of points:
* 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 <http://eli.thegreenplace.net/2014/02/19/squashing-github-pull-requests-into-a-single-commit/>`_?
* 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.

174
Kconfig
View File

@@ -4,21 +4,13 @@
#
mainmenu "Espressif IoT Development Framework Configuration"
# Hidden option to support checking for this specific target in C code and Kconfig files
config IDF_TARGET_ESP32
bool
default "y" if IDF_TARGET="esp32"
default "n"
config IDF_CMAKE
bool
option env="IDF_CMAKE"
config IDF_TARGET_ENV
# A proxy to get environment variable $IDF_TARGET
string
option env="IDF_TARGET"
config IDF_ENV_FPGA
# This option is for internal use only
bool
config IDF_TARGET
# This option records the IDF target when sdkconfig is generated the first time.
@@ -26,18 +18,28 @@ mainmenu "Espressif IoT Development Framework Configuration"
# the build system is responsible for detecting the mismatch between
# CONFIG_IDF_TARGET and $IDF_TARGET.
string
default "IDF_TARGET_NOT_SET" if IDF_TARGET_ENV=""
default IDF_TARGET_ENV
default "$IDF_TARGET"
config IDF_TARGET_ESP32
bool
default "y" if IDF_TARGET="esp32"
config IDF_TARGET_ESP32S2
bool
default "y" if IDF_TARGET="esp32s2"
select FREERTOS_UNICORE
config IDF_FIRMWARE_CHIP_ID
hex
default 0x0000 if IDF_TARGET="esp32"
default 0x0000 if IDF_TARGET_ESP32
default 0x0002 if IDF_TARGET_ESP32S2
default 0xFFFF
menu "SDK tool configuration"
config SDK_TOOLPREFIX
string "Compiler toolchain path/prefix"
default "xtensa-esp32-elf-"
default "xtensa-esp32-elf-" if IDF_TARGET_ESP32
default "xtensa-esp32s2-elf-" if IDF_TARGET_ESP32S2
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.
@@ -65,32 +67,139 @@ mainmenu "Espressif IoT Development Framework Configuration"
(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
source "$COMPONENT_KCONFIGS_PROJBUILD"
menu "Build type"
choice APP_BUILD_TYPE
prompt "Application build type"
default APP_BUILD_TYPE_APP_2NDBOOT
help
Select the way the application is built.
By default, the application is built as a binary file in a format compatible with
the ESP32 bootloader. In addition to this application, 2nd stage bootloader is
also built. Application and bootloader binaries can be written into flash and
loaded/executed from there.
Another option, useful for only very small and limited applications, is to only link
the .elf file of the application, such that it can be loaded directly into RAM over
JTAG. Note that since IRAM and DRAM sizes are very limited, it is not possible to
build any complex application this way. However for kinds of testing and debugging,
this option may provide faster iterations, since the application does not need to be
written into flash.
Note that at the moment, ESP-IDF does not contain all the startup code required to
initialize the CPUs and ROM memory (data/bss). Therefore it is necessary to execute
a bit of ROM code prior to executing the application. A gdbinit file may look as follows:
# Connect to a running instance of OpenOCD
target remote :3333
# Reset and halt the target
mon reset halt
# Run to a specific point in ROM code,
# where most of initialization is complete.
thb *0x40007d54
c
# Load the application into RAM
load
# Run till app_main
tb app_main
c
Execute this gdbinit file as follows:
xtensa-esp32-elf-gdb build/app-name.elf -x gdbinit
Recommended sdkconfig.defaults for building loadable ELF files is as follows.
CONFIG_APP_BUILD_TYPE_ELF_RAM is required, other options help reduce application
memory footprint.
CONFIG_APP_BUILD_TYPE_ELF_RAM=y
CONFIG_VFS_SUPPORT_TERMIOS=
CONFIG_NEWLIB_NANO_FORMAT=y
CONFIG_ESP_SYSTEM_PANIC_PRINT_HALT=y
CONFIG_ESP_DEBUG_STUBS_ENABLE=
CONFIG_ESP_ERR_TO_NAME_LOOKUP=
config APP_BUILD_TYPE_APP_2NDBOOT
bool
prompt "Default (binary application + 2nd stage bootloader)"
select APP_BUILD_GENERATE_BINARIES
select APP_BUILD_BOOTLOADER
select APP_BUILD_USE_FLASH_SECTIONS
config APP_BUILD_TYPE_ELF_RAM
bool
prompt "ELF file, loadable into RAM (EXPERIMENTAL))"
endchoice # APP_BUILD_TYPE
# Hidden options, set according to the choice above
config APP_BUILD_GENERATE_BINARIES
bool # Whether to generate .bin files or not
config APP_BUILD_BOOTLOADER
bool # Whether to build the bootloader
config APP_BUILD_USE_FLASH_SECTIONS
bool # Whether to place code/data into memory-mapped flash sections
endmenu # Build type
source "$COMPONENT_KCONFIGS_PROJBUILD_SOURCE_FILE"
menu "Compiler options"
choice COMPILER_OPTIMIZATION
prompt "Optimization Level"
default COMPILER_OPTIMIZATION_LEVEL_DEBUG
default COMPILER_OPTIMIZATION_DEFAULT
help
This option sets compiler optimization level (gcc -O argument).
This option sets compiler optimization level (gcc -O argument) for the app.
- for "Release" setting, -Os flag is added to CFLAGS.
- for "Debug" setting, -Og flag is added to CFLAGS.
- The "Default" setting will add the -0g flag to CFLAGS.
- The "Size" setting will add the -0s flag to CFLAGS.
- The "Performance" setting will add the -O2 flag to CFLAGS.
- The "None" setting will add the -O0 flag to CFLAGS.
"Release" with -Os produces smaller & faster compiled code but it
may be harder to correlated code addresses to source files when debugging.
The "Size" setting cause the compiled code to be smaller and faster, but
may lead to difficulties of correlating code addresses to source file
lines when debugging.
To add custom optimization settings, set CFLAGS and/or CPPFLAGS
in project makefile, before including $(IDF_PATH)/make/project.mk. Note that
custom optimization levels may be unsupported.
The "Performance" setting causes the compiled code to be larger and faster,
but will be easier to correlated code addresses to source file lines.
config COMPILER_OPTIMIZATION_LEVEL_DEBUG
"None" with -O0 produces compiled code without optimization.
Note that custom optimization levels may be unsupported.
Compiler optimization for the IDF bootloader is set separately,
see the BOOTLOADER_COMPILER_OPTIMIZATION setting.
config COMPILER_OPTIMIZATION_DEFAULT
bool "Debug (-Og)"
config COMPILER_OPTIMIZATION_LEVEL_RELEASE
bool "Release (-Os)"
config COMPILER_OPTIMIZATION_SIZE
bool "Optimize for size (-Os)"
config COMPILER_OPTIMIZATION_PERF
bool "Optimize for performance (-O2)"
config COMPILER_OPTIMIZATION_NONE
bool "Debug without optimization (-O0)"
endchoice
choice COMPILER_OPTIMIZATION_ASSERTION_LEVEL
@@ -149,9 +258,8 @@ mainmenu "Espressif IoT Development Framework Configuration"
memory for thrown exceptions when there is not enough memory on the heap.
config COMPILER_CXX_RTTI
# Invisible option, until the toolchain with RTTI support is released.
# Use prompt "Enable C++ run-time type info (RTTI)" when updating.
bool
bool "Enable C++ run-time type info (RTTI)"
default n
help
Enabling this option compiles all C++ files with RTTI support enabled.
This increases binary size (typically by tens of kB) but allows using
@@ -223,12 +331,12 @@ mainmenu "Espressif IoT Development Framework Configuration"
endmenu # Compiler Options
menu "Component config"
source "$COMPONENT_KCONFIGS"
source "$COMPONENT_KCONFIGS_SOURCE_FILE"
endmenu
menu "Compatibility options"
config LEGACY_INCLUDE_COMMON_HEADERS
bool "Include headers accross components as before IDF v4.0"
bool "Include headers across components as before IDF v4.0"
default n
help
Soc, esp32, and driver components, the most common

View File

@@ -1,15 +1,16 @@
# Espressif IoT Development Framework
ESP-IDF is the official development framework for the [ESP32](https://espressif.com/en/products/hardware/esp32/overview) chip provided for Windows, Linux and macOS.
* [中文版](./README_CN.md)
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
## Setting Up ESP-IDF
See setup guides for detailed instructions to set up the ESP-IDF:
See https://idf.espressif.com/ for links to detailed instructions on how to set up the ESP-IDF depending on chip you use.
* [Getting Started Guide for the stable ESP-IDF version](https://docs.espressif.com/projects/esp-idf/en/stable/get-started/)
* [Getting Started Guide for the latest (master branch) ESP-IDF version](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/)
**Note:** Each SoC series and each ESP-IDF release has its own documentation. Please see Section [Versions](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/versions.html) on how to find documentation and how to checkout specific release of ESP-IDF.
### Non-GitHub forks
@@ -36,12 +37,13 @@ See the Getting Started guide links above for a detailed setup guide. This is a
(See the Getting Started guide listed above for a full list of required steps with more details.)
* Install host build dependencies mentioned in the Getting Started guide.
* Run the install script to set up the build environment. The options include `install.bat` for Windows, and `install.sh` for Unix shells.
* Run the install script to set up the build environment. The options include `install.bat` or `install.ps1` for Windows, and `install.sh` or `install.fish` for Unix shells.
* Run the export script on Windows (`export.bat`) or source it on Unix (`source export.sh`) in every shell environment before using ESP-IDF.
## Configuring the Project
`idf.py menuconfig` opens a text-based configuration menu where you can configure the project.
* `idf.py set-target <chip_name>` sets the target of the project to `<chip_name>`. Run `idf.py set-target` without any arguments to see a list of supported targets.
* `idf.py menuconfig` opens a text-based configuration menu where you can configure the project.
## Compiling the Project
@@ -63,7 +65,7 @@ You don't need to run `idf.py build` before running `idf.py flash`, `idf.py flas
## Viewing Serial Output
The `idf.py monitor` target uses the [idf_monitor tool](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/idf-monitor.html) to display serial output from the ESP32. idf_monitor also has a range of features to decode crash output and interact with the device. [Check the documentation page for details](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/idf-monitor.html).
The `idf.py monitor` target uses the [idf_monitor tool](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/idf-monitor.html) to display serial output from Espressif SoCs. idf_monitor also has a range of features to decode crash output and interact with the device. [Check the documentation page for details](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/idf-monitor.html).
Exit the monitor by typing Ctrl-].
@@ -99,3 +101,6 @@ This can be combined with other targets, ie `idf.py -p PORT erase_flash flash` w
* 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.

106
README_CN.md Normal file
View File

@@ -0,0 +1,106 @@
# Espressif 物联网开发框架
* [English Version](./README.md)
ESP-IDF 是由乐鑫官方针对乐鑫各系列芯片产品(发布于 2016 年后<sup>[1](#fn1)</sup>)推出的开发框架,支持 Windows、Linux 和 macOS 操作系统。
# 使用 ESP-IDF 进行开发
## 搭建 ESP-IDF 开发环境
关于不同芯片如何搭建 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)。
这个脚本会为所有的子模块设置绝对路径,接着可以通过 `git submodule update --init --recursive` 完成子模块的更新。
如果 ESP-IDF 是从 GitHub 上克隆得到,则不需要此步骤。
## 寻找项目
除了入门指南中提到的 [esp-idf 模板项目](https://github.com/espressif/esp-idf-template)ESP-IDF 的 [examples](examples) 目录下还带有很多其它示例项目。
一旦找到了需要的项目,便可以进入该目录,执行配置和构建操作。
如果要基于示例工程开始你自己的项目,请将示例工程复制到 ESP-IDF 目录之外。
# 快速参考
详细的使用方法请参考上面入门指南的链接,这里仅仅列举一些 ESP-IDF 项目开发中常用的命令:
## 设置构建环境
请参考入门指南中列出的详细步骤。
* 在主机中安装入门指南中提到的构建所依赖的工具。
* 运行安装脚本来设置构建环境。可为 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`,不用带任何参数,可查看所有支持的目标芯片列表。
* `idf.py menuconfig` 可打开一个基于文本的配置菜单,可以用来对项目进行配置。
## 编译项目
`idf.py build`
编译应用程序,引导程序,并根据配置生成分区表。
## 烧写项目
当构建结束,终端会打印出一条命令行,告知如何使用 esptool.py 工具烧写项目到芯片中。但你也可以运行下面这条命令来自动烧写:
`idf.py -p PORT flash`
将其中的 PORT 替换为系统中实际串口的名字(比如 Windows 下的 `COM3`Linux 下的 `/dev/ttyUSB0`,或者 macOS 下的 `/dev/cu.usbserial-X`。如果省略 `-p` 选项,`idf.py flash` 会尝试使用第一个可用的串口进行烧写。
这会烧写整个项目(包括应用程序,引导程序和分区表)到芯片中,此外还可以使用 `idf.py menuconfig` 来调整串口烧写相关的配置。
不必先运行 `idf.py build` 再运行 `idf.py flash``idf.py flash` 会根据需要自动重新构建项目。
## 观察串口输入
`idf.py monitor` 会调用 [idf_monitor 工具](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/idf-monitor.html)来显示乐鑫芯片的串口输出。`idf_monitor` 还包含一系列的功能来解析程序崩溃后的输出结果并与设备进行交互。更多详细内容,请参阅[文档](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/idf-monitor.html).
输入 `Ctrl-]` 可退出监视器。
想要一次性执行构建、烧写和监视,可以运行如下命令:
`idf.py flash monitor`
## 仅编译并烧写应用程序
在第一次烧写过后,你可能只想构建并烧写你的应用程序,不包括引导程序和分区表:
* `idf.py app` - 仅构建应用程序。
* `idf.py app-flash` - 仅烧写应用程序。
`idf.py app-flash` 会自动判断是否有源文件发生了改变然后重新构建应用程序。
(在正常的开发中,即使引导程序和分区表没有发生变化,每次都重新烧写它们并不会带来什么危害。)
## 擦除 Flash
`idf.py flash` 并不会擦除 flash 上所有的内容,但是有时候我们需要设备恢复到完全擦除的状态,尤其是分区表发生了变化或者 OTA 应用升级时。要擦除整块 flash 请运行 `idf.py erase_flash`
这条命令还可以和其余命令整合在一起,`idf.py -p PORT erase_flash flash` 会擦除一切然后重新烧写新的应用程序、引导程序和分区表。
# 其它参考资源
* 最新版的文档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

@@ -3,6 +3,8 @@ The latest support policy for ESP-IDF can be found at [https://github.com/espres
Support Period Policy
=====================
* [中文版](./SUPPORT_POLICY_CN.md)
Each ESP-IDF major and minor release (V4.0, V4.1, etc) is supported for
18 months after the initial stable release date.

43
SUPPORT_POLICY_CN.md Normal file
View File

@@ -0,0 +1,43 @@
有关 ESP-IDF 的最新支持政策,详见 [支持期限政策](./SUPPORT_POLICY_CN.md)。
支持期限政策
=================
* [English Version](./SUPPORT_POLICY.md)
ESP-IDF 的每个主要版本和次要版本(如 V4.0、V4.1 等)自其首次稳定版本发布之日起将维护 18 个月。
维护意味着 ESP-IDF 团队将会对 GitHub 上的发布分支继续进行 bug 修复、安全修补等,并根据需求定期发布新的 bugfix 版本。
在某一版本支持期限结束,停止更新维护 (EOL) 前,建议用户升级到较新的 ESP-IDF 版本。根据《支持期限政策》,我们将停止对 EOL 版本进行 bug 修复。
《支持期限政策》不适用于预发布版本(包括 beta、preview、`-rc``-dev` 版本等)。有时,在发布的版本中存在被标记为 "Preview" 的特定功能,则该功能也不在支持期限内。
有关 [ ESP-IDF 不同版本](https://docs.espressif.com/projects/esp-idf/zh_CN/latest/versions.html)主要版本、次要版本、bugfix 版本等信息可参阅《ESP-IDF 编程指南》。
长期支持版本
------------
有些发布版本(从 ESP-IDF V3.3 开始)属于长期支持 (LTS) 版本。LTS 版本将自其首次稳定版本发布之日起维护 30 个月2.5 年)。
我们将至少每 18 个月发布一个新的 LTS 版本。这意味着将至少有 12 个月的期限可更新至下一个 LTS 版本。
示例
-----
ESP-IDF V3.3 于 2019 年 9 月发布,属于 LTS 版本,将维护 30 个月至 2022 年 2 月停止。
- V3.3 的首个发布版本为 2019 年 9 月发布的 `v3.3`
- ESP-IDF 团队将持续进行 bug 修复、安全修补等更新,并 backport 至分支 `release/v3.3`
- 定期从 release 分支创建稳定的 bugfix 版本,比如,`v3.3.1``v3.3.2` 等,并建议用户保持使用最新的 bugfix 版本。
- V3.3 的 bugfix 版本发布将持续至 2022 年 2 月,届时所有 V3.3.x 将停止更新维护。
现有版本
--------
ESP-IDF V3.3 及所有后续更新版本都将遵守该《支持期限政策》。每一版本发布时将同时公布其支持期限。
对于该政策公布之日前发布的版本,应适用下述支持期限:
- ESP-IDF V3.1.x 和 V3.2.x 将维护至 2020 年 10 月。
- ESP-IDF V3.0.9(计划 2019 年 10 月发布)将是 V3.0 的最后一个 bugfix 版本。ESP-IDF V3.0.x 自 2019 年 10 月起停止更新维护 (EOL)。
- ESP-IDF 中 V3.0 之前的版本均已停止更新维护 (EOL)。

View File

@@ -1,4 +1,4 @@
set(srcs
set(srcs
"app_trace.c"
"app_trace_util.c"
"host_file_io.c"
@@ -12,7 +12,7 @@ if(CONFIG_SYSVIEW_ENABLE)
sys_view/SEGGER
sys_view/Sample/OS)
list(APPEND srcs
list(APPEND srcs
"sys_view/SEGGER/SEGGER_SYSVIEW.c"
"sys_view/Sample/Config/SEGGER_SYSVIEW_Config_FreeRTOS.c"
"sys_view/Sample/OS/SEGGER_SYSVIEW_FreeRTOS.c"
@@ -23,15 +23,18 @@ endif()
if(CONFIG_HEAP_TRACING_TOHOST)
list(APPEND srcs "heap_trace_tohost.c")
set_source_files_properties(heap_trace_tohost.c
PROPERTIES COMPILE_FLAGS
-Wno-frame-address)
endif()
idf_component_register(SRCS "${srcs}"
INCLUDE_DIRS "${include_dirs}"
PRIV_REQUIRES soc
PRIV_REQUIRES soc esp_ipc
LDFRAGMENTS linker.lf)
if(CONFIG_ESP32_GCOV_ENABLE)
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")

View File

@@ -1,54 +1,56 @@
menu "Application Level Tracing"
choice ESP32_APPTRACE_DESTINATION
choice APPTRACE_DESTINATION
prompt "Data Destination"
default ESP32_APPTRACE_DEST_NONE
default APPTRACE_DEST_NONE
help
Select destination for application trace: trace memory or none (to disable).
config ESP32_APPTRACE_DEST_TRAX
config APPTRACE_DEST_TRAX
bool "Trace memory"
select ESP32_APPTRACE_ENABLE
config ESP32_APPTRACE_DEST_NONE
select APPTRACE_ENABLE
config APPTRACE_DEST_NONE
bool "None"
endchoice
config ESP32_APPTRACE_ENABLE
config APPTRACE_ENABLE
bool
depends on !ESP32_TRAX
depends on !ESP32_TRAX && !ESP32S2_TRAX
select ESP32_MEMMAP_TRACEMEM
select ESP32S2_MEMMAP_TRACEMEM
select ESP32_MEMMAP_TRACEMEM_TWOBANKS
select ESP32S2_MEMMAP_TRACEMEM_TWOBANKS
default n
help
Enables/disable application tracing module.
config ESP32_APPTRACE_LOCK_ENABLE
config APPTRACE_LOCK_ENABLE
bool
default !SYSVIEW_ENABLE
help
Enables/disable application tracing module internal sync lock.
config ESP32_APPTRACE_ONPANIC_HOST_FLUSH_TMO
config APPTRACE_ONPANIC_HOST_FLUSH_TMO
int "Timeout for flushing last trace data to host on panic"
depends on ESP32_APPTRACE_ENABLE
depends on APPTRACE_ENABLE
range -1 5000
default -1
help
Timeout for flushing last trace data to host in case of panic. In ms.
Use -1 to disable timeout and wait forever.
config ESP32_APPTRACE_POSTMORTEM_FLUSH_THRESH
config APPTRACE_POSTMORTEM_FLUSH_THRESH
int "Threshold for flushing last trace data to host on panic"
depends on ESP32_APPTRACE_DEST_TRAX
depends on APPTRACE_DEST_TRAX
range 0 16384
default 0
help
Threshold for flushing last trace data to host on panic in post-mortem mode.
This is minimal amount of data needed to perform flush. In bytes.
config ESP32_APPTRACE_PENDING_DATA_SIZE_MAX
config APPTRACE_PENDING_DATA_SIZE_MAX
int "Size of the pending data buffer"
depends on ESP32_APPTRACE_DEST_TRAX
depends on APPTRACE_DEST_TRAX
default 0
help
Size of the buffer for events in bytes. It is useful for buffering events from
@@ -56,10 +58,10 @@ menu "Application Level Tracing"
events will be discarded when main HW buffer is full.
menu "FreeRTOS SystemView Tracing"
depends on ESP32_APPTRACE_ENABLE
depends on APPTRACE_ENABLE
config SYSVIEW_ENABLE
bool "SystemView Tracing Enable"
depends on ESP32_APPTRACE_ENABLE
depends on APPTRACE_ENABLE
default n
help
Enables supporrt for SEGGER SystemView tracing functionality.
@@ -208,10 +210,11 @@ menu "Application Level Tracing"
endmenu
config ESP32_GCOV_ENABLE
config APPTRACE_GCOV_ENABLE
bool "GCOV to Host Enable"
depends on ESP32_DEBUG_STUBS_ENABLE && ESP32_APPTRACE_ENABLE && !SYSVIEW_ENABLE
default y
depends on APPTRACE_ENABLE && !SYSVIEW_ENABLE
select ESP_DEBUG_STUBS_ENABLE
default n
help
Enables support for GCOV data transfer to host.

View File

@@ -76,11 +76,11 @@
// It can happen that system panic occurs when there are very small amount of data which are not exposed to host yet (e.g. crash just after the
// TRAX block switch). In this case the previous 16KB of collected data will be dropped and host will see the latest, but very small piece of trace.
// It can be insufficient to diagnose the problem. To avoid such situations there is menuconfig option
// CONFIG_ESP32_APPTRACE_POSTMORTEM_FLUSH_THRESH
// CONFIG_APPTRACE_POSTMORTEM_FLUSH_THRESH
// which controls the threshold for flushing data in case of panic.
// - Streaming mode. Tracing module enters this mode when host connects to target and sets respective bits in control registers (per core).
// In this mode before switching the block tracing module waits for the host to read all the data from the previously exposed block.
// On panic tracing module also waits (timeout is configured via menuconfig via CONFIG_ESP32_APPTRACE_ONPANIC_HOST_FLUSH_TMO) for the host to read all data.
// On panic tracing module also waits (timeout is configured via menuconfig via CONFIG_APPTRACE_ONPANIC_HOST_FLUSH_TMO) for the host to read all data.
// 4. Communication Protocol
// =========================
@@ -114,7 +114,7 @@
// has not completed reading of the previous one yet. So in this case time critical tracing calls (which can not be delayed for too long time due to
// the lack of free memory in TRAX block) can be dropped. To avoid such scenarios tracing module implements data buffering. Buffered data will be sent
// to the host later when TRAX block switch occurs. The maximum size of the buffered data is controlled by menuconfig option
// CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX.
// CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX.
// 4.4 Target Connection/Disconnection
// -----------------------------------
@@ -158,13 +158,16 @@
#include <sys/param.h>
#include "soc/soc.h"
#include "soc/dport_reg.h"
#if CONFIG_IDF_TARGET_ESP32S2
#include "soc/sensitive_reg.h"
#endif
#include "eri.h"
#include "trax.h"
#include "soc/timer_periph.h"
#include "freertos/FreeRTOS.h"
#include "esp_app_trace.h"
#if CONFIG_ESP32_APPTRACE_ENABLE
#if CONFIG_APPTRACE_ENABLE
#define ESP_APPTRACE_MAX_VPRINTF_ARGS 256
#define ESP_APPTRACE_HOST_BUF_SIZE 256
@@ -202,10 +205,16 @@ const static char *TAG = "esp_apptrace";
#define ESP_APPTRACE_LOGO( format, ... ) ESP_APPTRACE_LOG_LEV(E, ESP_LOG_NONE, format, ##__VA_ARGS__)
// 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 |
@@ -230,10 +239,17 @@ const static char *TAG = "esp_apptrace";
#endif
#define ESP_APPTRACE_USR_BLOCK_RAW_SZ(_s_) ((_s_) + sizeof(esp_tracedata_hdr_t))
#if CONFIG_IDF_TARGET_ESP32
static volatile uint8_t *s_trax_blocks[] = {
(volatile uint8_t *) 0x3FFFC000,
(volatile uint8_t *) 0x3FFF8000
};
#elif CONFIG_IDF_TARGET_ESP32S2
static volatile uint8_t *s_trax_blocks[] = {
(volatile uint8_t *)TRACEMEM_BLK_NUM2ADDR(TRACEMEM_MUX_BLK0_NUM),
(volatile uint8_t *)TRACEMEM_BLK_NUM2ADDR(TRACEMEM_MUX_BLK1_NUM)
};
#endif
#define ESP_APPTRACE_TRAX_BLOCKS_NUM (sizeof(s_trax_blocks)/sizeof(s_trax_blocks[0]))
@@ -293,17 +309,17 @@ typedef struct {
typedef struct {
volatile esp_apptrace_trax_state_t state; // state
esp_apptrace_mem_block_t blocks[ESP_APPTRACE_TRAX_BLOCKS_NUM]; // memory blocks
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > 0
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > 0
// ring buffer control struct for pending user blocks
esp_apptrace_rb_t rb_pend;
// storage for pending user blocks
uint8_t pending_data[CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX + 1];
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
uint8_t pending_data[CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX + 1];
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
// ring buffer control struct for pending user data chunks sizes,
// every chunk contains whole number of user blocks and fit into TRAX memory block
esp_apptrace_rb_t rb_pend_chunk_sz;
// storage for above ring buffer data
uint16_t pending_chunk_sz[CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX/ESP_APPTRACE_TRAX_BLOCK_SIZE + 2];
uint16_t pending_chunk_sz[CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX/ESP_APPTRACE_TRAX_BLOCK_SIZE + 2];
// current (accumulated) pending user data chunk size
uint16_t cur_pending_chunk_sz;
#endif
@@ -360,7 +376,7 @@ static esp_apptrace_hw_t s_trace_hw[ESP_APPTRACE_HW_MAX] = {
}
};
static inline int esp_apptrace_log_lock()
static inline int esp_apptrace_log_lock(void)
{
#if ESP_APPTRACE_PRINT_LOCK
esp_apptrace_tmo_t tmo;
@@ -372,29 +388,29 @@ static inline int esp_apptrace_log_lock()
#endif
}
static inline void esp_apptrace_log_unlock()
static inline void esp_apptrace_log_unlock(void)
{
#if ESP_APPTRACE_PRINT_LOCK
esp_apptrace_lock_give(&s_log_lock);
#endif
}
static inline esp_err_t esp_apptrace_lock_initialize()
static inline esp_err_t esp_apptrace_lock_initialize(esp_apptrace_lock_t *lock)
{
#if CONFIG_ESP32_APPTRACE_LOCK_ENABLE
esp_apptrace_lock_init(&s_trace_buf.lock);
#if CONFIG_APPTRACE_LOCK_ENABLE
esp_apptrace_lock_init(lock);
#endif
return ESP_OK;
}
static inline esp_err_t esp_apptrace_lock_cleanup()
static inline esp_err_t esp_apptrace_lock_cleanup(void)
{
return ESP_OK;
}
esp_err_t esp_apptrace_lock(esp_apptrace_tmo_t *tmo)
{
#if CONFIG_ESP32_APPTRACE_LOCK_ENABLE
#if CONFIG_APPTRACE_LOCK_ENABLE
esp_err_t ret = esp_apptrace_lock_take(&s_trace_buf.lock, tmo);
if (ret != ESP_OK) {
return ESP_FAIL;
@@ -403,17 +419,28 @@ esp_err_t esp_apptrace_lock(esp_apptrace_tmo_t *tmo)
return ESP_OK;
}
esp_err_t esp_apptrace_unlock()
esp_err_t esp_apptrace_unlock(void)
{
esp_err_t ret = ESP_OK;
#if CONFIG_ESP32_APPTRACE_LOCK_ENABLE
#if CONFIG_APPTRACE_LOCK_ENABLE
ret = esp_apptrace_lock_give(&s_trace_buf.lock);
#endif
return ret;
}
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
static void esp_apptrace_trax_init()
#if CONFIG_APPTRACE_DEST_TRAX
static inline void esp_apptrace_trax_select_memory_block(int block_num)
{
// select memory block to be exposed to the TRAX module (accessed by host)
#if CONFIG_IDF_TARGET_ESP32
DPORT_WRITE_PERI_REG(DPORT_TRACEMEM_MUX_MODE_REG, block_num ? TRACEMEM_MUX_BLK0_ONLY : TRACEMEM_MUX_BLK1_ONLY);
#elif CONFIG_IDF_TARGET_ESP32S2
DPORT_WRITE_PERI_REG(DPORT_PMS_OCCUPY_3_REG, block_num ? BIT(TRACEMEM_MUX_BLK0_NUM-4) : BIT(TRACEMEM_MUX_BLK1_NUM-4));
#endif
}
static void esp_apptrace_trax_init(void)
{
// Stop trace, if any (on the current CPU)
eri_write(ERI_TRAX_TRAXCTRL, TRAXCTRL_TRSTP);
@@ -426,7 +453,7 @@ static void esp_apptrace_trax_init()
ESP_APPTRACE_LOGI("Initialized TRAX on CPU%d", xPortGetCoreID());
}
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
// keep the size of buffered data for copying to TRAX mem block.
// Only whole user blocks should be copied from buffer to TRAX block upon the switch
static void esp_apptrace_trax_pend_chunk_sz_update(uint16_t size)
@@ -449,7 +476,7 @@ static void esp_apptrace_trax_pend_chunk_sz_update(uint16_t size)
}
}
static uint16_t esp_apptrace_trax_pend_chunk_sz_get()
static uint16_t esp_apptrace_trax_pend_chunk_sz_get(void)
{
uint16_t ch_sz;
ESP_APPTRACE_LOGD("Get chunk enter %d w-r-s %d-%d-%d", s_trace_buf.trax.cur_pending_chunk_sz,
@@ -467,7 +494,7 @@ static uint16_t esp_apptrace_trax_pend_chunk_sz_get()
#endif
// assumed to be protected by caller from multi-core/thread access
static esp_err_t esp_apptrace_trax_block_switch()
static esp_err_t esp_apptrace_trax_block_switch(void)
{
int prev_block_num = s_trace_buf.trax.state.in_block % 2;
int new_block_num = prev_block_num ? (0) : (1);
@@ -499,7 +526,7 @@ static esp_err_t esp_apptrace_trax_block_switch()
// switch to new block
s_trace_buf.trax.state.in_block++;
DPORT_WRITE_PERI_REG(DPORT_TRACEMEM_MUX_MODE_REG, new_block_num ? TRACEMEM_MUX_BLK0_ONLY : TRACEMEM_MUX_BLK1_ONLY);
esp_apptrace_trax_select_memory_block(new_block_num);
// handle data from host
esp_hostdata_hdr_t *hdr = (esp_hostdata_hdr_t *)s_trace_buf.trax.blocks[new_block_num].start;
if (ctrl_reg & ESP_APPTRACE_TRAX_HOST_DATA && hdr->block_sz > 0) {
@@ -517,9 +544,9 @@ static esp_err_t esp_apptrace_trax_block_switch()
}
hdr->block_sz = 0;
}
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > 0
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > 0
// copy pending data to TRAX block if any
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
uint16_t max_chunk_sz = esp_apptrace_trax_pend_chunk_sz_get();
#else
uint16_t max_chunk_sz = s_trace_buf.trax.blocks[new_block_num].sz;
@@ -527,7 +554,7 @@ static esp_err_t esp_apptrace_trax_block_switch()
while (s_trace_buf.trax.state.markers[new_block_num] < max_chunk_sz) {
uint32_t read_sz = esp_apptrace_rb_read_size_get(&s_trace_buf.trax.rb_pend);
if (read_sz == 0) {
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
/* theres is a bug: esp_apptrace_trax_pend_chunk_sz_get returned wrong value,
it must be greater or equal to one returned by esp_apptrace_rb_read_size_get */
ESP_APPTRACE_LOGE("No pended bytes, must be > 0 and <= %d!", max_chunk_sz);
@@ -670,7 +697,7 @@ static inline uint8_t *esp_apptrace_trax_wait4buf(uint16_t size, esp_apptrace_tm
return NULL;
}
// check if we still have pending data
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > 0
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > 0
if (esp_apptrace_rb_read_size_get(&s_trace_buf.trax.rb_pend) > 0) {
// if after TRAX block switch still have pending data (not all pending data have been pumped to TRAX block)
// alloc new pending buffer
@@ -684,7 +711,7 @@ static inline uint8_t *esp_apptrace_trax_wait4buf(uint16_t size, esp_apptrace_tm
{
// update block pointers
if (ESP_APPTRACE_TRAX_INBLOCK_MARKER() + size > ESP_APPTRACE_TRAX_INBLOCK_GET()->sz) {
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > 0
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > 0
*pended = 1;
ptr = esp_apptrace_rb_produce(&s_trace_buf.trax.rb_pend, size);
if (ptr == NULL) {
@@ -714,7 +741,7 @@ static uint8_t *esp_apptrace_trax_get_buffer(uint32_t size, esp_apptrace_tmo_t *
return NULL;
}
// check for data in the pending buffer
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > 0
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > 0
if (esp_apptrace_rb_read_size_get(&s_trace_buf.trax.rb_pend) > 0) {
// if we have buffered data try to switch TRAX block
esp_apptrace_trax_block_switch();
@@ -729,7 +756,7 @@ static uint8_t *esp_apptrace_trax_get_buffer(uint32_t size, esp_apptrace_tmo_t *
buf_ptr = esp_apptrace_trax_wait4buf(ESP_APPTRACE_USR_BLOCK_RAW_SZ(size), tmo, &pended_buf);
if (buf_ptr) {
if (pended_buf) {
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
esp_apptrace_trax_pend_chunk_sz_update(ESP_APPTRACE_USR_BLOCK_RAW_SZ(size));
#endif
} else {
@@ -739,18 +766,18 @@ static uint8_t *esp_apptrace_trax_get_buffer(uint32_t size, esp_apptrace_tmo_t *
}
}
} else {
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
esp_apptrace_trax_pend_chunk_sz_update(ESP_APPTRACE_USR_BLOCK_RAW_SZ(size));
#endif
}
} else
#endif
if (ESP_APPTRACE_TRAX_INBLOCK_MARKER() + ESP_APPTRACE_USR_BLOCK_RAW_SZ(size) > ESP_APPTRACE_TRAX_INBLOCK_GET()->sz) {
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > 0
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > 0
ESP_APPTRACE_LOGD("TRAX full. Get %d bytes from PEND buffer", size);
buf_ptr = esp_apptrace_rb_produce(&s_trace_buf.trax.rb_pend, ESP_APPTRACE_USR_BLOCK_RAW_SZ(size));
if (buf_ptr) {
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
esp_apptrace_trax_pend_chunk_sz_update(ESP_APPTRACE_USR_BLOCK_RAW_SZ(size));
#endif
}
@@ -761,7 +788,7 @@ static uint8_t *esp_apptrace_trax_get_buffer(uint32_t size, esp_apptrace_tmo_t *
buf_ptr = esp_apptrace_trax_wait4buf(ESP_APPTRACE_USR_BLOCK_RAW_SZ(size), tmo, &pended_buf);
if (buf_ptr) {
if (pended_buf) {
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
esp_apptrace_trax_pend_chunk_sz_update(ESP_APPTRACE_USR_BLOCK_RAW_SZ(size));
#endif
} else {
@@ -845,7 +872,7 @@ static esp_err_t esp_apptrace_trax_status_reg_get(uint32_t *val)
return ESP_OK;
}
static esp_err_t esp_apptrace_trax_dest_init()
static esp_err_t esp_apptrace_trax_dest_init(void)
{
for (int i = 0; i < ESP_APPTRACE_TRAX_BLOCKS_NUM; i++) {
s_trace_buf.trax.blocks[i].start = (uint8_t *)s_trax_blocks[i];
@@ -853,28 +880,29 @@ static esp_err_t esp_apptrace_trax_dest_init()
s_trace_buf.trax.state.markers[i] = 0;
}
s_trace_buf.trax.state.in_block = ESP_APPTRACE_TRAX_INBLOCK_START;
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > 0
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > 0
esp_apptrace_rb_init(&s_trace_buf.trax.rb_pend, s_trace_buf.trax.pending_data,
sizeof(s_trace_buf.trax.pending_data));
#if CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
#if CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX > ESP_APPTRACE_TRAX_BLOCK_SIZE
s_trace_buf.trax.cur_pending_chunk_sz = 0;
esp_apptrace_rb_init(&s_trace_buf.trax.rb_pend_chunk_sz, (uint8_t *)s_trace_buf.trax.pending_chunk_sz,
sizeof(s_trace_buf.trax.pending_chunk_sz));
#endif
#endif
#if CONFIG_IDF_TARGET_ESP32
DPORT_WRITE_PERI_REG(DPORT_PRO_TRACEMEM_ENA_REG, DPORT_PRO_TRACEMEM_ENA_M);
#if CONFIG_FREERTOS_UNICORE == 0
DPORT_WRITE_PERI_REG(DPORT_APP_TRACEMEM_ENA_REG, DPORT_APP_TRACEMEM_ENA_M);
#endif
// Expose block 1 to host, block 0 is current trace input buffer
DPORT_WRITE_PERI_REG(DPORT_TRACEMEM_MUX_MODE_REG, TRACEMEM_MUX_BLK1_ONLY);
#endif
esp_apptrace_trax_select_memory_block(0);
return ESP_OK;
}
#endif
esp_err_t esp_apptrace_init()
esp_err_t esp_apptrace_init(void)
{
int res;
@@ -887,7 +915,7 @@ esp_err_t esp_apptrace_init()
ESP_APPTRACE_LOGE("Failed to init log lock (%d)!", res);
return res;
}
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
res = esp_apptrace_trax_dest_init();
if (res != ESP_OK) {
ESP_APPTRACE_LOGE("Failed to init TRAX dest data (%d)!", res);
@@ -897,7 +925,7 @@ esp_err_t esp_apptrace_init()
#endif
}
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
// init TRAX on this CPU
esp_apptrace_trax_init();
#endif
@@ -919,7 +947,7 @@ esp_err_t esp_apptrace_read(esp_apptrace_dest_t dest, void *buf, uint32_t *size,
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");
@@ -956,7 +984,7 @@ uint8_t *esp_apptrace_down_buffer_get(esp_apptrace_dest_t dest, uint32_t *size,
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");
@@ -980,7 +1008,7 @@ esp_err_t esp_apptrace_down_buffer_put(esp_apptrace_dest_t dest, uint8_t *ptr, u
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");
@@ -1005,7 +1033,7 @@ esp_err_t esp_apptrace_write(esp_apptrace_dest_t dest, const void *data, uint32_
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");
@@ -1041,7 +1069,7 @@ int esp_apptrace_vprintf_to(esp_apptrace_dest_t dest, uint32_t user_tmo, const c
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");
@@ -1105,7 +1133,7 @@ uint8_t *esp_apptrace_buffer_get(esp_apptrace_dest_t dest, uint32_t size, uint32
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");
@@ -1129,7 +1157,7 @@ esp_err_t esp_apptrace_buffer_put(esp_apptrace_dest_t dest, uint8_t *ptr, uint32
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");
@@ -1153,7 +1181,7 @@ esp_err_t esp_apptrace_flush_nolock(esp_apptrace_dest_t dest, uint32_t min_sz, u
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");
@@ -1197,7 +1225,7 @@ bool esp_apptrace_host_is_connected(esp_apptrace_dest_t dest)
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");
@@ -1215,7 +1243,7 @@ esp_err_t esp_apptrace_status_reg_set(esp_apptrace_dest_t dest, uint32_t val)
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");
@@ -1233,7 +1261,7 @@ esp_err_t esp_apptrace_status_reg_get(esp_apptrace_dest_t dest, uint32_t *val)
esp_apptrace_hw_t *hw = NULL;
if (dest == ESP_APPTRACE_DEST_TRAX) {
#if CONFIG_ESP32_APPTRACE_DEST_TRAX
#if CONFIG_APPTRACE_DEST_TRAX
hw = ESP_APPTRACE_HW(ESP_APPTRACE_HW_TRAX);
#else
ESP_APPTRACE_LOGE("Application tracing via TRAX is disabled in menuconfig!");

View File

@@ -15,7 +15,12 @@
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_app_trace_util.h"
#include "sdkconfig.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/clk.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/clk.h"
#endif
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////// TIMEOUT /////////////////////////////////////

View File

@@ -22,7 +22,7 @@ COMPONENT_SRCDIRS += \
sys_view/esp32 \
sys_view/ext
else
ifdef CONFIG_ESP32_GCOV_ENABLE
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

View File

@@ -14,148 +14,146 @@
// This module implements runtime file I/O API for GCOV.
#include <string.h>
#include "esp_task_wdt.h"
#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_ipc.h"
#include "hal/wdt_hal.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/libc_stubs.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/libc_stubs.h"
#endif
#if CONFIG_ESP32_GCOV_ENABLE
#if CONFIG_APPTRACE_GCOV_ENABLE
#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;
static volatile bool s_gcov_task_running = false;
#if GCC_NOT_5_2_0
void __gcov_dump(void);
void __gcov_reset(void);
#else
/* The next code for old GCC */
extern void __gcov_dump(void);
extern void __gcov_reset(void);
static void (*s_gcov_exit)(void);
/* Root of a program/shared-object state */
struct gcov_root
void gcov_dump_task(void *pvParameter)
{
void *list;
unsigned dumped : 1; /* counts have been dumped. */
unsigned run_counted : 1; /* run has been accounted for. */
struct gcov_root *next;
struct gcov_root *prev;
};
int dump_result = 0;
bool *running = (bool *)pvParameter;
/* Per-dynamic-object gcov state. */
extern struct gcov_root __gcov_root;
static void esp_gcov_reset_status(void)
{
__gcov_root.dumped = 0;
__gcov_root.run_counted = 0;
}
#endif
static int esp_dbg_stub_gcov_dump_do(void)
{
int ret = ESP_OK;
ESP_EARLY_LOGV(TAG, "%s stack use in %d", __FUNCTION__, uxTaskGetStackHighWaterMark(NULL));
ESP_EARLY_LOGV(TAG, "Alloc apptrace down buf %d bytes", ESP_GCOV_DOWN_BUF_SIZE);
void *down_buf = malloc(ESP_GCOV_DOWN_BUF_SIZE);
if (down_buf == NULL) {
ESP_EARLY_LOGE(TAG, "Could not allocate memory for the buffer");
return ESP_ERR_NO_MEM;
dump_result = ESP_ERR_NO_MEM;
goto gcov_exit;
}
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...");
#if GCC_NOT_5_2_0
__gcov_dump();
// reset dump status to allow incremental data accumulation
__gcov_reset();
#else
ESP_EARLY_LOGV(TAG, "Check for dump handler %p", s_gcov_exit);
if (s_gcov_exit) {
s_gcov_exit();
// reset dump status to allow incremental data accumulation
esp_gcov_reset_status();
}
#endif
ESP_EARLY_LOGV(TAG, "Free apptrace down buf");
free(down_buf);
stderr = old_stderr;
stdout = old_stdout;
ESP_EARLY_LOGV(TAG, "Finish file transfer session");
ret = esp_apptrace_fstop(ESP_APPTRACE_DEST_TRAX);
if (ret != ESP_OK) {
ESP_EARLY_LOGE(TAG, "Failed to send files transfer stop cmd (%d)!", ret);
dump_result = esp_apptrace_fstop(ESP_APPTRACE_DEST_TRAX);
if (dump_result != ESP_OK) {
ESP_EARLY_LOGE(TAG, "Failed to send files transfer stop cmd (%d)!", dump_result);
}
gcov_exit:
ESP_EARLY_LOGV(TAG, "dump_result %d", dump_result);
if (running) {
*running = false;
}
ESP_EARLY_LOGV(TAG, "%s stack use out %d", __FUNCTION__, uxTaskGetStackHighWaterMark(NULL));
vTaskDelete(NULL);
}
void gcov_create_task(void *arg)
{
ESP_EARLY_LOGV(TAG, "%s", __FUNCTION__);
xTaskCreatePinnedToCore(&gcov_dump_task, "gcov_dump_task", 2048, (void *)&s_gcov_task_running, configMAX_PRIORITIES - 1, NULL, 0);
}
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_start_gcov_from_isr(xPortGetCoreID(), &gcov_create_task, NULL) == ESP_OK) {
s_create_gcov_task = false;
}
}
return ret;
}
/**
* @brief Triggers gcov info dump.
* @brief Triggers gcov info dump task
* This function is to be called by OpenOCD, not by normal user code.
* TODO: what about interrupted flash access (when cache disabled)???
* TODO: what about interrupted flash access (when cache disabled)
*
* @return ESP_OK on success, otherwise see esp_err_t
*/
static int esp_dbg_stub_gcov_entry(void)
{
#if GCC_NOT_5_2_0
return esp_dbg_stub_gcov_dump_do();
#else
int ret = ESP_OK;
// disable IRQs on this CPU, other CPU is halted by OpenOCD
unsigned irq_state = portENTER_CRITICAL_NESTED();
ret = esp_dbg_stub_gcov_dump_do();
portEXIT_CRITICAL_NESTED(irq_state);
return ret;
#endif
}
void esp_gcov_dump()
{
// disable IRQs on this CPU, other CPU is halted by OpenOCD
unsigned irq_state = portENTER_CRITICAL_NESTED();
#if !CONFIG_FREERTOS_UNICORE
int other_core = xPortGetCoreID() ? 0 : 1;
esp_cpu_stall(other_core);
#endif
while (!esp_apptrace_host_is_connected(ESP_APPTRACE_DEST_TRAX)) {
// to avoid complains that task watchdog got triggered for other tasks
TIMERG0.wdt_wprotect=TIMG_WDT_WKEY_VALUE;
TIMERG0.wdt_feed=1;
TIMERG0.wdt_wprotect=0;
// to avoid reboot on INT_WDT
TIMERG1.wdt_wprotect=TIMG_WDT_WKEY_VALUE;
TIMERG1.wdt_feed=1;
TIMERG1.wdt_wprotect=0;
}
esp_dbg_stub_gcov_dump_do();
#if !CONFIG_FREERTOS_UNICORE
esp_cpu_unstall(other_core);
#endif
portEXIT_CRITICAL_NESTED(irq_state);
/* we are in isr context here */
s_create_gcov_task = true;
return ESP_OK;
}
int gcov_rtio_atexit(void (*function)(void) __attribute__ ((unused)))
{
#if GCC_NOT_5_2_0
uint32_t capabilities = 0;
ESP_EARLY_LOGV(TAG, "%s", __FUNCTION__);
#else
ESP_EARLY_LOGV(TAG, "%s %p", __FUNCTION__, function);
s_gcov_exit = function;
#endif
esp_dbg_stub_entry_set(ESP_DBG_STUB_ENTRY_GCOV, (uint32_t)&esp_dbg_stub_gcov_entry);
return 0;
if (esp_dbg_stub_entry_get(ESP_DBG_STUB_ENTRY_CAPABILITIES, &capabilities) == ESP_OK) {
esp_dbg_stub_entry_set(ESP_DBG_STUB_ENTRY_CAPABILITIES, capabilities | ESP_DBG_STUB_CAP_GCOV_TASK);
}
esp_register_freertos_tick_hook(gcov_create_task_tick_hook);
return ESP_OK;
}
void esp_gcov_dump(void)
{
ESP_EARLY_LOGV(TAG, "%s", __FUNCTION__);
while (!esp_apptrace_host_is_connected(ESP_APPTRACE_DEST_TRAX)) {
vTaskDelay(pdMS_TO_TICKS(10));
}
/* We are not in isr context here. Waiting for the completion is safe */
s_gcov_task_running = true;
s_create_gcov_task = true;
while (s_gcov_task_running) {
vTaskDelay(pdMS_TO_TICKS(10));
}
}
void *gcov_rtio_fopen(const char *path, const char *mode)
{
ESP_EARLY_LOGV(TAG, "%s '%s' '%s'", __FUNCTION__, path, mode);
return esp_apptrace_fopen(ESP_APPTRACE_DEST_TRAX, path, mode);
void *f = esp_apptrace_fopen(ESP_APPTRACE_DEST_TRAX, path, mode);
ESP_EARLY_LOGV(TAG, "%s ret %p", __FUNCTION__, f);
return f;
}
int gcov_rtio_fclose(void *stream)
@@ -166,7 +164,7 @@ int gcov_rtio_fclose(void *stream)
size_t gcov_rtio_fread(void *ptr, size_t size, size_t nmemb, void *stream)
{
ESP_EARLY_LOGV(TAG, "%s read %u", __FUNCTION__, size*nmemb);
ESP_EARLY_LOGV(TAG, "%s read %u", __FUNCTION__, size * nmemb);
size_t sz = esp_apptrace_fread(ESP_APPTRACE_DEST_TRAX, ptr, size, nmemb, stream);
ESP_EARLY_LOGV(TAG, "%s actually read %u", __FUNCTION__, sz);
return sz;

View File

@@ -32,7 +32,7 @@
static bool s_tracing;
esp_err_t heap_trace_init_tohost()
esp_err_t heap_trace_init_tohost(void)
{
if (s_tracing) {
return ESP_ERR_INVALID_STATE;

View File

@@ -25,7 +25,7 @@
#include <string.h>
#include "esp_app_trace.h"
#if CONFIG_ESP32_APPTRACE_ENABLE
#if CONFIG_APPTRACE_ENABLE
#define LOG_LOCAL_LEVEL CONFIG_LOG_DEFAULT_LEVEL
#include "esp_log.h"

View File

@@ -18,6 +18,10 @@
#include "esp_err.h"
#include "esp_app_trace_util.h" // ESP_APPTRACE_TMO_INFINITE
#ifdef __cplusplus
extern "C" {
#endif
/**
* Application trace data destinations bits.
*/
@@ -33,7 +37,7 @@ typedef enum {
*
* @return ESP_OK on success, otherwise see esp_err_t
*/
esp_err_t esp_apptrace_init();
esp_err_t esp_apptrace_init(void);
/**
* @brief Configures down buffer.
@@ -262,4 +266,8 @@ int esp_apptrace_fstop(esp_apptrace_dest_t dest);
*/
void esp_gcov_dump(void);
#ifdef __cplusplus
}
#endif
#endif

View File

@@ -14,6 +14,10 @@
#ifndef ESP_APP_TRACE_UTIL_H_
#define ESP_APP_TRACE_UTIL_H_
#ifdef __cplusplus
extern "C" {
#endif
#include "freertos/FreeRTOS.h"
#include "esp_err.h"
@@ -164,4 +168,8 @@ uint32_t esp_apptrace_rb_read_size_get(esp_apptrace_rb_t *rb);
*/
uint32_t esp_apptrace_rb_write_size_get(esp_apptrace_rb_t *rb);
#ifdef __cplusplus
}
#endif
#endif //ESP_APP_TRACE_UTIL_H_

View File

@@ -14,6 +14,10 @@
#ifndef ESP_SYSVIEW_TRACE_H_
#define ESP_SYSVIEW_TRACE_H_
#ifdef __cplusplus
extern "C" {
#endif
#include <stdarg.h>
#include "esp_err.h"
#include "SEGGER_RTT.h" // SEGGER_RTT_ESP32_Flush
@@ -77,4 +81,8 @@ void esp_sysview_heap_trace_alloc(void *addr, uint32_t size, const void *callers
*/
void esp_sysview_heap_trace_free(void *addr, const void *callers);
#ifdef __cplusplus
}
#endif
#endif //ESP_SYSVIEW_TRACE_H_

View File

@@ -9,7 +9,7 @@ entries:
SEGGER_SYSVIEW_Config_FreeRTOS (noflash)
SEGGER_SYSVIEW_FreeRTOS (noflash)
[mapping:driver]
[mapping:app_trace_driver]
archive: libdriver.a
entries:
if SYSVIEW_TS_SOURCE_TIMER_00 = y || SYSVIEW_TS_SOURCE_TIMER_01 = y

View File

@@ -5,12 +5,24 @@ function(idf_create_coverage_report report_dir)
set(gcov_tool ${CONFIG_SDK_TOOLPREFIX}gcov)
idf_build_get_property(project_name PROJECT_NAME)
add_custom_target(lcov-report
add_custom_target(pre-cov-report
COMMENT "Generating coverage report in: ${report_dir}"
COMMAND ${CMAKE_COMMAND} -E echo "Using gcov: ${gcov_tool}"
COMMAND ${CMAKE_COMMAND} -E make_directory ${report_dir}/html
)
add_custom_target(lcov-report
COMMENT "WARNING: lcov-report is deprecated. Please use gcovr-report instead."
COMMAND lcov --gcov-tool ${gcov_tool} -c -d ${CMAKE_CURRENT_BINARY_DIR} -o ${report_dir}/${project_name}.info
COMMAND genhtml -o ${report_dir}/html ${report_dir}/${project_name}.info)
COMMAND genhtml -o ${report_dir}/html ${report_dir}/${project_name}.info
DEPENDS pre-cov-report
)
add_custom_target(gcovr-report
COMMAND gcovr -r ${project_dir} --gcov-executable ${gcov_tool} -s --html-details ${report_dir}/html/index.html
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
DEPENDS pre-cov-report
)
endfunction()
# idf_clean_coverage_report
@@ -20,4 +32,4 @@ function(idf_clean_coverage_report report_dir)
add_custom_target(cov-data-clean
COMMENT "Clean coverage report in: ${report_dir}"
COMMAND ${CMAKE_COMMAND} -E remove_directory ${report_dir})
endfunction()
endfunction()

View File

@@ -1,4 +1,12 @@
# sdkconfig replacement configurations for deprecated options formatted as
# CONFIG_DEPRECATED_OPTION CONFIG_NEW_OPTION
CONFIG_ESP32_APPTRACE_POSTMORTEM_FLUSH_TRAX_THRESH CONFIG_ESP32_APPTRACE_POSTMORTEM_FLUSH_THRESH
CONFIG_ESP32_APPTRACE_DESTINATION CONFIG_APPTRACE_DESTINATION
CONFIG_ESP32_APPTRACE_DEST_NONE CONFIG_APPTRACE_DEST_NONE
CONFIG_ESP32_APPTRACE_DEST_TRAX CONFIG_APPTRACE_DEST_TRAX
CONFIG_ESP32_APPTRACE_ENABLE CONFIG_APPTRACE_ENABLE
CONFIG_ESP32_APPTRACE_LOCK_ENABLE CONFIG_APPTRACE_LOCK_ENABLE
CONFIG_ESP32_APPTRACE_ONPANIC_HOST_FLUSH_TMO CONFIG_APPTRACE_ONPANIC_HOST_FLUSH_TMO
CONFIG_ESP32_APPTRACE_POSTMORTEM_FLUSH_TRAX_THRESH CONFIG_APPTRACE_POSTMORTEM_FLUSH_THRESH
CONFIG_ESP32_APPTRACE_PENDING_DATA_SIZE_MAX CONFIG_APPTRACE_PENDING_DATA_SIZE_MAX
CONFIG_ESP32_GCOV_ENABLE CONFIG_APPTRACE_GCOV_ENABLE

View File

@@ -285,12 +285,12 @@ Revision: $Rev: 5626 $
* RTT lock configuration fallback
*/
#ifndef SEGGER_RTT_LOCK
void SEGGER_SYSVIEW_X_RTT_Lock();
void SEGGER_SYSVIEW_X_RTT_Lock(void);
#define SEGGER_RTT_LOCK() SEGGER_SYSVIEW_X_RTT_Lock() // Lock RTT (nestable) (i.e. disable interrupts)
#endif
#ifndef SEGGER_RTT_UNLOCK
void SEGGER_SYSVIEW_X_RTT_Unlock();
void SEGGER_SYSVIEW_X_RTT_Unlock(void);
#define SEGGER_RTT_UNLOCK() SEGGER_SYSVIEW_X_RTT_Unlock() // Unlock RTT (nestable) (i.e. enable previous interrupt lock state)
#endif

View File

@@ -65,6 +65,8 @@ Revision: $Rev: 5927 $
#ifndef SEGGER_SYSVIEW_CONF_H
#define SEGGER_SYSVIEW_CONF_H
#include "soc/soc.h"
/*********************************************************************
*
* Defines, fixed
@@ -147,7 +149,7 @@ Revision: $Rev: 5927 $
* SystemView Id configuration
*/
//TODO: optimise it
#define SEGGER_SYSVIEW_ID_BASE 0x3F400000 // Default value for the lowest Id reported by the application. Can be overridden by the application via SEGGER_SYSVIEW_SetRAMBase(). (i.e. 0x20000000 when all Ids are an address in this RAM)
#define SEGGER_SYSVIEW_ID_BASE SOC_DROM_LOW // Default value for the lowest Id reported by the application. Can be overridden by the application via SEGGER_SYSVIEW_SetRAMBase(). (i.e. 0x20000000 when all Ids are an address in this RAM)
#define SEGGER_SYSVIEW_ID_SHIFT 0 // Number of bits to shift the Id to save bandwidth. (i.e. 2 when Ids are 4 byte aligned)
/*********************************************************************
@@ -166,7 +168,7 @@ Revision: $Rev: 5927 $
#define SEGGER_SYSVIEW_GET_INTERRUPT_ID() SEGGER_SYSVIEW_X_GetInterruptId() // Get the currently active interrupt Id from the user-provided function.
#endif
unsigned SEGGER_SYSVIEW_X_SysView_Lock();
unsigned SEGGER_SYSVIEW_X_SysView_Lock(void);
void SEGGER_SYSVIEW_X_SysView_Unlock(unsigned int_state);
// to be recursive save IRQ status on the stack of the caller
#define SEGGER_SYSVIEW_LOCK() unsigned _SYSVIEW_int_state = SEGGER_SYSVIEW_X_SysView_Lock()

View File

@@ -63,11 +63,26 @@ Revision: $Rev: 3734 $
*/
#include "freertos/FreeRTOS.h"
#include "SEGGER_SYSVIEW.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/ets_sys.h"
#include "esp32/clk.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/ets_sys.h"
#include "esp32s2/clk.h"
#endif
#include "esp_app_trace.h"
#include "esp_app_trace_util.h"
#include "esp_intr_alloc.h"
#include "soc/soc.h"
#include "soc/interrupts.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/ets_sys.h"
#include "esp32/clk.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/ets_sys.h"
#include "esp32s2/clk.h"
#endif
extern const SEGGER_SYSVIEW_OS_API SYSVIEW_X_OS_TraceAPI;
@@ -81,7 +96,7 @@ extern const SEGGER_SYSVIEW_OS_API SYSVIEW_X_OS_TraceAPI;
#define SYSVIEW_APP_NAME "FreeRTOS Application"
// The target device name
#define SYSVIEW_DEVICE_NAME "ESP32"
#define SYSVIEW_DEVICE_NAME CONFIG_IDF_TARGET
// Determine which timer to use as timestamp source
#if CONFIG_SYSVIEW_TS_SOURCE_CCOUNT
@@ -123,14 +138,18 @@ extern const SEGGER_SYSVIEW_OS_API SYSVIEW_X_OS_TraceAPI;
#if TS_USE_CCOUNT
// CCOUNT is incremented at CPU frequency
#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.
#define SYSVIEW_CPU_FREQ (esp_clk_cpu_freq())
// The lowest RAM address used for IDs (pointers)
#define SYSVIEW_RAM_BASE (0x3F400000)
#define SYSVIEW_RAM_BASE (SOC_DROM_LOW)
#if CONFIG_FREERTOS_CORETIMER_0
#define SYSTICK_INTR_ID (ETS_INTERNAL_TIMER0_INTR_SOURCE+ETS_INTERNAL_INTR_SOURCE_OFF)
@@ -147,78 +166,6 @@ extern const SEGGER_SYSVIEW_OS_API SYSVIEW_X_OS_TraceAPI;
static esp_apptrace_lock_t s_sys_view_lock = {.mux = portMUX_INITIALIZER_UNLOCKED, .int_state = 0};
static const char * const s_isr_names[] = {
[0] = "WIFI_MAC",
[1] = "WIFI_NMI",
[2] = "WIFI_BB",
[3] = "BT_MAC",
[4] = "BT_BB",
[5] = "BT_BB_NMI",
[6] = "RWBT",
[7] = "RWBLE",
[8] = "RWBT_NMI",
[9] = "RWBLE_NMI",
[10] = "SLC0",
[11] = "SLC1",
[12] = "UHCI0",
[13] = "UHCI1",
[14] = "TG0_T0_LEVEL",
[15] = "TG0_T1_LEVEL",
[16] = "TG0_WDT_LEVEL",
[17] = "TG0_LACT_LEVEL",
[18] = "TG1_T0_LEVEL",
[19] = "TG1_T1_LEVEL",
[20] = "TG1_WDT_LEVEL",
[21] = "TG1_LACT_LEVEL",
[22] = "GPIO",
[23] = "GPIO_NMI",
[24] = "FROM_CPU0",
[25] = "FROM_CPU1",
[26] = "FROM_CPU2",
[27] = "FROM_CPU3",
[28] = "SPI0",
[29] = "SPI1",
[30] = "SPI2",
[31] = "SPI3",
[32] = "I2S0",
[33] = "I2S1",
[34] = "UART0",
[35] = "UART1",
[36] = "UART2",
[37] = "SDIO_HOST",
[38] = "ETH_MAC",
[39] = "PWM0",
[40] = "PWM1",
[41] = "PWM2",
[42] = "PWM3",
[43] = "LEDC",
[44] = "EFUSE",
[45] = "CAN",
[46] = "RTC_CORE",
[47] = "RMT",
[48] = "PCNT",
[49] = "I2C_EXT0",
[50] = "I2C_EXT1",
[51] = "RSA",
[52] = "SPI1_DMA",
[53] = "SPI2_DMA",
[54] = "SPI3_DMA",
[55] = "WDT",
[56] = "TIMER1",
[57] = "TIMER2",
[58] = "TG0_T0_EDGE",
[59] = "TG0_T1_EDGE",
[60] = "TG0_WDT_EDGE",
[61] = "TG0_LACT_EDGE",
[62] = "TG1_T0_EDGE",
[63] = "TG1_T1_EDGE",
[64] = "TG1_WDT_EDGE",
[65] = "TG1_LACT_EDGE",
[66] = "MMU_IA",
[67] = "MPU_IA",
[68] = "CACHE_IA",
};
/*********************************************************************
*
* _cbSendSystemDesc()
@@ -231,9 +178,9 @@ static void _cbSendSystemDesc(void) {
SEGGER_SYSVIEW_SendSysDesc("N="SYSVIEW_APP_NAME",D="SYSVIEW_DEVICE_NAME",C=Xtensa,O=FreeRTOS");
snprintf(irq_str, sizeof(irq_str), "I#%d=SysTick", SYSTICK_INTR_ID);
SEGGER_SYSVIEW_SendSysDesc(irq_str);
size_t isr_count = sizeof(s_isr_names)/sizeof(s_isr_names[0]);
size_t isr_count = sizeof(esp_isr_names)/sizeof(esp_isr_names[0]);
for (size_t i = 0; i < isr_count; ++i) {
snprintf(irq_str, sizeof(irq_str), "I#%d=%s", ETS_INTERNAL_INTR_SOURCE_OFF + i, s_isr_names[i]);
snprintf(irq_str, sizeof(irq_str), "I#%d=%s", ETS_INTERNAL_INTR_SOURCE_OFF + i, esp_isr_names[i]);
SEGGER_SYSVIEW_SendSysDesc(irq_str);
}
}
@@ -244,7 +191,7 @@ static void _cbSendSystemDesc(void) {
*
**********************************************************************
*/
static void SEGGER_SYSVIEW_TS_Init()
static void SEGGER_SYSVIEW_TS_Init(void)
{
/* We only need to initialize something if we use Timer Group.
* esp_timer and ccount can be used as is.
@@ -316,7 +263,7 @@ void SEGGER_SYSVIEW_Conf(void) {
SEGGER_SYSVIEW_DisableEvents(disable_evts);
}
U32 SEGGER_SYSVIEW_X_GetTimestamp()
U32 SEGGER_SYSVIEW_X_GetTimestamp(void)
{
#if TS_USE_TIMERGROUP
uint64_t ts = 0;
@@ -329,15 +276,15 @@ U32 SEGGER_SYSVIEW_X_GetTimestamp()
#endif
}
void SEGGER_SYSVIEW_X_RTT_Lock()
void SEGGER_SYSVIEW_X_RTT_Lock(void)
{
}
void SEGGER_SYSVIEW_X_RTT_Unlock()
void SEGGER_SYSVIEW_X_RTT_Unlock(void)
{
}
unsigned SEGGER_SYSVIEW_X_SysView_Lock()
unsigned SEGGER_SYSVIEW_X_SysView_Lock(void)
{
esp_apptrace_tmo_t tmo;
esp_apptrace_tmo_init(&tmo, SEGGER_LOCK_WAIT_TMO);

View File

@@ -18,7 +18,11 @@
#include "SEGGER_SYSVIEW.h"
#include "SEGGER_SYSVIEW_Conf.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/ets_sys.h"
#endif
#include "esp_app_trace.h"
#include "esp_log.h"

View File

@@ -1,3 +1,3 @@
idf_component_register(SRC_DIRS "."
INCLUDE_DIRS "."
REQUIRES unity)
PRIV_INCLUDE_DIRS "."
PRIV_REQUIRES unity)

View File

@@ -9,7 +9,7 @@
#include "freertos/FreeRTOS.h"
#include "freertos/semphr.h"
#include "freertos/task.h"
#if CONFIG_ESP32_APPTRACE_ENABLE == 1
#if CONFIG_APPTRACE_ENABLE == 1
#include "esp_app_trace.h"
#include "esp_app_trace_util.h"
@@ -125,7 +125,7 @@ typedef struct {
static SemaphoreHandle_t s_print_lock;
#endif
static uint64_t esp_apptrace_test_ts_get();
static uint64_t esp_apptrace_test_ts_get(void);
static void esp_apptrace_test_timer_isr(void *arg)
{
@@ -145,56 +145,16 @@ static void esp_apptrace_test_timer_isr(void *arg)
}
tim_arg->data.wr_cnt++;
if (tim_arg->group == 0) {
if (tim_arg->id == 0) {
TIMERG0.int_clr_timers.t0 = 1;
TIMERG0.hw_timer[0].update = 1;
TIMERG0.hw_timer[0].config.alarm_en = 1;
} else {
TIMERG0.int_clr_timers.t1 = 1;
TIMERG0.hw_timer[1].update = 1;
TIMERG0.hw_timer[1].config.alarm_en = 1;
}
}
if (tim_arg->group == 1) {
if (tim_arg->id == 0) {
TIMERG1.int_clr_timers.t0 = 1;
TIMERG1.hw_timer[0].update = 1;
TIMERG1.hw_timer[0].config.alarm_en = 1;
} else {
TIMERG1.int_clr_timers.t1 = 1;
TIMERG1.hw_timer[1].update = 1;
TIMERG1.hw_timer[1].config.alarm_en = 1;
}
}
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_apptrace_test_timer_isr_crash(void *arg)
{
esp_apptrace_test_timer_arg_t *tim_arg = (esp_apptrace_test_timer_arg_t *)arg;
if (tim_arg->group == 0) {
if (tim_arg->id == 0) {
TIMERG0.int_clr_timers.t0 = 1;
TIMERG0.hw_timer[0].update = 1;
TIMERG0.hw_timer[0].config.alarm_en = 1;
} else {
TIMERG0.int_clr_timers.t1 = 1;
TIMERG0.hw_timer[1].update = 1;
TIMERG0.hw_timer[1].config.alarm_en = 1;
}
}
if (tim_arg->group == 1) {
if (tim_arg->id == 0) {
TIMERG1.int_clr_timers.t0 = 1;
TIMERG1.hw_timer[0].update = 1;
TIMERG1.hw_timer[0].config.alarm_en = 1;
} else {
TIMERG1.int_clr_timers.t1 = 1;
TIMERG1.hw_timer[1].update = 1;
TIMERG1.hw_timer[1].config.alarm_en = 1;
}
}
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();
@@ -383,7 +343,7 @@ static void esp_apptrace_test_task_crash(void *p)
static int s_ts_timer_group, s_ts_timer_idx;
static uint64_t esp_apptrace_test_ts_get()
static uint64_t esp_apptrace_test_ts_get(void)
{
uint64_t ts = 0;
timer_get_counter_value(s_ts_timer_group, s_ts_timer_idx, &ts);
@@ -413,7 +373,7 @@ static void esp_apptrace_test_ts_init(int timer_group, int timer_idx)
timer_start(timer_group, timer_idx);
}
static void esp_apptrace_test_ts_cleanup()
static void esp_apptrace_test_ts_cleanup(void)
{
timer_config_t config;
@@ -850,28 +810,8 @@ static void esp_sysview_test_timer_isr(void *arg)
//ESP_APPTRACE_TEST_LOGI("tim-%d: IRQ %d/%d\n", tim_arg->id, tim_arg->group, tim_arg->timer);
if (tim_arg->group == 0) {
if (tim_arg->timer == 0) {
TIMERG0.int_clr_timers.t0 = 1;
TIMERG0.hw_timer[0].update = 1;
TIMERG0.hw_timer[0].config.alarm_en = 1;
} else {
TIMERG0.int_clr_timers.t1 = 1;
TIMERG0.hw_timer[1].update = 1;
TIMERG0.hw_timer[1].config.alarm_en = 1;
}
}
if (tim_arg->group == 1) {
if (tim_arg->timer == 0) {
TIMERG1.int_clr_timers.t0 = 1;
TIMERG1.hw_timer[0].update = 1;
TIMERG1.hw_timer[0].config.alarm_en = 1;
} else {
TIMERG1.int_clr_timers.t1 = 1;
TIMERG1.hw_timer[1].update = 1;
TIMERG1.hw_timer[1].config.alarm_en = 1;
}
}
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)

View File

@@ -7,11 +7,18 @@ idf_component_register(SRCS "esp_ota_ops.c"
# 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"
@@ -29,8 +36,11 @@ if(NOT BOOTLOADER_BUILD)
idf_build_get_property(idf_path IDF_PATH)
idf_build_get_property(python PYTHON)
idf_component_get_property(partition_table_dir partition_table COMPONENT_DIR)
add_custom_command(OUTPUT ${blank_otadata_file}
COMMAND ${python} ${idf_path}/components/partition_table/gen_empty_partition.py
COMMAND ${python} ${partition_table_dir}/gen_empty_partition.py
${otadata_size} ${blank_otadata_file})
add_custom_target(blank_ota_data ALL DEPENDS ${blank_otadata_file})
@@ -52,6 +62,11 @@ if(NOT BOOTLOADER_BUILD)
--partition-table-offset ${PARTITION_TABLE_OFFSET}
erase_otadata)
esptool_py_flash_project_args(otadata ${otadata_offset} "${blank_otadata_file}" FLASH_IN_PROJECT)
idf_component_get_property(main_args esptool_py FLASH_ARGS)
idf_component_get_property(sub_args esptool_py FLASH_SUB_ARGS)
esptool_py_flash_target(otadata-flash "${main_args}" "${sub_args}")
esptool_py_flash_target_image(otadata-flash otadata "${otadata_offset}" "${blank_otadata_file}")
esptool_py_flash_target_image(flash otadata "${otadata_offset}" "${blank_otadata_file}")
endif()
endif()

View File

@@ -22,6 +22,20 @@ menu "Application manager"
The PROJECT_NAME variable from the build system will not affect the firmware image.
This value will not be contained in the esp_app_desc structure.
config APP_PROJECT_VER_FROM_CONFIG
bool "Get the project version from Kconfig"
default n
help
If this is enabled, then config item APP_PROJECT_VER will be used for the variable PROJECT_VER.
Other ways to set PROJECT_VER will be ignored.
config APP_PROJECT_VER
string "Project version"
default "1"
depends on APP_PROJECT_VER_FROM_CONFIG
help
Project version
config APP_RETRIEVE_LEN_ELF_SHA
int "The length of APP ELF SHA is stored in RAM(chars)"
default 16

View File

@@ -8,49 +8,49 @@
COMPONENT_ADD_LDFLAGS += -u esp_app_desc
ifndef IS_BOOTLOADER_BUILD
GET_PROJECT_VER ?=
ifeq ("${PROJECT_VER}", "")
ifeq ("$(wildcard ${PROJECT_PATH}/version.txt)","")
# 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
GET_PROJECT_VER := $(shell cd ${PROJECT_PATH} && git describe --always --tags --dirty 2> /dev/null)
ifeq ("${GET_PROJECT_VER}", "")
GET_PROJECT_VER := "1"
$(info Project is not inside a git repository, will not use 'git describe' to determine PROJECT_VER.)
endif
# 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)
else
# read from version.txt
GET_PROJECT_VER := $(shell cat ${PROJECT_PATH}/version.txt)
endif
endif
# 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".
$(info App "$(PROJECT_NAME_CUT)" version: $(PROJECT_VER_CUT))
ifeq ("${PROJECT_VER}", "")
PROJECT_VER:= $(GET_PROJECT_VER)
else
PROJECT_VER:= $(PROJECT_VER)
endif
NEW_DEFINES:= "$(PROJECT_VER_CUT) $(PROJECT_NAME_CUT) $(IDF_VER)"
ifeq ("$(wildcard ${TMP_DEFINES})","")
OLD_DEFINES:= ""
else
OLD_DEFINES:= "$(shell cat $(TMP_DEFINES))"
endif
# 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)
# 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
$(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
esp_app_desc.o: CPPFLAGS += -D PROJECT_VER=\""$(PROJECT_VER_CUT)"\" -D PROJECT_NAME=\""$(PROJECT_NAME_CUT)"\"
endif # IS_BOOTLOADER_BUILD

View File

@@ -89,7 +89,10 @@ int IRAM_ATTR esp_ota_get_app_elf_sha256(char* dst, size_t size)
static bool first_call = true;
if (first_call) {
first_call = false;
const uint8_t* src = esp_app_desc.app_elf_sha256;
// 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];
}

View File

@@ -41,6 +41,12 @@
#include "esp_system.h"
#include "esp_efuse.h"
#ifdef CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/crc.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/crc.h"
#include "esp32s2/rom/secure_boot.h"
#endif
#define SUB_TYPE_ID(i) (i & 0x0F)
@@ -250,6 +256,43 @@ esp_err_t esp_ota_write(esp_ota_handle_t handle, const void *data, size_t size)
return ESP_ERR_INVALID_ARG;
}
esp_err_t esp_ota_write_with_offset(esp_ota_handle_t handle, const void *data, size_t size, uint32_t offset)
{
const uint8_t *data_bytes = (const uint8_t *)data;
esp_err_t ret;
ota_ops_entry_t *it;
if (data == NULL) {
ESP_LOGE(TAG, "write data is invalid");
return ESP_ERR_INVALID_ARG;
}
// 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) {
// must erase the partition before writing to it
assert(it->erased_size > 0 && "must erase the partition before writing to it");
/* esp_ota_write_with_offset is used to write data in non contiguous manner.
* Hence, unaligned data(less than 16 bytes) cannot be cached if flash encryption is enabled.
*/
if (esp_flash_encryption_enabled() && (size % 16)) {
ESP_LOGE(TAG, "Size should be 16byte aligned for flash encryption case");
return ESP_ERR_INVALID_ARG;
}
ret = esp_partition_write(it->part, offset, data_bytes, size);
if (ret == ESP_OK) {
it->wrote_size += size;
}
return ret;
}
}
// OTA handle is not found in linked list
ESP_LOGE(TAG,"OTA handle not found");
return ESP_ERR_INVALID_ARG;
}
esp_err_t esp_ota_end(esp_ota_handle_t handle)
{
ota_ops_entry_t *it;
@@ -688,12 +731,12 @@ static esp_err_t esp_ota_current_ota_is_workable(bool valid)
return ESP_OK;
}
esp_err_t esp_ota_mark_app_valid_cancel_rollback()
esp_err_t esp_ota_mark_app_valid_cancel_rollback(void)
{
return esp_ota_current_ota_is_workable(true);
}
esp_err_t esp_ota_mark_app_invalid_rollback_and_reboot()
esp_err_t esp_ota_mark_app_invalid_rollback_and_reboot(void)
{
return esp_ota_current_ota_is_workable(false);
}
@@ -716,7 +759,7 @@ static int get_last_invalid_otadata(const esp_ota_select_entry_t *two_otadata)
return num_invalid_otadata;
}
const esp_partition_t* esp_ota_get_last_invalid_partition()
const esp_partition_t* esp_ota_get_last_invalid_partition(void)
{
esp_ota_select_entry_t otadata[2];
if (read_otadata(otadata) == NULL) {
@@ -821,3 +864,24 @@ esp_err_t esp_ota_erase_last_boot_app_partition(void)
return ESP_OK;
}
#if CONFIG_IDF_TARGET_ESP32S2 && 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()) {
ESP_LOGE(TAG, "Secure boot v2 has not been enabled.");
return ESP_FAIL;
}
if (index != SECURE_BOOT_PUBLIC_KEY_INDEX_0 &&
index != SECURE_BOOT_PUBLIC_KEY_INDEX_1 &&
index != SECURE_BOOT_PUBLIC_KEY_INDEX_2) {
ESP_LOGE(TAG, "Invalid Index found for public key revocation %d.", index);
return ESP_ERR_INVALID_ARG;
}
ets_secure_boot_revoke_public_key_digest(index);
ESP_LOGI(TAG, "Revoked signature block %d.", index);
return ESP_OK;
}
#endif

View File

@@ -49,7 +49,7 @@ typedef uint32_t esp_ota_handle_t;
/**
* @brief Return esp_app_desc structure. This structure includes app version.
*
*
* Return description for running app.
* @return Pointer to esp_app_desc structure.
*/
@@ -117,6 +117,29 @@ 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
*
* 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.
* Use of esp_ota_write_with_offset() in combination with esp_ota_write() is not recommended.
*
* @return
* - 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.
* - ESP_ERR_OTA_SELECT_INFO_INVALID: OTA data partition has invalid contents
*/
esp_err_t esp_ota_write_with_offset(esp_ota_handle_t handle, const void *data, size_t size, uint32_t offset);
/**
* @brief Finish OTA update and validate newly written app image.
*
@@ -201,7 +224,7 @@ const esp_partition_t* esp_ota_get_next_update_partition(const esp_partition_t *
/**
* @brief Returns esp_app_desc structure for app partition. This structure includes app version.
*
*
* Returns a description for the requested app partition.
* @param[in] partition Pointer to app partition. (only app partition)
* @param[out] app_desc Structure of info about app.
@@ -221,7 +244,7 @@ esp_err_t esp_ota_get_partition_description(const esp_partition_t *partition, es
* @return
* - ESP_OK: if successful.
*/
esp_err_t esp_ota_mark_app_valid_cancel_rollback();
esp_err_t esp_ota_mark_app_valid_cancel_rollback(void);
/**
* @brief This function is called to roll back to the previously workable app with reboot.
@@ -233,14 +256,14 @@ esp_err_t esp_ota_mark_app_valid_cancel_rollback();
* - ESP_FAIL: if not successful.
* - ESP_ERR_OTA_ROLLBACK_FAILED: The rollback is not possible due to flash does not have any apps.
*/
esp_err_t esp_ota_mark_app_invalid_rollback_and_reboot();
esp_err_t esp_ota_mark_app_invalid_rollback_and_reboot(void);
/**
* @brief Returns last partition with invalid state (ESP_OTA_IMG_INVALID or ESP_OTA_IMG_ABORTED).
*
* @return partition.
*/
const esp_partition_t* esp_ota_get_last_invalid_partition();
const esp_partition_t* esp_ota_get_last_invalid_partition(void);
/**
* @brief Returns state for given partition.
@@ -276,6 +299,34 @@ esp_err_t esp_ota_erase_last_boot_app_partition(void);
*/
bool esp_ota_check_rollback_is_possible(void);
#if CONFIG_IDF_TARGET_ESP32S2 && (CONFIG_SECURE_BOOT_V2_ENABLED || __DOXYGEN__)
/**
* Secure Boot V2 public key indexes.
*/
typedef enum {
SECURE_BOOT_PUBLIC_KEY_INDEX_0, /*!< Points to the 0th index of the Secure Boot v2 public key */
SECURE_BOOT_PUBLIC_KEY_INDEX_1, /*!< Points to the 1st index of the Secure Boot v2 public key */
SECURE_BOOT_PUBLIC_KEY_INDEX_2 /*!< Points to the 2nd index of the Secure Boot v2 public key */
} esp_ota_secure_boot_public_key_index_t;
/**
* @brief Revokes the old signature digest. To be called in the application after the rollback logic.
*
* Relevant for Secure boot v2 on ESP32-S2 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
*
* @return
* - ESP_OK: If revocation is successful.
* - ESP_ERR_INVALID_ARG: If the index of the public key to be revoked is incorrect.
* - ESP_FAIL: If secure boot v2 has not been enabled.
*/
esp_err_t esp_ota_revoke_secure_boot_public_key(esp_ota_secure_boot_public_key_index_t index);
#endif /* CONFIG_IDF_TARGET_ESP32S2 */
#ifdef __cplusplus
}
#endif

View File

@@ -87,9 +87,8 @@ class OtatoolTarget():
seq = bytearray(self.otadata[start:start + 4])
crc = bytearray(self.otadata[start + 28:start + 32])
seq = struct.unpack('>I', seq)
crc = struct.unpack('>I', crc)
seq = struct.unpack('I', seq)
crc = struct.unpack('I', crc)
info.append(otadata_info(seq[0], crc[0]))
return info
@@ -103,12 +102,11 @@ class OtatoolTarget():
def switch_ota_partition(self, ota_id):
self._check_otadata_partition()
sys.path.append(PARTTOOL_DIR)
import gen_esp32part as gen
def is_otadata_info_valid(status):
seq = status.seq % (1 << 32)
crc = hex(binascii.crc32(struct.pack("I", seq), 0xFFFFFFFF) % (1 << 32))
crc = binascii.crc32(struct.pack('I', seq), 0xFFFFFFFF) % (1 << 32)
return seq < (int('0xFFFFFFFF', 16) % (1 << 32)) and status.crc == crc
partition_table = self.target.partition_table
@@ -219,8 +217,8 @@ def _read_otadata(target):
otadata_info = target._get_otadata_info()
print(" {:8s} \t {:8s} | \t {:8s} \t {:8s}".format("OTA_SEQ", "CRC", "OTA_SEQ", "CRC"))
print("Firmware: 0x{:8x} \t0x{:8x} | \t0x{:8x} \t 0x{:8x}".format(otadata_info[0].seq, otadata_info[0].crc,
print(' {:8s} \t {:8s} | \t {:8s} \t {:8s}'.format('OTA_SEQ', 'CRC', 'OTA_SEQ', 'CRC'))
print('Firmware: 0x{:08x} \t0x{:08x} | \t0x{:08x} \t 0x{:08x}'.format(otadata_info[0].seq, otadata_info[0].crc,
otadata_info[1].seq, otadata_info[1].crc))

View File

@@ -1,3 +1,4 @@
idf_component_register(SRC_DIRS "."
INCLUDE_DIRS "."
REQUIRES unity test_utils app_update bootloader_support nvs_flash)
PRIV_INCLUDE_DIRS "."
PRIV_REQUIRES unity test_utils app_update bootloader_support nvs_flash
)

View File

@@ -58,7 +58,7 @@ TEST_CASE("esp_ota_get_next_update_partition logic", "[ota]")
TEST_ASSERT_NOT_NULL(ota_1);
TEST_ASSERT_NULL(ota_2); /* this partition shouldn't exist in test partition table */
TEST_ASSERT_EQUAL_PTR(factory, running); /* this may not be true if/when we get OTA tests that do OTA updates */
TEST_ASSERT_EQUAL_PTR(factory, running); /* this may not be true if/when we get OTA tests that do OTA updates */
/* (The test steps verify subtypes before verifying pointer equality, because the failure messages are more readable
this way.)
@@ -84,7 +84,7 @@ TEST_CASE("esp_ota_get_next_update_partition logic", "[ota]")
TEST_ASSERT_EQUAL_PTR(ota_0, p);
}
TEST_CASE("esp_ota_get_partition_description ", "[ota]")
TEST_CASE("esp_ota_get_partition_description", "[ota]")
{
const esp_partition_t *running = esp_ota_get_running_partition();
TEST_ASSERT_NOT_NULL(running);

View File

@@ -7,9 +7,13 @@
#include "string.h"
#include "sdkconfig.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/spi_flash.h"
#include "esp32/rom/rtc.h"
#include "esp32/rom/ets_sys.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"
@@ -19,7 +23,7 @@
#include "unity.h"
#include "bootloader_common.h"
#include "../include_bootloader/bootloader_flash.h"
#include "../include_bootloader/bootloader_flash_priv.h"
#include "esp_log.h"
#include "esp_ota_ops.h"
@@ -44,9 +48,34 @@ static void copy_app_partition(esp_ota_handle_t update_handle, const esp_partiti
{
const void *partition_bin = NULL;
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, SPI_FLASH_MMAP_DATA, &partition_bin, &data_map));
TEST_ESP_OK(esp_ota_write(update_handle, (const void *)partition_bin, curr_app->size));
spi_flash_munmap(data_map);
ESP_LOGI(TAG, "finish the copy process");
}
/* @brief Copies a current app to next partition using handle.
*
* @param[in] update_handle - Handle of API ota.
* @param[in] cur_app - Current app.
*/
static void copy_app_partition_with_offset(esp_ota_handle_t update_handle, const esp_partition_t *curr_app)
{
const void *partition_bin = NULL;
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, 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));
spi_flash_munmap(data_map);
bytes_to_write -= write_bytes;
offset += write_bytes;
}
ESP_LOGI(TAG, "finish the copy process");
}
#if defined(CONFIG_BOOTLOADER_FACTORY_RESET) || defined(CONFIG_BOOTLOADER_APP_TEST)
@@ -99,6 +128,26 @@ static void copy_current_app_to_next_part(const esp_partition_t *cur_app_partiti
TEST_ESP_OK(esp_ota_set_boot_partition(next_app_partition));
}
/* @brief Copies a current app to next partition (OTA0-15) and then configure OTA data for a new boot partition.
*
* @param[in] cur_app_partition - Current app.
* @param[in] next_app_partition - Next app for boot.
*/
static void copy_current_app_to_next_part_with_offset(const esp_partition_t *cur_app_partition, const esp_partition_t *next_app_partition)
{
esp_ota_get_next_update_partition(NULL);
TEST_ASSERT_NOT_EQUAL(NULL, next_app_partition);
ESP_LOGI(TAG, "Writing to partition subtype %d at offset 0x%x", next_app_partition->subtype, next_app_partition->address);
esp_ota_handle_t update_handle = 0;
TEST_ESP_OK(esp_ota_begin(next_app_partition, OTA_SIZE_UNKNOWN, &update_handle));
copy_app_partition_with_offset(update_handle, cur_app_partition);
TEST_ESP_OK(esp_ota_end(update_handle));
TEST_ESP_OK(esp_ota_set_boot_partition(next_app_partition));
}
/* @brief Erase otadata partition
*/
static void erase_ota_data(void)
@@ -112,19 +161,31 @@ static void erase_ota_data(void)
*/
static void reboot_as_deep_sleep(void)
{
ESP_LOGI(TAG, "reboot as deep sleep");
esp_sleep_enable_timer_wakeup(2000);
esp_deep_sleep_start();
}
/* @brief Copies a current app to next partition (OTA0-15), after that ESP is rebooting and run this (the next) OTAx.
*/
static void copy_current_app_to_next_part_and_reboot()
static void copy_current_app_to_next_part_and_reboot(void)
{
const esp_partition_t *cur_app = esp_ota_get_running_partition();
ESP_LOGI(TAG, "copy current app to next part");
copy_current_app_to_next_part(cur_app, get_next_update_partition());
reboot_as_deep_sleep();
}
/* @brief Copies a current app to next partition (OTA0-15) using esp_ota_write_with_offest(), after that ESP is rebooting and run this (the next) OTAx.
*/
static void copy_current_app_to_next_part_with_offset_and_reboot(void)
{
const esp_partition_t *cur_app = esp_ota_get_running_partition();
ESP_LOGI(TAG, "copy current app to next part");
copy_current_app_to_next_part_with_offset(cur_app, get_next_update_partition());
reboot_as_deep_sleep();
}
/* @brief Get running app.
*
* @return The next partition of OTA(OTA0-15).
@@ -252,6 +313,7 @@ static void start_test(void)
ESP_LOGI(TAG, "boot count 1 - reset");
boot_count = 1;
erase_ota_data();
ESP_LOGI(TAG, "ota_data erased");
reboot_as_deep_sleep();
}
@@ -264,19 +326,19 @@ static void test_flow1(void)
case 2:
ESP_LOGI(TAG, "Factory");
TEST_ASSERT_EQUAL(ESP_PARTITION_SUBTYPE_APP_FACTORY, cur_app->subtype);
copy_current_app_to_next_part_and_reboot(cur_app);
copy_current_app_to_next_part_and_reboot();
break;
case 3:
ESP_LOGI(TAG, "OTA0");
TEST_ASSERT_EQUAL(ESP_PARTITION_SUBTYPE_APP_OTA_0, cur_app->subtype);
mark_app_valid();
copy_current_app_to_next_part_and_reboot(cur_app);
copy_current_app_to_next_part_and_reboot();
break;
case 4:
ESP_LOGI(TAG, "OTA1");
TEST_ASSERT_EQUAL(ESP_PARTITION_SUBTYPE_APP_OTA_1, cur_app->subtype);
mark_app_valid();
copy_current_app_to_next_part_and_reboot(cur_app);
copy_current_app_to_next_part_and_reboot();
break;
case 5:
ESP_LOGI(TAG, "OTA0");
@@ -307,7 +369,7 @@ static void test_flow2(void)
case 2:
ESP_LOGI(TAG, "Factory");
TEST_ASSERT_EQUAL(ESP_PARTITION_SUBTYPE_APP_FACTORY, cur_app->subtype);
copy_current_app_to_next_part_and_reboot(cur_app);
copy_current_app_to_next_part_and_reboot();
break;
case 3:
ESP_LOGI(TAG, "OTA0");
@@ -344,13 +406,13 @@ static void test_flow3(void)
case 2:
ESP_LOGI(TAG, "Factory");
TEST_ASSERT_EQUAL(ESP_PARTITION_SUBTYPE_APP_FACTORY, cur_app->subtype);
copy_current_app_to_next_part_and_reboot(cur_app);
copy_current_app_to_next_part_and_reboot();
break;
case 3:
ESP_LOGI(TAG, "OTA0");
TEST_ASSERT_EQUAL(ESP_PARTITION_SUBTYPE_APP_OTA_0, cur_app->subtype);
mark_app_valid();
copy_current_app_to_next_part_and_reboot(cur_app);
copy_current_app_to_next_part_and_reboot();
break;
case 4:
ESP_LOGI(TAG, "OTA1");
@@ -402,7 +464,7 @@ static void test_flow4(void)
nvs_close(handle);
nvs_flash_deinit();
copy_current_app_to_next_part_and_reboot(cur_app);
copy_current_app_to_next_part_and_reboot();
break;
case 3:
ESP_LOGI(TAG, "OTA0");
@@ -731,3 +793,32 @@ static void test_erase_last_app_rollback(void)
// 4 Stage: run OTA1 -> check it -> erase OTA0 and rollback -> reboot
// 5 Stage: run factory -> check it -> erase OTA_DATA for next tests -> PASS
TEST_CASE_MULTIPLE_STAGES("Test erase_last_boot_app_partition. factory, OTA1, OTA0, factory", "[app_update][timeout=90][reset=DEEPSLEEP_RESET, DEEPSLEEP_RESET, DEEPSLEEP_RESET, SW_CPU_RESET]", start_test, test_erase_last_app_flow, test_erase_last_app_flow, test_erase_last_app_flow, test_erase_last_app_rollback);
static void test_flow6(void)
{
boot_count++;
ESP_LOGI(TAG, "boot count %d", boot_count);
const esp_partition_t *cur_app = get_running_firmware();
switch (boot_count) {
case 2:
ESP_LOGI(TAG, "Factory");
TEST_ASSERT_EQUAL(ESP_PARTITION_SUBTYPE_APP_FACTORY, cur_app->subtype);
copy_current_app_to_next_part_with_offset_and_reboot();
break;
case 3:
ESP_LOGI(TAG, "OTA0");
TEST_ASSERT_EQUAL(ESP_PARTITION_SUBTYPE_APP_OTA_0, cur_app->subtype);
mark_app_valid();
erase_ota_data();
break;
default:
erase_ota_data();
TEST_FAIL_MESSAGE("Unexpected stage");
break;
}
}
// 1 Stage: After POWER_RESET erase OTA_DATA for this test -> reboot through deep sleep.
// 2 Stage: run factory -> check it -> copy factory to OTA0 -> reboot --//--
// 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);

View File

@@ -22,8 +22,12 @@
# define ASIO_NO_EXCEPTIONS
# endif // CONFIG_COMPILER_CXX_EXCEPTIONS
# ifndef CONFIG_COMPILER_RTTI
# define ASIO_NO_TYPEID
# endif // CONFIG_COMPILER_RTTI
//
// LWIP compatifility inet and address macros/functions
// LWIP compatibility inet and address macros/functions
//
# define LWIP_COMPAT_SOCKET_INET 1
# define LWIP_COMPAT_SOCKET_ADDR 1
@@ -34,12 +38,6 @@
# define ASIO_DISABLE_SERIAL_PORT
# define ASIO_SEPARATE_COMPILATION
# define ASIO_STANDALONE
# define ASIO_NO_TYPEID
# define ASIO_DISABLE_SIGNAL
# define ASIO_HAS_PTHREADS
# define ASIO_DISABLE_EPOLL
# define ASIO_DISABLE_EVENTFD
# define ASIO_DISABLE_SIGNAL
# define ASIO_DISABLE_SIGACTION
#endif // _ESP_ASIO_CONFIG_H_

View File

@@ -1,21 +1,21 @@
idf_component_register(PRIV_REQUIRES partition_table)
# Do not generate flash file when building bootloader or is in early expansion of the build
if(BOOTLOADER_BUILD)
if(BOOTLOADER_BUILD OR NOT CONFIG_APP_BUILD_BOOTLOADER)
return()
endif()
add_dependencies(bootloader partition_table_bin)
# When secure boot is enabled, do not flash bootloader along with invocation of `idf.py flash`
if(NOT CONFIG_SECURE_BOOT_ENABLED)
if(NOT CONFIG_SECURE_BOOT)
set(flash_bootloader FLASH_IN_PROJECT)
endif()
# Set values used in flash_bootloader_args.in and generate flash file
# for bootloader
esptool_py_flash_project_args(bootloader 0x1000
${BOOTLOADER_BUILD_DIR}/bootloader.bin
${flash_bootloader}
FLASH_FILE_TEMPLATE flash_bootloader_args.in)
esptool_py_custom_target(bootloader-flash bootloader "bootloader")
add_dependencies(bootloader partition_table)
esptool_py_flash_target_image(bootloader-flash bootloader "0x1000" "${BOOTLOADER_BUILD_DIR}/bootloader.bin")
# Also attach an image to the project flash target
if(NOT CONFIG_SECURE_BOOT)
esptool_py_flash_target_image(flash bootloader "0x1000" "${BOOTLOADER_BUILD_DIR}/bootloader.bin")
endif()

View File

@@ -1,4 +1,29 @@
menu "Bootloader config"
choice BOOTLOADER_COMPILER_OPTIMIZATION
prompt "Bootloader optimization Level"
default BOOTLOADER_COMPILER_OPTIMIZATION_SIZE
help
This option sets compiler optimization level (gcc -O argument)
for the bootloader.
- The default "Size" setting will add the -0s flag to CFLAGS.
- The "Debug" setting will add the -Og flag to CFLAGS.
- The "Performance" setting will add the -O2 flag to CFLAGS.
- The "None" setting will add the -O0 flag to CFLAGS.
Note that custom optimization levels may be unsupported.
config BOOTLOADER_COMPILER_OPTIMIZATION_SIZE
bool "Size (-Os)"
config BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG
bool "Debug (-Og)"
config BOOTLOADER_COMPILER_OPTIMIZATION_PERF
bool "Optimize for performance (-O2)"
config BOOTLOADER_COMPILER_OPTIMIZATION_NONE
bool "Debug without optimization (-O0)"
endchoice
choice BOOTLOADER_LOG_LEVEL
bool "Bootloader log verbosity"
default BOOTLOADER_LOG_LEVEL_INFO
@@ -28,20 +53,34 @@ menu "Bootloader config"
default 4 if BOOTLOADER_LOG_LEVEL_DEBUG
default 5 if BOOTLOADER_LOG_LEVEL_VERBOSE
config BOOTLOADER_SPI_CUSTOM_WP_PIN
bool "Use custom SPI Flash WP Pin when flash pins set in eFuse (read help)"
depends on IDF_TARGET_ESP32 && (ESPTOOLPY_FLASHMODE_QIO || ESPTOOLPY_FLASHMODE_QOUT)
default y if BOOTLOADER_SPI_WP_PIN != 7 # backwards compatibility, can remove in IDF 5
default n
help
This setting is only used if the SPI flash pins have been overridden by setting the eFuses
SPI_PAD_CONFIG_xxx, and the SPI flash mode is QIO or QOUT.
When this is the case, the eFuse config only defines 3 of the 4 Quad I/O data pins. The WP pin (aka
ESP32 pin "SD_DATA_3" or SPI flash pin "IO2") is not specified in eFuse. The same pin is also used
for external SPIRAM if it is enabled.
If this config item is set to N (default), the correct WP pin will be automatically used for any
Espressif chip or module with integrated flash. If a custom setting is needed, set this config item to
Y and specify the GPIO number connected to the WP.
config BOOTLOADER_SPI_WP_PIN
int "SPI Flash WP Pin when customising pins via eFuse (read help)"
int "Custom SPI Flash WP Pin"
range 0 33
default 7
depends on ESPTOOLPY_FLASHMODE_QIO || ESPTOOLPY_FLASHMODE_QOUT
depends on IDF_TARGET_ESP32 && (ESPTOOLPY_FLASHMODE_QIO || ESPTOOLPY_FLASHMODE_QOUT)
#depends on BOOTLOADER_SPI_CUSTOM_WP_PIN # backwards compatibility, can uncomment in IDF 5
help
This value is ignored unless flash mode is set to QIO or QOUT *and* the SPI flash pins have been
overriden by setting the eFuses SPI_PAD_CONFIG_xxx.
The option "Use custom SPI Flash WP Pin" must be set or this value is ignored
When this is the case, the eFuse config only defines 3 of the 4 Quad I/O data pins. The WP pin (aka ESP32
pin "SD_DATA_3" or SPI flash pin "IO2") is not specified in eFuse. That pin number is compiled into the
bootloader instead.
The default value (GPIO 7) is correct for WP pin on ESP32-D2WD integrated flash.
If burning a customized set of SPI flash pins in eFuse and using QIO or QOUT mode for flash, set this
value to the GPIO number of the SPI flash WP pin.
choice BOOTLOADER_VDDSDIO_BOOST
bool "VDDSDIO LDO voltage"
@@ -75,7 +114,8 @@ menu "Bootloader config"
config BOOTLOADER_NUM_PIN_FACTORY_RESET
int "Number of the GPIO input for factory reset"
depends on BOOTLOADER_FACTORY_RESET
range 0 39
range 0 39 if IDF_TARGET_ESP32
range 0 44 if IDF_TARGET_ESP32S2
default 4
help
The selected GPIO will be configured as an input with internal pull-up enabled.
@@ -204,10 +244,13 @@ menu "Bootloader config"
config BOOTLOADER_APP_SEC_VER_SIZE_EFUSE_FIELD
int "Size of the efuse secure version field"
depends on BOOTLOADER_APP_ANTI_ROLLBACK
range 1 32
default 32
range 1 32 if IDF_TARGET_ESP32
default 32 if IDF_TARGET_ESP32
range 1 16 if IDF_TARGET_ESP32S2
default 16 if IDF_TARGET_ESP32S2
help
The size of the efuse secure version field. Its length is limited to 32 bits.
The size of the efuse secure version field.
Its length is limited to 32 bits for ESP32 and 16 bits for ESP32-S2.
This determines how many times the security version can be increased.
config BOOTLOADER_EFUSE_SECURE_VERSION_EMULATE
@@ -219,6 +262,53 @@ menu "Bootloader config"
It allow to test anti-rollback implemention without permanent write eFuse bits.
In partition table should be exist this partition `emul_efuse, data, 5, , 0x2000`.
config BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP
bool "Skip image validation when exiting deep sleep"
depends on (SECURE_BOOT && SECURE_BOOT_INSECURE) || !SECURE_BOOT
default n
help
This option disables the normal validation of an image coming out of
deep sleep (checksums, SHA256, and signature). This is a trade-off
between wakeup performance from deep sleep, and image integrity checks.
Only enable this if you know what you are doing. It should not be used
in conjunction with using deep_sleep() entry and changing the active OTA
partition as this would skip the validation upon first load of the new
OTA partition.
config BOOTLOADER_RESERVE_RTC_SIZE
hex
default 0x10 if BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP || BOOTLOADER_CUSTOM_RESERVE_RTC
default 0
help
Reserve RTC FAST memory for Skip image validation. This option in bytes.
This option reserves an area in the RTC FAST memory (access only PRO_CPU).
Used to save the addresses of the selected application.
When a wakeup occurs (from Deep sleep), the bootloader retrieves it and
loads the application without validation.
config BOOTLOADER_CUSTOM_RESERVE_RTC
bool "Reserve RTC FAST memory for custom purposes"
default n
help
This option allows the customer to place data in the RTC FAST memory,
this area remains valid when rebooted, except for power loss.
This memory is located at a fixed address and is available
for both the bootloader and the application.
(The application and bootoloader must be compiled with the same option).
The RTC FAST memory has access only through PRO_CPU.
config BOOTLOADER_CUSTOM_RESERVE_RTC_SIZE
hex "Size in bytes for custom purposes"
range 0 0x10
default 0
depends on BOOTLOADER_CUSTOM_RESERVE_RTC
help
This option reserves in RTC FAST memory the area for custom purposes.
If you want to create your own bootloader and save more information
in this area of memory, you can increase it. It must be a multiple of 4 bytes.
This area (rtc_retain_mem_t) is reserved and has access from the bootloader and an application.
config BOOTLOADER_FLASH_XMC_SUPPORT
bool "Enable the support for flash chips of XMC (READ HELP FIRST)"
default y
@@ -238,12 +328,12 @@ menu "Security features"
config SECURE_SIGNED_ON_BOOT
bool
default y
depends on SECURE_BOOT_ENABLED || SECURE_SIGNED_ON_BOOT_NO_SECURE_BOOT
depends on SECURE_BOOT || SECURE_SIGNED_ON_BOOT_NO_SECURE_BOOT
config SECURE_SIGNED_ON_UPDATE
bool
default y
depends on SECURE_BOOT_ENABLED || SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT
depends on SECURE_BOOT || SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT
config SECURE_SIGNED_APPS
bool
@@ -254,11 +344,20 @@ menu "Security features"
select MBEDTLS_ECDSA_C
depends on SECURE_SIGNED_ON_BOOT || SECURE_SIGNED_ON_UPDATE
config SECURE_BOOT_SUPPORTS_RSA
bool
default y
depends on ESP32_REV_MIN_3 || IDF_TARGET_ESP32S2
config SECURE_TARGET_HAS_SECURE_ROM_DL_MODE
bool
default y
depends on IDF_TARGET_ESP32S2
config SECURE_SIGNED_APPS_NO_SECURE_BOOT
bool "Require signed app images"
default n
depends on !SECURE_BOOT_ENABLED
depends on !SECURE_BOOT
help
Require apps to be signed to verify their integrity.
@@ -267,6 +366,35 @@ menu "Security features"
against remote network access, but not physical access. Compared to using hardware Secure Boot this option
is much simpler to implement.
choice SECURE_SIGNED_APPS_SCHEME
bool "App Signing Scheme"
depends on SECURE_BOOT || SECURE_SIGNED_APPS_NO_SECURE_BOOT
default SECURE_SIGNED_APPS_ECDSA_SCHEME if SECURE_BOOT_V1_ENABLED
default SECURE_SIGNED_APPS_RSA_SCHEME if SECURE_BOOT_V2_ENABLED
help
Select the Secure App signing scheme. Depends on the Chip Revision.
There are two options:
1. ECDSA based secure boot scheme. (Only choice for Secure Boot V1)
Supported in ESP32 and ESP32-ECO3.
2. The RSA based secure boot scheme. (Only choice for Secure Boot V2)
Supported in ESP32-ECO3. (ESP32 Chip Revision 3 onwards)
config SECURE_SIGNED_APPS_ECDSA_SCHEME
bool "ECDSA"
depends on IDF_TARGET_ESP32 && (SECURE_SIGNED_APPS_NO_SECURE_BOOT || SECURE_BOOT_V1_ENABLED)
help
Embeds the ECDSA public key in the bootloader and signs the application with an ECDSA key.
Refer to the documentation before enabling.
config SECURE_SIGNED_APPS_RSA_SCHEME
bool "RSA"
depends on SECURE_BOOT_SUPPORTS_RSA && SECURE_BOOT_V2_ENABLED
help
Appends the RSA-3072 based Signature block to the application.
Refer to <Secure Boot Version 2 documentation link> before enabling.
endchoice
config SECURE_SIGNED_ON_BOOT_NO_SECURE_BOOT
bool "Bootloader verifies app signatures"
default n
@@ -293,23 +421,50 @@ menu "Security features"
If hardware secure boot is not enabled, this option still adds significant security against network-based
attackers by preventing spoofing of OTA updates.
config SECURE_BOOT_ENABLED
bool "Enable hardware secure boot in bootloader (READ DOCS FIRST)"
config SECURE_BOOT
bool "Enable hardware Secure Boot in bootloader (READ DOCS FIRST)"
default n
help
Build a bootloader which enables secure boot on first boot.
Build a bootloader which enables Secure Boot on first boot.
Once enabled, secure boot will not boot a modified bootloader. The bootloader will only load a partition
Once enabled, Secure Boot will not boot a modified bootloader. The bootloader will only load a partition
table or boot an app if the data has a verified digital signature. There are implications for reflashing
updated apps once secure boot is enabled.
When enabling secure boot, JTAG and ROM BASIC Interpreter are permanently disabled by default.
Refer to https://docs.espressif.com/projects/esp-idf/en/latest/security/secure-boot.html before enabling.
choice SECURE_BOOT_VERSION
bool "Select secure boot version"
default SECURE_BOOT_V2_ENABLED if ESP32_REV_MIN_3
depends on SECURE_BOOT
help
Select the Secure Boot Version. Depends on the Chip Revision.
Secure Boot V2 is the new RSA based secure boot scheme.
Supported in ESP32-ECO3. (ESP32 Chip Revision 3 onwards)
Secure Boot V1 is the AES based secure boot scheme.
Supported in ESP32 and ESP32-ECO3.
config SECURE_BOOT_V1_ENABLED
bool "Enable Secure Boot version 1"
depends on IDF_TARGET_ESP32
help
Build a bootloader which enables secure boot version 1 on first boot.
Refer to the Secure Boot section of the ESP-IDF Programmer's Guide for this version before enabling.
config SECURE_BOOT_V2_ENABLED
bool "Enable Secure Boot version 2"
depends on SECURE_BOOT_SUPPORTS_RSA
select SECURE_ENABLE_SECURE_ROM_DL_MODE if !IDF_TARGET_ESP32 && !SECURE_INSECURE_ALLOW_DL_MODE && !SECURE_DISABLE_ROM_DL_MODE # NOERROR
select SECURE_DISABLE_ROM_DL_MODE if ESP32_REV_MIN_3 && !SECURE_INSECURE_ALLOW_DL_MODE
help
Build a bootloader which enables Secure Boot version 2 on first boot.
Refer to Secure Boot V2 section of the ESP-IDF Programmer's Guide for this version before enabling.
endchoice
choice SECURE_BOOTLOADER_MODE
bool "Secure bootloader mode"
depends on SECURE_BOOT_ENABLED
depends on SECURE_BOOT_V1_ENABLED
default SECURE_BOOTLOADER_ONE_TIME_FLASH
config SECURE_BOOTLOADER_ONE_TIME_FLASH
@@ -344,7 +499,8 @@ menu "Security features"
If enabled (default), these binary files are signed as part of the build process. The file named in
"Secure boot private signing key" will be used to sign the image.
If disabled, unsigned app/partition data will be built. They must be signed manually using espsecure.py
If disabled, unsigned app/partition data will be built. They must be signed manually using espsecure.py.
Version 1 to enable ECDSA Based Secure Boot and Version 2 to enable RSA based Secure Boot.
(for example, on a remote signing server.)
config SECURE_BOOT_SIGNING_KEY
@@ -354,28 +510,32 @@ menu "Security features"
help
Path to the key file used to sign app images.
Key file is an ECDSA private key (NIST256p curve) in PEM format.
Key file is an ECDSA private key (NIST256p curve) in PEM format for Secure Boot V1.
Key file is an RSA private key in PEM format for Secure Boot V2.
Path is evaluated relative to the project directory.
You can generate a new signing key by running the following command:
espsecure.py generate_signing_key secure_boot_signing_key.pem
See https://docs.espressif.com/projects/esp-idf/en/latest/security/secure-boot.html for details.
See the Secure Boot section of the ESP-IDF Programmer's Guide for this version for details.
config SECURE_BOOT_VERIFICATION_KEY
string "Secure boot public signature verification key"
depends on SECURE_SIGNED_APPS && !SECURE_BOOT_BUILD_SIGNED_BINARIES
depends on SECURE_SIGNED_APPS && !SECURE_BOOT_BUILD_SIGNED_BINARIES && !SECURE_SIGNED_APPS_RSA_SCHEME
default "signature_verification_key.bin"
help
Path to a public key file used to verify signed images. This key is compiled into the bootloader and/or
Path to a public key file used to verify signed images.
Secure Boot V1: This ECDSA public key is compiled into the bootloader and/or
app, to verify app images.
Secure Boot V2: This RSA public key is compiled into the signature block at
the end of the bootloader/app.
Key file is in raw binary format, and can be extracted from a
PEM formatted private key using the espsecure.py
extract_public_key command.
Refer to https://docs.espressif.com/projects/esp-idf/en/latest/security/secure-boot.html before enabling.
Refer to the Secure Boot section of the ESP-IDF Programmer's Guide for this version before enabling.
choice SECURE_BOOTLOADER_KEY_ENCODING
bool "Hardware Key Encoding"
@@ -402,7 +562,7 @@ menu "Security features"
config SECURE_BOOT_INSECURE
bool "Allow potentially insecure options"
depends on SECURE_BOOT_ENABLED
depends on SECURE_BOOT
default N
help
You can disable some of the default protections offered by secure boot, in order to enable testing or a
@@ -410,7 +570,7 @@ menu "Security features"
Only enable these options if you are very sure.
Refer to https://docs.espressif.com/projects/esp-idf/en/latest/security/secure-boot.html before enabling.
Refer to the Secure Boot section of the ESP-IDF Programmer's Guide for this version before enabling.
config SECURE_FLASH_ENC_ENABLED
bool "Enable flash encryption on boot (READ DOCS FIRST)"
@@ -425,6 +585,26 @@ menu "Security features"
Read https://docs.espressif.com/projects/esp-idf/en/latest/security/flash-encryption.html
before enabling.
choice SECURE_FLASH_ENCRYPTION_KEYSIZE
bool "Size of generated AES-XTS key"
default SECURE_FLASH_ENCRYPTION_AES128
depends on IDF_TARGET_ESP32S2 && SECURE_FLASH_ENC_ENABLED
help
Size of generated AES-XTS key.
AES-128 uses a 256-bit key (32 bytes) which occupies one Efuse key block.
AES-256 uses a 512-bit key (64 bytes) which occupies two Efuse key blocks.
This setting is ignored if either type of key is already burned to Efuse before the first boot.
In this case, the pre-burned key is used and no new key is generated.
config SECURE_FLASH_ENCRYPTION_AES128
bool "AES-128 (256-bit key)"
config SECURE_FLASH_ENCRYPTION_AES256
bool "AES-256 (512-bit key)"
endchoice
choice SECURE_FLASH_ENCRYPTION_MODE
bool "Enable usage mode"
depends on SECURE_FLASH_ENC_ENABLED
@@ -435,7 +615,7 @@ menu "Security features"
Select Release mode only for production or manufacturing. Once enabled you can not reflash using UART
bootloader
Refer to https://docs.espressif.com/projects/esp-idf/en/latest/security/secure-boot.html and
Refer to the Secure Boot section of the ESP-IDF Programmer's Guide for this version and
https://docs.espressif.com/projects/esp-idf/en/latest/security/flash-encryption.html for details.
config SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT
@@ -444,6 +624,7 @@ menu "Security features"
config SECURE_FLASH_ENCRYPTION_MODE_RELEASE
bool "Release"
select SECURE_ENABLE_SECURE_ROM_DL_MODE if SECURE_TARGET_HAS_SECURE_ROM_DL_MODE && !SECURE_DISABLE_ROM_DL_MODE # NOERROR
select PARTITION_TABLE_MD5 if !ESP32_COMPATIBLE_PRE_V3_1_BOOTLOADERS
endchoice
@@ -459,7 +640,7 @@ menu "Security features"
config SECURE_BOOT_ALLOW_ROM_BASIC
bool "Leave ROM BASIC Interpreter available on reset"
depends on SECURE_BOOT_INSECURE || SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT
depends on (SECURE_BOOT_INSECURE || SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT) && IDF_TARGET_ESP32
default N
help
By default, the BASIC ROM Console starts on reset if no valid bootloader is
@@ -498,6 +679,39 @@ menu "Security features"
image to this length. It is generally not recommended to set this option, unless you have a legacy
partitioning scheme which doesn't support 64KB aligned partition lengths.
config SECURE_BOOT_V2_ALLOW_EFUSE_RD_DIS
bool "Allow additional read protecting of efuses"
depends on SECURE_BOOT_INSECURE && SECURE_BOOT_V2_ENABLED
help
If not set (default, recommended), on first boot the bootloader will burn the WR_DIS_RD_DIS
efuse when Secure Boot is enabled. This prevents any more efuses from being read protected.
If this option is set, it will remain possible to write the EFUSE_RD_DIS efuse field after Secure
Boot is enabled. This may allow an attacker to read-protect the BLK2 efuse (for ESP32) and
BLOCK4-BLOCK10 (i.e. BLOCK_KEY0-BLOCK_KEY5)(for other chips) holding the public key digest, causing an
immediate denial of service and possibly allowing an additional fault injection attack to
bypass the signature protection.
NOTE: Once a BLOCK is read-protected, the application will read all zeros from that block
NOTE: If "UART ROM download mode (Permanently disabled (recommended))" or
"UART ROM download mode (Permanently switch to Secure mode (recommended))" is set,
then it is __NOT__ possible to read/write efuses using espefuse.py utility.
However, efuse can be read/written from the application
config SECURE_INSECURE_ALLOW_DL_MODE
bool "Don't automatically restrict UART download mode"
depends on SECURE_BOOT_INSECURE && SECURE_BOOT_V2_ENABLED
default N
help
By default, enabling either flash encryption in release mode or secure boot will automatically
disable UART download mode on ESP32 ECO3, or enable secure download mode on newer chips.
This is recommended to reduce the attack surface of the chip.
To allow the full UART download mode to stay enabled, enable this option and ensure
the options SECURE_DISABLE_ROM_DL_MODE and SECURE_ENABLE_SECURE_ROM_DL_MODE are disabled as applicable.
This is not recommended.
config SECURE_FLASH_UART_BOOTLOADER_ALLOW_ENC
bool "Leave UART bootloader encryption enabled"
depends on SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT
@@ -510,7 +724,7 @@ menu "Security features"
config SECURE_FLASH_UART_BOOTLOADER_ALLOW_DEC
bool "Leave UART bootloader decryption enabled"
depends on SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT
depends on SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT && IDF_TARGET_ESP32
default N
help
If not set (default), the bootloader will permanently disable UART bootloader decryption access on
@@ -547,7 +761,7 @@ menu "Security features"
config SECURE_DISABLE_ROM_DL_MODE
bool "Permanently disable ROM Download Mode"
depends on ESP32_REV_MIN_3
depends on !IDF_TARGET_ESP32 || ESP32_REV_MIN_3
default n
help
If set, during startup the app will burn an eFuse bit to permanently disable the UART ROM
@@ -562,5 +776,30 @@ menu "Security features"
It is also possible to permanently disable Download Mode by calling
esp_efuse_disable_rom_download_mode() at runtime.
config SECURE_ENABLE_SECURE_ROM_DL_MODE
bool "Permanently switch to ROM UART Secure Download mode"
depends on SECURE_TARGET_HAS_SECURE_ROM_DL_MODE && !SECURE_DISABLE_ROM_DL_MODE
help
If set, during startup the app will burn an eFuse bit to permanently switch the UART ROM
Download Mode into a separate Secure Download mode. This option can only work if
Download Mode is not already disabled by eFuse.
Secure Download mode limits the use of Download Mode functions to simple flash read,
write and erase operations, plus a command to return a summary of currently enabled
security features.
Secure Download mode is not compatible with the esptool.py flasher stub feature,
espefuse.py, read/writing memory or registers, encrypted download, or any other
features that interact with unsupported Download Mode commands.
Secure Download mode should be enabled in any application where Flash Encryption
and/or Secure Boot is enabled. Disabling this option does not immediately cancel
the benefits of the security features, but it increases the potential "attack
surface" for an attacker to try and bypass them with a successful physical attack.
It is also possible to enable secure download mode at runtime by calling
esp_efuse_enable_rom_secure_download_mode()
endmenu # Security features

View File

@@ -45,7 +45,7 @@ clean: bootloader-clean
bootloader-list-components:
$(BOOTLOADER_MAKE) list-components
ifndef CONFIG_SECURE_BOOT_ENABLED
ifndef CONFIG_SECURE_BOOT
# If secure boot disabled, bootloader flashing is integrated
# with 'make flash' and no warnings are printed.
@@ -102,7 +102,7 @@ endif
bootloader: $(BOOTLOADER_DIGEST_BIN)
@echo $(SEPARATOR)
@echo "Bootloader built and secure digest generated. First time flash command is:"
@echo "$(ESPEFUSEPY) burn_key secure_boot $(SECURE_BOOTLOADER_KEY)"
@echo "$(ESPEFUSEPY) burn_key secure_boot_v1 $(SECURE_BOOTLOADER_KEY)"
@echo "$(ESPTOOLPY_WRITE_FLASH) $(BOOTLOADER_OFFSET) $(BOOTLOADER_BIN)"
@echo $(SEPARATOR)
@echo "To reflash the bootloader after initial flash:"
@@ -115,13 +115,35 @@ $(BOOTLOADER_DIGEST_BIN): $(BOOTLOADER_BIN) $(SECURE_BOOTLOADER_KEY) | check_pyt
@echo "DIGEST $(notdir $@)"
$(ESPSECUREPY) digest_secure_bootloader -k $(SECURE_BOOTLOADER_KEY) -o $@ $<
else # CONFIG_SECURE_BOOT_ENABLED && !CONFIG_SECURE_BOOTLOADER_REFLASHABLE && !CONFIG_SECURE_BOOTLOADER_ONE_TIME_FLASH
else ifdef CONFIG_SECURE_BOOT_V2_ENABLED
BOOTLOADER_SIGNED_BIN := $(BOOTLOADER_BUILD_DIR)/bootloader-signed.bin
ifdef CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES
bootloader: $(BOOTLOADER_BIN) $(SDKCONFIG_MAKEFILE) | check_python_dependencies
$(ESPSECUREPY) sign_data --keyfile $(SECURE_BOOT_SIGNING_KEY) --version 2 \
-o $(BOOTLOADER_SIGNED_BIN) $(BOOTLOADER_BIN)
else
bootloader: $(BOOTLOADER_BIN) $(SDKCONFIG_MAKEFILE) | check_python_dependencies
@echo "Bootloader not signed. Sign the bootloader before flashing."
@echo "To sign the bootloader, you can use this command:"
@echo "espsecure.py sign_data --keyfile SECURE_BOOT_SIGNING_KEY --version 2 $(BOOTLOADER_BIN)"
endif
@echo $(SEPARATOR)
@echo "Use the following command to flash the bootloader:"
ifdef CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES
@echo "$(ESPTOOLPY_WRITE_FLASH) $(BOOTLOADER_OFFSET) $(BOOTLOADER_SIGNED_BIN)"
else
@echo "$(ESPTOOLPY_WRITE_FLASH) $(BOOTLOADER_OFFSET) $(BOOTLOADER_BIN)"
endif
@echo $(SEPARATOR)
else # CONFIG_SECURE_BOOT && !CONFIG_SECURE_BOOTLOADER_REFLASHABLE \
&& !CONFIG_SECURE_BOOTLOADER_ONE_TIME_FLASH && !CONFIG_SECURE_SIGNED_APPS_RSA_SCHEME
bootloader:
@echo "Invalid bootloader target: bad sdkconfig?"
@exit 1
endif
ifndef CONFIG_SECURE_BOOT_ENABLED
ifndef CONFIG_SECURE_BOOT
# don't build bootloader by default if secure boot is enabled
all_binaries: $(BOOTLOADER_BIN)
endif
@@ -131,3 +153,8 @@ bootloader-clean: $(SDKCONFIG_MAKEFILE)
ifdef CONFIG_SECURE_BOOTLOADER_REFLASHABLE
rm -f $(SECURE_BOOTLOADER_KEY) $(BOOTLOADER_DIGEST_BIN)
endif
ifdef CONFIG_SECURE_SIGNED_APPS_RSA_SCHEME
ifdef CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES
rm -f $(BOOTLOADER_SIGNED_BIN)
endif
endif

View File

@@ -1,4 +0,0 @@
--flash_mode ${ESPFLASHMODE}
--flash_size ${ESPFLASHSIZE}
--flash_freq ${ESPFLASHFREQ}
${OFFSET} ${IMAGE}

View File

@@ -1,7 +1,7 @@
set(BOOTLOADER_OFFSET 0x1000)
# Do not generate flash file when building bootloader
if(BOOTLOADER_BUILD)
if(BOOTLOADER_BUILD OR NOT CONFIG_APP_BUILD_BOOTLOADER)
return()
endif()
@@ -19,8 +19,8 @@ set(bootloader_binary_files
idf_build_get_property(project_dir PROJECT_DIR)
# There are some additional processing when CONFIG_CONFIG_SECURE_SIGNED_APPS. This happens
# when either CONFIG_SECURE_BOOT_ENABLED or SECURE_BOOT_BUILD_SIGNED_BINARIES.
# There are some additional processing when CONFIG_SECURE_SIGNED_APPS. This happens
# when either CONFIG_SECURE_BOOT_V1_ENABLED or CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES.
# For both cases, the user either sets binaries to be signed during build or not
# using CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES.
#
@@ -29,7 +29,13 @@ idf_build_get_property(project_dir PROJECT_DIR)
if(CONFIG_SECURE_SIGNED_APPS)
add_custom_target(gen_secure_boot_keys)
if(CONFIG_SECURE_BOOT_ENABLED)
if(CONFIG_SECURE_SIGNED_APPS_ECDSA_SCHEME)
set(secure_apps_signing_scheme "1")
elseif(CONFIG_SECURE_SIGNED_APPS_RSA_SCHEME)
set(secure_apps_signing_scheme "2")
endif()
if(CONFIG_SECURE_BOOT_V1_ENABLED)
# Check that the configuration is sane
if((CONFIG_SECURE_BOOTLOADER_REFLASHABLE AND CONFIG_SECURE_BOOTLOADER_ONE_TIME_FLASH) OR
(NOT CONFIG_SECURE_BOOTLOADER_REFLASHABLE AND NOT CONFIG_SECURE_BOOTLOADER_ONE_TIME_FLASH))
@@ -60,16 +66,18 @@ if(CONFIG_SECURE_SIGNED_APPS)
# (to pick up a new signing key if one exists, etc.)
fail_at_build_time(gen_secure_boot_signing_key
"Secure Boot Signing Key ${CONFIG_SECURE_BOOT_SIGNING_KEY} does not exist. Generate using:"
"\tespsecure.py generate_signing_key ${CONFIG_SECURE_BOOT_SIGNING_KEY}")
"\tespsecure.py generate_signing_key --version ${secure_apps_signing_scheme} \
${CONFIG_SECURE_BOOT_SIGNING_KEY}")
else()
add_custom_target(gen_secure_boot_signing_key)
endif()
set(SECURE_BOOT_SIGNING_KEY ${secure_boot_signing_key}) # needed by some other components
set(sign_key_arg "-DSECURE_BOOT_SIGNING_KEY=${secure_boot_signing_key}")
set(ver_key_arg)
add_dependencies(gen_secure_boot_keys gen_secure_boot_signing_key)
else()
elseif(CONFIG_SECURE_SIGNED_APPS_ECDSA_SCHEME)
get_filename_component(secure_boot_verification_key
${CONFIG_SECURE_BOOT_VERIFICATION_KEY}
@@ -82,15 +90,19 @@ if(CONFIG_SECURE_SIGNED_APPS)
fail_at_build_time(gen_secure_boot_verification_key
"Secure Boot Verification Public Key ${CONFIG_SECURE_BOOT_VERIFICATION_KEY} does not exist."
"\tThis can be extracted from the private signing key."
"\tSee docs/security/secure-boot.rst for details.")
"\tSee docs/security/secure-boot-v1.rst for details.")
else()
add_custom_target(gen_secure_boot_verification_key)
endif()
set(sign_key_arg)
set(ver_key_arg "-DSECURE_BOOT_VERIFICATION_KEY=${secure_boot_verification_key}")
add_dependencies(gen_secure_boot_keys gen_secure_boot_verification_key)
endif()
else()
set(sign_key_arg)
set(ver_key_arg)
endif()
idf_build_get_property(idf_path IDF_PATH)
@@ -102,8 +114,8 @@ idf_build_get_property(extra_cmake_args EXTRA_CMAKE_ARGS)
externalproject_add(bootloader
SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/subproject"
BINARY_DIR "${BOOTLOADER_BUILD_DIR}"
CMAKE_ARGS -DSDKCONFIG=${sdkconfig} -DIDF_PATH=${idf_path} -DIDF_TARGET=${idf_target} -DPYTHON=${python}
-DPYTHON_DEPS_CHECKED=1
CMAKE_ARGS -DSDKCONFIG=${sdkconfig} -DIDF_PATH=${idf_path} -DIDF_TARGET=${idf_target}
-DPYTHON_DEPS_CHECKED=1 -DPYTHON=${python}
-DEXTRA_COMPONENT_DIRS=${CMAKE_CURRENT_LIST_DIR}
${sign_key_arg} ${ver_key_arg}
# LEGACY_INCLUDE_COMMON_HEADERS has to be passed in via cache variable since

View File

@@ -20,3 +20,6 @@ CONFIG_FLASH_ENCRYPTION_INSECURE CONFIG_SECURE_FLASH_
CONFIG_FLASH_ENCRYPTION_UART_BOOTLOADER_ALLOW_ENCRYPT CONFIG_SECURE_FLASH_UART_BOOTLOADER_ALLOW_ENC
CONFIG_FLASH_ENCRYPTION_UART_BOOTLOADER_ALLOW_DECRYPT CONFIG_SECURE_FLASH_UART_BOOTLOADER_ALLOW_DEC
CONFIG_FLASH_ENCRYPTION_UART_BOOTLOADER_ALLOW_CACHE CONFIG_SECURE_FLASH_UART_BOOTLOADER_ALLOW_CACHE
# Secure Boot Scheme
CONFIG_SECURE_BOOT_ENABLED CONFIG_SECURE_BOOT_V1_ENABLED

View File

@@ -29,9 +29,16 @@ project(bootloader)
idf_build_set_property(COMPILE_DEFINITIONS "-DBOOTLOADER_BUILD=1" APPEND)
idf_build_set_property(COMPILE_OPTIONS "-fno-stack-protector" APPEND)
idf_component_get_property(main_args esptool_py FLASH_ARGS)
idf_component_get_property(sub_args esptool_py FLASH_SUB_ARGS)
# String for printing flash command
string(REPLACE ";" " " esptoolpy_write_flash
"${ESPTOOLPY} --port=(PORT) --baud=(BAUD) ${main_args} "
"write_flash ${sub_args}")
string(REPLACE ";" " " espsecurepy "${ESPSECUREPY}")
string(REPLACE ";" " " espefusepy "${ESPEFUSEPY}")
set(esptoolpy_write_flash "${ESPTOOLPY_WRITE_FLASH_STR}")
if(CONFIG_SECURE_BOOTLOADER_REFLASHABLE)
if(CONFIG_SECURE_BOOTLOADER_KEY_ENCODING_192BIT)
@@ -83,6 +90,39 @@ if(CONFIG_SECURE_BOOTLOADER_REFLASHABLE)
add_custom_target (gen_bootloader_digest_bin ALL DEPENDS "${bootloader_digest_bin}")
endif()
if(CONFIG_SECURE_BOOT_V2_ENABLED)
if(CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES)
get_filename_component(secure_boot_signing_key
"${SECURE_BOOT_SIGNING_KEY}" ABSOLUTE BASE_DIR "${project_dir}")
if(NOT EXISTS "${secure_boot_signing_key}")
message(FATAL_ERROR
"Secure Boot Signing Key Not found."
"\nGenerate the Secure Boot V2 RSA-PSS 3072 Key."
"\nTo generate one, you can use this command:"
"\n\t${espsecurepy} generate_signing_key --version 2 ${SECURE_BOOT_SIGNING_KEY}")
endif()
set(bootloader_unsigned_bin "bootloader-unsigned.bin")
add_custom_command(OUTPUT ".signed_bin_timestamp"
COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_BINARY_DIR}/${PROJECT_BIN}" "${CMAKE_BINARY_DIR}/${bootloader_unsigned_bin}"
COMMAND ${ESPSECUREPY} sign_data --version 2 --keyfile "${secure_boot_signing_key}"
-o "${CMAKE_BINARY_DIR}/${PROJECT_BIN}" "${CMAKE_BINARY_DIR}/${bootloader_unsigned_bin}"
COMMAND ${CMAKE_COMMAND} -E echo "Generated signed binary image ${build_dir}/${PROJECT_BIN}"
"from ${CMAKE_BINARY_DIR}/${bootloader_unsigned_bin}"
COMMAND ${CMAKE_COMMAND} -E md5sum "${CMAKE_BINARY_DIR}/${PROJECT_BIN}" > "${CMAKE_BINARY_DIR}/.signed_bin_timestamp"
DEPENDS "${build_dir}/.bin_timestamp"
VERBATIM
COMMENT "Generated the signed Bootloader")
else()
add_custom_command(OUTPUT ".signed_bin_timestamp"
VERBATIM
COMMENT "Bootloader generated but not signed")
endif()
add_custom_target (gen_signed_bootloader ALL DEPENDS "${build_dir}/.signed_bin_timestamp")
endif()
if(CONFIG_SECURE_BOOTLOADER_ONE_TIME_FLASH)
add_custom_command(TARGET bootloader.elf POST_BUILD
COMMAND ${CMAKE_COMMAND} -E echo
@@ -107,7 +147,7 @@ elseif(CONFIG_SECURE_BOOTLOADER_REFLASHABLE)
COMMAND ${CMAKE_COMMAND} -E echo
"Burn secure boot key to efuse using:"
COMMAND ${CMAKE_COMMAND} -E echo
"\t${espefusepy} burn_key secure_boot ${secure_bootloader_key}"
"\t${espefusepy} burn_key secure_boot_v1 ${secure_bootloader_key}"
COMMAND ${CMAKE_COMMAND} -E echo
"First time flash command is:"
COMMAND ${CMAKE_COMMAND} -E echo
@@ -126,4 +166,36 @@ elseif(CONFIG_SECURE_BOOTLOADER_REFLASHABLE)
"* Not recommended to re-use the same secure boot keyfile on multiple production devices."
DEPENDS gen_secure_bootloader_key gen_bootloader_digest_bin
VERBATIM)
elseif(CONFIG_SECURE_BOOT_V2_ENABLED AND CONFIG_IDF_TARGET_ESP32S2)
add_custom_command(TARGET bootloader.elf POST_BUILD
COMMAND ${CMAKE_COMMAND} -E echo
"=============================================================================="
COMMAND ${CMAKE_COMMAND} -E echo
"Bootloader built. Secure boot enabled, so bootloader not flashed automatically."
COMMAND ${CMAKE_COMMAND} -E echo
"To sign the bootloader with additional private keys."
COMMAND ${CMAKE_COMMAND} -E echo
"\t${espsecurepy} sign_data -k secure_boot_signing_key2.pem -v 2 --append_signatures -o signed_bootloader.bin build/bootloader/bootloader.bin"
COMMAND ${CMAKE_COMMAND} -E echo
"Secure boot enabled, so bootloader not flashed automatically."
COMMAND ${CMAKE_COMMAND} -E echo
"\t${esptoolpy_write_flash} ${BOOTLOADER_OFFSET} ${CMAKE_BINARY_DIR}/bootloader.bin"
COMMAND ${CMAKE_COMMAND} -E echo
"=============================================================================="
DEPENDS gen_signed_bootloader
VERBATIM)
elseif(CONFIG_SECURE_BOOT_V2_ENABLED)
add_custom_command(TARGET bootloader.elf POST_BUILD
COMMAND ${CMAKE_COMMAND} -E echo
"=============================================================================="
COMMAND ${CMAKE_COMMAND} -E echo
"Bootloader built. Secure boot enabled, so bootloader not flashed automatically."
COMMAND ${CMAKE_COMMAND} -E echo
"Secure boot enabled, so bootloader not flashed automatically."
COMMAND ${CMAKE_COMMAND} -E echo
"\t${esptoolpy_write_flash} ${BOOTLOADER_OFFSET} ${CMAKE_BINARY_DIR}/bootloader.bin"
COMMAND ${CMAKE_COMMAND} -E echo
"=============================================================================="
DEPENDS gen_signed_bootloader
VERBATIM)
endif()

View File

@@ -1,3 +1,3 @@
# only compile the "micro-ecc/uECC.c" source file
idf_component_register(SRCS "micro-ecc/uECC.c"
INCLUDE_DIRS micro-ecc)
# only compile the "uECC_verify_antifault.c" file which includes the "micro-ecc/uECC.c" source file
idf_component_register(SRCS "uECC_verify_antifault.c"
INCLUDE_DIRS . micro-ecc)

View File

@@ -1,8 +1,6 @@
# only compile the micro-ecc/uECC.c source file
# (SRCDIRS is needed so build system can find the source file)
COMPONENT_SRCDIRS := micro-ecc
COMPONENT_OBJS := micro-ecc/uECC.o
# only compile the "uECC_verify_antifault.c" file which includes the "micro-ecc/uECC.c" source file
COMPONENT_SRCDIRS := .
COMPONENT_ADD_INCLUDEDIRS := micro-ecc
COMPONENT_ADD_INCLUDEDIRS := . micro-ecc
COMPONENT_SUBMODULES := micro-ecc

View File

@@ -0,0 +1,141 @@
/* Copyright 2014, Kenneth MacKay. Licensed under the BSD 2-clause license.
Modifications Copyright 2020, Espressif Systems (Shanghai) PTE LTD. Licensed under the BSD
2-clause license.
*/
/* uECC_verify() calls a number of static functions form here and
uses other definitions, so we just build that whole source file here and then append
our modified version uECC_verify_antifault(). */
#include "micro-ecc/uECC.c"
/* Version of uECC_verify() which also copies message_hash into verified_hash,
but only if the signature is valid. Does this in an FI resistant way.
*/
int uECC_verify_antifault(const uint8_t *public_key,
const uint8_t *message_hash,
unsigned hash_size,
const uint8_t *signature,
uECC_Curve curve,
uint8_t *verified_hash) {
uECC_word_t u1[uECC_MAX_WORDS], u2[uECC_MAX_WORDS];
uECC_word_t z[uECC_MAX_WORDS];
uECC_word_t sum[uECC_MAX_WORDS * 2];
uECC_word_t rx[uECC_MAX_WORDS];
uECC_word_t ry[uECC_MAX_WORDS];
uECC_word_t tx[uECC_MAX_WORDS];
uECC_word_t ty[uECC_MAX_WORDS];
uECC_word_t tz[uECC_MAX_WORDS];
const uECC_word_t *points[4];
const uECC_word_t *point;
bitcount_t num_bits;
bitcount_t i;
#if uECC_VLI_NATIVE_LITTLE_ENDIAN
uECC_word_t *_public = (uECC_word_t *)public_key;
#else
uECC_word_t _public[uECC_MAX_WORDS * 2];
#endif
uECC_word_t r[uECC_MAX_WORDS], s[uECC_MAX_WORDS];
wordcount_t num_words = curve->num_words;
wordcount_t num_n_words = BITS_TO_WORDS(curve->num_n_bits);
rx[num_n_words - 1] = 0;
r[num_n_words - 1] = 0;
s[num_n_words - 1] = 0;
#if uECC_VLI_NATIVE_LITTLE_ENDIAN
bcopy((uint8_t *) r, signature, curve->num_bytes);
bcopy((uint8_t *) s, signature + curve->num_bytes, curve->num_bytes);
#else
uECC_vli_bytesToNative(_public, public_key, curve->num_bytes);
uECC_vli_bytesToNative(
_public + num_words, public_key + curve->num_bytes, curve->num_bytes);
uECC_vli_bytesToNative(r, signature, curve->num_bytes);
uECC_vli_bytesToNative(s, signature + curve->num_bytes, curve->num_bytes);
#endif
/* r, s must not be 0. */
if (uECC_vli_isZero(r, num_words) || uECC_vli_isZero(s, num_words)) {
return 0;
}
/* r, s must be < n. */
if (uECC_vli_cmp(curve->n, r, num_n_words) != 1 ||
uECC_vli_cmp(curve->n, s, num_n_words) != 1) {
return 0;
}
/* Calculate u1 and u2. */
uECC_vli_modInv(z, s, curve->n, num_n_words); /* z = 1/s */
u1[num_n_words - 1] = 0;
bits2int(u1, message_hash, hash_size, curve);
uECC_vli_modMult(u1, u1, z, curve->n, num_n_words); /* u1 = e/s */
uECC_vli_modMult(u2, r, z, curve->n, num_n_words); /* u2 = r/s */
/* Calculate sum = G + Q. */
uECC_vli_set(sum, _public, num_words);
uECC_vli_set(sum + num_words, _public + num_words, num_words);
uECC_vli_set(tx, curve->G, num_words);
uECC_vli_set(ty, curve->G + num_words, num_words);
uECC_vli_modSub(z, sum, tx, curve->p, num_words); /* z = x2 - x1 */
XYcZ_add(tx, ty, sum, sum + num_words, curve);
uECC_vli_modInv(z, z, curve->p, num_words); /* z = 1/z */
apply_z(sum, sum + num_words, z, curve);
/* Use Shamir's trick to calculate u1*G + u2*Q */
points[0] = 0;
points[1] = curve->G;
points[2] = _public;
points[3] = sum;
num_bits = smax(uECC_vli_numBits(u1, num_n_words),
uECC_vli_numBits(u2, num_n_words));
point = points[(!!uECC_vli_testBit(u1, num_bits - 1)) |
((!!uECC_vli_testBit(u2, num_bits - 1)) << 1)];
uECC_vli_set(rx, point, num_words);
uECC_vli_set(ry, point + num_words, num_words);
uECC_vli_clear(z, num_words);
z[0] = 1;
for (i = num_bits - 2; i >= 0; --i) {
uECC_word_t index;
curve->double_jacobian(rx, ry, z, curve);
index = (!!uECC_vli_testBit(u1, i)) | ((!!uECC_vli_testBit(u2, i)) << 1);
point = points[index];
if (point) {
uECC_vli_set(tx, point, num_words);
uECC_vli_set(ty, point + num_words, num_words);
apply_z(tx, ty, z, curve);
uECC_vli_modSub(tz, rx, tx, curve->p, num_words); /* Z = x2 - x1 */
XYcZ_add(tx, ty, rx, ry, curve);
uECC_vli_modMult_fast(z, z, tz, curve);
}
}
uECC_vli_modInv(z, z, curve->p, num_words); /* Z = 1/Z */
apply_z(rx, ry, z, curve);
/* v = x1 (mod n) */
if (uECC_vli_cmp(curve->n, rx, num_n_words) != 1) {
uECC_vli_sub(rx, rx, curve->n, num_n_words);
}
/* Anti-FI addition. Copy message_hash into verified_hash, but do it in a
way that it will only happen if v == r (ie, rx == r)
*/
const uECC_word_t *mhash_words = (const uECC_word_t *)message_hash;
uECC_word_t *vhash_words = (uECC_word_t *)verified_hash;
unsigned hash_words = hash_size / sizeof(uECC_word_t);
for (int w = 0; w < hash_words; w++) {
/* note: using curve->num_words here to encourage compiler to re-read this variable */
vhash_words[w] = mhash_words[w] ^ rx[w % curve->num_words] ^ r[w % curve->num_words];
}
/* Curve may be longer than hash, in which case keep reading the rest of the bytes */
for (int w = hash_words; w < curve->num_words; w++) {
vhash_words[w % hash_words] |= rx[w] ^ r[w];
}
/* Accept only if v == r. */
return (int)(uECC_vli_equal(rx, r, num_words));
}

View File

@@ -0,0 +1,18 @@
/* Copyright 2014, Kenneth MacKay. Licensed under the BSD 2-clause license.
Modifications Copyright 2020, Espressif Systems (Shanghai) PTE LTD. Licensed under the BSD
2-clause license.
*/
#pragma once
#include "uECC.h"
/* Version uECC_verify() that also copies message_hash to verified_hash
if the signature is valid, and does it in a way that is harder to attack
with fault injection.
*/
int uECC_verify_antifault(const uint8_t *public_key,
const uint8_t *message_hash,
unsigned hash_size,
const uint8_t *signature,
uECC_Curve curve,
uint8_t *verified_hash);

View File

@@ -2,7 +2,8 @@ idf_component_register(SRCS "bootloader_start.c"
REQUIRES bootloader bootloader_support)
idf_build_get_property(target IDF_TARGET)
set(scripts "${target}.bootloader.ld"
"${target}.bootloader.rom.ld")
set(scripts "ld/${target}/bootloader.ld"
"ld/${target}/bootloader.rom.ld")
target_linker_script(${COMPONENT_LIB} INTERFACE "${scripts}")
target_linker_script(${COMPONENT_LIB} INTERFACE "${scripts}")

View File

@@ -1,4 +0,0 @@
# Submodules normally added in component.mk, but fully qualified
# paths can be added at this level (we need binary librtc to be
# available to link bootloader).
COMPONENT_SUBMODULES += $(IDF_PATH)/components/esp_wifi/lib_esp32

View File

@@ -1,4 +1,4 @@
// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD
// Copyright 2015-2019 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.
@@ -11,39 +11,39 @@
// 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 <stdint.h>
#include <stdbool.h>
#include "esp_log.h"
#include "esp32/rom/gpio.h"
#include "esp32/rom/spi_flash.h"
#include "bootloader_config.h"
#include "bootloader_init.h"
#include "bootloader_utility.h"
#include "bootloader_common.h"
#include "sdkconfig.h"
#include "esp_image_format.h"
#include "esp32/rom/rtc.h"
static const char* TAG = "boot";
static const char *TAG = "boot";
static int select_partition_number (bootloader_state_t *bs);
static int select_partition_number(bootloader_state_t *bs);
static int selected_boot_partition(const bootloader_state_t *bs);
/*
* We arrive here after the ROM bootloader finished loading this second stage bootloader from flash.
* The hardware is mostly uninitialized, flash cache is down and the app CPU is in reset.
* We do have a stack, so we can do the initialization in C.
*/
void __attribute__((noreturn)) call_start_cpu0()
void __attribute__((noreturn)) call_start_cpu0(void)
{
// 1. Hardware initialization
if (bootloader_init() != ESP_OK) {
bootloader_reset();
}
#ifdef CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP
// If this boot is a wake up from the deep sleep then go to the short way,
// try to load the application which worked before deep sleep.
// It skips a lot of checks due to it was done before (while first boot).
bootloader_utility_load_boot_image_from_deep_sleep();
// If it is not successful try to load an application as usual.
#endif
// 2. Select the number of boot partition
bootloader_state_t bs = { 0 };
bootloader_state_t bs = {0};
int boot_index = select_partition_number(&bs);
if (boot_index == INVALID_INDEX) {
bootloader_reset();
@@ -54,7 +54,7 @@ void __attribute__((noreturn)) call_start_cpu0()
}
// Select the number of boot partition
static int select_partition_number (bootloader_state_t *bs)
static int select_partition_number(bootloader_state_t *bs)
{
// 1. Load partition table
if (!bootloader_utility_load_partition_table(bs)) {
@@ -76,7 +76,7 @@ static int selected_boot_partition(const bootloader_state_t *bs)
if (boot_index == INVALID_INDEX) {
return boot_index; // Unrecoverable failure (not due to corrupt ota data or bad partition contents)
}
if (rtc_get_reset_reason(0) != DEEPSLEEP_RESET) {
if (bootloader_common_get_reset_reason(0) != DEEPSLEEP_RESET) {
// Factory firmware.
#ifdef CONFIG_BOOTLOADER_FACTORY_RESET
if (bootloader_common_check_long_hold_gpio(CONFIG_BOOTLOADER_NUM_PIN_FACTORY_RESET, CONFIG_BOOTLOADER_HOLD_TIME_GPIO) == 1) {
@@ -93,7 +93,7 @@ static int selected_boot_partition(const bootloader_state_t *bs)
return bootloader_utility_get_selected_boot_partition(bs);
}
#endif
// TEST firmware.
// TEST firmware.
#ifdef CONFIG_BOOTLOADER_APP_TEST
if (bootloader_common_check_long_hold_gpio(CONFIG_BOOTLOADER_NUM_PIN_APP_TEST, CONFIG_BOOTLOADER_HOLD_TIME_GPIO) == 1) {
ESP_LOGI(TAG, "Detect a boot condition of the test firmware");
@@ -115,7 +115,7 @@ static int selected_boot_partition(const bootloader_state_t *bs)
}
// Return global reent struct if any newlib functions are linked to bootloader
struct _reent* __getreent() {
struct _reent *__getreent(void)
{
return _GLOBAL_REENT;
}

View File

@@ -6,14 +6,20 @@
#
LINKER_SCRIPTS := \
$(IDF_TARGET).bootloader.ld \
$(IDF_TARGET).bootloader.rom.ld \
$(COMPONENT_PATH)/ld/$(IDF_TARGET)/bootloader.ld \
$(COMPONENT_PATH)/ld/$(IDF_TARGET)/bootloader.rom.ld \
$(IDF_PATH)/components/esp_rom/$(IDF_TARGET)/ld/$(IDF_TARGET).rom.ld \
$(IDF_PATH)/components/esp_rom/$(IDF_TARGET)/ld/$(IDF_TARGET).rom.newlib-funcs.ld \
$(IDF_PATH)/components/$(IDF_TARGET)/ld/$(IDF_TARGET).peripherals.ld
ifndef CONFIG_SPI_FLASH_ROM_DRIVER_PATCH
LINKER_SCRIPTS += $(IDF_PATH)/components/esp_rom/$(IDF_TARGET)/ld/$(IDF_TARGET).rom.spiflash.ld
# SPI driver patch for ROM is only needed in ESP32
ifdef CONFIG_IDF_TARGET_ESP32
ifndef CONFIG_SPI_FLASH_ROM_DRIVER_PATCH
LINKER_SCRIPTS += $(IDF_PATH)/components/esp_rom/$(IDF_TARGET)/ld/$(IDF_TARGET).rom.spiflash.ld
endif
ifdef CONFIG_ESP32_REV_MIN_3
LINKER_SCRIPTS += $(IDF_PATH)/components/esp_rom/$(IDF_TARGET)/ld/$(IDF_TARGET).rom.eco3.ld
endif
endif
COMPONENT_ADD_LDFLAGS += -L $(COMPONENT_PATH) $(addprefix -T ,$(LINKER_SCRIPTS))

View File

@@ -11,8 +11,6 @@ Linker file used to link the bootloader.
MEMORY
{
/* I/O */
dport0_seg (RW) : org = 0x3FF00000, len = 0x10
/* IRAM POOL1, used for APP CPU cache. Bootloader runs from here during the final stage of loading the app because APP CPU is still held in reset, the main app enables APP CPU cache */
iram_loader_seg (RWX) : org = 0x40078000, len = 0x8000 /* 32KB, APP CPU cache */
/* 63kB, IRAM. We skip the first 1k to prevent the entry point being
@@ -44,6 +42,8 @@ SECTIONS
*libbootloader_support.a:bootloader_common.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_flash.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_random.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_random*.*(.literal.bootloader_random_disable .text.bootloader_random_disable)
*libbootloader_support.a:bootloader_efuse_esp32.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_utility.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_sha.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:esp_image_format.*(.literal .text .literal.* .text.*)
@@ -53,7 +53,7 @@ SECTIONS
*libbootloader_support.a:secure_boot_signatures.*(.literal .text .literal.* .text.*)
*libmicro-ecc.a:*.*(.literal .text .literal.* .text.*)
*libspi_flash.a:*.*(.literal .text .literal.* .text.*)
*libsoc.a:rtc_wdt.*(.literal .text .literal.* .text.*)
*libsoc.a:wdt_hal_iram.*(.literal .text .literal.* .text.*)
*libsoc.a:rtc_clk.*(.literal .text .literal.* .text.*)
*libefuse.a:*.*(.literal .text .literal.* .text.*)
*(.fini.literal)
@@ -75,6 +75,7 @@ SECTIONS
.dram0.bss (NOLOAD) :
{
. = ALIGN (8);
_dram_start = ABSOLUTE(.);
_bss_start = ABSOLUTE(.);
*(.dynsbss)
*(.sbss)
@@ -151,6 +152,7 @@ SECTIONS
*(.gnu.linkonce.lit4.*)
_lit4_end = ABSOLUTE(.);
. = ALIGN(4);
_dram_end = ABSOLUTE(.);
} >dram_seg
.iram.text :
@@ -174,4 +176,23 @@ SECTIONS
_etext = .;
} > iram_seg
/** This section will be used by the debugger and disassembler to get more information
* about raw data present in the code.
* Indeed, it may be required to add some padding at some points in the code
* in order to align a branch/jump destination on a particular bound.
* Padding these instructions will generate null bytes that shall be
* interpreted as data, and not code by the debugger or disassembler.
* This section will only be present in the ELF file, not in the final binary
* For more details, check GCC-212
*/
.xt.prop 0 :
{
KEEP (*(.xt.prop .gnu.linkonce.prop.*))
}
.xt.lit 0 :
{
KEEP (*(.xt.lit .gnu.linkonce.p.*))
}
}

View File

@@ -0,0 +1,184 @@
/* Simplified memory map for the bootloader.
* Make sure the bootloader can load into main memory without overwriting itself.
*/
MEMORY
{
iram_seg (RWX) : org = 0x4004c000, len = 0x4000 /* SRAM Block 13 */
iram_loader_seg (RWX) : org = 0x40050000, len = 0x6000 /* SRAM Block 14 & part of 15 */
dram_seg (RW) : org = 0x3FFE6000, len = 0x4B00 /* Part SRAM Blocks 15 & 16, ROM static buffer starts at end of this region (reclaimed after app runs) */
}
/* Default entry point: */
ENTRY(call_start_cpu0);
SECTIONS
{
.iram_loader.text :
{
. = ALIGN (16);
_loader_text_start = ABSOLUTE(.);
*(.stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
*(.iram1 .iram1.*) /* catch stray IRAM_ATTR */
*liblog.a:(.literal .text .literal.* .text.*)
*libgcc.a:(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_common.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_flash.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_random.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_random*.*(.literal.bootloader_random_disable .text.bootloader_random_disable)
*libbootloader_support.a:bootloader_efuse_esp32s2.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_utility.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:bootloader_sha.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:esp_image_format.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:flash_encrypt.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:flash_partitions.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:secure_boot.*(.literal .text .literal.* .text.*)
*libbootloader_support.a:secure_boot_signatures.*(.literal .text .literal.* .text.*)
*libmicro-ecc.a:*.*(.literal .text .literal.* .text.*)
*libspi_flash.a:*.*(.literal .text .literal.* .text.*)
*libsoc.a:wdt_hal_iram.*(.literal .text .literal.* .text.*)
*libsoc.a:regi2c_ctrl.*(.literal .text .literal.* .text.*)
*libefuse.a:*.*(.literal .text .literal.* .text.*)
*(.fini.literal)
*(.fini)
*(.gnu.version)
_loader_text_end = ABSOLUTE(.);
} > iram_loader_seg
.iram.text :
{
. = ALIGN (16);
*(.entry.text)
*(.init.literal)
*(.init)
} > iram_seg
/* Shared RAM */
.dram0.bss (NOLOAD) :
{
. = ALIGN (8);
_dram_start = ABSOLUTE(.);
_bss_start = ABSOLUTE(.);
*(.dynsbss)
*(.sbss)
*(.sbss.*)
*(.gnu.linkonce.sb.*)
*(.scommon)
*(.sbss2)
*(.sbss2.*)
*(.gnu.linkonce.sb2.*)
*(.dynbss)
*(.bss)
*(.bss.*)
*(.gnu.linkonce.b.*)
*(COMMON)
. = ALIGN (8);
_bss_end = ABSOLUTE(.);
} >dram_seg
.dram0.data :
{
_data_start = ABSOLUTE(.);
*(.data)
*(.data.*)
*(.gnu.linkonce.d.*)
*(.data1)
*(.sdata)
*(.sdata.*)
*(.gnu.linkonce.s.*)
*(.sdata2)
*(.sdata2.*)
*(.gnu.linkonce.s2.*)
*(.jcr)
_data_end = ABSOLUTE(.);
} >dram_seg
.dram0.rodata :
{
_rodata_start = ABSOLUTE(.);
*(.rodata)
*(.rodata.*)
*(.gnu.linkonce.r.*)
*(.rodata1)
__XT_EXCEPTION_TABLE_ = ABSOLUTE(.);
*(.xt_except_table)
*(.gcc_except_table)
*(.gnu.linkonce.e.*)
*(.gnu.version_r)
*(.eh_frame)
. = (. + 3) & ~ 3;
/* C++ constructor and destructor tables, properly ordered: */
__init_array_start = ABSOLUTE(.);
KEEP (*crtbegin.*(.ctors))
KEEP (*(EXCLUDE_FILE (*crtend.*) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
__init_array_end = ABSOLUTE(.);
KEEP (*crtbegin.*(.dtors))
KEEP (*(EXCLUDE_FILE (*crtend.*) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
/* C++ exception handlers table: */
__XT_EXCEPTION_DESCS_ = ABSOLUTE(.);
*(.xt_except_desc)
*(.gnu.linkonce.h.*)
__XT_EXCEPTION_DESCS_END__ = ABSOLUTE(.);
*(.xt_except_desc_end)
*(.dynamic)
*(.gnu.version_d)
_rodata_end = ABSOLUTE(.);
/* Literals are also RO data. */
_lit4_start = ABSOLUTE(.);
*(*.lit4)
*(.lit4.*)
*(.gnu.linkonce.lit4.*)
_lit4_end = ABSOLUTE(.);
. = ALIGN(4);
_dram_end = ABSOLUTE(.);
} >dram_seg
.iram.text :
{
_stext = .;
_text_start = ABSOLUTE(.);
*(.literal .text .literal.* .text.* .stub .gnu.warning .gnu.linkonce.literal.* .gnu.linkonce.t.*.literal .gnu.linkonce.t.*)
*(.iram .iram.*) /* catch stray IRAM_ATTR */
*(.fini.literal)
*(.fini)
*(.gnu.version)
/** CPU will try to prefetch up to 16 bytes of
* of instructions. This means that any configuration (e.g. MMU, PMS) must allow
* safe access to up to 16 bytes after the last real instruction, add
* dummy bytes to ensure this
*/
. += 16;
_text_end = ABSOLUTE(.);
_etext = .;
} > iram_seg
/** This section will be used by the debugger and disassembler to get more information
* about raw data present in the code.
* Indeed, it may be required to add some padding at some points in the code
* in order to align a branch/jump destination on a particular bound.
* Padding these instructions will generate null bytes that shall be
* interpreted as data, and not code by the debugger or disassembler.
* This section will only be present in the ELF file, not in the final binary
* For more details, check GCC-212
*/
.xt.prop 0 :
{
KEEP (*(.xt.prop .gnu.linkonce.prop.*))
}
.xt.lit 0 :
{
KEEP (*(.xt.lit .gnu.linkonce.p.*))
}
}

View File

@@ -0,0 +1,13 @@
/*
* ESP32S2 ROM address table
* Generated for ROM with MD5sum: 0a2c7ec5109c17884606d23b47045796
*/
PROVIDE (ets_update_cpu_frequency = 0x4000d8a4);
PROVIDE (MD5Final = 0x4000530c);
PROVIDE (MD5Init = 0x4000526c);
PROVIDE (MD5Update = 0x4000528c);
/* bootloader will use following functions from xtensa hal library */
xthal_get_ccount = 0x4001aa90;
xthal_get_ccompare = 0x4001aabc;
xthal_set_ccompare = 0x4001aa98;

View File

@@ -1,42 +1,60 @@
set(srcs
set(srcs
"src/bootloader_clock.c"
"src/bootloader_common.c"
"src/bootloader_flash.c"
"src/bootloader_flash_config.c"
"src/bootloader_mem.c"
"src/bootloader_random.c"
"src/bootloader_random_${IDF_TARGET}.c"
"src/bootloader_utility.c"
"src/esp_image_format.c"
"src/flash_encrypt.c"
"src/flash_partitions.c"
"src/flash_qio_mode.c")
"src/flash_qio_mode.c"
"src/bootloader_flash_config_${IDF_TARGET}.c"
"src/bootloader_efuse_${IDF_TARGET}.c"
)
if(BOOTLOADER_BUILD)
set(include_dirs "include" "include_bootloader")
set(requires soc) #unfortunately the header directly uses SOC registers
set(priv_requires micro-ecc spi_flash efuse)
list(APPEND srcs
"src/bootloader_init.c"
"src/${IDF_TARGET}/bootloader_sha.c"
"src/${IDF_TARGET}/flash_encrypt.c"
"src/${IDF_TARGET}/secure_boot_signatures.c"
"src/${IDF_TARGET}/secure_boot.c")
list(APPEND srcs
"src/bootloader_init.c"
"src/${IDF_TARGET}/bootloader_sha.c"
"src/${IDF_TARGET}/flash_encrypt.c"
"src/${IDF_TARGET}/bootloader_${IDF_TARGET}.c"
)
else()
list(APPEND srcs
"src/idf/bootloader_sha.c"
"src/idf/secure_boot_signatures.c")
list(APPEND srcs
"src/idf/bootloader_sha.c")
set(include_dirs "include")
set(priv_include_dirs "include_bootloader")
set(requires soc) #unfortunately the header directly uses SOC registers
set(priv_requires spi_flash mbedtls efuse)
endif()
if(CONFIG_SECURE_SIGNED_APPS_ECDSA_SCHEME OR CONFIG_SECURE_SIGNED_APPS_RSA_SCHEME)
if(BOOTLOADER_BUILD)
list(APPEND srcs
"src/${IDF_TARGET}/secure_boot_signatures.c")
else()
list(APPEND srcs
"src/idf/secure_boot_signatures.c")
endif()
endif()
if(CONFIG_SECURE_BOOT AND BOOTLOADER_BUILD)
list(APPEND srcs
"src/${IDF_TARGET}/secure_boot.c")
endif()
set(requires soc) #unfortunately the header directly uses SOC registers
idf_component_register(SRCS "${srcs}"
INCLUDE_DIRS "${include_dirs}"
PRIV_INCLUDE_DIRS "${priv_include_dirs}"
REQUIRES "${requires}"
PRIV_REQUIRES "${priv_requires}")
if(CONFIG_SECURE_SIGNED_APPS)
if(CONFIG_SECURE_SIGNED_APPS AND (CONFIG_SECURE_BOOT_V1_ENABLED OR CONFIG_SECURE_SIGNED_APPS_ECDSA_SCHEME))
if(BOOTLOADER_BUILD)
# Whether CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES or not, we need verification key to embed
# in the library.

View File

@@ -19,11 +19,27 @@ ifndef IS_BOOTLOADER_BUILD
COMPONENT_OBJEXCLUDE := src/bootloader_init.o
endif
COMPONENT_OBJEXCLUDE += src/bootloader_flash_config_esp32s2.o \
src/bootloader_efuse_esp32s2.o \
src/bootloader_random_esp32s2.o
ifndef CONFIG_SECURE_SIGNED_APPS_ECDSA_SCHEME
ifndef CONFIG_SECURE_SIGNED_APPS_RSA_SCHEME
COMPONENT_OBJEXCLUDE += src/$(IDF_TARGET)/secure_boot_signatures.o \
src/idf/secure_boot_signatures.o
endif
endif
ifndef CONFIG_SECURE_BOOT
COMPONENT_OBJEXCLUDE += src/$(IDF_TARGET)/secure_boot.o
endif
#
# Secure boot signing key support
#
ifdef CONFIG_SECURE_SIGNED_APPS
ifdef CONFIG_SECURE_SIGNED_APPS_ECDSA_SCHEME
# this path is created relative to the component build directory
SECURE_BOOT_VERIFICATION_KEY := $(abspath signature_verification_key.bin)
@@ -38,7 +54,7 @@ ORIG_SECURE_BOOT_VERIFICATION_KEY := $(call resolvepath,$(call dequote,$(CONFIG_
$(ORIG_SECURE_BOOT_VERIFICATION_KEY):
@echo "Secure boot verification public key '$@' missing."
@echo "This can be extracted from the private signing key, see"
@echo "docs/security/secure-boot.rst for details."
@echo "docs/security/secure-boot-v1.rst for details."
exit 1
# copy it into the build dir, so the secure boot verification key has
@@ -46,10 +62,11 @@ $(ORIG_SECURE_BOOT_VERIFICATION_KEY):
$(SECURE_BOOT_VERIFICATION_KEY): $(ORIG_SECURE_BOOT_VERIFICATION_KEY) $(SDKCONFIG_MAKEFILE)
$(summary) CP $< $@
cp $< $@
endif
endif #CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES
COMPONENT_EXTRA_CLEAN += $(SECURE_BOOT_VERIFICATION_KEY)
COMPONENT_EMBED_FILES := $(SECURE_BOOT_VERIFICATION_KEY)
endif
endif #CONFIG_SECURE_SIGNED_APPS_ECDSA_SCHEME
endif #CONFIG_SECURE_SIGNED_APPS

View File

@@ -24,6 +24,11 @@ extern "C" {
*/
void bootloader_clock_configure(void);
/** @brief Return the rated maximum frequency of this chip
*/
int bootloader_clock_get_rated_freq_mhz(void);
#ifdef __cplusplus
}
#endif

View File

@@ -16,6 +16,12 @@
#include "esp_flash_partitions.h"
#include "esp_image_format.h"
#include "esp_app_format.h"
// RESET_REASON is declared in rom/rtc.h
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/rtc.h"
#endif
#ifdef __cplusplus
extern "C" {
@@ -88,6 +94,13 @@ bool bootloader_common_erase_part_type_data(const char *list_erase, bool ota_dat
*/
bool bootloader_common_label_search(const char *list, char *label);
/**
* @brief Configure default SPI pin modes and drive strengths
*
* @param drv GPIO drive level (determined by clock frequency)
*/
void bootloader_configure_spi_pins(int drv);
/**
* @brief Calculates a sha-256 for a given partition or returns a appended digest.
*
@@ -154,6 +167,14 @@ esp_err_t bootloader_common_get_partition_description(const esp_partition_pos_t
*/
uint8_t bootloader_common_get_chip_revision(void);
/**
* @brief Query reset reason
*
* @param cpu_no CPU number
* @return reset reason enumeration
*/
RESET_REASON bootloader_common_get_reset_reason(int cpu_no);
/**
* @brief Check if the image (bootloader and application) has valid chip ID and revision
*
@@ -168,7 +189,69 @@ esp_err_t bootloader_common_check_chip_validity(const esp_image_header_t* img_hd
/**
* @brief Configure VDDSDIO, call this API to rise VDDSDIO to 1.9V when VDDSDIO regulator is enabled as 1.8V mode.
*/
void bootloader_common_vddsdio_configure();
void bootloader_common_vddsdio_configure(void);
#if defined( CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP ) || defined( CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC )
/**
* @brief Returns partition from rtc_retain_mem
*
* Uses to get the partition of application which was worked before to go to the deep sleep.
* This partition was stored in rtc_retain_mem.
* Note: This function operates the RTC FAST memory which available only for PRO_CPU.
* Make sure that this function is used only PRO_CPU.
*
* @return partition: If rtc_retain_mem is valid.
* - NULL: If it is not valid.
*/
esp_partition_pos_t* bootloader_common_get_rtc_retain_mem_partition(void);
/**
* @brief Update the partition and reboot_counter in rtc_retain_mem.
*
* This function saves the partition of application for fast booting from the deep sleep.
* An algorithm uses this partition to avoid reading the otadata and does not validate an image.
* Note: This function operates the RTC FAST memory which available only for PRO_CPU.
* Make sure that this function is used only PRO_CPU.
*
* @param[in] partition App partition description. Can be NULL, in this case rtc_retain_mem.partition is not updated.
* @param[in] reboot_counter If true then update reboot_counter.
*
*/
void bootloader_common_update_rtc_retain_mem(esp_partition_pos_t* partition, bool reboot_counter);
/**
* @brief Reset entire rtc_retain_mem.
*
* Note: This function operates the RTC FAST memory which available only for PRO_CPU.
* Make sure that this function is used only PRO_CPU.
*/
void bootloader_common_reset_rtc_retain_mem(void);
/**
* @brief Returns reboot_counter from rtc_retain_mem
*
* The reboot_counter counts the number of reboots. Reset only when power is off.
* The very first launch of the application will be from 1.
* Overflow is not possible, it will stop at the value UINT16_MAX.
* Note: This function operates the RTC FAST memory which available only for PRO_CPU.
* Make sure that this function is used only PRO_CPU.
*
* @return reboot_counter: 1..65535
* - 0: If rtc_retain_mem is not valid.
*/
uint16_t bootloader_common_get_rtc_retain_mem_reboot_counter(void);
/**
* @brief Returns rtc_retain_mem
*
* Note: This function operates the RTC FAST memory which available only for PRO_CPU.
* Make sure that this function is used only PRO_CPU.
*
* @return rtc_retain_mem
*/
rtc_retain_mem_t* bootloader_common_get_rtc_retain_mem(void);
#endif
#ifdef __cplusplus
}

View File

@@ -0,0 +1,61 @@
// 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.
#pragma once
#include <stdint.h>
#include <esp_err.h>
#include <esp_spi_flash.h> /* including in bootloader for error values */
#include "sdkconfig.h"
#include "soc/soc_caps.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief Read flash ID by sending 0x9F command
* @return flash raw ID
* mfg_id = (ID >> 16) & 0xFF;
flash_id = ID & 0xffff;
*/
uint32_t bootloader_read_flash_id(void);
#if SOC_CACHE_SUPPORT_WRAP
/**
* @brief Set the burst mode setting command for specified wrap mode.
*
* @param mode The specified warp mode.
* @return always ESP_OK
*/
esp_err_t bootloader_flash_wrap_set(spi_flash_wrap_mode_t mode);
#endif
/**
* @brief Startup flow recommended by XMC. Call at startup before any erase/write operation.
*
* @return ESP_OK When startup successfully, otherwise ESP_FAIL (indiciating you should reboot before erase/write).
*/
esp_err_t bootloader_flash_xmc_startup(void);
/**
* @brief Unlock Flash write protect.
* Please do not call this function in SDK.
*
* @note This can be overridden because it's attribute weak.
*/
esp_err_t bootloader_flash_unlock(void);
#ifdef __cplusplus
}
#endif

View File

@@ -14,6 +14,7 @@
#pragma once
#include "sdkconfig.h"
#include "esp_image_format.h"
#ifdef __cplusplus
@@ -25,7 +26,7 @@ extern "C" {
*
* @return None
*/
void bootloader_flash_update_id();
void bootloader_flash_update_id(void);
/**
* @brief Update the flash size in g_rom_flashchip (global esp_rom_spiflash_chip_t structure).
@@ -43,7 +44,7 @@ void bootloader_flash_update_size(uint32_t size);
*
* @return None
*/
void bootloader_flash_cs_timing_config();
void bootloader_flash_cs_timing_config(void);
/**
* @brief Configure SPI flash clock.
@@ -74,6 +75,22 @@ void bootloader_flash_gpio_config(const esp_image_header_t* pfhdr);
*/
void bootloader_flash_dummy_config(const esp_image_header_t* pfhdr);
#ifdef CONFIG_IDF_TARGET_ESP32
/**
* @brief Return the pin number used for custom SPI flash and/or SPIRAM WP pin
*
* Can be determined by eFuse values in most cases, or overriden in configuration
*
* This value is only meaningful if the other SPI flash pins are overriden via eFuse.
*
* This value is only meaningful if flash is set to QIO or QOUT mode, or if
* SPIRAM is enabled.
*
* @return Pin number to use, or -1 if the default should be kept
*/
int bootloader_flash_get_wp_pin(void);
#endif
#ifdef __cplusplus
}
#endif

View File

@@ -0,0 +1,24 @@
// 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.
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
void bootloader_init_mem(void);
#ifdef __cplusplus
}
#endif

View File

@@ -19,6 +19,7 @@
*/
typedef enum {
ESP_CHIP_ID_ESP32 = 0x0000, /*!< chip ID: ESP32 */
ESP_CHIP_ID_ESP32S2 = 0x0002, /*!< chip ID: ESP32S2 */
ESP_CHIP_ID_INVALID = 0xFFFF /*!< Invalid chip ID (we defined it to make sure the esp_chip_id_t is 2 bytes size) */
} __attribute__((packed)) esp_chip_id_t;

View File

@@ -20,6 +20,7 @@
#include "esp_spi_flash.h"
#endif
#include "soc/efuse_periph.h"
#include "sdkconfig.h"
#ifdef __cplusplus
extern "C" {
@@ -46,11 +47,17 @@ typedef enum {
*
* @return true if flash encryption is enabled.
*/
static inline /** @cond */ IRAM_ATTR /** @endcond */ bool esp_flash_encryption_enabled(void) {
uint32_t flash_crypt_cnt = REG_GET_FIELD(EFUSE_BLK0_RDATA0_REG, EFUSE_RD_FLASH_CRYPT_CNT);
static inline /** @cond */ IRAM_ATTR /** @endcond */ bool esp_flash_encryption_enabled(void)
{
uint32_t flash_crypt_cnt;
#if CONFIG_IDF_TARGET_ESP32
flash_crypt_cnt = REG_GET_FIELD(EFUSE_BLK0_RDATA0_REG, EFUSE_RD_FLASH_CRYPT_CNT);
#elif CONFIG_IDF_TARGET_ESP32S2
flash_crypt_cnt = REG_GET_FIELD(EFUSE_RD_REPEAT_DATA1_REG, EFUSE_SPI_BOOT_CRYPT_CNT);
#endif
/* __builtin_parity is in flash, so we calculate parity inline */
bool enabled = false;
while(flash_crypt_cnt) {
while (flash_crypt_cnt) {
if (flash_crypt_cnt & 1) {
enabled = !enabled;
}
@@ -126,7 +133,7 @@ esp_err_t esp_flash_encrypt_region(uint32_t src_addr, size_t data_length);
* esp_efuse_disable_rom_download_mode() before calling this function.
*
*/
void esp_flash_write_protect_crypt_cnt();
void esp_flash_write_protect_crypt_cnt(void);
/** @brief Return the flash encryption mode
*
@@ -135,7 +142,7 @@ void esp_flash_write_protect_crypt_cnt();
*
* @return
*/
esp_flash_enc_mode_t esp_get_flash_encryption_mode();
esp_flash_enc_mode_t esp_get_flash_encryption_mode(void);
/** @brief Check the flash encryption mode during startup

View File

@@ -42,15 +42,43 @@ typedef struct {
uint8_t image_digest[32]; /* appended SHA-256 digest */
} esp_image_metadata_t;
/* Mode selection for esp_image_load() */
typedef enum {
ESP_IMAGE_VERIFY, /* Verify image contents, load metadata. Print errors. */
ESP_IMAGE_VERIFY_SILENT, /* Verify image contents, load metadata. Don't print errors. */
ESP_IMAGE_VERIFY, /* Verify image contents, not load to memory, load metadata. Print errors. */
ESP_IMAGE_VERIFY_SILENT, /* Verify image contents, not load to memory, load metadata. Don't print errors. */
#ifdef BOOTLOADER_BUILD
ESP_IMAGE_LOAD, /* Verify image contents, load to memory. Print errors. */
ESP_IMAGE_LOAD, /* Verify image contents, load to memory, load metadata. Print errors. */
ESP_IMAGE_LOAD_NO_VALIDATE, /* Not verify image contents, load to memory, load metadata. Print errors. */
#endif
} esp_image_load_mode_t;
typedef struct {
esp_partition_pos_t partition; /*!< Partition of application which worked before goes to the deep sleep. */
uint16_t reboot_counter; /*!< Reboot counter. Reset only when power is off. */
uint16_t reserve; /*!< Reserve */
#ifdef CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC
uint8_t custom[CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC_SIZE]; /*!< Reserve for custom propose */
#endif
uint32_t crc; /*!< Check sum crc32 */
} rtc_retain_mem_t;
#ifdef CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC
_Static_assert(CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC_SIZE % 4 == 0, "CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC_SIZE must be a multiple of 4 bytes");
#endif
#if defined(CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP) || defined(CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC)
_Static_assert(CONFIG_BOOTLOADER_RESERVE_RTC_SIZE % 4 == 0, "CONFIG_BOOTLOADER_RESERVE_RTC_SIZE must be a multiple of 4 bytes");
#endif
#ifdef CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC
#define ESP_BOOTLOADER_RESERVE_RTC (CONFIG_BOOTLOADER_RESERVE_RTC_SIZE + CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC_SIZE)
#elif defined(CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP)
#define ESP_BOOTLOADER_RESERVE_RTC (CONFIG_BOOTLOADER_RESERVE_RTC_SIZE)
#endif
#if defined(CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP) || defined(CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC)
_Static_assert(sizeof(rtc_retain_mem_t) <= ESP_BOOTLOADER_RESERVE_RTC, "Reserved RTC area must exceed size of rtc_retain_mem_t");
#endif
/**
* @brief Verify an app image.
*
@@ -104,6 +132,24 @@ esp_err_t esp_image_verify(esp_image_load_mode_t mode, const esp_partition_pos_t
*/
esp_err_t bootloader_load_image(const esp_partition_pos_t *part, esp_image_metadata_t *data);
/**
* @brief Load an app image without verification (available only in space of bootloader).
*
* If encryption is enabled, data will be transparently decrypted.
*
* @param part Partition to load the app from.
* @param[inout] data Pointer to the image metadata structure which is be filled in by this function.
* 'start_addr' member should be set (to the start address of the image.)
* Other fields will all be initialised by this function.
*
* @return
* - ESP_OK if verify or load was successful
* - ESP_ERR_IMAGE_FLASH_FAIL if a SPI flash error occurs
* - ESP_ERR_IMAGE_INVALID if the image appears invalid.
* - ESP_ERR_INVALID_ARG if the partition or data pointers are invalid.
*/
esp_err_t bootloader_load_image_no_verify(const esp_partition_pos_t *part, esp_image_metadata_t *data);
/**
* @brief Verify the bootloader image.
*

View File

@@ -16,10 +16,18 @@
#include <stdbool.h>
#include <esp_err.h>
#include "soc/efuse_periph.h"
#include "esp_image_format.h"
#include "sdkconfig.h"
#if CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/efuse.h"
#else
#include "esp32/rom/secure_boot.h"
#endif
#ifdef CONFIG_SECURE_BOOT_ENABLED
typedef struct ets_secure_boot_signature ets_secure_boot_signature_t;
#ifdef CONFIG_SECURE_BOOT_V1_ENABLED
#if !defined(CONFIG_SECURE_SIGNED_ON_BOOT) || !defined(CONFIG_SECURE_SIGNED_ON_UPDATE) || !defined(CONFIG_SECURE_SIGNED_APPS)
#error "internal sdkconfig error, secure boot should always enable all signature options"
#endif
@@ -36,20 +44,31 @@ extern "C" {
/** @brief Is secure boot currently enabled in hardware?
*
* Secure boot is enabled if the ABS_DONE_0 efuse is blown. This means
* that the ROM bootloader code will only boot a verified secure
* bootloader digest from now on.
* This means that the ROM bootloader code will only boot
* a verified secure bootloader from now on.
*
* @return true if secure boot is enabled.
*/
static inline bool esp_secure_boot_enabled(void) {
return REG_READ(EFUSE_BLK0_RDATA6_REG) & EFUSE_RD_ABS_DONE_0;
static inline bool esp_secure_boot_enabled(void)
{
#if CONFIG_IDF_TARGET_ESP32
#ifdef CONFIG_SECURE_BOOT_V1_ENABLED
return REG_READ(EFUSE_BLK0_RDATA6_REG) & EFUSE_RD_ABS_DONE_0;
#elif CONFIG_SECURE_BOOT_V2_ENABLED
return ets_use_secure_boot_v2();
#endif
#elif CONFIG_IDF_TARGET_ESP32S2
return ets_efuse_secure_boot_enabled();
#endif
return false; /* Secure Boot not enabled in menuconfig */
}
/** @brief Generate secure digest from bootloader image
*
* @important This function is intended to be called from bootloader code only.
*
* This function is only used in the context of the Secure Boot V1 scheme.
*
* If secure boot is not yet enabled for bootloader, this will:
* 1) generate the secure boot key and burn it on EFUSE
* (without enabling R/W protection)
@@ -66,18 +85,17 @@ static inline bool esp_secure_boot_enabled(void) {
*/
esp_err_t esp_secure_boot_generate_digest(void);
/** @brief Enable secure boot if it is not already enabled.
/** @brief Enable secure boot V1 if it is not already enabled.
*
* @important If this function succeeds, secure boot is permanently
* @important If this function succeeds, secure boot V1 is permanently
* enabled on the chip via efuse.
*
* @important This function is intended to be called from bootloader code only.
*
* @important This will enable r/w protection of secure boot key on EFUSE,
* therefore it is to be ensured that esp_secure_boot_generate_digest()
* is called before this
*
* If secure boot is not yet enabled for bootloader, this will
* @important In case of Secure Boot V1, this will enable r/w protection
* of secure boot key on EFUSE, therefore it is to be ensured that
* esp_secure_boot_generate_digest() is called before this .If secure boot is not
* yet enabled for bootloader, this will
* 1) enable R/W protection of secure boot key on EFUSE
* 2) enable secure boot by blowing the EFUSE_RD_ABS_DONE_0 efuse.
*
@@ -93,35 +111,97 @@ esp_err_t esp_secure_boot_generate_digest(void);
*/
esp_err_t esp_secure_boot_permanently_enable(void);
/** @brief Verify the secure boot signature (determinstic ECDSA w/ SHA256) appended to some binary data in flash.
/** @brief Enables secure boot V2 if it is not already enabled.
*
* Public key is compiled into the calling program. See docs/security/secure-boot.rst for details.
* @important If this function succeeds, secure boot V2 is permanently
* enabled on the chip via efuse.
*
* @important This function is intended to be called from bootloader code only.
*
* @important In case of Secure Boot V2, this will enable write protection
* of secure boot key on EFUSE in BLK2. .If secure boot is not
* yet enabled for bootloader, this will
* 1) enable W protection of secure boot key on EFUSE
* 2) enable secure boot by blowing the EFUSE_RD_ABS_DONE_1 efuse.
*
* This function does not verify secure boot of the bootloader (the
* ROM bootloader does this.)
*
* @param image_data Image metadata of the application to be loaded.
*
* Will fail if efuses have been part-burned in a way that indicates
* secure boot should not or could not be correctly enabled.
*
* @return ESP_ERR_INVALID_STATE if efuse state doesn't allow
* secure boot to be enabled cleanly. ESP_OK if secure boot
* is enabled on this chip from now on.
*/
esp_err_t esp_secure_boot_v2_permanently_enable(const esp_image_metadata_t *image_data);
/** @brief Verify the secure boot signature appended to some binary data in flash.
*
* For ECDSA Scheme (Secure Boot V1) - deterministic ECDSA w/ SHA256 image
* For RSA Scheme (Secure Boot V2) - RSA-PSS Verification of the SHA-256 image
*
* Public key is compiled into the calling program in the ECDSA Scheme.
* See the apt docs/security/secure-boot-v1.rst or docs/security/secure-boot-v2.rst for details.
*
* @param src_addr Starting offset of the data in flash.
* @param length Length of data in bytes. Signature is appended -after- length bytes.
*
* If flash encryption is enabled, the image will be transparently decrypted while being verified.
*
* @note This function doesn't have any fault injection resistance so should not be called
* during a secure boot itself (but can be called when verifying an update, etc.)
*
* @return ESP_OK if signature is valid, ESP_ERR_INVALID_STATE if
* signature fails, ESP_FAIL for other failures (ie can't read flash).
*/
esp_err_t esp_secure_boot_verify_signature(uint32_t src_addr, uint32_t length);
/** @brief Verify the secure boot signature block (deterministic ECDSA w/ SHA256) based on the SHA256 hash of some data.
*
* Similar to esp_secure_boot_verify_signature(), but can be used when the digest is precalculated.
* @param sig_block Pointer to signature block data
* @param image_digest Pointer to 32 byte buffer holding SHA-256 hash.
*
*/
/** @brief Secure boot verification block, on-flash data format. */
typedef struct {
uint32_t version;
uint8_t signature[64];
} esp_secure_boot_sig_block_t;
esp_err_t esp_secure_boot_verify_signature_block(const esp_secure_boot_sig_block_t *sig_block, const uint8_t *image_digest);
/** @brief Verify the ECDSA secure boot signature block for Secure Boot V1.
*
* Calculates Deterministic ECDSA w/ SHA256 based on the SHA256 hash of the image. ECDSA signature
* verification must be enabled in project configuration to use this function.
*
* Similar to esp_secure_boot_verify_signature(), but can be used when the digest is precalculated.
* @param sig_block Pointer to ECDSA signature block data
* @param image_digest Pointer to 32 byte buffer holding SHA-256 hash.
* @param verified_digest Pointer to 32 byte buffer that will receive verified digest if verification completes. (Used during bootloader implementation only, result is invalid otherwise.)
*
*/
esp_err_t esp_secure_boot_verify_ecdsa_signature_block(const esp_secure_boot_sig_block_t *sig_block, const uint8_t *image_digest, uint8_t *verified_digest);
/** @brief Verify the RSA secure boot signature block for Secure Boot V2.
*
* Performs RSA-PSS Verification of the SHA-256 image based on the public key
* in the signature block, compared against the public key digest stored in efuse.
*
* Similar to esp_secure_boot_verify_signature(), but can be used when the digest is precalculated.
* @param sig_block Pointer to RSA signature block data
* @param image_digest Pointer to 32 byte buffer holding SHA-256 hash.
* @param verified_digest Pointer to 32 byte buffer that will receive verified digest if verification completes. (Used during bootloader implementation only, result is invalid otherwise.)
*
*/
esp_err_t esp_secure_boot_verify_rsa_signature_block(const ets_secure_boot_signature_t *sig_block, const uint8_t *image_digest, uint8_t *verified_digest);
/** @brief Legacy ECDSA verification function
*
* @note Deprecated, call either esp_secure_boot_verify_ecdsa_signature_block() or esp_secure_boot_verify_rsa_signature_block() instead.
*
* @param sig_block Pointer to ECDSA signature block data
* @param image_digest Pointer to 32 byte buffer holding SHA-256 hash.
*/
esp_err_t esp_secure_boot_verify_signature_block(const esp_secure_boot_sig_block_t *sig_block, const uint8_t *image_digest)
__attribute__((deprecated("use esp_secure_boot_verify_ecdsa_signature_block instead")));
#define FLASH_OFFS_SECURE_BOOT_IV_DIGEST 0

View File

@@ -18,12 +18,29 @@
#include <stdbool.h>
#include <stdint.h>
#include <esp_err.h>
#include "esp_spi_flash.h"
#include <esp_spi_flash.h> /* including in bootloader for error values */
#include "sdkconfig.h"
#include "bootloader_flash.h"
#define FLASH_SECTOR_SIZE 0x1000
#define FLASH_BLOCK_SIZE 0x10000
#define MMAP_ALIGNED_MASK 0x0000FFFF
/* SPI commands (actual on-wire commands not SPI controller bitmasks)
Suitable for use with the bootloader_execute_flash_command static function.
*/
#define CMD_RDID 0x9F
#define CMD_WRSR 0x01
#define CMD_WRSR2 0x31 /* Not all SPI flash uses this command */
#define CMD_WREN 0x06
#define CMD_WRDI 0x04
#define CMD_RDSR 0x05
#define CMD_RDSR2 0x35 /* Not all SPI flash uses this command */
#define CMD_OTPEN 0x3A /* Enable OTP mode, not all SPI flash uses this command */
#define CMD_RDSFDP 0x5A /* Read the SFDP of the flash */
#define CMD_WRAP 0x77 /* Set burst with wrap command */
/* Provide a Flash API for bootloader_support code,
that can be used from bootloader or app code.
@@ -136,4 +153,29 @@ static inline uint32_t bootloader_cache_pages_to_map(uint32_t size, uint32_t vad
return (size + (vaddr - (vaddr & MMU_FLASH_MASK)) + MMU_BLOCK_SIZE - 1) / MMU_BLOCK_SIZE;
}
/**
* @brief Execute a user command on the flash
*
* @param command The command value to execute.
* @param mosi_data MOSI data to send
* @param mosi_len Length of MOSI data, in bits
* @param miso_len Length of MISO data to receive, in bits
* @return Received MISO data
*/
uint32_t bootloader_execute_flash_command(uint8_t command, uint32_t mosi_data, uint8_t mosi_len, uint8_t miso_len);
/**
* @brief Read the SFDP of the flash
*
* @param sfdp_addr Address of the parameter to read
* @param miso_byte_num Bytes to read
* @return The read SFDP, little endian, 4 bytes at most
*/
uint32_t bootloader_flash_read_sfdp(uint32_t sfdp_addr, unsigned int miso_byte_num);
/**
* @brief Enable the flash write protect (WEL bit).
*/
void bootloader_enable_wp(void);
#endif

View File

@@ -14,6 +14,37 @@
#pragma once
#include "esp_err.h"
#include "esp_image_format.h"
/**@{*/
/**
* @brief labels from bootloader linker script: bootloader.ld
*
*/
extern int _bss_start;
extern int _bss_end;
extern int _data_start;
extern int _data_end;
/**@}*/
/**
* @brief bootloader image header
*
*/
extern esp_image_header_t bootloader_image_hdr;
/**@{*/
/**
* @brief Common initialization steps that are applied to all targets.
*
*/
esp_err_t bootloader_read_bootloader_header(void);
esp_err_t bootloader_check_bootloader_validity(void);
void bootloader_clear_bss_section(void);
void bootloader_config_wdt(void);
void bootloader_enable_random(void);
void bootloader_print_banner(void);
/**@}*/
/* @brief Prepares hardware for work.
*
@@ -25,4 +56,4 @@
* @return ESP_OK - If the setting is successful.
* ESP_FAIL - If the setting is not successful.
*/
esp_err_t bootloader_init();
esp_err_t bootloader_init(void);

View File

@@ -15,6 +15,7 @@
#include "bootloader_config.h"
#include "esp_image_format.h"
#include "bootloader_config.h"
/**
* @brief Load partition table.
@@ -54,6 +55,16 @@ int bootloader_utility_get_selected_boot_partition(const bootloader_state_t *bs)
*/
__attribute__((noreturn)) void bootloader_utility_load_boot_image(const bootloader_state_t *bs, int start_index);
#ifdef CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP
/**
* @brief Load that application which was worked before we go to the deep sleep.
*
* Checks the reboot reason if it is the deep sleep and has a valid partition in the RTC memory
* then try to load the application which was worked before we go to the deep sleep.
*
*/
void bootloader_utility_load_boot_image_from_deep_sleep(void);
#endif
/**
* @brief Software reset the ESP32
@@ -87,6 +98,18 @@ __attribute__((noreturn)) void bootloader_reset(void);
*/
esp_err_t bootloader_sha256_hex_to_str(char *out_str, const uint8_t *in_array_hex, size_t len);
/**
* @brief Debug log contents of a buffer as hexadecimal.
*
* @note - Only works if component log level is DEBUG or higher.
* - It will print at most 128 bytes from @c buffer.
*
* @param buffer Buffer to log
* @param length Length of buffer in bytes. Maximum length 128 bytes.
* @param label Label to print at beginning of log line.
*/
void bootloader_debug_buffer(const void *buffer, size_t length, const char *label);
/** @brief Generates the digest of the data between offset & offset+length.
*
* This function should be used when the size of the data is larger than 3.2MB.

View File

@@ -13,12 +13,12 @@
// limitations under the License.
#pragma once
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
#include "esp_err.h"
/** @brief Enable Quad I/O mode in bootloader (if configured)
*
* Queries attached SPI flash ID and sends correct SPI flash
@@ -32,31 +32,7 @@ void bootloader_enable_qio_mode(void);
* mfg_id = (ID >> 16) & 0xFF;
flash_id = ID & 0xffff;
*/
uint32_t bootloader_read_flash_id();
/**
* @brief Unlock Flash write protect.
* Please do not call this function in SDK.
*
* @note This can be overridden because it's attribute weak.
*/
esp_err_t bootloader_flash_unlock(void);
/**
* @brief Read the SFDP of the flash
*
* @param sfdp_addr Address of the parameter to read
* @param miso_byte_num Bytes to read
* @return The read SFDP, little endian, 4 bytes at most
*/
uint32_t bootloader_flash_read_sfdp(uint32_t sfdp_addr, unsigned int miso_byte_num);
/**
* @brief Startup flow recommended by XMC. Call at startup before any erase/write operation.
*
* @return ESP_OK When startup successfully, otherwise ESP_FAIL (indiciating you should reboot before erase/write).
*/
esp_err_t bootloader_flash_xmc_startup(void);
uint32_t bootloader_read_flash_id(void);
#ifdef __cplusplus
}

View File

@@ -11,14 +11,22 @@
// 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 "esp32/rom/uart.h"
#include "esp32/rom/rtc.h"
#include "sdkconfig.h"
#include "soc/soc.h"
#include "soc/rtc.h"
#include "soc/dport_reg.h"
#include "soc/efuse_periph.h"
#include "soc/rtc_cntl_reg.h"
void bootloader_clock_configure()
#ifdef CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/uart.h"
#include "esp32/rom/rtc.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/uart.h"
#include "esp32s2/rom/rtc.h"
#endif
void bootloader_clock_configure(void)
{
// ROM bootloader may have put a lot of text into UART0 FIFO.
// Wait for it to be printed.
@@ -29,7 +37,8 @@ void bootloader_clock_configure()
/* Set CPU to 80MHz. Keep other clocks unmodified. */
int cpu_freq_mhz = 80;
#if CONFIG_IDF_TARGET_ESP32
/* On ESP32 rev 0, switching to 80/160 MHz if clock was previously set to
* 240 MHz may cause the chip to lock up (see section 3.5 of the errata
* document). For rev. 0, switch to 240 instead if it has been enabled
@@ -40,9 +49,13 @@ void bootloader_clock_configure()
DPORT_REG_GET_FIELD(DPORT_CPU_PER_CONF_REG, DPORT_CPUPERIOD_SEL) == DPORT_CPUPERIOD_SEL_240) {
cpu_freq_mhz = 240;
}
#endif
rtc_clk_config_t clk_cfg = RTC_CLK_CONFIG_DEFAULT();
#if CONFIG_IDF_TARGET_ESP32
clk_cfg.xtal_freq = CONFIG_ESP32_XTAL_FREQ;
#endif
/* ESP32-S2 doesn't have XTAL_FREQ choice, always 40MHz */
clk_cfg.cpu_freq_mhz = cpu_freq_mhz;
clk_cfg.slow_freq = rtc_clk_slow_freq_get();
clk_cfg.fast_freq = rtc_clk_fast_freq_get();
@@ -52,11 +65,20 @@ void bootloader_clock_configure()
* part of the start up time by enabling 32k XTAL early.
* App startup code will wait until the oscillator has started up.
*/
#ifdef CONFIG_ESP32_RTC_CLK_SRC_EXT_CRYS
/* TODO: move the clock option into esp_system, so that this doesn't have
* to continue:
*/
#if CONFIG_ESP32_RTC_CLK_SRC_EXT_CRYS
if (!rtc_clk_32k_enabled()) {
rtc_clk_32k_bootstrap(CONFIG_ESP32_RTC_XTAL_BOOTSTRAP_CYCLES);
}
#endif
#if CONFIG_ESP32S2_RTC_CLK_SRC_EXT_CRYS
if (!rtc_clk_32k_enabled()) {
rtc_clk_32k_bootstrap(0);
}
#endif
}
#ifdef BOOTLOADER_BUILD

View File

@@ -17,17 +17,24 @@
#include "sdkconfig.h"
#include "esp_err.h"
#include "esp_log.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/spi_flash.h"
#include "esp32/rom/crc.h"
#include "esp32/rom/gpio.h"
#include "esp_secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/spi_flash.h"
#include "esp32s2/rom/crc.h"
#include "esp32s2/rom/ets_sys.h"
#include "esp32s2/rom/gpio.h"
#endif
#include "esp_flash_partitions.h"
#include "bootloader_flash.h"
#include "bootloader_flash_priv.h"
#include "bootloader_common.h"
#include "bootloader_utility.h"
#include "soc/gpio_periph.h"
#include "soc/rtc.h"
#include "soc/efuse_reg.h"
#include "soc/apb_ctrl_reg.h"
#include "soc/soc_memory_layout.h"
#include "esp_image_format.h"
#include "bootloader_sha.h"
#include "sys/param.h"
@@ -246,7 +253,7 @@ esp_err_t bootloader_common_get_partition_description(const esp_partition_pos_t
return ESP_OK;
}
void bootloader_common_vddsdio_configure()
void bootloader_common_vddsdio_configure(void)
{
#if CONFIG_BOOTLOADER_VDDSDIO_BOOST_1_9V
rtc_vddsdio_config_t cfg = rtc_vddsdio_get_config();
@@ -261,35 +268,6 @@ void bootloader_common_vddsdio_configure()
#endif // CONFIG_BOOTLOADER_VDDSDIO_BOOST
}
#ifdef CONFIG_IDF_TARGET_ESP32
uint8_t bootloader_common_get_chip_revision(void)
{
uint8_t eco_bit0, eco_bit1, eco_bit2;
eco_bit0 = (REG_READ(EFUSE_BLK0_RDATA3_REG) & 0xF000) >> 15;
eco_bit1 = (REG_READ(EFUSE_BLK0_RDATA5_REG) & 0x100000) >> 20;
eco_bit2 = (REG_READ(APB_CTRL_DATE_REG) & 0x80000000) >> 31;
uint32_t combine_value = (eco_bit2 << 2) | (eco_bit1 << 1) | eco_bit0;
uint8_t chip_ver = 0;
switch (combine_value) {
case 0:
chip_ver = 0;
break;
case 1:
chip_ver = 1;
break;
case 3:
chip_ver = 2;
break;
case 7:
chip_ver = 3;
break;
default:
chip_ver = 0;
break;
}
return chip_ver;
}
#endif
esp_err_t bootloader_common_check_chip_validity(const esp_image_header_t* img_hdr, esp_image_type type)
{
@@ -304,7 +282,87 @@ esp_err_t bootloader_common_check_chip_validity(const esp_image_header_t* img_hd
ESP_LOGE(TAG, "can't run on lower chip revision, expected %d, found %d", revision, img_hdr->min_chip_rev);
err = ESP_FAIL;
} else if (revision != img_hdr->min_chip_rev) {
#ifdef BOOTLOADER_BUILD
ESP_LOGI(TAG, "chip revision: %d, min. %s chip revision: %d", revision, type == ESP_IMAGE_BOOTLOADER ? "bootloader" : "application", img_hdr->min_chip_rev);
#endif
}
return err;
}
RESET_REASON bootloader_common_get_reset_reason(int cpu_no)
{
return rtc_get_reset_reason(cpu_no);
}
#if defined( CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP ) || defined( CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC )
#define RTC_RETAIN_MEM_ADDR (SOC_RTC_DRAM_HIGH - sizeof(rtc_retain_mem_t))
rtc_retain_mem_t *const rtc_retain_mem = (rtc_retain_mem_t *)RTC_RETAIN_MEM_ADDR;
#if !IS_BOOTLOADER_BUILD
/* The app needs to be told this memory is reserved, important if configured to use RTC memory as heap.
Note that keeping this macro here only works when other symbols in this file are referenced by the app, as
this feature is otherwise 100% part of the bootloader. However this seems to happen in all apps.
*/
SOC_RESERVE_MEMORY_REGION(RTC_RETAIN_MEM_ADDR, RTC_RETAIN_MEM_ADDR + sizeof(rtc_retain_mem_t), rtc_retain_mem);
#endif
static bool check_rtc_retain_mem(void)
{
return crc32_le(UINT32_MAX, (uint8_t*)rtc_retain_mem, sizeof(rtc_retain_mem_t) - sizeof(rtc_retain_mem->crc)) == rtc_retain_mem->crc && rtc_retain_mem->crc != UINT32_MAX;
}
static void update_rtc_retain_mem_crc(void)
{
rtc_retain_mem->crc = crc32_le(UINT32_MAX, (uint8_t*)rtc_retain_mem, sizeof(rtc_retain_mem_t) - sizeof(rtc_retain_mem->crc));
}
void bootloader_common_reset_rtc_retain_mem(void)
{
memset(rtc_retain_mem, 0, sizeof(rtc_retain_mem_t));
}
uint16_t bootloader_common_get_rtc_retain_mem_reboot_counter(void)
{
if (check_rtc_retain_mem()) {
return rtc_retain_mem->reboot_counter;
}
return 0;
}
esp_partition_pos_t* bootloader_common_get_rtc_retain_mem_partition(void)
{
if (check_rtc_retain_mem()) {
return &rtc_retain_mem->partition;
}
return NULL;
}
void bootloader_common_update_rtc_retain_mem(esp_partition_pos_t* partition, bool reboot_counter)
{
if (reboot_counter) {
if (!check_rtc_retain_mem()) {
bootloader_common_reset_rtc_retain_mem();
}
if (++rtc_retain_mem->reboot_counter == 0) {
// do not allow to overflow. Stop it.
--rtc_retain_mem->reboot_counter;
}
}
if (partition != NULL) {
rtc_retain_mem->partition.offset = partition->offset;
rtc_retain_mem->partition.size = partition->size;
}
update_rtc_retain_mem_crc();
}
rtc_retain_mem_t* bootloader_common_get_rtc_retain_mem(void)
{
return rtc_retain_mem;
}
#endif

View File

@@ -0,0 +1,56 @@
// Copyright 2019 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 "bootloader_common.h"
#include "bootloader_clock.h"
#include "soc/efuse_reg.h"
#include "soc/apb_ctrl_reg.h"
uint8_t bootloader_common_get_chip_revision(void)
{
uint8_t eco_bit0, eco_bit1, eco_bit2;
eco_bit0 = (REG_READ(EFUSE_BLK0_RDATA3_REG) & 0xF000) >> 15;
eco_bit1 = (REG_READ(EFUSE_BLK0_RDATA5_REG) & 0x100000) >> 20;
eco_bit2 = (REG_READ(APB_CTRL_DATE_REG) & 0x80000000) >> 31;
uint32_t combine_value = (eco_bit2 << 2) | (eco_bit1 << 1) | eco_bit0;
uint8_t chip_ver = 0;
switch (combine_value) {
case 0:
chip_ver = 0;
break;
case 1:
chip_ver = 1;
break;
case 3:
chip_ver = 2;
break;
case 7:
chip_ver = 3;
break;
default:
chip_ver = 0;
break;
}
return chip_ver;
}
int bootloader_clock_get_rated_freq_mhz()
{
//Check if ESP32 is rated for a CPU frequency of 160MHz only
if (REG_GET_BIT(EFUSE_BLK0_RDATA3_REG, EFUSE_RD_CHIP_CPU_FREQ_RATED) &&
REG_GET_BIT(EFUSE_BLK0_RDATA3_REG, EFUSE_RD_CHIP_CPU_FREQ_LOW)) {
return 160;
}
return 240;
}

View File

@@ -0,0 +1,24 @@
// Copyright 2019 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"
#include "bootloader_clock.h"
#include "bootloader_common.h"
#include "soc/efuse_reg.h"
uint8_t bootloader_common_get_chip_revision(void)
{
// should return the same value as esp_efuse_get_chip_ver()
return REG_GET_FIELD(EFUSE_RD_MAC_SPI_SYS_3_REG, EFUSE_WAFER_VERSION);
}

View File

@@ -13,11 +13,43 @@
// limitations under the License.
#include <stddef.h>
#include <bootloader_flash.h>
#include <bootloader_flash_priv.h>
#include <esp_log.h>
#include <esp_spi_flash.h> /* including in bootloader for error values */
#include <esp_flash_encrypt.h>
#include "flash_qio_mode.h"
#include "sdkconfig.h"
#include "soc/soc_caps.h"
#if CONFIG_IDF_TARGET_ESP32
# include "soc/spi_struct.h"
# include "soc/spi_reg.h"
/* SPI flash controller */
# define SPIFLASH SPI1
#else
# include "soc/spi_mem_struct.h"
# include "soc/spi_mem_reg.h"
/* SPI flash controller */
# define SPIFLASH SPIMEM1
#endif
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/spi_flash.h"
#include "esp32/rom/ets_sys.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/spi_flash.h" //For SPI_Encrypt_Write
#include "esp32s2/rom/ets_sys.h"
#endif
#define BYTESHIFT(VAR, IDX) (((VAR) >> ((IDX) * 8)) & 0xFF)
#define ISSI_ID 0x9D
#define MXIC_ID 0xC2
#define GD_Q_ID_HIGH 0xC8
#define GD_Q_ID_MID 0x40
#define GD_Q_ID_LOW 0x16
#define ESP_BOOTLOADER_SPIFLASH_BP_MASK_ISSI (BIT7 | BIT5 | BIT4 | BIT3 | BIT2)
#define ESP_BOOTLOADER_SPIFLASH_QE_GD_SR2 BIT1 // QE position when you write 8 bits(for SR2) at one time.
#define ESP_BOOTLOADER_SPIFLASH_QE_SR1_2BYTE BIT9 // QE position when you write 16 bits at one time.
#ifndef BOOTLOADER_BUILD
/* Normal app version maps to esp_spi_flash.h operations...
@@ -26,7 +58,7 @@ static const char *TAG = "bootloader_mmap";
static spi_flash_mmap_handle_t map;
uint32_t bootloader_mmap_get_free_pages()
uint32_t bootloader_mmap_get_free_pages(void)
{
return spi_flash_mmap_get_free_pages(SPI_FLASH_MMAP_DATA);
}
@@ -38,7 +70,7 @@ const void *bootloader_mmap(uint32_t src_addr, uint32_t size)
return NULL; /* existing mapping in use... */
}
const void *result = NULL;
uint32_t src_page = src_addr & ~(SPI_FLASH_MMU_PAGE_SIZE-1);
uint32_t src_page = src_addr & ~(SPI_FLASH_MMU_PAGE_SIZE - 1);
size += (src_addr - src_page);
esp_err_t err = spi_flash_mmap(src_page, size, SPI_FLASH_MMAP_DATA, &result, &map);
if (err != ESP_OK) {
@@ -50,7 +82,7 @@ const void *bootloader_mmap(uint32_t src_addr, uint32_t size)
void bootloader_munmap(const void *mapping)
{
if(mapping && map) {
if (mapping && map) {
spi_flash_munmap(map);
}
map = 0;
@@ -68,7 +100,11 @@ esp_err_t bootloader_flash_read(size_t src, void *dest, size_t size, bool allow_
esp_err_t bootloader_flash_write(size_t dest_addr, void *src, size_t size, bool write_encrypted)
{
if (write_encrypted) {
#if CONFIG_IDF_TARGET_ESP32
return spi_flash_write_encrypted(dest_addr, src, size);
#elif CONFIG_IDF_TARGET_ESP32S2
return SPI_Encrypt_Write(dest_addr, src, size);
#endif
} else {
return spi_flash_write(dest_addr, src, size);
}
@@ -84,27 +120,45 @@ esp_err_t bootloader_flash_erase_range(uint32_t start_addr, uint32_t size)
return spi_flash_erase_range(start_addr, size);
}
#else
#else //BOOTLOADER_BUILD
/* Bootloader version, uses ROM functions only */
#include <soc/dport_reg.h>
#include <esp32/rom/spi_flash.h>
#include <esp32/rom/cache.h>
#include "soc/dport_reg.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/spi_flash.h"
#include "esp32/rom/cache.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/spi_flash.h"
#include "esp32s2/rom/cache.h"
#include "soc/cache_memory.h"
#endif
static const char *TAG = "bootloader_flash";
#if CONFIG_IDF_TARGET_ESP32
/* Use first 50 blocks in MMU for bootloader_mmap,
50th block for bootloader_flash_read
*/
#define MMU_BLOCK0_VADDR 0x3f400000
#define MMU_BLOCK50_VADDR 0x3f720000
#define MMU_FREE_PAGES ((MMU_BLOCK50_VADDR - MMU_BLOCK0_VADDR) / FLASH_BLOCK_SIZE)
#define MMU_BLOCK0_VADDR SOC_DROM_LOW
#define MMU_SIZE (0x320000)
#define MMU_BLOCK50_VADDR (MMU_BLOCK0_VADDR + MMU_SIZE)
#define FLASH_READ_VADDR MMU_BLOCK50_VADDR
#elif CONFIG_IDF_TARGET_ESP32S2
/* Use first 63 blocks in MMU for bootloader_mmap,
63th block for bootloader_flash_read
*/
#define MMU_BLOCK0_VADDR SOC_DROM_LOW
#define MMU_SIZE (0x3f0000)
#define MMU_BLOCK63_VADDR (MMU_BLOCK0_VADDR + MMU_SIZE)
#define FLASH_READ_VADDR MMU_BLOCK63_VADDR
#endif
#define MMU_FREE_PAGES (MMU_SIZE / FLASH_BLOCK_SIZE)
static bool mapped;
// Current bootloader mapping (ab)used for bootloader_read()
static uint32_t current_read_mapping = UINT32_MAX;
uint32_t bootloader_mmap_get_free_pages()
uint32_t bootloader_mmap_get_free_pages(void)
{
/**
* Allow mapping up to 50 of the 51 available MMU blocks (last one used for reads)
@@ -119,25 +173,41 @@ const void *bootloader_mmap(uint32_t src_addr, uint32_t size)
ESP_LOGE(TAG, "tried to bootloader_mmap twice");
return NULL; /* can't map twice */
}
if (size > 0x320000) {
/* Allow mapping up to 50 of the 51 available MMU blocks (last one used for reads) */
if (size > MMU_SIZE) {
ESP_LOGE(TAG, "bootloader_mmap excess size %x", size);
return NULL;
}
uint32_t src_addr_aligned = src_addr & MMU_FLASH_MASK;
uint32_t count = bootloader_cache_pages_to_map(size, src_addr);
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Disable(0);
Cache_Flush(0);
#elif CONFIG_IDF_TARGET_ESP32S2
uint32_t autoload = Cache_Suspend_ICache();
Cache_Invalidate_ICache_All();
#endif
ESP_LOGD(TAG, "mmu set paddr=%08x count=%d size=%x src_addr=%x src_addr_aligned=%x",
src_addr & MMU_FLASH_MASK, count, size, src_addr, src_addr_aligned );
src_addr & MMU_FLASH_MASK, count, size, src_addr, src_addr_aligned );
#if CONFIG_IDF_TARGET_ESP32
int e = cache_flash_mmu_set(0, 0, MMU_BLOCK0_VADDR, src_addr_aligned, 64, count);
#elif CONFIG_IDF_TARGET_ESP32S2
int e = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, MMU_BLOCK0_VADDR, src_addr_aligned, 64, count, 0);
#endif
if (e != 0) {
ESP_LOGE(TAG, "cache_flash_mmu_set failed: %d\n", e);
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Enable(0);
#elif CONFIG_IDF_TARGET_ESP32S2
Cache_Resume_ICache(autoload);
#endif
return NULL;
}
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Enable(0);
#elif CONFIG_IDF_TARGET_ESP32S2
Cache_Resume_ICache(autoload);
#endif
mapped = true;
@@ -147,10 +217,17 @@ const void *bootloader_mmap(uint32_t src_addr, uint32_t size)
void bootloader_munmap(const void *mapping)
{
if (mapped) {
#if CONFIG_IDF_TARGET_ESP32
/* Full MMU reset */
Cache_Read_Disable(0);
Cache_Flush(0);
mmu_init(0);
#elif CONFIG_IDF_TARGET_ESP32S2
//TODO, save the autoload value.
Cache_Suspend_ICache();
Cache_Invalidate_ICache_All();
Cache_MMU_Init();
#endif
mapped = false;
current_read_mapping = UINT32_MAX;
}
@@ -158,7 +235,7 @@ void bootloader_munmap(const void *mapping)
static esp_err_t spi_to_esp_err(esp_rom_spiflash_result_t r)
{
switch(r) {
switch (r) {
case ESP_ROM_SPIFLASH_RESULT_OK:
return ESP_OK;
case ESP_ROM_SPIFLASH_RESULT_ERR:
@@ -172,10 +249,18 @@ static esp_err_t spi_to_esp_err(esp_rom_spiflash_result_t r)
static esp_err_t bootloader_flash_read_no_decrypt(size_t src_addr, void *dest, size_t size)
{
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Disable(0);
Cache_Flush(0);
#elif CONFIG_IDF_TARGET_ESP32S2
uint32_t autoload = Cache_Suspend_ICache();
#endif
esp_rom_spiflash_result_t r = esp_rom_spiflash_read(src_addr, dest, size);
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Enable(0);
#elif CONFIG_IDF_TARGET_ESP32S2
Cache_Resume_ICache(autoload);
#endif
return spi_to_esp_err(r);
}
@@ -184,28 +269,42 @@ static esp_err_t bootloader_flash_read_allow_decrypt(size_t src_addr, void *dest
{
uint32_t *dest_words = (uint32_t *)dest;
/* Use the 51st MMU mapping to read from flash in 64KB blocks.
(MMU will transparently decrypt if encryption is enabled.)
*/
for (int word = 0; word < size / 4; word++) {
uint32_t word_src = src_addr + word * 4; /* Read this offset from flash */
uint32_t map_at = word_src & MMU_FLASH_MASK; /* Map this 64KB block from flash */
uint32_t *map_ptr;
if (map_at != current_read_mapping) {
/* Move the 64KB mmu mapping window to fit map_at */
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Disable(0);
Cache_Flush(0);
#elif CONFIG_IDF_TARGET_ESP32S2
uint32_t autoload = Cache_Suspend_ICache();
Cache_Invalidate_ICache_All();
#endif
ESP_LOGD(TAG, "mmu set block paddr=0x%08x (was 0x%08x)", map_at, current_read_mapping);
int e = cache_flash_mmu_set(0, 0, MMU_BLOCK50_VADDR, map_at, 64, 1);
#if CONFIG_IDF_TARGET_ESP32
int e = cache_flash_mmu_set(0, 0, FLASH_READ_VADDR, map_at, 64, 1);
#elif CONFIG_IDF_TARGET_ESP32S2
int e = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, MMU_BLOCK63_VADDR, map_at, 64, 1, 0);
#endif
if (e != 0) {
ESP_LOGE(TAG, "cache_flash_mmu_set failed: %d\n", e);
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Enable(0);
#elif CONFIG_IDF_TARGET_ESP32S2
Cache_Resume_ICache(autoload);
#endif
return ESP_FAIL;
}
current_read_mapping = map_at;
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Enable(0);
#elif CONFIG_IDF_TARGET_ESP32S2
Cache_Resume_ICache(autoload);
#endif
}
map_ptr = (uint32_t *)(MMU_BLOCK50_VADDR + (word_src - map_at));
map_ptr = (uint32_t *)(FLASH_READ_VADDR + (word_src - map_at));
dest_words[word] = *map_ptr;
}
return ESP_OK;
@@ -256,7 +355,12 @@ esp_err_t bootloader_flash_write(size_t dest_addr, void *src, size_t size, bool
}
if (write_encrypted) {
#if CONFIG_IDF_TARGET_ESP32
return spi_to_esp_err(esp_rom_spiflash_write_encrypted(dest_addr, src, size));
#elif CONFIG_IDF_TARGET_ESP32S2
// TODO: use the same ROM AP here
return spi_to_esp_err(SPI_Encrypt_Write(dest_addr, src, size));
#endif
} else {
return spi_to_esp_err(esp_rom_spiflash_write(dest_addr, src, size));
}
@@ -291,4 +395,332 @@ esp_err_t bootloader_flash_erase_range(uint32_t start_addr, uint32_t size)
}
return spi_to_esp_err(rc);
}
#endif // BOOTLOADER_BUILD
FORCE_INLINE_ATTR bool is_issi_chip(const esp_rom_spiflash_chip_t* chip)
{
return BYTESHIFT(chip->device_id, 2) == ISSI_ID;
}
// For GD25Q32, GD25Q64, GD25Q127C, GD25Q128, which use single command to read/write different SR.
FORCE_INLINE_ATTR bool is_gd_q_chip(const esp_rom_spiflash_chip_t* chip)
{
return BYTESHIFT(chip->device_id, 2) == GD_Q_ID_HIGH && BYTESHIFT(chip->device_id, 1) == GD_Q_ID_MID && BYTESHIFT(chip->device_id, 0) >= GD_Q_ID_LOW;
}
FORCE_INLINE_ATTR bool is_mxic_chip(const esp_rom_spiflash_chip_t* chip)
{
return BYTESHIFT(chip->device_id, 2) == MXIC_ID;
}
esp_err_t IRAM_ATTR __attribute__((weak)) bootloader_flash_unlock(void)
{
// At the beginning status == new_status == status_sr2 == new_status_sr2 == 0.
// If the register doesn't need to be updated, keep them the same (0), so that no command will be actually sent.
uint16_t status = 0; // status for SR1 or SR1+SR2 if writing SR with 01H + 2Bytes.
uint16_t new_status = 0;
uint8_t status_sr2 = 0; // status_sr2 for SR2.
uint8_t new_status_sr2 = 0;
uint8_t sr1_bit_num = 0;
esp_err_t err = ESP_OK;
esp_rom_spiflash_wait_idle(&g_rom_flashchip);
if (is_issi_chip(&g_rom_flashchip) || is_mxic_chip(&g_rom_flashchip)) {
// Currently ISSI & MXIC share the same command and register layout, which is different from the default model.
// If any code here needs to be modified, check both chips.
status = bootloader_execute_flash_command(CMD_RDSR, 0, 0, 8);
/* Clear all bits in the mask.
(This is different from ROM esp_rom_spiflash_unlock, which keeps all bits as-is.)
*/
sr1_bit_num = 8;
new_status = status & (~ESP_BOOTLOADER_SPIFLASH_BP_MASK_ISSI);
} else if (is_gd_q_chip(&g_rom_flashchip)) {
/* The GD chips behaviour is to clear all bits in SR1 and clear bits in SR2 except QE bit.
Use 01H to write SR1 and 31H to write SR2.
*/
status = bootloader_execute_flash_command(CMD_RDSR, 0, 0, 8);
sr1_bit_num = 8;
new_status = 0;
status_sr2 = bootloader_execute_flash_command(CMD_RDSR2, 0, 0, 8);
new_status_sr2 = status_sr2 & ESP_BOOTLOADER_SPIFLASH_QE_GD_SR2;
} else {
/* For common behaviour, like XMC chips, Use 01H+2Bytes to write both SR1 and SR2*/
status = bootloader_execute_flash_command(CMD_RDSR, 0, 0, 8) | (bootloader_execute_flash_command(CMD_RDSR2, 0, 0, 8) << 8);
/* Clear all bits except QE, if it is set.
(This is different from ROM esp_rom_spiflash_unlock, which keeps all bits as-is.)
*/
sr1_bit_num = 16;
new_status = status & ESP_BOOTLOADER_SPIFLASH_QE_SR1_2BYTE;
}
// When SR is written, set to true to indicate that WRDI need to be sent to ensure the protection is ON before return.
bool status_written = false;
// Skip if nothing needs to be changed. Meaningless writing to SR increases the risk during write and wastes time.
if (status != new_status) {
esp_rom_spiflash_wait_idle(&g_rom_flashchip);
bootloader_execute_flash_command(CMD_WREN, 0, 0, 0);
bootloader_execute_flash_command(CMD_WRSR, new_status, sr1_bit_num, 0);
status_written = true;
}
if (status_sr2 != new_status_sr2) {
esp_rom_spiflash_wait_idle(&g_rom_flashchip);
bootloader_execute_flash_command(CMD_WREN, 0, 0, 0);
bootloader_execute_flash_command(CMD_WRSR2, new_status_sr2, 8, 0);
status_written = true;
}
if (status_written) {
//Call esp_rom_spiflash_wait_idle to make sure previous WRSR is completed.
esp_rom_spiflash_wait_idle(&g_rom_flashchip);
bootloader_execute_flash_command(CMD_WRDI, 0, 0, 0);
}
return err;
}
/* dummy_len_plus values defined in ROM for SPI flash configuration */
extern uint8_t g_rom_spiflash_dummy_len_plus[];
IRAM_ATTR static uint32_t bootloader_flash_execute_command_common(
uint8_t command,
uint32_t addr_len, uint32_t address,
uint8_t dummy_len,
uint8_t mosi_len, uint32_t mosi_data,
uint8_t miso_len)
{
assert(mosi_len <= 32);
assert(miso_len <= 32);
uint32_t old_ctrl_reg = SPIFLASH.ctrl.val;
uint32_t old_user_reg = SPIFLASH.user.val;
uint32_t old_user1_reg = SPIFLASH.user1.val;
#if CONFIG_IDF_TARGET_ESP32
SPIFLASH.ctrl.val = SPI_WP_REG_M; // keep WP high while idle, otherwise leave DIO mode
#else
SPIFLASH.ctrl.val = SPI_MEM_WP_REG_M; // keep WP high while idle, otherwise leave DIO mode
#endif
//command phase
SPIFLASH.user.usr_command = 1;
SPIFLASH.user2.usr_command_bitlen = 7;
SPIFLASH.user2.usr_command_value = command;
//addr phase
SPIFLASH.user.usr_addr = addr_len > 0;
SPIFLASH.user1.usr_addr_bitlen = addr_len - 1;
#if CONFIG_IDF_TARGET_ESP32
SPIFLASH.addr = (addr_len > 0)? (address << (32-addr_len)) : 0;
#else
SPIFLASH.addr = address;
#endif
//dummy phase
if (miso_len > 0) {
uint32_t total_dummy = dummy_len + g_rom_spiflash_dummy_len_plus[1];
SPIFLASH.user.usr_dummy = total_dummy > 0;
SPIFLASH.user1.usr_dummy_cyclelen = total_dummy - 1;
} else {
SPIFLASH.user.usr_dummy = 0;
SPIFLASH.user1.usr_dummy_cyclelen = 0;
}
//output data
SPIFLASH.user.usr_mosi = mosi_len > 0;
#if CONFIG_IDF_TARGET_ESP32
SPIFLASH.mosi_dlen.usr_mosi_dbitlen = mosi_len ? (mosi_len - 1) : 0;
#else
SPIFLASH.mosi_dlen.usr_mosi_bit_len = mosi_len ? (mosi_len - 1) : 0;
#endif
SPIFLASH.data_buf[0] = mosi_data;
//input data
SPIFLASH.user.usr_miso = miso_len > 0;
#if CONFIG_IDF_TARGET_ESP32
SPIFLASH.miso_dlen.usr_miso_dbitlen = miso_len ? (miso_len - 1) : 0;
#else
SPIFLASH.miso_dlen.usr_miso_bit_len = miso_len ? (miso_len - 1) : 0;
#endif
SPIFLASH.cmd.usr = 1;
while (SPIFLASH.cmd.usr != 0) {
}
SPIFLASH.ctrl.val = old_ctrl_reg;
SPIFLASH.user.val = old_user_reg;
SPIFLASH.user1.val = old_user1_reg;
uint32_t ret = SPIFLASH.data_buf[0];
if (miso_len < 32) {
//set unused bits to 0
ret &= ~(UINT32_MAX << miso_len);
}
return ret;
}
uint32_t IRAM_ATTR bootloader_execute_flash_command(uint8_t command, uint32_t mosi_data, uint8_t mosi_len, uint8_t miso_len)
{
const uint8_t addr_len = 0;
const uint8_t address = 0;
const uint8_t dummy_len = 0;
return bootloader_flash_execute_command_common(command, addr_len, address,
dummy_len, mosi_len, mosi_data, miso_len);
}
// cmd(0x5A) + 24bit address + 8 cycles dummy
uint32_t IRAM_ATTR bootloader_flash_read_sfdp(uint32_t sfdp_addr, unsigned int miso_byte_num)
{
assert(miso_byte_num <= 4);
const uint8_t command = CMD_RDSFDP;
const uint8_t addr_len = 24;
const uint8_t dummy_len = 8;
const uint8_t mosi_len = 0;
const uint32_t mosi_data = 0;
const uint8_t miso_len = miso_byte_num * 8;
return bootloader_flash_execute_command_common(command, addr_len, sfdp_addr,
dummy_len, mosi_len, mosi_data, miso_len);
}
void bootloader_enable_wp(void)
{
bootloader_execute_flash_command(CMD_WRDI, 0, 0, 0); /* Exit OTP mode */
}
uint32_t IRAM_ATTR bootloader_read_flash_id(void)
{
uint32_t id = bootloader_execute_flash_command(CMD_RDID, 0, 0, 24);
id = ((id & 0xff) << 16) | ((id >> 16) & 0xff) | (id & 0xff00);
return id;
}
#if SOC_CACHE_SUPPORT_WRAP
esp_err_t bootloader_flash_wrap_set(spi_flash_wrap_mode_t mode)
{
uint32_t reg_bkp_ctrl = SPIFLASH.ctrl.val;
uint32_t reg_bkp_usr = SPIFLASH.user.val;
SPIFLASH.user.fwrite_dio = 0;
SPIFLASH.user.fwrite_dual = 0;
SPIFLASH.user.fwrite_qio = 1;
SPIFLASH.user.fwrite_quad = 0;
SPIFLASH.ctrl.fcmd_dual = 0;
SPIFLASH.ctrl.fcmd_quad = 0;
SPIFLASH.user.usr_dummy = 0;
SPIFLASH.user.usr_addr = 1;
SPIFLASH.user.usr_command = 1;
SPIFLASH.user2.usr_command_bitlen = 7;
SPIFLASH.user2.usr_command_value = CMD_WRAP;
SPIFLASH.user1.usr_addr_bitlen = 23;
SPIFLASH.addr = 0;
SPIFLASH.user.usr_miso = 0;
SPIFLASH.user.usr_mosi = 1;
SPIFLASH.mosi_dlen.usr_mosi_bit_len = 7;
SPIFLASH.data_buf[0] = (uint32_t) mode << 4;;
SPIFLASH.cmd.usr = 1;
while(SPIFLASH.cmd.usr != 0)
{ }
SPIFLASH.ctrl.val = reg_bkp_ctrl;
SPIFLASH.user.val = reg_bkp_usr;
return ESP_OK;
}
#endif //SOC_CACHE_SUPPORT_WRAP
/*******************************************************************************
* XMC startup flow
******************************************************************************/
#define XMC_SUPPORT CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT
#define XMC_VENDOR_ID 0x20
#if BOOTLOADER_BUILD
#define BOOTLOADER_FLASH_LOG(level, ...) ESP_LOG##level(TAG, ##__VA_ARGS__)
#else
static DRAM_ATTR char bootloader_flash_tag[] = "bootloader_flash";
#define BOOTLOADER_FLASH_LOG(level, ...) ESP_DRAM_LOG##level(bootloader_flash_tag, ##__VA_ARGS__)
#endif
#if XMC_SUPPORT
//strictly check the model
static IRAM_ATTR bool is_xmc_chip_strict(uint32_t rdid)
{
uint32_t vendor_id = BYTESHIFT(rdid, 2);
uint32_t mfid = BYTESHIFT(rdid, 1);
uint32_t cpid = BYTESHIFT(rdid, 0);
if (vendor_id != XMC_VENDOR_ID) {
return false;
}
bool matched = false;
if (mfid == 0x40) {
if (cpid >= 0x13 && cpid <= 0x20) {
matched = true;
}
} else if (mfid == 0x41) {
if (cpid >= 0x17 && cpid <= 0x20) {
matched = true;
}
} else if (mfid == 0x50) {
if (cpid >= 0x15 && cpid <= 0x16) {
matched = true;
}
}
return matched;
}
esp_err_t IRAM_ATTR bootloader_flash_xmc_startup(void)
{
// If the RDID value is a valid XMC one, may skip the flow
const bool fast_check = true;
if (fast_check && is_xmc_chip_strict(g_rom_flashchip.device_id)) {
BOOTLOADER_FLASH_LOG(D, "XMC chip detected by RDID (%08X), skip.", g_rom_flashchip.device_id);
return ESP_OK;
}
// Check the Manufacturer ID in SFDP registers (JEDEC standard). If not XMC chip, no need to run the flow
const int sfdp_mfid_addr = 0x10;
uint8_t mf_id = (bootloader_flash_read_sfdp(sfdp_mfid_addr, 1) & 0xff);
if (mf_id != XMC_VENDOR_ID) {
BOOTLOADER_FLASH_LOG(D, "non-XMC chip detected by SFDP Read (%02X), skip.", mf_id);
return ESP_OK;
}
BOOTLOADER_FLASH_LOG(I, "XM25QHxxC startup flow");
// Enter DPD
bootloader_execute_flash_command(0xB9, 0, 0, 0);
// Enter UDPD
bootloader_execute_flash_command(0x79, 0, 0, 0);
// Exit UDPD
bootloader_execute_flash_command(0xFF, 0, 0, 0);
// Delay tXUDPD
ets_delay_us(2000);
// Release Power-down
bootloader_execute_flash_command(0xAB, 0, 0, 0);
ets_delay_us(20);
// Read flash ID and check again
g_rom_flashchip.device_id = bootloader_read_flash_id();
if (!is_xmc_chip_strict(g_rom_flashchip.device_id)) {
BOOTLOADER_FLASH_LOG(E, "XMC flash startup fail");
return ESP_FAIL;
}
return ESP_OK;
}
#else
//only compare the vendor id
static IRAM_ATTR bool is_xmc_chip(uint32_t rdid)
{
uint32_t vendor_id = (rdid >> 16) & 0xFF;
return (vendor_id == XMC_VENDOR_ID);
}
esp_err_t IRAM_ATTR bootloader_flash_xmc_startup(void)
{
if (is_xmc_chip(g_rom_flashchip.device_id)) {
BOOTLOADER_FLASH_LOG(E, "XMC chip detected (%08X) while support disabled.", g_rom_flashchip.device_id);
return ESP_FAIL;
}
return ESP_OK;
}
#endif //XMC_SUPPORT

View File

@@ -25,9 +25,10 @@
#include "soc/spi_reg.h"
#include "soc/spi_caps.h"
#include "flash_qio_mode.h"
#include "bootloader_common.h"
#include "bootloader_flash_config.h"
void bootloader_flash_update_id()
void bootloader_flash_update_id(void)
{
g_rom_flashchip.device_id = bootloader_read_flash_id();
}
@@ -37,7 +38,7 @@ void bootloader_flash_update_size(uint32_t size)
g_rom_flashchip.chip_size = size;
}
void IRAM_ATTR bootloader_flash_cs_timing_config()
void IRAM_ATTR bootloader_flash_cs_timing_config(void)
{
SET_PERI_REG_MASK(SPI_USER_REG(0), SPI_CS_HOLD_M | SPI_CS_SETUP_M);
SET_PERI_REG_BITS(SPI_CTRL2_REG(0), SPI_HOLD_TIME_V, 1, SPI_HOLD_TIME_S);
@@ -80,18 +81,11 @@ void IRAM_ATTR bootloader_flash_gpio_config(const esp_image_header_t* pfhdr)
uint32_t chip_ver = REG_GET_FIELD(EFUSE_BLK0_RDATA3_REG, EFUSE_RD_CHIP_VER_PKG);
uint32_t pkg_ver = chip_ver & 0x7;
if (pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32D2WDQ5) {
// For ESP32D2WD the SPI pins are already configured
// flash clock signal should come from IO MUX.
PIN_FUNC_SELECT(PERIPHS_IO_MUX_SD_CLK_U, FUNC_SD_CLK_SPICLK);
SET_PERI_REG_BITS(PERIPHS_IO_MUX_SD_CLK_U, FUN_DRV, drv, FUN_DRV_S);
} else if (pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32PICOD2) {
// For ESP32PICOD2 the SPI pins are already configured
// flash clock signal should come from IO MUX.
PIN_FUNC_SELECT(PERIPHS_IO_MUX_SD_CLK_U, FUNC_SD_CLK_SPICLK);
SET_PERI_REG_BITS(PERIPHS_IO_MUX_SD_CLK_U, FUN_DRV, drv, FUN_DRV_S);
} else if (pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32PICOD4) {
// For ESP32PICOD4 the SPI pins are already configured
if (pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32D2WDQ5 ||
pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32PICOD2 ||
pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32PICOD4 ||
pkg_ver == EFUSE_RD_CHIP_VER_PKG_ESP32PICOV302) {
// For ESP32D2WD or ESP32-PICO series,the SPI pins are already configured
// flash clock signal should come from IO MUX.
PIN_FUNC_SELECT(PERIPHS_IO_MUX_SD_CLK_U, FUNC_SD_CLK_SPICLK);
SET_PERI_REG_BITS(PERIPHS_IO_MUX_SD_CLK_U, FUN_DRV, drv, FUN_DRV_S);
@@ -168,4 +162,33 @@ void IRAM_ATTR bootloader_flash_dummy_config(const esp_image_header_t* pfhdr)
SET_PERI_REG_BITS(SPI_USER1_REG(0), SPI_USR_DUMMY_CYCLELEN_V, spi_cache_dummy + g_rom_spiflash_dummy_len_plus[0],
SPI_USR_DUMMY_CYCLELEN_S);
}
}
#define ESP32_D2WD_WP_GPIO 7 /* ESP32-D2WD & ESP32-PICO-D4 has this GPIO wired to WP pin of flash */
#define ESP32_PICO_V3_GPIO 18 /* ESP32-PICO-V3* use this GPIO for WP pin of flash */
int bootloader_flash_get_wp_pin(void)
{
#if CONFIG_BOOTLOADER_SPI_CUSTOM_WP_PIN
return CONFIG_BOOTLOADER_SPI_WP_PIN; // can be set for bootloader when QIO or QOUT config in use
#elif CONFIG_SPIRAM_CUSTOM_SPIWP_SD3_PIN
return CONFIG_SPIRAM_SPIWP_SD3_PIN; // can be set for app when DIO or DOUT config used for PSRAM only
#else
// no custom value, find it based on the package eFuse value
uint8_t chip_ver;
uint32_t pkg_ver = REG_GET_FIELD(EFUSE_BLK0_RDATA3_REG, EFUSE_RD_CHIP_VER_PKG);
switch(pkg_ver) {
case EFUSE_RD_CHIP_VER_PKG_ESP32U4WDH:
case EFUSE_RD_CHIP_VER_PKG_ESP32D2WDQ5:
return ESP32_D2WD_WP_GPIO;
case EFUSE_RD_CHIP_VER_PKG_ESP32PICOD4:
/* Same package IDs are used for ESP32-PICO-V3 and ESP32-PICO-D4, silicon version differentiates */
chip_ver = bootloader_common_get_chip_revision();
return (chip_ver < 3) ? ESP32_D2WD_WP_GPIO : ESP32_PICO_V3_GPIO;
case EFUSE_RD_CHIP_VER_PKG_ESP32PICOV302:
return ESP32_PICO_V3_GPIO;
default:
return SPI_WP_GPIO_NUM;
}
#endif
}

View File

@@ -0,0 +1,90 @@
// Copyright 2019 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 <stdbool.h>
#include <assert.h>
#include "string.h"
#include "sdkconfig.h"
#include "esp_err.h"
#include "esp_log.h"
#include "esp32s2/rom/gpio.h"
#include "esp32s2/rom/spi_flash.h"
#include "esp32s2/rom/efuse.h"
#include "soc/gpio_periph.h"
#include "soc/efuse_reg.h"
#include "soc/spi_reg.h"
#include "soc/spi_mem_reg.h"
#include "soc/spi_caps.h"
#include "flash_qio_mode.h"
#include "bootloader_flash_config.h"
#include "bootloader_common.h"
#define FLASH_IO_MATRIX_DUMMY_40M 0
#define FLASH_IO_MATRIX_DUMMY_80M 0
#define FLASH_IO_DRIVE_GD_WITH_1V8PSRAM 3
void bootloader_flash_update_id()
{
g_rom_flashchip.device_id = bootloader_read_flash_id();
}
void bootloader_flash_update_size(uint32_t size)
{
g_rom_flashchip.chip_size = size;
}
void IRAM_ATTR bootloader_flash_cs_timing_config()
{
SET_PERI_REG_MASK(SPI_MEM_USER_REG(0), SPI_MEM_CS_HOLD_M | SPI_MEM_CS_SETUP_M);
SET_PERI_REG_BITS(SPI_MEM_CTRL2_REG(0), SPI_MEM_CS_HOLD_TIME_V, 0, SPI_MEM_CS_HOLD_TIME_S);
SET_PERI_REG_BITS(SPI_MEM_CTRL2_REG(0), SPI_MEM_CS_SETUP_TIME_V, 0, SPI_MEM_CS_SETUP_TIME_S);
SET_PERI_REG_MASK(SPI_MEM_USER_REG(1), SPI_MEM_CS_HOLD_M | SPI_MEM_CS_SETUP_M);
SET_PERI_REG_BITS(SPI_MEM_CTRL2_REG(1), SPI_MEM_CS_HOLD_TIME_V, 1, SPI_MEM_CS_HOLD_TIME_S);
SET_PERI_REG_BITS(SPI_MEM_CTRL2_REG(1), SPI_MEM_CS_SETUP_TIME_V, 0, SPI_MEM_CS_SETUP_TIME_S);
}
void IRAM_ATTR bootloader_flash_clock_config(const esp_image_header_t* pfhdr)
{
uint32_t spi_clk_div = 0;
switch (pfhdr->spi_speed) {
case ESP_IMAGE_SPI_SPEED_80M:
spi_clk_div = 1;
break;
case ESP_IMAGE_SPI_SPEED_40M:
spi_clk_div = 2;
break;
case ESP_IMAGE_SPI_SPEED_26M:
spi_clk_div = 3;
break;
case ESP_IMAGE_SPI_SPEED_20M:
spi_clk_div = 4;
break;
default:
break;
}
esp_rom_spiflash_config_clk(spi_clk_div, 0);
esp_rom_spiflash_config_clk(spi_clk_div, 1);
}
void IRAM_ATTR bootloader_flash_set_dummy_out(void)
{
REG_SET_BIT(SPI_MEM_CTRL_REG(0), SPI_MEM_FDUMMY_OUT | SPI_MEM_D_POL | SPI_MEM_Q_POL);
REG_SET_BIT(SPI_MEM_CTRL_REG(1), SPI_MEM_FDUMMY_OUT | SPI_MEM_D_POL | SPI_MEM_Q_POL);
}
void IRAM_ATTR bootloader_flash_dummy_config(const esp_image_header_t* pfhdr)
{
bootloader_configure_spi_pins(1);
bootloader_flash_set_dummy_out();
}

View File

@@ -1,4 +1,4 @@
// Copyright 2018 Espressif Systems (Shanghai) PTE LTD
// Copyright 2015-2019 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.
@@ -13,448 +13,98 @@
// limitations under the License.
#include <string.h>
#include <stdint.h>
#include <limits.h>
#include <sys/param.h>
#include "sdkconfig.h"
#include "esp_attr.h"
#include "esp_log.h"
#include "esp32/rom/cache.h"
#include "esp32/rom/efuse.h"
#include "esp32/rom/ets_sys.h"
#include "esp32/rom/spi_flash.h"
#include "esp32/rom/crc.h"
#include "esp32/rom/rtc.h"
#include "esp32/rom/uart.h"
#include "esp32/rom/gpio.h"
#include "esp32/rom/secure_boot.h"
#include "soc/soc.h"
#include "soc/cpu.h"
#include "soc/rtc.h"
#include "soc/dport_reg.h"
#include "soc/gpio_periph.h"
#include "soc/efuse_periph.h"
#include "soc/rtc_periph.h"
#include "soc/timer_periph.h"
#include "soc/rtc_wdt.h"
#include "soc/spi_periph.h"
#include "sdkconfig.h"
#include "esp_image_format.h"
#include "esp_secure_boot.h"
#include "esp_flash_encrypt.h"
#include "esp_flash_partitions.h"
#include "bootloader_flash.h"
#include "bootloader_init.h"
#include "bootloader_flash_priv.h"
#include "bootloader_flash_config.h"
#include "bootloader_random.h"
#include "bootloader_config.h"
#include "bootloader_clock.h"
#include "bootloader_common.h"
#include "bootloader_flash_config.h"
#include "esp_flash_encrypt.h"
#include "soc/cpu.h"
#include "soc/rtc.h"
#include "hal/wdt_hal.h"
#include "flash_qio_mode.h"
static const char *TAG = "boot";
extern int _bss_start;
extern int _bss_end;
extern int _data_start;
extern int _data_end;
esp_image_header_t WORD_ALIGNED_ATTR bootloader_image_hdr;
static const char* TAG = "boot";
static esp_err_t bootloader_main();
static void print_flash_info(const esp_image_header_t* pfhdr);
static void update_flash_config(const esp_image_header_t* pfhdr);
static void bootloader_init_flash_configure(const esp_image_header_t* pfhdr);
static void uart_console_configure(void);
static void wdt_reset_check(void);
esp_err_t bootloader_init()
void bootloader_clear_bss_section(void)
{
cpu_configure_region_protection();
cpu_init_memctl();
/* Sanity check that static RAM is after the stack */
#ifndef NDEBUG
{
int *sp = get_sp();
assert(&_bss_start <= &_bss_end);
assert(&_data_start <= &_data_end);
assert(sp < &_bss_start);
assert(sp < &_data_start);
}
#endif
//Clear bss
memset(&_bss_start, 0, (&_bss_end - &_bss_start) * sizeof(_bss_start));
}
/* completely reset MMU for both CPUs
(in case serial bootloader was running) */
Cache_Read_Disable(0);
Cache_Read_Disable(1);
Cache_Flush(0);
Cache_Flush(1);
mmu_init(0);
DPORT_REG_SET_BIT(DPORT_APP_CACHE_CTRL1_REG, DPORT_APP_CACHE_MMU_IA_CLR);
mmu_init(1);
DPORT_REG_CLR_BIT(DPORT_APP_CACHE_CTRL1_REG, DPORT_APP_CACHE_MMU_IA_CLR);
/* (above steps probably unnecessary for most serial bootloader
usage, all that's absolutely needed is that we unmask DROM0
cache on the following two lines - normal ROM boot exits with
DROM0 cache unmasked, but serial bootloader exits with it
masked. However can't hurt to be thorough and reset
everything.)
The lines which manipulate DPORT_APP_CACHE_MMU_IA_CLR bit are
necessary to work around a hardware bug.
*/
DPORT_REG_CLR_BIT(DPORT_PRO_CACHE_CTRL1_REG, DPORT_PRO_CACHE_MASK_DROM0);
DPORT_REG_CLR_BIT(DPORT_APP_CACHE_CTRL1_REG, DPORT_APP_CACHE_MASK_DROM0);
if(bootloader_main() != ESP_OK){
esp_err_t bootloader_read_bootloader_header(void)
{
/* load bootloader image header */
if (bootloader_flash_read(ESP_BOOTLOADER_OFFSET, &bootloader_image_hdr, sizeof(esp_image_header_t), true) != ESP_OK) {
ESP_LOGE(TAG, "failed to load bootloader image header!");
return ESP_FAIL;
}
return ESP_OK;
}
static esp_err_t bootloader_main()
esp_err_t bootloader_check_bootloader_validity(void)
{
bootloader_common_vddsdio_configure();
/* Read and keep flash ID, for further use. */
g_rom_flashchip.device_id = bootloader_read_flash_id();
/* Check and run XMC startup flow */
if (bootloader_flash_xmc_startup() != ESP_OK) {
ESP_LOGE(TAG, "failed when running XMC startup flow, reboot!");
return ESP_FAIL;
}
esp_image_header_t fhdr;
if (bootloader_flash_read(ESP_BOOTLOADER_OFFSET, &fhdr, sizeof(esp_image_header_t), true) != ESP_OK) {
ESP_LOGE(TAG, "failed to load bootloader header!");
return ESP_FAIL;
}
/* Check chip ID and minimum chip revision that supported by this image */
/* read chip revision from efuse */
uint8_t revision = bootloader_common_get_chip_revision();
ESP_LOGI(TAG, "Chip Revision: %d", revision);
if (bootloader_common_check_chip_validity(&fhdr, ESP_IMAGE_BOOTLOADER) != ESP_OK) {
ESP_LOGI(TAG, "chip revision: %d", revision);
/* compare with the one set in bootloader image header */
if (bootloader_common_check_chip_validity(&bootloader_image_hdr, ESP_IMAGE_BOOTLOADER) != ESP_OK) {
return ESP_FAIL;
}
return ESP_OK;
}
bootloader_init_flash_configure(&fhdr);
#if (CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ == 240)
//Check if ESP32 is rated for a CPU frequency of 160MHz only
if (REG_GET_BIT(EFUSE_BLK0_RDATA3_REG, EFUSE_RD_CHIP_CPU_FREQ_RATED) &&
REG_GET_BIT(EFUSE_BLK0_RDATA3_REG, EFUSE_RD_CHIP_CPU_FREQ_LOW)) {
ESP_LOGE(TAG, "Chip CPU frequency rated for 160MHz. Modify CPU frequency in menuconfig");
return ESP_FAIL;
}
#endif
bootloader_clock_configure();
uart_console_configure();
wdt_reset_check();
ESP_LOGI(TAG, "ESP-IDF %s 2nd stage bootloader", IDF_VER);
ESP_LOGI(TAG, "compile time " __TIME__ );
ets_set_appcpu_boot_addr(0);
void bootloader_config_wdt(void)
{
/*
* At this point, the flashboot protection of RWDT and MWDT0 will have been
* automatically enabled. We can disable flashboot protection as it's not
* needed anymore. If configured to do so, we also initialize the RWDT to
* protect the remainder of the bootloader process.
*/
//Disable RWDT flashboot protection.
wdt_hal_context_t rtc_wdt_ctx = {.inst = WDT_RWDT, .rwdt_dev = &RTCCNTL};
wdt_hal_write_protect_disable(&rtc_wdt_ctx);
wdt_hal_set_flashboot_en(&rtc_wdt_ctx, false);
wdt_hal_write_protect_enable(&rtc_wdt_ctx);
#ifdef CONFIG_BOOTLOADER_WDT_ENABLE
//Initialize and start RWDT to protect the for bootloader if configured to do so
ESP_LOGD(TAG, "Enabling RTCWDT(%d ms)", CONFIG_BOOTLOADER_WDT_TIME_MS);
rtc_wdt_protect_off();
rtc_wdt_disable();
rtc_wdt_set_length_of_reset_signal(RTC_WDT_SYS_RESET_SIG, RTC_WDT_LENGTH_3_2us);
rtc_wdt_set_length_of_reset_signal(RTC_WDT_CPU_RESET_SIG, RTC_WDT_LENGTH_3_2us);
rtc_wdt_set_stage(RTC_WDT_STAGE0, RTC_WDT_STAGE_ACTION_RESET_RTC);
rtc_wdt_set_time(RTC_WDT_STAGE0, CONFIG_BOOTLOADER_WDT_TIME_MS);
rtc_wdt_enable();
rtc_wdt_protect_on();
#else
/* disable watch dog here */
rtc_wdt_disable();
#endif
REG_SET_FIELD(TIMG_WDTWPROTECT_REG(0), TIMG_WDT_WKEY, TIMG_WDT_WKEY_VALUE);
REG_CLR_BIT( TIMG_WDTCONFIG0_REG(0), TIMG_WDT_FLASHBOOT_MOD_EN );
#ifndef CONFIG_SPI_FLASH_ROM_DRIVER_PATCH
const uint32_t spiconfig = ets_efuse_get_spiconfig();
if(spiconfig != EFUSE_SPICONFIG_SPI_DEFAULTS && spiconfig != EFUSE_SPICONFIG_HSPI_DEFAULTS) {
ESP_LOGE(TAG, "SPI flash pins are overridden. \"Enable SPI flash ROM driver patched functions\" must be enabled in menuconfig");
return ESP_FAIL;
}
wdt_hal_init(&rtc_wdt_ctx, WDT_RWDT, 0, false);
uint32_t stage_timeout_ticks = (uint32_t)((uint64_t)CONFIG_BOOTLOADER_WDT_TIME_MS * rtc_clk_slow_freq_get_hz() / 1000);
wdt_hal_write_protect_disable(&rtc_wdt_ctx);
wdt_hal_config_stage(&rtc_wdt_ctx, WDT_STAGE0, stage_timeout_ticks, WDT_STAGE_ACTION_RESET_RTC);
wdt_hal_enable(&rtc_wdt_ctx);
wdt_hal_write_protect_enable(&rtc_wdt_ctx);
#endif
bootloader_flash_unlock();
//Disable MWDT0 flashboot protection. But only after we've enabled the RWDT first so that there's not gap in WDT protection.
wdt_hal_context_t wdt_ctx = {.inst = WDT_MWDT0, .mwdt_dev = &TIMERG0};
wdt_hal_write_protect_disable(&wdt_ctx);
wdt_hal_set_flashboot_en(&wdt_ctx, false);
wdt_hal_write_protect_enable(&wdt_ctx);
}
void bootloader_enable_random(void)
{
ESP_LOGI(TAG, "Enabling RNG early entropy source...");
bootloader_random_enable();
#if CONFIG_ESPTOOLPY_FLASHMODE_QIO || CONFIG_ESPTOOLPY_FLASHMODE_QOUT
bootloader_enable_qio_mode();
#endif
print_flash_info(&fhdr);
update_flash_config(&fhdr);
return ESP_OK;
}
static void update_flash_config(const esp_image_header_t* pfhdr)
void bootloader_print_banner(void)
{
uint32_t size;
switch(pfhdr->spi_size) {
case ESP_IMAGE_FLASH_SIZE_1MB:
size = 1;
break;
case ESP_IMAGE_FLASH_SIZE_2MB:
size = 2;
break;
case ESP_IMAGE_FLASH_SIZE_4MB:
size = 4;
break;
case ESP_IMAGE_FLASH_SIZE_8MB:
size = 8;
break;
case ESP_IMAGE_FLASH_SIZE_16MB:
size = 16;
break;
default:
size = 2;
}
Cache_Read_Disable( 0 );
// Set flash chip size
esp_rom_spiflash_config_param(g_rom_flashchip.device_id, size * 0x100000, 0x10000, 0x1000, 0x100, 0xffff);
// TODO: set mode
// TODO: set frequency
Cache_Flush(0);
Cache_Read_Enable( 0 );
}
static void print_flash_info(const esp_image_header_t* phdr)
{
#if (BOOT_LOG_LEVEL >= BOOT_LOG_LEVEL_NOTICE)
ESP_LOGD(TAG, "magic %02x", phdr->magic );
ESP_LOGD(TAG, "segments %02x", phdr->segment_count );
ESP_LOGD(TAG, "spi_mode %02x", phdr->spi_mode );
ESP_LOGD(TAG, "spi_speed %02x", phdr->spi_speed );
ESP_LOGD(TAG, "spi_size %02x", phdr->spi_size );
const char* str;
switch ( phdr->spi_speed ) {
case ESP_IMAGE_SPI_SPEED_40M:
str = "40MHz";
break;
case ESP_IMAGE_SPI_SPEED_26M:
str = "26.7MHz";
break;
case ESP_IMAGE_SPI_SPEED_20M:
str = "20MHz";
break;
case ESP_IMAGE_SPI_SPEED_80M:
str = "80MHz";
break;
default:
str = "20MHz";
break;
}
ESP_LOGI(TAG, "SPI Speed : %s", str );
/* SPI mode could have been set to QIO during boot already,
so test the SPI registers not the flash header */
uint32_t spi_ctrl = REG_READ(SPI_CTRL_REG(0));
if (spi_ctrl & SPI_FREAD_QIO) {
str = "QIO";
} else if (spi_ctrl & SPI_FREAD_QUAD) {
str = "QOUT";
} else if (spi_ctrl & SPI_FREAD_DIO) {
str = "DIO";
} else if (spi_ctrl & SPI_FREAD_DUAL) {
str = "DOUT";
} else if (spi_ctrl & SPI_FASTRD_MODE) {
str = "FAST READ";
} else {
str = "SLOW READ";
}
ESP_LOGI(TAG, "SPI Mode : %s", str );
switch ( phdr->spi_size ) {
case ESP_IMAGE_FLASH_SIZE_1MB:
str = "1MB";
break;
case ESP_IMAGE_FLASH_SIZE_2MB:
str = "2MB";
break;
case ESP_IMAGE_FLASH_SIZE_4MB:
str = "4MB";
break;
case ESP_IMAGE_FLASH_SIZE_8MB:
str = "8MB";
break;
case ESP_IMAGE_FLASH_SIZE_16MB:
str = "16MB";
break;
default:
str = "2MB";
break;
}
ESP_LOGI(TAG, "SPI Flash Size : %s", str );
#endif
}
/*
* Bootloader reads SPI configuration from bin header, so that
* the burning configuration can be different with compiling configuration.
*/
static void IRAM_ATTR bootloader_init_flash_configure(const esp_image_header_t* pfhdr)
{
bootloader_flash_gpio_config(pfhdr);
bootloader_flash_dummy_config(pfhdr);
bootloader_flash_cs_timing_config();
}
static void uart_console_configure(void)
{
#if CONFIG_ESP_CONSOLE_UART_NONE
ets_install_putc1(NULL);
ets_install_putc2(NULL);
#else // CONFIG_ESP_CONSOLE_UART_NONE
const int uart_num = CONFIG_ESP_CONSOLE_UART_NUM;
uartAttach();
ets_install_uart_printf();
// Wait for UART FIFO to be empty.
uart_tx_wait_idle(0);
#if CONFIG_ESP_CONSOLE_UART_CUSTOM
// Some constants to make the following code less upper-case
const int uart_tx_gpio = CONFIG_ESP_CONSOLE_UART_TX_GPIO;
const int uart_rx_gpio = CONFIG_ESP_CONSOLE_UART_RX_GPIO;
// Switch to the new UART (this just changes UART number used for
// ets_printf in ROM code).
uart_tx_switch(uart_num);
// If console is attached to UART1 or if non-default pins are used,
// need to reconfigure pins using GPIO matrix
if (uart_num != 0 || uart_tx_gpio != 1 || uart_rx_gpio != 3) {
// Change pin mode for GPIO1/3 from UART to GPIO
PIN_FUNC_SELECT(PERIPHS_IO_MUX_U0RXD_U, FUNC_U0RXD_GPIO3);
PIN_FUNC_SELECT(PERIPHS_IO_MUX_U0TXD_U, FUNC_U0TXD_GPIO1);
// Route GPIO signals to/from pins
// (arrays should be optimized away by the compiler)
const uint32_t tx_idx_list[3] = { U0TXD_OUT_IDX, U1TXD_OUT_IDX, U2TXD_OUT_IDX };
const uint32_t rx_idx_list[3] = { U0RXD_IN_IDX, U1RXD_IN_IDX, U2RXD_IN_IDX };
const uint32_t uart_reset[3] = { DPORT_UART_RST, DPORT_UART1_RST, DPORT_UART2_RST };
const uint32_t tx_idx = tx_idx_list[uart_num];
const uint32_t rx_idx = rx_idx_list[uart_num];
PIN_INPUT_ENABLE(GPIO_PIN_MUX_REG[uart_rx_gpio]);
gpio_pad_pullup(uart_rx_gpio);
gpio_matrix_out(uart_tx_gpio, tx_idx, 0, 0);
gpio_matrix_in(uart_rx_gpio, rx_idx, 0);
DPORT_SET_PERI_REG_MASK(DPORT_PERIP_RST_EN_REG, uart_reset[uart_num]);
DPORT_CLEAR_PERI_REG_MASK(DPORT_PERIP_RST_EN_REG, uart_reset[uart_num]);
}
#endif // CONFIG_ESP_CONSOLE_UART_CUSTOM
// Set configured UART console baud rate
const int uart_baud = CONFIG_ESP_CONSOLE_UART_BAUDRATE;
uart_div_modify(uart_num, (rtc_clk_apb_freq_get() << 4) / uart_baud);
#endif // CONFIG_ESP_CONSOLE_UART_NONE
}
static void wdt_reset_cpu0_info_enable(void)
{
//We do not reset core1 info here because it didn't work before cpu1 was up. So we put it into call_start_cpu1.
DPORT_REG_SET_BIT(DPORT_PRO_CPU_RECORD_CTRL_REG, DPORT_PRO_CPU_PDEBUG_ENABLE | DPORT_PRO_CPU_RECORD_ENABLE);
DPORT_REG_CLR_BIT(DPORT_PRO_CPU_RECORD_CTRL_REG, DPORT_PRO_CPU_RECORD_ENABLE);
}
static void wdt_reset_info_dump(int cpu)
{
uint32_t inst = 0, pid = 0, stat = 0, data = 0, pc = 0,
lsstat = 0, lsaddr = 0, lsdata = 0, dstat = 0;
const char *cpu_name = cpu ? "APP" : "PRO";
if (cpu == 0) {
stat = DPORT_REG_READ(DPORT_PRO_CPU_RECORD_STATUS_REG);
pid = DPORT_REG_READ(DPORT_PRO_CPU_RECORD_PID_REG);
inst = DPORT_REG_READ(DPORT_PRO_CPU_RECORD_PDEBUGINST_REG);
dstat = DPORT_REG_READ(DPORT_PRO_CPU_RECORD_PDEBUGSTATUS_REG);
data = DPORT_REG_READ(DPORT_PRO_CPU_RECORD_PDEBUGDATA_REG);
pc = DPORT_REG_READ(DPORT_PRO_CPU_RECORD_PDEBUGPC_REG);
lsstat = DPORT_REG_READ(DPORT_PRO_CPU_RECORD_PDEBUGLS0STAT_REG);
lsaddr = DPORT_REG_READ(DPORT_PRO_CPU_RECORD_PDEBUGLS0ADDR_REG);
lsdata = DPORT_REG_READ(DPORT_PRO_CPU_RECORD_PDEBUGLS0DATA_REG);
} else {
stat = DPORT_REG_READ(DPORT_APP_CPU_RECORD_STATUS_REG);
pid = DPORT_REG_READ(DPORT_APP_CPU_RECORD_PID_REG);
inst = DPORT_REG_READ(DPORT_APP_CPU_RECORD_PDEBUGINST_REG);
dstat = DPORT_REG_READ(DPORT_APP_CPU_RECORD_PDEBUGSTATUS_REG);
data = DPORT_REG_READ(DPORT_APP_CPU_RECORD_PDEBUGDATA_REG);
pc = DPORT_REG_READ(DPORT_APP_CPU_RECORD_PDEBUGPC_REG);
lsstat = DPORT_REG_READ(DPORT_APP_CPU_RECORD_PDEBUGLS0STAT_REG);
lsaddr = DPORT_REG_READ(DPORT_APP_CPU_RECORD_PDEBUGLS0ADDR_REG);
lsdata = DPORT_REG_READ(DPORT_APP_CPU_RECORD_PDEBUGLS0DATA_REG);
}
if (DPORT_RECORD_PDEBUGINST_SZ(inst) == 0 &&
DPORT_RECORD_PDEBUGSTATUS_BBCAUSE(dstat) == DPORT_RECORD_PDEBUGSTATUS_BBCAUSE_WAITI) {
ESP_LOGW(TAG, "WDT reset info: %s CPU PC=0x%x (waiti mode)", cpu_name, pc);
} else {
ESP_LOGW(TAG, "WDT reset info: %s CPU PC=0x%x", cpu_name, pc);
}
ESP_LOGD(TAG, "WDT reset info: %s CPU STATUS 0x%08x", cpu_name, stat);
ESP_LOGD(TAG, "WDT reset info: %s CPU PID 0x%08x", cpu_name, pid);
ESP_LOGD(TAG, "WDT reset info: %s CPU PDEBUGINST 0x%08x", cpu_name, inst);
ESP_LOGD(TAG, "WDT reset info: %s CPU PDEBUGSTATUS 0x%08x", cpu_name, dstat);
ESP_LOGD(TAG, "WDT reset info: %s CPU PDEBUGDATA 0x%08x", cpu_name, data);
ESP_LOGD(TAG, "WDT reset info: %s CPU PDEBUGPC 0x%08x", cpu_name, pc);
ESP_LOGD(TAG, "WDT reset info: %s CPU PDEBUGLS0STAT 0x%08x", cpu_name, lsstat);
ESP_LOGD(TAG, "WDT reset info: %s CPU PDEBUGLS0ADDR 0x%08x", cpu_name, lsaddr);
ESP_LOGD(TAG, "WDT reset info: %s CPU PDEBUGLS0DATA 0x%08x", cpu_name, lsdata);
}
static void wdt_reset_check(void)
{
int wdt_rst = 0;
RESET_REASON rst_reas[2];
rst_reas[0] = rtc_get_reset_reason(0);
rst_reas[1] = rtc_get_reset_reason(1);
if (rst_reas[0] == RTCWDT_SYS_RESET || rst_reas[0] == TG0WDT_SYS_RESET || rst_reas[0] == TG1WDT_SYS_RESET ||
rst_reas[0] == TGWDT_CPU_RESET || rst_reas[0] == RTCWDT_CPU_RESET) {
ESP_LOGW(TAG, "PRO CPU has been reset by WDT.");
wdt_rst = 1;
}
if (rst_reas[1] == RTCWDT_SYS_RESET || rst_reas[1] == TG0WDT_SYS_RESET || rst_reas[1] == TG1WDT_SYS_RESET ||
rst_reas[1] == TGWDT_CPU_RESET || rst_reas[1] == RTCWDT_CPU_RESET) {
ESP_LOGW(TAG, "APP CPU has been reset by WDT.");
wdt_rst = 1;
}
if (wdt_rst) {
// if reset by WDT dump info from trace port
wdt_reset_info_dump(0);
wdt_reset_info_dump(1);
}
wdt_reset_cpu0_info_enable();
ESP_LOGI(TAG, "ESP-IDF %s 2nd stage bootloader", IDF_VER);
ESP_LOGI(TAG, "compile time " __TIME__);
}
void __assert_func(const char *file, int line, const char *func, const char *expr)
{
ESP_LOGE(TAG, "Assert failed in %s, %s:%d (%s)", func, file, line, expr);
while(1) {}
}
void abort()
{
#if !CONFIG_ESP32_PANIC_SILENT_REBOOT
ets_printf("abort() was called at PC 0x%08x\r\n", (intptr_t)__builtin_return_address(0) - 3);
#endif
if (esp_cpu_in_ocd_debug_mode()) {
__asm__ ("break 0,0");
while (1) {
}
while(1) {}
}

View File

@@ -0,0 +1,48 @@
// 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.
#include <stdbool.h>
#include "xtensa/config/core.h"
#include "hal/cpu_hal.h"
#include "hal/mpu_hal.h"
#include "hal/mpu_types.h"
#include "soc/mpu_caps.h"
#include "bootloader_mem.h"
#include "xt_instr_macros.h"
#include "xtensa/config/specreg.h"
static inline void cpu_configure_region_protection(void)
{
/* Currently, the only supported chips esp32 and esp32s2
* have the same configuration. Move this to the port layer once
* more chips with different configurations are supported.
*
* Both chips have the address space divided into 8 regions, 512MB each.
*/
const int illegal_regions[] = {0, 4, 5, 6, 7}; // 0x00000000, 0x80000000, 0xa0000000, 0xc0000000, 0xe0000000
for (int i = 0; i < sizeof(illegal_regions) / sizeof(illegal_regions[0]); ++i) {
mpu_hal_set_region_access(illegal_regions[i], MPU_REGION_ILLEGAL);
}
mpu_hal_set_region_access(1, MPU_REGION_RW); // 0x20000000
}
void bootloader_init_mem(void)
{
cpu_hal_init_hwloop();
// protect memory region
cpu_configure_region_protection();
}

View File

@@ -1,4 +1,4 @@
// Copyright 2010-2016 Espressif Systems (Shanghai) PTE LTD
// Copyright 2010-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.
@@ -11,18 +11,14 @@
// 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"
#include "bootloader_random.h"
#include "soc/cpu.h"
#include "soc/wdev_reg.h"
#include "soc/rtc_periph.h"
#include "soc/sens_periph.h"
#include "soc/syscon_periph.h"
#include "soc/dport_reg.h"
#include "soc/i2s_periph.h"
#include "esp_log.h"
#ifndef BOOTLOADER_BUILD
#include "esp_system.h"
#include "driver/periph_ctrl.h"
void bootloader_fill_random(void *buffer, size_t length)
{
@@ -52,97 +48,9 @@ void bootloader_fill_random(void *buffer, size_t length)
do {
random ^= REG_READ(WDEV_RND_REG);
RSR(CCOUNT, now);
} while(now - start < 80*32*2); /* extra factor of 2 is precautionary */
} while (now - start < 80 * 32 * 2); /* extra factor of 2 is precautionary */
}
buffer_bytes[i] = random >> ((i % 4) * 8);
}
}
#endif // BOOTLOADER_BUILD
void bootloader_random_enable(void)
{
/* Ensure the hardware RNG is enabled following a soft reset. This should always be the case already (this clock is
never disabled while the CPU is running), this is a "belts and braces" type check.
*/
DPORT_SET_PERI_REG_MASK(DPORT_WIFI_CLK_EN_REG, DPORT_WIFI_CLK_RNG_EN);
/* Enable SAR ADC in test mode to feed ADC readings of the 1.1V
reference via I2S into the RNG entropy input.
Note: I2S requires the PLL to be running, so the call to rtc_set_cpu_freq(CPU_80M)
in early bootloader startup must have been made.
*/
SET_PERI_REG_BITS(RTC_CNTL_TEST_MUX_REG, RTC_CNTL_DTEST_RTC, 2, RTC_CNTL_DTEST_RTC_S);
SET_PERI_REG_MASK(RTC_CNTL_TEST_MUX_REG, RTC_CNTL_ENT_RTC);
SET_PERI_REG_MASK(SENS_SAR_START_FORCE_REG, SENS_SAR2_EN_TEST);
DPORT_SET_PERI_REG_MASK(DPORT_PERIP_CLK_EN_REG, DPORT_I2S0_CLK_EN);
CLEAR_PERI_REG_MASK(SENS_SAR_START_FORCE_REG, SENS_ULP_CP_FORCE_START_TOP);
CLEAR_PERI_REG_MASK(SENS_SAR_START_FORCE_REG, SENS_ULP_CP_START_TOP);
// Test pattern configuration byte 0xAD:
//--[7:4] channel_sel: 10-->en_test
//--[3:2] bit_width : 3-->12bit
//--[1:0] atten : 1-->3dB attenuation
WRITE_PERI_REG(SYSCON_SARADC_SAR2_PATT_TAB1_REG, 0xADADADAD);
WRITE_PERI_REG(SYSCON_SARADC_SAR2_PATT_TAB2_REG, 0xADADADAD);
WRITE_PERI_REG(SYSCON_SARADC_SAR2_PATT_TAB3_REG, 0xADADADAD);
WRITE_PERI_REG(SYSCON_SARADC_SAR2_PATT_TAB4_REG, 0xADADADAD);
SET_PERI_REG_BITS(SENS_SAR_MEAS_WAIT2_REG, SENS_FORCE_XPD_SAR, 3, SENS_FORCE_XPD_SAR_S);
SET_PERI_REG_MASK(SENS_SAR_READ_CTRL_REG, SENS_SAR1_DIG_FORCE);
SET_PERI_REG_MASK(SENS_SAR_READ_CTRL2_REG, SENS_SAR2_DIG_FORCE);
SET_PERI_REG_MASK(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_SAR2_MUX);
SET_PERI_REG_BITS(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_SAR_CLK_DIV, 4, SYSCON_SARADC_SAR_CLK_DIV_S);
SET_PERI_REG_BITS(SYSCON_SARADC_FSM_REG, SYSCON_SARADC_RSTB_WAIT, 8, SYSCON_SARADC_RSTB_WAIT_S); /* was 1 */
SET_PERI_REG_BITS(SYSCON_SARADC_FSM_REG, SYSCON_SARADC_START_WAIT, 10, SYSCON_SARADC_START_WAIT_S);
SET_PERI_REG_BITS(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_WORK_MODE, 0, SYSCON_SARADC_WORK_MODE_S);
SET_PERI_REG_MASK(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_SAR_SEL);
CLEAR_PERI_REG_MASK(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_DATA_SAR_SEL);
SET_PERI_REG_BITS(I2S_SAMPLE_RATE_CONF_REG(0), I2S_RX_BCK_DIV_NUM, 20, I2S_RX_BCK_DIV_NUM_S);
SET_PERI_REG_MASK(SYSCON_SARADC_CTRL_REG,SYSCON_SARADC_DATA_TO_I2S);
CLEAR_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_CAMERA_EN);
SET_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_LCD_EN);
SET_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_DATA_ENABLE);
SET_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_DATA_ENABLE_TEST_EN);
SET_PERI_REG_MASK(I2S_CONF_REG(0), I2S_RX_START);
}
void bootloader_random_disable(void)
{
/* Reset some i2s configuration (possibly redundant as we reset entire
I2S peripheral further down). */
CLEAR_PERI_REG_MASK(I2S_CONF_REG(0), I2S_RX_START);
SET_PERI_REG_MASK(I2S_CONF_REG(0), I2S_RX_RESET);
CLEAR_PERI_REG_MASK(I2S_CONF_REG(0), I2S_RX_RESET);
CLEAR_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_CAMERA_EN);
CLEAR_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_LCD_EN);
CLEAR_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_DATA_ENABLE_TEST_EN);
CLEAR_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_DATA_ENABLE);
/* Disable i2s clock */
DPORT_CLEAR_PERI_REG_MASK(DPORT_PERIP_CLK_EN_REG, DPORT_I2S0_CLK_EN);
/* Restore SYSCON mode registers */
CLEAR_PERI_REG_MASK(SENS_SAR_READ_CTRL_REG, SENS_SAR1_DIG_FORCE);
CLEAR_PERI_REG_MASK(SENS_SAR_READ_CTRL2_REG, SENS_SAR2_DIG_FORCE);
/* Restore SAR ADC mode */
CLEAR_PERI_REG_MASK(SENS_SAR_START_FORCE_REG, SENS_SAR2_EN_TEST);
CLEAR_PERI_REG_MASK(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_SAR2_MUX
| SYSCON_SARADC_SAR_SEL | SYSCON_SARADC_DATA_TO_I2S);
SET_PERI_REG_BITS(SENS_SAR_MEAS_WAIT2_REG, SENS_FORCE_XPD_SAR, 0, SENS_FORCE_XPD_SAR_S);
SET_PERI_REG_BITS(SYSCON_SARADC_FSM_REG, SYSCON_SARADC_START_WAIT, 8, SYSCON_SARADC_START_WAIT_S);
/* Reset i2s peripheral */
DPORT_SET_PERI_REG_MASK(DPORT_PERIP_RST_EN_REG, DPORT_I2S0_RST);
DPORT_CLEAR_PERI_REG_MASK(DPORT_PERIP_RST_EN_REG, DPORT_I2S0_RST);
/* Disable pull supply voltage to SAR ADC */
CLEAR_PERI_REG_MASK(RTC_CNTL_TEST_MUX_REG, RTC_CNTL_ENT_RTC);
SET_PERI_REG_BITS(RTC_CNTL_TEST_MUX_REG, RTC_CNTL_DTEST_RTC, 0, RTC_CNTL_DTEST_RTC_S);
}

View File

@@ -0,0 +1,128 @@
// Copyright 2016-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.
#include "sdkconfig.h"
#include "bootloader_random.h"
#include "soc/rtc_periph.h"
#include "soc/sens_periph.h"
#include "soc/syscon_periph.h"
#include "soc/dport_reg.h"
#include "soc/i2s_periph.h"
#include "esp_log.h"
#include "soc/io_mux_reg.h"
#ifndef BOOTLOADER_BUILD
#include "driver/periph_ctrl.h"
#endif
void bootloader_random_enable(void)
{
/* Ensure the hardware RNG is enabled following a soft reset. This should always be the case already (this clock is
never disabled while the CPU is running), this is a "belts and braces" type check.
*/
#ifdef BOOTLOADER_BUILD
DPORT_SET_PERI_REG_MASK(DPORT_WIFI_CLK_EN_REG, DPORT_WIFI_CLK_RNG_EN);
#else
periph_module_enable(PERIPH_RNG_MODULE);
#endif // BOOTLOADER_BUILD
/* Enable SAR ADC in test mode to feed ADC readings of the 1.1V
reference via I2S into the RNG entropy input.
Note: I2S requires the PLL to be running, so the call to rtc_set_cpu_freq(CPU_80M)
in early bootloader startup must have been made.
*/
SET_PERI_REG_BITS(RTC_CNTL_TEST_MUX_REG, RTC_CNTL_DTEST_RTC, 2, RTC_CNTL_DTEST_RTC_S);
SET_PERI_REG_MASK(RTC_CNTL_TEST_MUX_REG, RTC_CNTL_ENT_RTC);
SET_PERI_REG_MASK(SENS_SAR_START_FORCE_REG, SENS_SAR2_EN_TEST);
#ifdef BOOTLOADER_BUILD
DPORT_SET_PERI_REG_MASK(DPORT_PERIP_CLK_EN_REG, DPORT_I2S0_CLK_EN);
#else
periph_module_enable(PERIPH_I2S0_MODULE);
#endif // BOOTLOADER_BUILD
CLEAR_PERI_REG_MASK(SENS_SAR_START_FORCE_REG, SENS_ULP_CP_FORCE_START_TOP);
CLEAR_PERI_REG_MASK(SENS_SAR_START_FORCE_REG, SENS_ULP_CP_START_TOP);
// Test pattern configuration byte 0xAD:
//--[7:4] channel_sel: 10-->en_test
//--[3:2] bit_width : 3-->12bit
//--[1:0] atten : 1-->3dB attenuation
WRITE_PERI_REG(SYSCON_SARADC_SAR2_PATT_TAB1_REG, 0xADADADAD);
WRITE_PERI_REG(SYSCON_SARADC_SAR2_PATT_TAB2_REG, 0xADADADAD);
WRITE_PERI_REG(SYSCON_SARADC_SAR2_PATT_TAB3_REG, 0xADADADAD);
WRITE_PERI_REG(SYSCON_SARADC_SAR2_PATT_TAB4_REG, 0xADADADAD);
SET_PERI_REG_BITS(SENS_SAR_MEAS_WAIT2_REG, SENS_FORCE_XPD_SAR, 3, SENS_FORCE_XPD_SAR_S);
SET_PERI_REG_MASK(SENS_SAR_READ_CTRL_REG, SENS_SAR1_DIG_FORCE);
SET_PERI_REG_MASK(SENS_SAR_READ_CTRL2_REG, SENS_SAR2_DIG_FORCE);
SET_PERI_REG_MASK(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_SAR2_MUX);
SET_PERI_REG_BITS(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_SAR_CLK_DIV, 4, SYSCON_SARADC_SAR_CLK_DIV_S);
SET_PERI_REG_BITS(SYSCON_SARADC_FSM_REG, SYSCON_SARADC_RSTB_WAIT, 8, SYSCON_SARADC_RSTB_WAIT_S); /* was 1 */
SET_PERI_REG_BITS(SYSCON_SARADC_FSM_REG, SYSCON_SARADC_START_WAIT, 10, SYSCON_SARADC_START_WAIT_S);
SET_PERI_REG_BITS(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_WORK_MODE, 0, SYSCON_SARADC_WORK_MODE_S);
SET_PERI_REG_MASK(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_SAR_SEL);
CLEAR_PERI_REG_MASK(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_DATA_SAR_SEL);
SET_PERI_REG_BITS(I2S_SAMPLE_RATE_CONF_REG(0), I2S_RX_BCK_DIV_NUM, 20, I2S_RX_BCK_DIV_NUM_S);
SET_PERI_REG_MASK(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_DATA_TO_I2S);
CLEAR_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_CAMERA_EN);
SET_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_LCD_EN);
SET_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_DATA_ENABLE);
SET_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_DATA_ENABLE_TEST_EN);
SET_PERI_REG_MASK(I2S_CONF_REG(0), I2S_RX_START);
}
void bootloader_random_disable(void)
{
/* Reset some i2s configuration (possibly redundant as we reset entire
I2S peripheral further down). */
CLEAR_PERI_REG_MASK(I2S_CONF_REG(0), I2S_RX_START);
SET_PERI_REG_MASK(I2S_CONF_REG(0), I2S_RX_RESET);
CLEAR_PERI_REG_MASK(I2S_CONF_REG(0), I2S_RX_RESET);
CLEAR_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_CAMERA_EN);
CLEAR_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_LCD_EN);
CLEAR_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_DATA_ENABLE_TEST_EN);
CLEAR_PERI_REG_MASK(I2S_CONF2_REG(0), I2S_DATA_ENABLE);
/* Disable i2s clock */
#ifdef BOOTLOADER_BUILD
DPORT_CLEAR_PERI_REG_MASK(DPORT_PERIP_CLK_EN_REG, DPORT_I2S0_CLK_EN);
#else
periph_module_disable(PERIPH_I2S0_MODULE);
#endif // BOOTLOADER_BUILD
/* Restore SYSCON mode registers */
CLEAR_PERI_REG_MASK(SENS_SAR_READ_CTRL_REG, SENS_SAR1_DIG_FORCE);
CLEAR_PERI_REG_MASK(SENS_SAR_READ_CTRL2_REG, SENS_SAR2_DIG_FORCE);
/* Restore SAR ADC mode */
CLEAR_PERI_REG_MASK(SENS_SAR_START_FORCE_REG, SENS_SAR2_EN_TEST);
CLEAR_PERI_REG_MASK(SYSCON_SARADC_CTRL_REG, SYSCON_SARADC_SAR2_MUX
| SYSCON_SARADC_SAR_SEL | SYSCON_SARADC_DATA_TO_I2S);
SET_PERI_REG_BITS(SENS_SAR_MEAS_WAIT2_REG, SENS_FORCE_XPD_SAR, 0, SENS_FORCE_XPD_SAR_S);
SET_PERI_REG_BITS(SYSCON_SARADC_FSM_REG, SYSCON_SARADC_START_WAIT, 8, SYSCON_SARADC_START_WAIT_S);
/* Reset i2s peripheral */
#ifdef BOOTLOADER_BUILD
DPORT_SET_PERI_REG_MASK(DPORT_PERIP_RST_EN_REG, DPORT_I2S0_RST);
DPORT_CLEAR_PERI_REG_MASK(DPORT_PERIP_RST_EN_REG, DPORT_I2S0_RST);
#else
periph_module_reset(PERIPH_I2S0_MODULE);
#endif
/* Disable pull supply voltage to SAR ADC */
CLEAR_PERI_REG_MASK(RTC_CNTL_TEST_MUX_REG, RTC_CNTL_ENT_RTC);
SET_PERI_REG_BITS(RTC_CNTL_TEST_MUX_REG, RTC_CNTL_DTEST_RTC, 0, RTC_CNTL_DTEST_RTC_S);
}

View File

@@ -0,0 +1,106 @@
// Copyright 2019-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.
#include "sdkconfig.h"
#include "bootloader_random.h"
#include "soc/rtc_periph.h"
#include "soc/sens_periph.h"
#include "soc/syscon_periph.h"
#include "soc/dport_reg.h"
#include "soc/i2s_periph.h"
#include "esp_log.h"
#include "soc/io_mux_reg.h"
#include "soc/apb_saradc_reg.h"
#include "regi2c_ctrl.h"
#include "hal/adc_ll.h"
#ifndef BOOTLOADER_BUILD
#include "driver/periph_ctrl.h"
#endif
void bootloader_random_enable(void)
{
/* Ensure the Wifi clock for RNG modiule is enabled following a soft reset. This should always be the case already
(this clock is never disabled while the CPU is running), this is a "belt and braces" type check.
*/
#ifdef BOOTLOADER_BUILD
DPORT_SET_PERI_REG_MASK(DPORT_WIFI_CLK_EN_REG, DPORT_WIFI_CLK_RNG_EN);
#else
periph_module_enable(PERIPH_RNG_MODULE);
#endif // BOOTLOADER_BUILD
// Enable 8M clock source for RNG (this is actually enough to produce strong random results,
// but enabling the SAR ADC as well adds some insurance.)
REG_SET_BIT(RTC_CNTL_CLK_CONF_REG, RTC_CNTL_DIG_CLK8M_EN);
// Enable SAR ADC to read a disconnected input for additional entropy
SET_PERI_REG_MASK(DPORT_PERIP_CLK_EN0_REG,DPORT_APB_SARADC_CLK_EN);
REG_SET_FIELD(APB_SARADC_APB_ADC_CLKM_CONF_REG, APB_SARADC_CLK_SEL, 2);
CLEAR_PERI_REG_MASK(RTC_CNTL_ANA_CONF_REG, RTC_CNTL_SAR_I2C_FORCE_PD_M);
SET_PERI_REG_MASK(RTC_CNTL_ANA_CONF_REG, RTC_CNTL_SAR_I2C_FORCE_PU_M);
CLEAR_PERI_REG_MASK(ANA_CONFIG_REG, BIT(18));
SET_PERI_REG_MASK(ANA_CONFIG2_REG, BIT(16));
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SAR1_DREF_ADDR, 0x4);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SAR2_DREF_ADDR, 0x4);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENCAL_REF_ADDR, 1);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENT_TSENS_ADDR, 1);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENT_RTC_ADDR, 0);
REG_SET_FIELD(APB_SARADC_CTRL_REG, APB_SARADC_SAR1_PATT_LEN, 0);
WRITE_PERI_REG(APB_SARADC_SAR1_PATT_TAB1_REG,0xafffffff); // set adc1 channel & bitwidth & atten
REG_SET_FIELD(APB_SARADC_CTRL_REG, APB_SARADC_SAR2_PATT_LEN, 0);
WRITE_PERI_REG(APB_SARADC_SAR2_PATT_TAB1_REG,0xafffffff); //set adc2 channel & bitwidth & atten
SET_PERI_REG_MASK(SENS_SAR_MEAS1_MUX_REG,SENS_SAR1_DIG_FORCE);
REG_SET_FIELD(APB_SARADC_CTRL_REG,APB_SARADC_WORK_MODE, 1);
CLEAR_PERI_REG_MASK(APB_SARADC_CTRL2_REG,APB_SARADC_MEAS_NUM_LIMIT);
REG_SET_FIELD(SENS_SAR_POWER_XPD_SAR_REG, SENS_FORCE_XPD_SAR, 3);
SET_PERI_REG_MASK(APB_SARADC_CTRL2_REG,APB_SARADC_TIMER_SEL);
REG_SET_FIELD(APB_SARADC_CTRL2_REG, APB_SARADC_TIMER_TARGET, 100);
CLEAR_PERI_REG_MASK(APB_SARADC_CTRL_REG,APB_SARADC_START_FORCE);
SET_PERI_REG_MASK(APB_SARADC_CTRL2_REG,APB_SARADC_TIMER_EN);
}
void bootloader_random_disable(void)
{
/* Restore internal I2C bus state */
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SAR1_DREF_ADDR, 0x1);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SAR2_DREF_ADDR, 0x1);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENCAL_REF_ADDR, 0);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENT_TSENS_ADDR, 0);
REGI2C_WRITE_MASK(I2C_SAR_ADC, ADC_SARADC_ENT_RTC_ADDR, 0);
/* Restore SARADC to default mode */
CLEAR_PERI_REG_MASK(SENS_SAR_MEAS1_MUX_REG, SENS_SAR1_DIG_FORCE);
SET_PERI_REG_MASK(DPORT_PERIP_CLK_EN0_REG, DPORT_APB_SARADC_CLK_EN);
SET_PERI_REG_BITS(SENS_SAR_POWER_XPD_SAR_REG, SENS_FORCE_XPD_SAR, 0, SENS_FORCE_XPD_SAR_S);
CLEAR_PERI_REG_MASK(APB_SARADC_CTRL2_REG, APB_SARADC_TIMER_EN);
/* Note: the 8M CLK entropy source continues running even after this function is called,
but as mentioned above it's better to enable Wi-Fi or BT or call bootloader_random_enable()
in order to get a secondary entropy source.
*/
}

View File

@@ -19,6 +19,7 @@
#include "esp_attr.h"
#include "esp_log.h"
#if CONFIG_IDF_TARGET_ESP32
#include "esp32/rom/cache.h"
#include "esp32/rom/efuse.h"
#include "esp32/rom/ets_sys.h"
@@ -28,6 +29,21 @@
#include "esp32/rom/uart.h"
#include "esp32/rom/gpio.h"
#include "esp32/rom/secure_boot.h"
#elif CONFIG_IDF_TARGET_ESP32S2
#include "esp32s2/rom/cache.h"
#include "esp32s2/rom/efuse.h"
#include "esp32s2/rom/ets_sys.h"
#include "esp32s2/rom/spi_flash.h"
#include "esp32s2/rom/crc.h"
#include "esp32s2/rom/rtc.h"
#include "esp32s2/rom/uart.h"
#include "esp32s2/rom/gpio.h"
#include "esp32s2/rom/secure_boot.h"
#include "soc/extmem_reg.h"
#include "soc/cache_memory.h"
#else
#error "Unsupported IDF_TARGET"
#endif
#include "soc/soc.h"
#include "soc/cpu.h"
@@ -43,30 +59,31 @@
#include "esp_secure_boot.h"
#include "esp_flash_encrypt.h"
#include "esp_flash_partitions.h"
#include "bootloader_flash.h"
#include "bootloader_flash_priv.h"
#include "bootloader_random.h"
#include "bootloader_config.h"
#include "bootloader_common.h"
#include "bootloader_utility.h"
#include "bootloader_sha.h"
#include "esp_efuse.h"
#include "esp_fault.h"
static const char* TAG = "boot";
static const char *TAG = "boot";
/* Reduce literal size for some generic string literals */
#define MAP_ERR_MSG "Image contains multiple %s segments. Only the last one will be mapped."
static bool ota_has_initial_contents;
static void load_image(const esp_image_metadata_t* image_data);
static void load_image(const esp_image_metadata_t *image_data);
static void unpack_load_app(const esp_image_metadata_t *data);
static void set_cache_and_start_app(uint32_t drom_addr,
uint32_t drom_load_addr,
uint32_t drom_size,
uint32_t irom_addr,
uint32_t irom_load_addr,
uint32_t irom_size,
uint32_t entry_addr);
uint32_t drom_load_addr,
uint32_t drom_size,
uint32_t irom_addr,
uint32_t irom_load_addr,
uint32_t irom_size,
uint32_t entry_addr);
// Read ota_info partition and fill array from two otadata structures.
static esp_err_t read_otadata(const esp_partition_pos_t *ota_info, esp_ota_select_entry_t *two_otadata)
@@ -96,7 +113,7 @@ static esp_err_t read_otadata(const esp_partition_pos_t *ota_info, esp_ota_selec
return ESP_OK;
}
bool bootloader_utility_load_partition_table(bootloader_state_t* bs)
bool bootloader_utility_load_partition_table(bootloader_state_t *bs)
{
const esp_partition_info_t *partitions;
const char *partition_usage;
@@ -119,16 +136,16 @@ bool bootloader_utility_load_partition_table(bootloader_state_t* bs)
ESP_LOGI(TAG, "Partition Table:");
ESP_LOGI(TAG, "## Label Usage Type ST Offset Length");
for(int i = 0; i < num_partitions; i++) {
for (int i = 0; i < num_partitions; i++) {
const esp_partition_info_t *partition = &partitions[i];
ESP_LOGD(TAG, "load partition table entry 0x%x", (intptr_t)partition);
ESP_LOGD(TAG, "type=%x subtype=%x", partition->type, partition->subtype);
partition_usage = "unknown";
/* valid partition table */
switch(partition->type) {
switch (partition->type) {
case PART_TYPE_APP: /* app partition */
switch(partition->subtype) {
switch (partition->subtype) {
case PART_SUBTYPE_FACTORY: /* factory binary */
bs->factory = partition->pos;
partition_usage = "factory app";
@@ -143,15 +160,14 @@ bool bootloader_utility_load_partition_table(bootloader_state_t* bs)
bs->ota[partition->subtype & PART_SUBTYPE_OTA_MASK] = partition->pos;
++bs->app_count;
partition_usage = "OTA app";
}
else {
} else {
partition_usage = "Unknown app";
}
break;
}
break; /* PART_TYPE_APP */
case PART_TYPE_DATA: /* data partition */
switch(partition->subtype) {
switch (partition->subtype) {
case PART_SUBTYPE_DATA_OTA: /* ota data */
bs->ota_info = partition->pos;
partition_usage = "OTA data";
@@ -188,7 +204,7 @@ bool bootloader_utility_load_partition_table(bootloader_state_t* bs)
bootloader_munmap(partitions);
ESP_LOGI(TAG,"End of partition table");
ESP_LOGI(TAG, "End of partition table");
return true;
}
@@ -214,7 +230,7 @@ static esp_partition_pos_t index_to_partition(const bootloader_state_t *bs, int
static void log_invalid_app_partition(int index)
{
const char *not_bootable = " is not bootable"; /* save a few string literal bytes */
switch(index) {
switch (index) {
case FACTORY_INDEX:
ESP_LOGE(TAG, "Factory app partition%s", not_bootable);
break;
@@ -242,9 +258,16 @@ static esp_err_t write_otadata(esp_ota_select_entry_t *otadata, uint32_t offset,
static bool check_anti_rollback(const esp_partition_pos_t *partition)
{
#ifdef CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK
esp_app_desc_t app_desc;
esp_app_desc_t app_desc = {};
esp_err_t err = bootloader_common_get_partition_description(partition, &app_desc);
return err == ESP_OK && esp_efuse_check_secure_version(app_desc.secure_version) == true;
if (err != ESP_OK) {
ESP_LOGE(TAG, "Failed to get partition description %d", err);
return false;
}
bool sec_ver = esp_efuse_check_secure_version(app_desc.secure_version);
/* Anti FI check */
ESP_FAULT_ASSERT(sec_ver == esp_efuse_check_secure_version(app_desc.secure_version));
return sec_ver;
#else
return true;
#endif
@@ -257,6 +280,8 @@ static void update_anti_rollback(const esp_partition_pos_t *partition)
esp_err_t err = bootloader_common_get_partition_description(partition, &app_desc);
if (err == ESP_OK) {
esp_efuse_update_secure_version(app_desc.secure_version);
} else {
ESP_LOGE(TAG, "Failed to get partition description %d", err);
}
}
@@ -317,8 +342,8 @@ int bootloader_utility_get_selected_boot_partition(const bootloader_state_t *bs)
#ifndef CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK
if ((bootloader_common_ota_select_invalid(&otadata[0]) &&
bootloader_common_ota_select_invalid(&otadata[1])) ||
bs->app_count == 0) {
bootloader_common_ota_select_invalid(&otadata[1])) ||
bs->app_count == 0) {
ESP_LOGD(TAG, "OTA sequence numbers both empty (all-0xFF) or partition table does not have bootable ota_apps (app_count=%d)", bs->app_count);
if (bs->factory.offset != 0) {
ESP_LOGI(TAG, "Defaulting to factory image");
@@ -328,7 +353,7 @@ int bootloader_utility_get_selected_boot_partition(const bootloader_state_t *bs)
boot_index = 0;
// Try to boot from ota_0.
if ((otadata[0].ota_seq == UINT32_MAX || otadata[0].crc != bootloader_common_ota_select_crc(&otadata[0])) &&
(otadata[1].ota_seq == UINT32_MAX || otadata[1].crc != bootloader_common_ota_select_crc(&otadata[1]))) {
(otadata[1].ota_seq == UINT32_MAX || otadata[1].crc != bootloader_common_ota_select_crc(&otadata[1]))) {
// Factory is not found and both otadata are initial(0xFFFFFFFF) or incorrect crc.
// will set correct ota_seq.
ota_has_initial_contents = true;
@@ -341,7 +366,7 @@ int bootloader_utility_get_selected_boot_partition(const bootloader_state_t *bs)
ESP_LOGI(TAG, "Secure version (from eFuse) = %d", esp_efuse_read_secure_version());
// When CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK is enabled factory partition should not be in partition table, only two ota_app are there.
if ((otadata[0].ota_seq == UINT32_MAX || otadata[0].crc != bootloader_common_ota_select_crc(&otadata[0])) &&
(otadata[1].ota_seq == UINT32_MAX || otadata[1].crc != bootloader_common_ota_select_crc(&otadata[1]))) {
(otadata[1].ota_seq == UINT32_MAX || otadata[1].crc != bootloader_common_ota_select_crc(&otadata[1]))) {
ESP_LOGI(TAG, "otadata[0..1] in initial state");
// both otadata are initial(0xFFFFFFFF) or incorrect crc.
// will set correct ota_seq.
@@ -363,7 +388,7 @@ int bootloader_utility_get_selected_boot_partition(const bootloader_state_t *bs)
#endif // CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE
#ifdef CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK
if(otadata[active_otadata].ota_state == ESP_OTA_IMG_VALID) {
if (otadata[active_otadata].ota_state == ESP_OTA_IMG_VALID) {
update_anti_rollback(&bs->ota[boot_index]);
}
#endif // CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK
@@ -416,8 +441,31 @@ static void set_actual_ota_seq(const bootloader_state_t *bs, int index)
update_anti_rollback(&bs->ota[index]);
#endif
}
#if defined( CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP ) || defined( CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC )
esp_partition_pos_t partition = index_to_partition(bs, index);
bootloader_common_update_rtc_retain_mem(&partition, true);
#endif
}
#ifdef CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP
void bootloader_utility_load_boot_image_from_deep_sleep(void)
{
if (rtc_get_reset_reason(0) == DEEPSLEEP_RESET) {
esp_partition_pos_t *partition = bootloader_common_get_rtc_retain_mem_partition();
if (partition != NULL) {
esp_image_metadata_t image_data;
if (bootloader_load_image_no_verify(partition, &image_data) == ESP_OK) {
ESP_LOGI(TAG, "Fast booting app from partition at offset 0x%x", partition->offset);
bootloader_common_update_rtc_retain_mem(NULL, true);
load_image(&image_data);
}
}
ESP_LOGE(TAG, "Fast booting is not successful");
ESP_LOGI(TAG, "Try to load an app as usual with all validations");
}
}
#endif
#define TRY_LOG_FORMAT "Trying partition index %d offs 0x%x size 0x%x"
void bootloader_utility_load_boot_image(const bootloader_state_t *bs, int start_index)
@@ -426,7 +474,7 @@ void bootloader_utility_load_boot_image(const bootloader_state_t *bs, int start_
esp_partition_pos_t part;
esp_image_metadata_t image_data;
if(start_index == TEST_APP_INDEX) {
if (start_index == TEST_APP_INDEX) {
if (try_load_partition(&bs->test, &image_data)) {
load_image(&image_data);
} else {
@@ -436,7 +484,7 @@ void bootloader_utility_load_boot_image(const bootloader_state_t *bs, int start_
}
/* work backwards from start_index, down to the factory app */
for(index = start_index; index >= FACTORY_INDEX; index--) {
for (index = start_index; index >= FACTORY_INDEX; index--) {
part = index_to_partition(bs, index);
if (part.size == 0) {
continue;
@@ -450,7 +498,7 @@ void bootloader_utility_load_boot_image(const bootloader_state_t *bs, int start_
}
/* failing that work forwards from start_index, try valid OTA slots */
for(index = start_index + 1; index < bs->app_count; index++) {
for (index = start_index + 1; index < bs->app_count; index++) {
part = index_to_partition(bs, index);
if (part.size == 0) {
continue;
@@ -474,7 +522,7 @@ void bootloader_utility_load_boot_image(const bootloader_state_t *bs, int start_
}
// Copy loaded segments to RAM, set up caches for mapped segments, and start application.
static void load_image(const esp_image_metadata_t* image_data)
static void load_image(const esp_image_metadata_t *image_data)
{
/**
* Rough steps for a first boot, when encryption and secure boot are both disabled:
@@ -519,11 +567,19 @@ static void load_image(const esp_image_metadata_t* image_data)
* then Step 6 enables secure boot.
*/
#if defined(CONFIG_SECURE_BOOT_ENABLED) || defined(CONFIG_SECURE_FLASH_ENC_ENABLED)
#if defined(CONFIG_SECURE_BOOT) || defined(CONFIG_SECURE_FLASH_ENC_ENABLED)
esp_err_t err;
#endif
#ifdef CONFIG_SECURE_BOOT_ENABLED
#ifdef CONFIG_SECURE_BOOT_V2_ENABLED
err = esp_secure_boot_v2_permanently_enable(image_data);
if (err != ESP_OK) {
ESP_LOGE(TAG, "Secure Boot v2 failed (%d)", err);
return;
}
#endif
#ifdef CONFIG_SECURE_BOOT_V1_ENABLED
/* Steps 1 & 2 (see above for full description):
* 1) Generate secure boot EFUSE key
* 2) Compute digest of plaintext bootloader
@@ -550,7 +606,7 @@ static void load_image(const esp_image_metadata_t* image_data)
}
#endif
#ifdef CONFIG_SECURE_BOOT_ENABLED
#ifdef CONFIG_SECURE_BOOT_V1_ENABLED
/* Step 6 (see above for full description):
* 6) Burn EFUSE to enable secure boot
*/
@@ -571,6 +627,7 @@ static void load_image(const esp_image_metadata_t* image_data)
so issue a system reset to ensure flash encryption
cache resets properly */
ESP_LOGI(TAG, "Resetting with flash encryption enabled...");
uart_tx_wait_idle(0);
bootloader_reset();
}
#endif
@@ -582,7 +639,7 @@ static void load_image(const esp_image_metadata_t* image_data)
unpack_load_app(image_data);
}
static void unpack_load_app(const esp_image_metadata_t* data)
static void unpack_load_app(const esp_image_metadata_t *data)
{
uint32_t drom_addr = 0;
uint32_t drom_load_addr = 0;
@@ -618,12 +675,12 @@ static void unpack_load_app(const esp_image_metadata_t* data)
ESP_LOGD(TAG, "calling set_cache_and_start_app");
set_cache_and_start_app(drom_addr,
drom_load_addr,
drom_size,
irom_addr,
irom_load_addr,
irom_size,
data->image.entry_addr);
drom_load_addr,
drom_size,
irom_addr,
irom_load_addr,
irom_size,
data->image.entry_addr);
}
static void set_cache_and_start_app(
@@ -637,46 +694,78 @@ static void set_cache_and_start_app(
{
int rc;
ESP_LOGD(TAG, "configure drom and irom and start");
Cache_Read_Disable( 0 );
Cache_Flush( 0 );
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Disable(0);
Cache_Flush(0);
#elif CONFIG_IDF_TARGET_ESP32S2
uint32_t autoload = Cache_Suspend_ICache();
Cache_Invalidate_ICache_All();
#endif
/* Clear the MMU entries that are already set up,
so the new app only has the mappings it creates.
*/
#if CONFIG_IDF_TARGET_ESP32
for (int i = 0; i < DPORT_FLASH_MMU_TABLE_SIZE; i++) {
DPORT_PRO_FLASH_MMU_TABLE[i] = DPORT_FLASH_MMU_TABLE_INVALID_VAL;
}
#elif CONFIG_IDF_TARGET_ESP32S2
for (int i = 0; i < FLASH_MMU_TABLE_SIZE; i++) {
FLASH_MMU_TABLE[i] = MMU_TABLE_INVALID_VAL;
}
#endif
uint32_t drom_load_addr_aligned = drom_load_addr & MMU_FLASH_MASK;
uint32_t drom_page_count = bootloader_cache_pages_to_map(drom_size, drom_load_addr);
ESP_LOGV(TAG, "d mmu set paddr=%08x vaddr=%08x size=%d n=%d",
drom_addr & MMU_FLASH_MASK, drom_load_addr_aligned, drom_size, drom_page_count);
drom_addr & MMU_FLASH_MASK, drom_load_addr_aligned, drom_size, drom_page_count);
#if CONFIG_IDF_TARGET_ESP32
rc = cache_flash_mmu_set(0, 0, drom_load_addr_aligned, drom_addr & MMU_FLASH_MASK, 64, drom_page_count);
#elif CONFIG_IDF_TARGET_ESP32S2
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, drom_load_addr & 0xffff0000, drom_addr & 0xffff0000, 64, drom_page_count, 0);
#endif
ESP_LOGV(TAG, "rc=%d", rc);
#if CONFIG_IDF_TARGET_ESP32
rc = cache_flash_mmu_set(1, 0, drom_load_addr_aligned, drom_addr & MMU_FLASH_MASK, 64, drom_page_count);
ESP_LOGV(TAG, "rc=%d", rc);
#endif
uint32_t irom_load_addr_aligned = irom_load_addr & MMU_FLASH_MASK;
uint32_t irom_page_count = bootloader_cache_pages_to_map(irom_size, irom_load_addr);
ESP_LOGV(TAG, "i mmu set paddr=%08x vaddr=%08x size=%d n=%d",
irom_addr & MMU_FLASH_MASK, irom_load_addr_aligned, irom_size, irom_page_count);
irom_addr & MMU_FLASH_MASK, irom_load_addr_aligned, irom_size, irom_page_count);
#if CONFIG_IDF_TARGET_ESP32
rc = cache_flash_mmu_set(0, 0, irom_load_addr_aligned, irom_addr & MMU_FLASH_MASK, 64, irom_page_count);
#elif CONFIG_IDF_TARGET_ESP32S2
uint32_t iram1_used = 0;
if (irom_load_addr + irom_size > IRAM1_ADDRESS_LOW) {
iram1_used = 1;
}
if (iram1_used) {
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, IRAM0_ADDRESS_LOW, 0, 64, 64, 1);
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, IRAM1_ADDRESS_LOW, 0, 64, 64, 1);
REG_CLR_BIT(EXTMEM_PRO_ICACHE_CTRL1_REG, EXTMEM_PRO_ICACHE_MASK_IRAM1);
}
rc = Cache_Ibus_MMU_Set(MMU_ACCESS_FLASH, irom_load_addr & 0xffff0000, irom_addr & 0xffff0000, 64, irom_page_count, 0);
#endif
ESP_LOGV(TAG, "rc=%d", rc);
#if CONFIG_IDF_TARGET_ESP32
rc = cache_flash_mmu_set(1, 0, irom_load_addr_aligned, irom_addr & MMU_FLASH_MASK, 64, irom_page_count);
ESP_LOGV(TAG, "rc=%d", rc);
DPORT_REG_CLR_BIT( DPORT_PRO_CACHE_CTRL1_REG,
(DPORT_PRO_CACHE_MASK_IRAM0) | (DPORT_PRO_CACHE_MASK_IRAM1 & 0) |
(DPORT_PRO_CACHE_MASK_IROM0 & 0) | DPORT_PRO_CACHE_MASK_DROM0 |
DPORT_PRO_CACHE_MASK_DRAM1 );
(DPORT_PRO_CACHE_MASK_IRAM0) | (DPORT_PRO_CACHE_MASK_IRAM1 & 0) |
(DPORT_PRO_CACHE_MASK_IROM0 & 0) | DPORT_PRO_CACHE_MASK_DROM0 |
DPORT_PRO_CACHE_MASK_DRAM1 );
DPORT_REG_CLR_BIT( DPORT_APP_CACHE_CTRL1_REG,
(DPORT_APP_CACHE_MASK_IRAM0) | (DPORT_APP_CACHE_MASK_IRAM1 & 0) |
(DPORT_APP_CACHE_MASK_IROM0 & 0) | DPORT_APP_CACHE_MASK_DROM0 |
DPORT_APP_CACHE_MASK_DRAM1 );
Cache_Read_Enable( 0 );
(DPORT_APP_CACHE_MASK_IRAM0) | (DPORT_APP_CACHE_MASK_IRAM1 & 0) |
(DPORT_APP_CACHE_MASK_IROM0 & 0) | DPORT_APP_CACHE_MASK_DROM0 |
DPORT_APP_CACHE_MASK_DRAM1 );
#elif CONFIG_IDF_TARGET_ESP32S2
REG_CLR_BIT( EXTMEM_PRO_ICACHE_CTRL1_REG, (EXTMEM_PRO_ICACHE_MASK_IRAM0) | (EXTMEM_PRO_ICACHE_MASK_IRAM1 & 0) | EXTMEM_PRO_ICACHE_MASK_DROM0 );
#endif
#if CONFIG_IDF_TARGET_ESP32
Cache_Read_Enable(0);
#elif CONFIG_IDF_TARGET_ESP32S2
Cache_Resume_ICache(autoload);
#endif
// Application will need to do Cache_Flush(1) and Cache_Read_Enable(1)
ESP_LOGD(TAG, "start: 0x%08x", entry_addr);
@@ -688,7 +777,6 @@ static void set_cache_and_start_app(
(*entry)();
}
void bootloader_reset(void)
{
#ifdef BOOTLOADER_BUILD
@@ -720,6 +808,24 @@ esp_err_t bootloader_sha256_hex_to_str(char *out_str, const uint8_t *in_array_he
return ESP_OK;
}
void bootloader_debug_buffer(const void *buffer, size_t length, const char *label)
{
#if CONFIG_BOOTLOADER_LOG_LEVEL >= 4
const uint8_t *bytes = (const uint8_t *)buffer;
const size_t output_len = MIN(length, 128);
char hexbuf[128 * 2 + 1];
bootloader_sha256_hex_to_str(hexbuf, bytes, output_len);
hexbuf[output_len * 2] = '\0';
ESP_LOGD(TAG, "%s: %s", label, hexbuf);
#else
(void) buffer;
(void) length;
(void) label;
#endif
}
esp_err_t bootloader_sha256_flash_contents(uint32_t flash_offset, uint32_t len, uint8_t *digest)
{

Some files were not shown because too many files have changed in this diff Show More