Commit graph

9355 commits

Author SHA1 Message Date
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
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
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
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
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
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 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
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
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
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
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
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
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
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
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
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
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
aleks 3bbdfb75ad freemodbus: fix event processing failure after destroy
Closes https://github.com/espressif/esp-idf/issues/5275
2020-05-13 15:59:36 +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
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
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
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 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
lly 6b9c0dda08 ble_mesh: Fix typos 2020-05-12 16:23:13 +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
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
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
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 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 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
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
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
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
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
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
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
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
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
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
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
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
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 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
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
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
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
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 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 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
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
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
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
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
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
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
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
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
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 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
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
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
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
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
ronghulin 3c8ed7b8c9 bugfix: optimization API esp_wifi_deauth_sta 2020-04-29 14:31:16 +08:00
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 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
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
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
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
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
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
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
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 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 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 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 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
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
xueyunfei 4e2989e40c fixbug for tcp kill state assert 2020-04-23 15:38:49 +08: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
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
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
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
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
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
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
morris 5d0860f2e8 fix broken CONFIG_LEGACY_INCLUDE_COMMON_HEADERS 2020-04-20 14:01:09 +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
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
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
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
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 Č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 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
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
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 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
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
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
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
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
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
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
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 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
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
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
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
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 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
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
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
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
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 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
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 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
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
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
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
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