Commit graph

5124 commits

Author SHA1 Message Date
Jiang Jiang Jian
613558774b Merge branch 'feature/add_ping_packet_len_and_QoS_v3.1' into 'release/v3.1'
add ping length and QoS (backport v3.1)

See merge request idf/esp-idf!5148
2019-06-10 15:48:20 +08:00
zhangyanjiao
d95911ec38 add ping length and QoS 2019-06-06 14:29:42 +08:00
Konstantin Kondrashov
ea48d2802c esp32: Add reset uart
Fixed the case when the first part of log was missed
this was happened when:
 * CONFIG_CONSOLE_UART_CUSTOM option is selected (UART1)
 * The selected CONSOLE_UART port is used also for the console component
 * in code esp_restart() or abort() functions were called.
2019-06-04 20:17:21 +08:00
Angus Gratton
3e666077f0 Merge branch 'bugfix/custom_log_uart_rx_pin_v3.1' into 'release/v3.1'
bootloader_support: Fix UART RXD pin for console output (CUSTOM option) (v3.1)

See merge request idf/esp-idf!5033
2019-06-03 14:18:26 +08:00
Konstantin Kondrashov
5e0d95c4ec soc: Add some headers into gpio_periph.h 2019-05-29 13:53:41 +08:00
Renz Christian Bagaporo
5760e37dcc cmake: fix custom bootloader issue
Issue is that when users creates a custom bootloader from
$IDF_PATH/components/bootloader. Parent project build uses the copy but
bootloader subproject build uses the original still. The issue is solved
by passing the custom bootloader as extra component directory so
bootloader build knows to use the new copy (itself) in the build.
2019-05-27 18:45:28 +08:00
zhangyanjiao
3706b3863a wifi bugfix:
1. fix the bug no disconnect event when STA recv disassoc after sending auth
2. fix the bug full scan send multi events when recv deauth/disassoc
2019-05-24 18:06:24 +08:00
xiehang
86c913dbe9 wifi: fix softap crash when sta reset (backport v3.1) 2019-05-20 20:38:43 +08:00
Konstantin Kondrashov
4a82ad3937 bootloader_support: Fix UART RXD pin for console output (CUSTOM option)
The RXD pin is assigned as input (fix for custom uart option).

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

Closes: IDFGH-505
2019-05-20 18:37:26 +08:00
Roland Dobai
7307bf1b87 VFS: Allocate socket select semaphore outside ISR 2019-05-13 11:20:15 +02:00
Alexey Gerenkov
36620e1c5b esp32: Fixes freezing core dump process when flash write address checks are enabled 2019-05-08 13:30:57 +03:00
zhangyanjiao
4c3bd860f4 fix the bug when scan fail after STA failed to connect to a nonexistent AP 2019-04-30 16:50:29 +08:00
chenjianqiang
ce52121050 bugfix(psram): improve spi cs timing settings for psram
1. remove redundant SPI clock settings, use rom functions to set clock.
2. remove redundant SPI cs setup and hold settings.
3. for old 32Mbit psram, cs hold time must only be 0.5T due to the special driving mode.(cs_setup = 0; cs_hold = 0)
4. for new 64Mbit psram, cs hold time is recommended to be 2.5T. (cs_setup = 1, cs_setup_time = 0;cs_hold = 1, cs_hold_time = 1)
2019-04-30 10:50:50 +08:00
liu zhifu
4f17f383ec esp32: fix some STA certification issues
Fix following WiFi STA certification issues:
1. Add support for STA HT2040 coexist management
2. Add support for WPA2 improvements
3. Disallow HT rate when unicast/mcast cipher is TKIP/WEP
2019-04-29 20:16:44 +08:00
Jiang Jiang Jian
84c96bf5bf Merge branch 'bugfix/fix_the_PMK_bug_and_wifi_reason_code_v3.1' into 'release/v3.1'
fix the PMK bug and wifi reason code (backport v3.1)

See merge request idf/esp-idf!4895
2019-04-29 10:52:18 +08:00
negativekelvin
37b47b8e47 nvs_flash: Multi-page blob erased using nvs_erase_key should be cleaned properly
Earlier eraseItem function in Storage class would do lazy cleanup of
multi-page blobs if called using type "ANY" instead of "BLOB". It used to
just delete BLOB data and index would remain as is. Any subsequent read
would delete index entry as well. This however would return a valid
length without error if nvs_get_blob API was just used for finding
length and not reading the complete blob. This change fixes this issue.

Closes https://github.com/espressif/esp-idf/issues/3255
2019-04-28 03:49:30 +00:00
zhangyanjiao
10a7eacc98 wifi bugfixs:
1. modify wifi reason code
2. fix the bug PMK recal too long
2019-04-28 11:27:43 +08:00
Jiang Jiang Jian
3f7cc13ed7 Merge branch 'bugfix/adjtime_ut_v3.1' into 'release/v3.1'
newlib: Fix adjtime (v3.1)

See merge request idf/esp-idf!4873
2019-04-28 10:40:27 +08:00
Jiang Jiang Jian
6aacb06c73 Merge branch 'bugfix/erase_with_vtaskdelay_v3.1' into 'release/v3.1'
spi_flash: Add vTaskDelay while a long erasing (v3.1)

See merge request idf/esp-idf!4874
2019-04-28 10:40:13 +08:00
Jiang Jiang Jian
692f86bbd0 Merge branch 'bugfix/mdns_notask_timer_crash_3.1' into 'release/v3.1'
mdns: fix crash after init if no memory for task (Backport 3.1)

See merge request idf/esp-idf!4238
2019-04-28 10:39:04 +08:00
Jiang Jiang Jian
02138399ce Merge branch 'bugfix/btdm_modify_HCI_GET_CMD_BUF_v3.1' into 'release/v3.1'
Component/bt: modify HCI_GET_CMD_BUF (backport v3.1)

See merge request idf/esp-idf!4600
2019-04-28 10:20:11 +08:00
Jiang Jiang Jian
42986bf1e5 Merge branch 'bugfix/btdm_fix_warning_when_disable_logs_v3.1' into 'release/v3.1'
components/bt: Fix warning when disable debug logs or in release mode and…

See merge request idf/esp-idf!4622
2019-04-28 10:18:47 +08:00
Jiang Jiang Jian
9d80953a63 Merge branch 'bugfix/btdm_abort_if_deinit_spp_without_init_v3.1' into 'release/v3.1'
components/bt: Fix abort if call esp_spp_deinit without calling esp_spp_init

See merge request idf/esp-idf!4863
2019-04-28 10:18:15 +08:00
maojianxin
857bdf65e5 Fix external start fail 2019-04-26 07:07:53 +00:00
Zhang Jun Yi
8ca1efd91a soc/rtc: Bypass touchpad current to external 32k crystal oscillator 2019-04-26 07:07:53 +00:00
Angus Gratton
b8d1ff5e95 Merge branch 'bugfix/add_bootloader_flash_erase_range' into 'release/v3.1'
bootloader: add API for erasing flash region (backport v3.1)

See merge request idf/esp-idf!4858
2019-04-26 09:53:12 +08:00
Jiang Jiang Jian
db3dcc9a79 Merge branch 'feature/btdm_add_ble_link_timeout_config_v3.1' into 'release/v3.1'
Component/bt: add ble link timeout config in menuconfig(backport v3.1)

See merge request idf/esp-idf!4828
2019-04-25 20:05:10 +08:00
Jiang Jiang Jian
774a3c1446 Merge branch 'bugfix/wifi_spike_power_v3.1' into 'release/v3.1'
esp32: fix the issue that the spike transmit power of WiFi is higher than configured when WiFi and Bluetooth coexist (backport v3.1)

See merge request idf/esp-idf!4614
2019-04-25 16:24:07 +08:00
Konstantin Kondrashov
1bca6d0ffe spi_flash: Add vTaskDelay while a long erasing
Added Kconfig options to enable yield operation during flash erase.
By default disable.

Closes: https://github.com/espressif/esp-idf/issues/2083
Closes: IDFGH-261
2019-04-24 19:22:21 +08:00
Konstantin Kondrashov
9c60abcaca newlib: Fix adjtime
Fixed adjtime function: While using the adjtime() function,
the time correction accumulated an error
when reading the time frequently (using gettimeofday).
2019-04-24 18:42:26 +08:00
baohongde
4b11e8cb54 components/bt: Fix abort if call esp_spp_deinit without calling esp_spp_init 2019-04-24 11:37:14 +08:00
Mahavir Jain
401c940434 spi_flash: fix erase_range for block erase check
Erase in block (64k) as much as possible, before falling back
to sector (4k) erase.

Signed-off-by: Mahavir Jain <mahavir@espressif.com>
2019-04-23 21:14:33 +08:00
Mahavir Jain
1cbdfcc493 bootloader: add API for erasing flash region
Signed-off-by: Mahavir Jain <mahavir@espressif.com>

Closes: https://github.com/espressif/esp-idf/issues/2166
2019-04-23 21:14:35 +08:00
Angus Gratton
6250918dfa Merge branch 'bugfix/mdns_networking_refactoring_3.1_mdns_patch' into 'release/v3.1'
mdns: workarround in 3.1 to fix missing netif re-probing when ip changed in link-local addressing

See merge request idf/esp-idf!4715
2019-04-23 10:34:40 +08:00
Angus Gratton
072d5233ca Merge branch 'bugfix/remove_second_sha_enable_v3.1' into 'release/v3.1'
esp32/sha: Remove second enabling in esp_sha_lock_engine_common (backport v3.1)

See merge request idf/esp-idf!4781
2019-04-23 07:37:39 +08:00
zhiweijian
29f5ad6638 Component/bt: add ble link timeout config in menuconfig
- add ble link timeout config in menuconfig
- disable background connection when call gatts_open
2019-04-22 21:57:09 +08:00
XiaXiaotian
5abf384c96 esp32: fix the issue that the spike transmit power of WiFi is higher
than configured when WiFi and Bluetooth coexist
2019-04-19 14:32:50 +08:00
He Yin Ling
d39c0cc281 Merge branch 'test/modify_mesh_ci_v3.1' into 'release/v3.1'
test: updat  mesh test cases for ci (backport v3.1)

See merge request idf/esp-idf!4649
2019-04-18 11:29:26 +08:00
liu zhifu
c2986c0a1f esp32: fix a bug caused by signal test code
Fix a WiFi bug caused by signal test code.
2019-04-17 17:58:27 +08:00
luchangjie
e8fc27da7d test:update mesh test cases for ci(v3.1)
update TC_IT_MESH_EST.yml and TC_IT_MESH_COMM.yml

change mesh ci case form T50 to T12 in gitlab-ci.yml

add some test ENV in components/idf_test/integration_test/TEST_ENV_SSC.yml
2019-04-17 17:31:15 +08:00
Angus Gratton
361d28e19e Merge branch 'bugfix/bootloader_flash_crypt_cnt_ff_v3.1' into 'release/v3.1'
flash encryption: reduce FLASH_CRYPT_CNT bit width to 7 bits (v3.1)

See merge request idf/esp-idf!4729
2019-04-16 08:07:42 +08:00
Konstantin Kondrashov
bfc3931d3f esp32/sha: Remove second enabling in esp_sha_lock_engine_common 2019-04-15 21:26:43 +08:00
liu zhifu
ff94a5202c esp32: add support for WiFi signal test
Add support for WiFi signal test
2019-04-12 15:42:07 +08:00
liu zhifu
e1ff84516f esp32: increase block scan timeout value
Increase WiFi block scan internal timeout value.
2019-04-09 09:31:18 +08:00
Angus Gratton
654d6ee594 efuse/flash encryption: Reduce FLASH_CRYPT_CNT to a 7 bit efuse field
8th bit is not used by hardware.

As reported https://esp32.com/viewtopic.php?f=2&t=7800&p=40895#p40894
2019-04-09 09:59:15 +10:00
XiaXiaotian
73298a6c3d esp32: fix the bug that no TBTT will be generated anymore after
receiving wrong beacon when WiFi and BT coexist.
2019-04-08 11:46:08 +08:00
Jiang Jiang Jian
b10767a122 Merge branch 'bugfix/coex_bt_disconn_v3.1' into 'release/v3.1'
components/coex: Fix BT disconnecting due to too many reset BB

See merge request idf/esp-idf!4681
2019-04-08 10:39:26 +08:00
David Cermak
42773d22fd mdns: workarround in 3.1 to fix missing netif re-probing when ip changed in link-local addressing 2019-04-05 16:18:43 +02:00
Angus Gratton
9f2ed0f58d Merge branch 'bugfix/heap_int_oflow_checks_v3.1' into 'release/v3.1'
Backport heap int overflow checks to v3.1

See merge request idf/esp-idf!4582
2019-04-05 09:30:50 +08:00
Angus Gratton
c90831775f Merge branch 'fix/spi_on_readonly_pins_v3.1' into 'release/v3.1'
spi: fix the bug of connecting SPI peripheral to read-only pins (backport v3.1)

See merge request idf/esp-idf!4308
2019-04-04 14:48:07 +08:00
baohongde
8fe62b75ca components/coex: Fix BT disconnecting due to too many reset BB
Update coex version to 1.1.6
2019-04-03 20:53:22 +08:00
Angus Gratton
64169e7d12 Merge branch 'update/nvs_partition_utility_v3.1' into 'release/v3.1'
Update/nvs partition utility v3.1 (backport v3.1)

See merge request idf/esp-idf!4275
2019-04-03 11:12:23 +08:00
Michael (XIAO Xufeng)
f6015c29d5 spi: fix the bug of connecting SPI peripheral to read-only pins
The requirements of pin capabilites is different for spi master and
slave.  The master needs CS, SCLK, MOSI to be output-able, while slave
needs MISO to be output-able.

Previous code is for master only.

This commit allows to place other 3 pins than MISO on input-only pins
for slaves. Refactoring for spi_common is also included.

Resolves https://github.com/espressif/esp-idf/issues/2455
2019-04-02 11:33:53 +08:00
Shivani Tipnis
abb114475f nvs_part_util: Fix Readme and disable multipage blob by default 2019-04-01 15:12:38 +05:30
zhangyanjiao
83bf77e2f4 wifi: increase the block scan time because of changing channel will take at 30ms when BT/WiFi coexist 2019-04-01 10:53:12 +08:00
Shivani Tipnis
9122ec43e1 nvs_util: Fix to support write of multiple singlepage big blob data
Closes https://github.com/espressif/esp-idf/issues/3011

(cherry picked from commit 60b5cdde)
2019-03-27 17:14:06 +05:30
baohongde
a05b99e0dc components/bt: Fix warning when disable debug logs or in release mode and improve the code structure 2019-03-26 15:16:14 +08:00
chenyudong
8b6b623b64 mesh: decoupling
Remove dependencies which cause mesh code to be linked even if mesh is not used.
2019-03-22 17:36:18 +08:00
zhiweijian
4f4b4fa9d5 Component/bt: modify HCI_GET_CMD_BUF 2019-03-22 15:05:11 +08:00
David Cermak
6349f6835d mdns: fix crash after init if no memory for task
mdns init first starts timer task, then starts service task. if service task failed to be created, timer task needs to be stopped too.
fixed https://ezredmine.espressif.cn:8765/issues/28466
2019-03-21 14:49:39 +01:00
Angus Gratton
05c1463691 heap: Add integer overflow checks on MALLOC_CAP_32BIT & MALLOC_CAP_EXEC 2019-03-21 16:05:52 +11:00
Angus Gratton
439bdc0b77 heap: Add integer overflow checks 2019-03-21 12:30:10 +11:00
Jiang Jiang Jian
db91841915 Merge branch 'bugfix/btdm_fix_no_adv_report_when_scaning_with_sleep_enable_v3.1' into 'release/v3.1'
Component/bt: fix no adv report when scanning with sleep enable (backport v3.1)

See merge request idf/esp-idf!4558
2019-03-20 21:37:08 +08:00
Jiang Jiang Jian
50664c43b2 Merge branch 'bugfix/btdm_fix_blufi_prepare_write_crash_v3.1' into 'release/v3.1'
Component/bt: fix blufi prepare write crash (backport v3.1)

See merge request idf/esp-idf!4564
2019-03-20 21:03:14 +08:00
Jiang Jiang Jian
c1e5f01d2e Merge branch 'bugfix/btdm_fix_build_warning_when_bluedroid_disable_log_v3.1' into 'release/v3.1'
Component/bt: fix build warning when bluedroid disable log (backport v3.1)

See merge request idf/esp-idf!4567
2019-03-20 21:02:59 +08:00
Ivan Grokhotkov
f28e3cbc07 Merge branch 'bugfix/esp_tls_const_bytes_field_v3.1' into 'release/v3.1'
esp_tls: Make cacert_pem_bytes field a mutable integer

See merge request idf/esp-idf!4529
2019-03-20 16:09:32 +08:00
zhiweijian
4f6b6d3391 Component/bt: fix build warning when bluedroid disable log 2019-03-20 15:08:28 +08:00
zhiweijian
d6fb966ea4 Component/bt: fix blufi prepare write crash 2019-03-20 14:32:23 +08:00
zhiweijian
df5c9c8804 Component/bt: fix no adv report when scanning with sleep enable 2019-03-20 12:05:25 +08:00
Jiang Jiang Jian
3c443ae9d7 Merge branch 'bugfix/spiram_linker_wildcards_v3.1' into 'release/v3.1'
esp32 psram: Provide library name for ROM libc objects linked as PSRAM workarounds (backport v3.1)

See merge request idf/esp-idf!4305
2019-03-20 11:27:37 +08:00
Jiang Jiang Jian
96b77c11ec Merge branch 'bugfix/mdns_incorrect_semaphore_use_v3.1' into 'release/v3.1'
mdns: use binary semaphore instead of mutex when searching (Backport 3.1)

See merge request idf/esp-idf!4479
2019-03-20 11:25:44 +08:00
Ivan Grokhotkov
471013f7e0 mdns: use binary semaphore instead of mutex when searching
mdns_search_once_t::lock is used to synchronize tasks (taken by one
task and given by the other) so it should not be a mutex.
Convert to semaphore, and rename to indicate its purpose.
2019-03-19 14:02:01 +00:00
Tian Hao
51e29d6d95 fix the bug assert(8192 0) in rwble.c 234 2019-03-19 12:52:22 +00:00
Angus Gratton
8599f73019 esp32 psram: Provide library name for ROM libc objects linked as PSRAM workarounds
Fixes bug reported on forums where any source file ending in *lock.c or *creat.c
was being linked to IRAM.

https://esp32.com/viewtopic.php?f=13&t=8909&p=37362#p37362
2019-03-18 23:17:48 +00:00
Angus Gratton
6fbf2675e6 esp_tls: Make cacert_pem_bytes field a mutable integer
Ref https://esp32.com/viewtopic.php?f=2&t=9737&p=40278#p40277
2019-03-18 23:17:02 +00:00
Jiang Jiang Jian
044cadbad3 Merge branch 'bugfix/mdns_add_remove_multiple_srv_3.1' into 'release/v3.1'
mdns: fix possible crash if tx packet contained answer to removed service (backport 3.1)

See merge request idf/esp-idf!4482
2019-03-17 14:34:49 +08:00
Jiang Jiang Jian
dda1af6e55 Merge branch 'bugfix/mdns_service_memory_leak_3.1' into 'release/v3.1'
mdns: fix memory leak when query for service plus various other fixes (Backport v3.1)

See merge request idf/esp-idf!4313
2019-03-17 14:28:35 +08:00
Jiang Jiang Jian
cea8c51527 Merge branch 'bugfix/cmake_psram_fix_flag_v3.1' into 'release/v3.1'
cmake: Fix psram workaround compiler flag application (backport v3.1)

See merge request idf/esp-idf!4365
2019-03-15 10:57:49 +08:00
David Cermak
d5938abf79 mdns: fix possible crash when probing on particular interface with duplicated service instances due to naming conflicts on network
Issue: MDNS server initially sends probing packets to resolve naming confilicts with already registered service instances. In case of a conflict, instance name is altered and probing restarts. Original instance however wasnnot removed from the structure and upon service removal only one entry was removed and a dangling service might have been kept in the structure to bring about a crash.
Resolution: Keep only one instance of a service in the probing structure.
2019-03-13 16:33:21 +01:00
David Cermak
58ed22461f mdns: enable pcbs before starting service thread to avoid updating pcb's internal variables from concurent tasks
possible race condition: user task runs mdns_init, which enables pcbs while mdns-task already created could execute enable/disable of the same pcbs if an appropriate system event received
2019-03-13 16:32:50 +01:00
David Cermak
ed84e5aef3 mdns: fix possible deadlock on mdns deinit calling mdns_free()
mnds_free() initiates stop and delete timer tasks, which after locking the mutex could lead to a dead lock in case timer task executed before deleting the task, as it would wait indefinitelly for unlocking the mutex. This condition is fixed by calling _mdns_stop_timer without locking the mutex, because there's no need to protect any data when stopping and deleting the timer task
2019-03-13 16:32:59 +01:00
David Cermak
f8310c4a67 mdsn: fix race condition in updating packet data from user task when failed to allocate or queue a new service
Issue: mdns_service_add API allocates and queues an action to be processed in mdns task context; when allocation or queueing fails, allocated structure needs to be freed. Function _mdns_free_service did not only fee all the structures, but also updates packet data.
Resolution: Moved removal of packet data outside of _mdns_free_service function.
2019-03-13 16:32:50 +01:00
David Cermak
03006a109b mdns: fix possible crash when packet scheduled to transmit contained service which might have been already removed
packets scheduled to transmit are pushed to action queue and removed from tx_queue_head structure, which is searched for all remaining services and while service is removed, then service questions/asnwers are also removed from this structure. This update fixes possible crash when packet is pushed to action queue, and when service is removed, its answers are removed from tx_queue_head, but not from action queue. this could lead to a crash when the packet is poped from action queue containing questions/answers to already removed (freed) service
2019-03-13 16:32:50 +01:00
zhiweijian
3d542b2530 Component/bt: add BLE adv report flow control 2019-03-12 15:15:21 +08:00
zwj
9f3bde6096 component/bt: add vendor hci cmd 2019-03-12 14:54:53 +08:00
Angus Gratton
e4d61154f2 cmake: Fix psram workaround compiler flag application
Previously, this compiler flag was not being applied
regardless of CONFIG_SPIRAM_CACHE_WORKAROUND setting.

Explanation: add_compile_options() only applies to
source files added after the function is run, or in
subdirectories added after the function is run. In
this case, no new source files were being added after
this function was run.
2019-03-11 16:02:36 +11:00
xiehang
f2f9d92131 fix the bug in auto Ip memory leak 2019-03-06 21:07:22 +08:00
xiehang
4c248f40aa fix the bug in auto Ip memory leak 2019-03-06 19:51:01 +08:00
David Cermak
b92def7b01 mdns: fix memory leak in pbuf if tcpipadapter failed to get netif 2019-03-06 06:28:55 +00:00
David Cermak
94defe35cc mdns: fix malfuctional query_txt
when running a query for a single txt, result entries were not created and attached to result structure. this issue was introduced when fixing memory leak in txt structure, which worked correctly for PTR queries, but caused trouble for TXT query.
2019-03-06 06:28:55 +00:00
David Cermak
0b48653ed0 mdns: fix possible crash when mdns_free called while action queue not empty 2019-03-06 06:28:55 +00:00
David Cermak
1ce0434373 mdns: fix memory leak when query for service receives multiple ptr entries for one instance
fixes redmine issue 27300
2019-03-06 06:28:55 +00:00
Jiang Jiang Jian
bc58f4b9ba Merge branch 'bugfix/cmake_stack_protector_v3.1' into 'release/v3.1'
esp32: disable stack protector for startup code (CMake) (backport v3.1)

See merge request idf/esp-idf!4251
2019-03-06 14:19:52 +08:00
Jiang Jiang Jian
2c3af8a18e Merge branch 'bugfix/fix_dig_gpio_unable_hold_bug_v3.1' into 'release/v3.1'
Bugfix/fix digital gpio unable hold bug  (backport v3.1)

See merge request idf/esp-idf!4354
2019-03-06 14:19:16 +08:00
Jiang Jiang Jian
39c6b2f904 Merge branch 'bugfix/btdm_fix_iOS_and_win10_compatibility_error_for_HID_v3.1' into 'release/v3.1'
Component/bt: fix iOS and win10 compatibility error  for HID (backport v3.1)

See merge request idf/esp-idf!4425
2019-03-06 14:12:31 +08:00
Ivan Grokhotkov
e5b4d2e01a Merge branch 'bugfix/make_get_coreid_volatile_backport_v3.1' into 'release/v3.1'
freertos: Make xPortGetCoreID() volatile (backport v3.1)

See merge request idf/esp-idf!4378
2019-03-06 11:26:06 +08:00
kooho
3fc09372f1 driver(gpio): fixed digital gpio unable hold bug during deep-sleep for release/v3.1 . 2019-03-06 11:22:48 +08:00
Angus Gratton
6685ca4771 Merge branch 'feature/add_api_get_rmt_idle_level_v3.1' into 'release/v3.1'
Bugfix:  Fixed some RMT related issues (backport v3.1)

See merge request idf/esp-idf!4356
2019-03-06 10:39:42 +08:00
zhiweijian
1b5a77eba9 Component/bt: fix iOS and win10 compatibility error for HID 2019-03-05 20:00:18 +08:00
Ivan Grokhotkov
8fffb9d172 esp32: disable stack protector for startup code (CMake)
Files where stack protector is initialized should not be compiled with
stack protector enabled. This was done for Make but missing for CMake.

Fixes https://github.com/espressif/esp-idf/issues/2990.
2019-03-05 07:11:57 +00:00
Jiang Jiang Jian
62444346c1 Merge branch 'bugfix/fix_some_wifi_bugs_0301_v3.1' into 'release/v3.1'
esp32: fix some WiFi bugs (backport v3.1)

See merge request idf/esp-idf!4401
2019-03-05 10:33:24 +08:00
Darian Leung
4c4acd8d2f freertos: Make xPortGetCoreID() volatile
When xPortGetCoreID() is called twice within a function,
it might only be called once after compilation. This
commit makes the inline assembly of the function volatile.

Closes #3093
2019-03-01 10:49:58 +00:00
Jiang Jiang Jian
7e5ac34be7 Merge branch 'bugfix/wifi_modify_wifi_kconfig_v3.1' into 'release/v3.1'
esp32: modify WiFi Kconfig in order to achieve better compatility and performance (bakcport v3.1)

See merge request idf/esp-idf!4385
2019-03-01 18:46:36 +08:00
Jiang Jiang Jian
887ff7d685 Merge branch 'bugfix/multiple_backports_v3.1' into 'release/v3.1'
multiple backports (v3.1)

See merge request idf/esp-idf!4376
2019-03-01 18:46:10 +08:00
Jiang Jiang Jian
43dc03659e Merge branch 'bugfix/ble_reconn_rescan_readv_crash_v3.1' into 'release/v3.1'
component/bt : fix bug that there's low ratio crash when BLE do re-connect/re-scan/re-adv

See merge request idf/esp-idf!4327
2019-03-01 18:05:54 +08:00
Liu Zhi Fu
863da69c5b esp32: fix some WiFi bugs
Fix following WiFi bugs:
1. Fix the bug that STA incorrectly deletes BA when receiving DelBA request
2. Add out of memory check
3. Fix the bug that STA incorrectly receives packets when scanning in connected status
2019-03-01 12:50:39 +08:00
Ivan Grokhotkov
4e55490602 nvs: add a blob fragmentation test case
Ref. TW12937
2019-02-28 21:58:03 +08:00
Ivan Grokhotkov
7ee102a9f6 nvs: do eager cleanup of HashListBlocks
Previously when HashList was removing items, HashListBlocks were
removed lazily. This resulted in empty HashListBlocks dangling around
in full pages, even when all items have been erased. These blocks
would only be deleted when NVS was re-initialized
(nvs_flash_deinit/nvs_flash_init).

This change does eager cleanup instead, based on the code from
@negativekelvin offered in
https://github.com/espressif/esp-idf/issues/1642#issuecomment-367227994.

Closes https://github.com/espressif/esp-idf/issues/1642.
2019-02-28 21:58:03 +08:00
Ivan Grokhotkov
70a9e72e06 esp_timer: fix occasional failures in "monotonic values" test
1. ref_clock used in unit tests occasionally produces time off by ~100
microseconds shortly after being started. Add a delay to let
ref_clock stabilise, until the cause is found.

2. Reduce roundoff error accumulation which would occasionally cause
the test to fail, by choosing an overflow value which can be divided
by APB frequency.

3. Move time sampling part of the test into an IRAM function to
reduce variations due to cache behavior.

4. Remove calculation of "standard deviation" in the test, as what was
calculated was not actually standard deviation, and it did not add any
useful information.
2019-02-28 21:58:03 +08:00
Ivan Grokhotkov
9cfd94a9d6 esp_timer: improve unit test robustness
1. call esp_timer_get_time and ref_clock_get in the same order on
   start and in the loop

2. disable interrupts when calculating delta between ref_clock
   and esp_timer

3. ensure both functions are in cache before calculating the delta
2019-02-28 21:58:03 +08:00
Ivan Grokhotkov
48416c38c8 soc: define named constants for DPORT_CPUPERIOD_SEL values 2019-02-28 21:58:03 +08:00
Ivan Grokhotkov
beb8347faa bootloader: check previously used clock frequency at run time
In the situation when bootloader was compiled for 240MHz, and app was
compiled for 160MHz, and the chip is a revision 0 chip, the
bootloader will assume that the application has also been running at
240MHz. This will cause the chip to lock up later. Modify this to use
a run time check of DPORT_CPUPERIOD_SEL, which indicates which of the
PLL frequencies was used.

Closes https://github.com/espressif/esp-idf/issues/2731.
2019-02-28 21:58:03 +08:00
Ivan Grokhotkov
450118fdf8 soc/rtc_clk: don’t clear DPORT_CPUPERIOD_SEL when switching to XTAL
This is not necessary since RTC_CNTL_SOC_CLK_SEL is set before this.
2019-02-28 21:58:03 +08:00
Jiang Jiang Jian
2f14aeee00 Merge branch 'bugfix/fix_scan_bugs_and_alloc_eb_fail_v3.1' into 'release/v3.1'
wifi: fix scan bugs and alloc eb fail (backport v3.1)

See merge request idf/esp-idf!4389
2019-02-28 21:31:49 +08:00
Jiang Jiang Jian
42383518b8 Merge branch 'bugfix/enlarge_ethernet_stack_size_v3.1' into 'release/v3.1'
enlarge ethernet task stack size (backport v3.1)

See merge request idf/esp-idf!4369
2019-02-28 18:23:28 +08:00
zhangyanjiao
fb15403515 wifi changes:
1. make menuconfig can set the WiFi mgmt short buffer num
2. fix several scan bugs
2019-02-28 15:40:56 +08:00
XiaXiaotian
8a20519222 esp32: modify WiFi Kconfig in order to achieve better compatility
and performance
2019-02-28 10:06:06 +08:00
Jiang Jiang Jian
98ed70cd91 Merge branch 'doc/btdm_modem_sleep_EVED_mode_for_v3.1' into 'release/v3.1'
doc/btdm_modem_sleep_EVED_mode_for_v3.1(backport v3.1)

See merge request idf/esp-idf!4361
2019-02-27 18:36:04 +08:00
morris
ed1771c7cc ethernet: enlarge ethernet task stack size
1. In original driver, the stack size for emac driver task "emacT" is only 2048 Bytes, which also can not be changed by user.
2. Each time when invoking "emac_start" function, it will reset emac registers, the driver should reconfig some important registers again.

Closes https://github.com/espressif/esp-idf/issues/3025
2019-02-27 15:21:09 +08:00
wangmengyang
1bd674dc64 component/bt: add more information and description for bluetooth modem sleep
Add remark that "EVED" mode for bluetooth modem sleep is only used for internal test
2019-02-27 10:51:15 +08:00
Paul Abbott
285a0aa13c driver(rmt): Fixed some RMT related issues for release/v3.1.
1. Add missing get function to RMT API: rmt_get_idle_level().
2. Suppress error message from rmt_wait_tx_done() if wait_time==0 (allows for polling).
3. Remove the blank lines between parameter lists.

Merges https://github.com/espressif/esp-idf/pull/2666
2019-02-26 20:35:28 +08:00
Liu Zhi Fu
a019517d07 esp32: make WiFi IRAM optimization configurable
With this feature, the WiFi IRAM optimization can be disabled/enabled via menuconfig.
2019-02-26 19:26:02 +08:00
Tian Hao
f57d5db86d component/bt : fix bug that there's low ratio crash when BLE do re-connect/re-scan/re-adv
fix 3 bugs:
1. do BLE connect (both of slave and master), it mgiht cause crash due to there's much interrupts happens effect ble code running, for example, wifi run on the same core as bluetooth controller and wifi run throughtput test.
2. do BLE scan stop or adv stop or connection stop, it might cause ASSERT or crash due to memory corrupted in controller memory poll.
3. minor bug fix, not really effect bluetooth.
2019-02-25 13:41:51 +00:00
Jiang Jiang Jian
57118e2f10 Merge branch 'bugfix/btdm_backport_v3.1' into 'release/v3.1'
component/bt: backport some MRs to v3.1

See merge request idf/esp-idf!4312
2019-02-21 18:24:45 +08:00
Jiang Jiang Jian
03527e840c Merge branch 'bugfix/btdm_fix_connection_params_update_issues_v3.1' into 'release/v3.1'
component/bt:fix connection params update issues (backport v3.1)

See merge request idf/esp-idf!4298
2019-02-21 11:47:58 +08:00
zhiweijian
191cad0398 Component/bt: fix get attr value API error 2019-02-20 17:57:14 +08:00
zhiweijian
454268da00 Component/bt: fix ble cannot send or receive packet sometimes 2019-02-20 17:56:55 +08:00
zhiweijian
5e048a9ebb Component/bt: add scan window and interval check when set scan params 2019-02-20 17:56:36 +08:00
Jiang Jiang Jian
ce83031571 Merge branch 'bugfix/mdns_crash_free_strdup_3.1' into 'release/v3.1'
mdns: fixed crash on free undefined ptr if strdup is skipped (Backport 3.1)

See merge request idf/esp-idf!4189
2019-02-20 02:15:51 +08:00
Jiang Jiang Jian
298aafd112 Merge branch 'bugfix/coex_lc_protect_v3.1' into 'release/v3.1'
component/esp32 : fix coexist lc protect cause memory corrupted

See merge request idf/esp-idf!4266
2019-02-20 02:11:29 +08:00
zwj
f8f96c368b component/bt:fix connection params update issues 2019-02-19 20:43:28 +08:00
baohongde
6743820bce components/bt: Add precautions for esp_vhci_host_send_packet (backport 3.1) 2019-02-15 17:56:59 +08:00
baohongde
3e06ad6af9 components/bt: Fix crash when inquiry stop (backport 3.1) 2019-02-15 17:53:55 +08:00
Tian Hao
1c6b0bf925 component/esp32 : fix coexist lc protect cause memory corrupted
The bug will cause memory corrupted (the largest range is from 0x3ffc0000 ~ 0x3ffc8000),
some strange error will happen, like IllegalInstruction, LoadProhibited and .etc.
2019-02-15 16:13:30 +08:00
Jiang Jiang Jian
ef2bf23862 Merge branch 'bugfix/fix_some_wifi_bugs_0131_v3.1' into 'release/v3.1'
esp32: fix some wifi bugs  (backport v3.1)

See merge request idf/esp-idf!4219
2019-02-15 12:15:04 +08:00
Angus Gratton
cf5dbadf4f Merge branch 'bugfix/backtrace_from_interrupts_backport_v3.1' into 'release/v3.1'
Make backtrace work across interrupts (backport v3.1)

See merge request idf/esp-idf!4182
2019-02-13 16:53:39 +08:00
Angus Gratton
72c88db3a8 Merge branch 'fix/nvs_host_test' into 'release/v3.1'
Fix/nvs host test

See merge request idf/esp-idf!4223
2019-02-04 14:28:26 +08:00
Liu Zhi Fu
be115ec3ab esp32: fix some WiFi bugs
Fix following WiFi bugs:
1. Fix a crash bug which is caused by WiFi static TX buffer alloc/free.
2. Fix the bug that iphone fails to connect to ESP32 AP by enabling AP BAR receiving.
3. Fix the bug that ESP32 station fails to connect some APs, such as Xiaomi hotspot etc,
   after reset.
2019-01-31 21:42:49 +08:00
Shivani Tipnis
dbfe5b5886 Fix/Nvs host test extra argument passed
(cherry picked from commit 7b2cae15ba37420700d19fad55062dadc32241e5)
2019-01-31 18:47:07 +05:30
zhiweijian
e94b130ede Component/bt: fix write char crash after disconnection 2019-01-31 12:22:10 +00:00
He Yin Ling
5412ccbcb1 Merge branch 'feature/add_ipv6_related_change_v3.1' into 'release/v3.1'
modify test case to support ipv6 (backport v3.1)

See merge request idf/esp-idf!4073
2019-01-31 14:31:26 +08:00
Darian Leung
2ccfa6bd44 freertos: Make backtrace work across interrupts (backport v3.1)
This commit adds the ability for backtracing to trace from the itnerrupt to the
task stack, and across nested interrupts. Test cases have also been added.

See merge request !4084
Note: "Test backtrace from abort" reset reason modified by removing abort as a reason.
2019-01-30 22:13:28 +08:00
Liu Zhi Fu
188f86e946 esp32: fix WPS thread-safe
Fix WPS thread-safe bug
2019-01-30 13:48:15 +08:00
David Cermak
31716a4960 mdns: fixed crash on free undefined ptr after skipped strdup
Shortcircuit evaluation may cause skip of _mdns_strdup_check of any further question field, which after clear_rx_packet freed undefined memory.
Fixes https://ezredmine.espressif.cn:8765/issues/28465
2019-01-29 19:27:46 +01:00
XiaXiaotian
10cac76d79 esp32: update libphy.a to fix interrupt watchdog when WiFi and BT run at
the same time and both enable modem sleep
2019-01-29 11:10:05 +08:00
huchaoru
778566042b modify test case to support ipv6 2019-01-26 13:07:06 +00:00
Jiang Jiang Jian
0e2eccfad0 Merge branch 'bugfix/btdm_fix_crash_adv_scan_coex_v3.1' into 'release/v3.1'
fix crash when adv and scan coex and optimize duplicate scan

See merge request idf/esp-idf!4147
2019-01-25 12:04:55 +08:00
Jiang Jiang Jian
b26ded717f Merge branch 'bugfix/ble_active_scan_not_wait_scan_rsp_v3.1' into 'release/v3.1'
component/bt: add a option to make report adv data and scan response individually (backport v3.1)

See merge request idf/esp-idf!4132
2019-01-25 11:53:27 +08:00
Tian Hao
85825377c8 component/bt: add a option to make report adv data and scan response individually
Originally, when doing BLE active scan, Bluedroid will not report adv to
application layer until receive scan response. This option is used to
disable the behavior. When enable this option, Bluedroid will report
adv data or scan response to application layer immediately.
2019-01-24 18:45:57 +08:00
zhiweijian
10419b48bf fix crash when adv and scan coex and optimize duplicate scan 2019-01-24 17:29:44 +08:00
Angus Gratton
fa8c79e0fe Merge branch 'bugfix/i2c_master_clear_bus_v3.1' into 'release/v3.1'
i2c/fix i2c_master_clear_bus (backport v3.1)

See merge request idf/esp-idf!4128
2019-01-24 14:53:00 +08:00
Jiang Jiang Jian
c6750d271e Merge branch 'bugfix/bootloader_map_size_v3.1' into 'release/v3.1'
bootloader: fix incorrect mapping size (backport v3.1)

See merge request idf/esp-idf!4139
2019-01-24 14:09:58 +08:00
Jiang Jiang Jian
63a9054e5b Merge branch 'bugfix/sha_ownership_v3.1' into 'release/v3.1'
hwcrypto sha: Allow SHA contexts to be shared between tasks (backport v3.1)

See merge request idf/esp-idf!4144
2019-01-24 14:08:35 +08:00
Jiang Jiang Jian
9699ec9277 Merge branch 'bugfix/rom_export_functions_v3.1' into 'release/v3.1'
esp32, bootloader: fix issues related to linking order (backport v3.1)

See merge request idf/esp-idf!4135
2019-01-23 21:58:58 +08:00
Jiang Jiang Jian
15ac1d40fa Merge branch 'bugfix/vfs_unregister_nested_v3.1' into 'release/v3.1'
vfs: fix unregister removing top level VFS instead of nested (backport v3.1)

See merge request idf/esp-idf!4136
2019-01-23 21:54:04 +08:00
Angus Gratton
02668b62e8 hwcrypto sha: Use spinlocks instead of semaphores for small state changes
Significant performance improvement and smaller RAM footprint.
2019-01-23 18:18:38 +08:00
Angus Gratton
36b65c8498 hwcrypto sha: Allow SHA contexts to be shared between tasks
Previously, hardware SHA engine "locks" were mutex semaphores. This meant that the task which
started a particular SHA session (in hardware) needed to finalise that session, or an invalid
FreeRTOS state was created.

Replace with binary semaphore which can be shared between tasks.

Includes a unit test, but unit test doesn't crash even without this fix
(some other unknown condition is required).
2019-01-23 18:18:38 +08:00
Angus Gratton
91bc4ebb6c Update esptool.py to v2.6 2019-01-23 17:06:11 +08:00
Ivan Grokhotkov
205c484c49 bootloader: account for load address when mapping cache pages
Bootloader used to calculate the number of cache pages assuming that
load address was aligned, while in reality load address for DROM and
IROM was offset by 0x20 bytes from the start of 64kB page. This
caused the bootloader to map one less page if the size of the image
was 0x4..0x1c less than a multiple of 64kB.

Reported in https://esp32.com/viewtopic.php?f=13&t=6952.
2019-01-23 17:06:11 +08:00
Ivan Grokhotkov
60f4ccf303 bootloader: fix IROM and DROM swapped in log messages 2019-01-23 17:05:37 +08:00
Ivan Grokhotkov
1d0df04579 vfs: fix unregister removing top level VFS instead of nested
Credits @neoniousTR.

Fixes https://github.com/espressif/esp-idf/pull/2770
2019-01-23 16:28:09 +08:00
Ivan Grokhotkov
50d4ffd22e esp32: remove ROM functions redefined in IDF from LD script
In some cases, linker could choose to use ROM functions instead of the
ones defined in IDF.
For functions used in ROM stub table, this would lead to infinite
recursion when the corresponding function was called from ROM.
For crypto functions, some of these were modified in IDF, and
incompatible with ROM counterparts.
2019-01-23 16:26:14 +08:00
Ivan Grokhotkov
9845219a5f bootloader_support: exclude bootloader_init.c when building app
Depending on link order of libraries, bootloader implementation of
__assert_func could be linked instead of the one provided by newlib.
2019-01-23 16:26:14 +08:00
Ivan Grokhotkov
b4939b1121 bootloader, esp32: add workaround for Tensilica erratum 572
If zero-overhead loop buffer is enabled, under certain rare conditions
when executing a zero-overhead loop, the CPU may attempt to execute an invalid instruction. Work around by disabling the buffer.
2019-01-23 16:23:08 +08:00
XiaXiaotian
e444a31e79 esp32: fix invalid channel state information(CSI) data index
Due to a hardware limitation in ESP32, the first four bytes of some
    CSI data is invalid, not the last four bytes.

    Correct a mistake of CSI sub-carrier index in documentation.
2019-01-22 20:43:36 +08:00
Wangjialin
c3bd2a7539 bugfix(i2c): reduce speed of I2C master bus reset routine and release SDA
closes https://github.com/espressif/esp-idf/issues/2494
closes https://github.com/espressif/esp-idf/pull/2493
closes https://github.com/espressif/esp-idf/pull/2496

1. Change bus reset to handle interrupted READ sequences.
2. Slow down I2C to 100khz during reset
3. If a SLAVE device was in a read operation when the bus was interrupted, the SLAVE device is controlling SDA.The only bit during the 9 clock cycles of a byte READ the MASTER(ESP32) is guaranteed control over, is during the ACK bit period.
If the SLAVE is sending a stream of ZERO bytes, it will only release SDA during the ACK bit period. The master(ESP32) cannot generate a STOP unless SDA is HIGH. So, this reset code synchronizes the bit stream with, Either, the ACK bit, Or a 1 bit.
2019-01-22 13:48:37 +08:00
chuck todd
3a9c713748 1. Slow down I2C to 100khz During Reset
I am stealing this delay coding from @jeremyherbert #2493 pr.

2. Change Bus Reset to handle interrupted READ sequences.

The current code does not handle interrupted READ cycles.

 If a SLAVE device was in a read operation when the bus was interrupted, the SLAVE device is controlling SDA.

The only bit during the 9 clock cycles of a byte READ the MASTER(ESP32) is guaranteed control over, is during the ACK bit period.

If the SLAVE is sending a stream of ZERO bytes, it will only release SDA during the ACK bit period. The master(ESP32) cannot generate a STOP unless SDA is HIGH.

So, this reset code synchronizes the bit stream with, Either, the ACK bit, Or a 1 bit.

3. fix typo

correct `sda_id` to `sda_io` in `i2c_master_clear_bus()` @ryan-ma found it.  This typo was generated when I manually edited this patch on GitHub, I should have done a Copy/Paste operation!
2019-01-22 13:48:23 +08:00
jeremy
6a63d0eeaf reduce speed of i2c master bus reset routine and release sda 2019-01-22 13:48:07 +08:00
Tian Hao
8ad6ba2436 Fix some bugs in phy
1. fix bug PHY/RTC functions called in ISR (update phy to v4007)
2. add UnitTest to test it
3. fix task watchdog bug when wifi change channel
4. disable/enable agc to mac deinit/init
5. add UnitTest Job
2019-01-16 22:23:04 +08:00
jack
126ade78d4 esp32: fix the incorrect tx complete state issue 2019-01-12 15:38:30 +08:00
Liu Zhi Fu
fe05db83f1 esp32: fix wrongly deleting hardware BA index bug
Fix the bug that hardware BA index will be wrongly removed in
WiFi mode WIFI_MODE_APSTA.
2019-01-11 16:48:58 +08:00
Ivan Grokhotkov
7ce22b11bf Merge branch 'bugfix/mdns_udp_send_protected_backport3.1' into 'release/v3.1'
mdns networking udp send protected (Backport 3.1)

See merge request idf/esp-idf!4021
2019-01-11 15:36:57 +08:00
Ivan Grokhotkov
b917fbe914 Merge branch 'bugfix/mdns_query_failed_after_init_v3.1' into 'release/v3.1'
Fixed: mdns query failed after init (Backport v3.1)

See merge request idf/esp-idf!3730
2019-01-11 11:26:28 +08:00
Ivan Grokhotkov
beb80ffeeb Merge branch 'bugfix/mdns_crash_when_query_backport3.1' into 'release/v3.1'
mdns crash when query (backport 3.1)

See merge request idf/esp-idf!4019
2019-01-11 11:26:02 +08:00
XiaXiaotian
92a27d642b esp32: do defragmentation only for data and management frame
Check frame type before defragmentation. Only data and management frame can do
    defragmentation.
2019-01-10 14:07:11 +08:00
Jiang Jiang Jian
9bc10d9eda Merge branch 'bugfix/coex_unforce_wifi_if_no_data_buffered_in_beacon_v3.1' into 'release/v3.1'
esp32: unforce wifi if receiving beacon with no data buffered in dream (backport v3.1)

See merge request idf/esp-idf!4035
2019-01-09 17:06:11 +08:00
Jiang Jiang Jian
357239a20c Merge branch 'bugfix/btdm_fix_auth_mode_error_when_reconnection_in_smp_v3.1' into 'release/v3.1'
Component/bt: fix auth_mode error when reconnection in SMP(backport V3.1)

See merge request idf/esp-idf!3956
2019-01-09 13:57:07 +08:00
Jiang Jiang Jian
014b3c639f Merge branch 'bufix/btdm_fix_save_key_when_auth_mode_without_bond_v3.1' into 'release/v3.1'
Component/bt: fix save keys when auth mode without bond (backport v3.1)

See merge request idf/esp-idf!3958
2019-01-09 13:56:28 +08:00
Jiang Jiang Jian
505663cd6b Merge branch 'feature/illegal_instruction_panic_info_v3.1' into 'release/v3.1'
panic: dump some instruction memory on IllegalInstruction exception (backport v3.1)

See merge request idf/esp-idf!3959
2019-01-09 13:55:48 +08:00
Jiang Jiang Jian
2dc384198d Merge branch 'bugfix/btdm_modem_sleep_cowork_with_DFS_for_v3.1' into 'release/v3.1'
Bugfix/btdm modem sleep cowork with dfs for v3.1(backport v3.1)

See merge request idf/esp-idf!3964
2019-01-09 13:53:28 +08:00
Jiang Jiang Jian
e1dcd81c18 Merge branch 'bugfix/btdm_fix_two_bugs_about_pairing_v3.1' into 'release/v3.1'
components/bt: Fix two bugs about pairing(backport 3.1)

See merge request idf/esp-idf!3996
2019-01-09 13:51:07 +08:00
Jiang Jiang Jian
9f653a9d9f Merge branch 'bugfix/ota_magic_byte_issue_v3.1' into 'release/v3.1'
Bugfix/ota magic byte issue v3.1 (backport v3.1)

See merge request idf/esp-idf!4003
2019-01-09 12:00:57 +08:00
Jiang Jiang Jian
b0c389c450 Merge branch 'bugfix/fix_mbox_thread_safe_issue_v3.1' into 'release/v3.1'
fix mbox thread-safe issue (backport v3.1)

See merge request idf/esp-idf!4006
2019-01-09 11:23:21 +08:00
Jiang Jiang Jian
cbd1e9fa35 Merge branch 'bugfix/fix_uart_read_bug_when_using_dual_core_v3.1' into 'release/v3.1'
driver(uart): fixed uart read error bug when using dual core  (backport v3.1)

See merge request idf/esp-idf!3814
2019-01-09 11:01:27 +08:00
Jiang Jiang Jian
e105d23b51 Merge branch 'test/add_case_to_detect_ds2ds_issue_v3.1' into 'release/v3.1'
test: add test case to receive ds2ds packet (backport v3.1)

See merge request idf/esp-idf!3850
2019-01-09 10:57:26 +08:00
Jiang Jiang Jian
6cc626ab99 Merge branch 'bugfix/uart_select_buffer_v3.1' into 'release/v3.1'
VFS: select() on UART should return immediately when data is buffered (backport v3.1)

See merge request idf/esp-idf!3830
2019-01-09 10:54:16 +08:00
Jiang Jiang Jian
e70fc19384 Merge branch 'bugfix/btdm_fix_accept_specified_sec_auth_v3.1' into 'release/v3.1'
Component/bt: fix accept specified sec auth error(backport V3.1)

See merge request idf/esp-idf!3837
2019-01-09 10:37:19 +08:00
Jiang Jiang Jian
935501896d Merge branch 'bugfix/btdm_fix_receive_adv_pkt_when_duplicate_scan_enabled_v3.1' into 'release/v3.1'
Component/bt: fix receive adv pkt when enable duplicate scan (backport v3.1)

See merge request idf/esp-idf!3943
2019-01-09 10:35:05 +08:00
Jiang Jiang Jian
e690cfcbd7 Merge branch 'bugfix/bbpll_wakeup_reset_v3.1' into 'release/v3.1'
BBPLL reset fixes (backport v3.1)

See merge request idf/esp-idf!4013
2019-01-09 10:31:50 +08:00
XiaXiaotian
6f582fe71d esp32: unforce wifi if receiving beacon with no data buffered in dream
state and reduce force receiving broadcast data time

    1. If receiving beacon which indicates that there is no data
    buffered, do not force to receive WiFi data.
    2. If receiving beacon which indicates that there is broadcast data
    buffered, reduce the time to force receiving broadcast data.
2019-01-07 16:44:49 +08:00
zhangyanjiao
014b6ba44a wifi: fix the bug that STA can scan the channel out of the country regdomain range 2019-01-03 18:11:43 +08:00
Liu Zhi Fu
a663c61427 lwip: fix mbox thread-safe issue
Fix a mbox free thread-safe issue that can lead to crash in sys_arch_mbox_fetch.
2019-01-02 23:06:24 +08:00
Ivan Grokhotkov
1937bc2bd7 esp_timer: do not allow deleting timers while callbacks are dispatched
timer_process_alarm function of esp_timer holds a spinlock for the
entire duration of its operation, except for the time when timer
callback function is called. It is possible that when
timer_process_alarm releases the spinlock, a higher priority task may
run and delete the timer. Then the execution will return to
timer_process_alarm, and this will either cause a crash, or undesired
execution of callback after the timer has been stopped or deleted.

To solve this problem, add a mutex which will prevent deletion of timers
while callbacks are being dispatched.
2019-01-02 20:01:26 +11:00
Konstantin Kondrashov
1255be4e3e newlib: Fix UT adjtime 2018-12-28 09:56:15 +08:00
Angus Gratton
3e7a5b144a unit tests: Only initialise tcpip_adapter() when needed by the test
Prevents unexpected memory allocations when running tests which
don't require tcpip_adapter.
2018-12-28 09:56:15 +08:00
Ivan Grokhotkov
763c2cc188 spiffs: increase timeout in readdir test
Timeout of 15 seconds is not sufficient if SPIFFS partition needs to
be formatted, on some of the boards.
2018-12-28 09:56:15 +08:00
He Yin Ling
9969b4218d test: add test case to receive ds2ds packet 2018-12-28 09:56:15 +08:00
David Cermak
02c3097191 mdns: fix networking running udp_sendif from lwip thread 2018-12-21 16:57:20 +01:00
David Cermak
db256ed1e1 mdns: fixed static memory leak 2018-12-21 16:33:47 +01:00
David Cermak
270f105823 mdns: check all mallocs for failure and add default hook to log error with free heap
solves crash about _mdns_result_txt_create when stress test
2018-12-21 16:33:32 +01:00
David Cermak
44811c6896 mdns: resolve memory leak when txt record received multiple times 2018-12-21 16:33:19 +01:00
David Cermak
d8c9530d3c mdns: skip sending search when finished, not properly locked timer task 2018-12-21 16:33:08 +01:00
baohongde
152a4f46d6 components/bt: Fix two bugs about pairing
1. Fix Legacy Pairing failed without remote device name
2. Fix discovery no device after disabling SSP
2018-12-21 20:52:46 +08:00
Ivan Grokhotkov
b4552c02d4 soc/rtc: reset BBPLL configuration after enabling it
A workaround to reset BBPLL configuration after light sleep. Fixes the
issue that Wi-Fi can not receive packets after waking up from light
sleep.

Ref. https://github.com/espressif/esp-idf/issues/2711
2018-12-21 13:38:22 +08:00
Supreet Deshpande
3c87f47ba2 bugfix/ota_magic_byte_issue: Fix indent and replace constant by macro
Replace 0xE9 by ESP_IMAGE_HEADER_MAGIC.
2018-12-20 12:24:55 +05:30
Supreet Deshpande
a0eedf112f bugfix/ota_magic_byte_issue: Fixes OTA magic byte error
On enabling flash encryption, OTA fails with magic byte error in the second chunk
if the http data is split into two or more chunks and first chunk is less than 16.
2018-12-20 12:24:34 +05:30
wangmengyang
a9dae85d03 component/bt: use a pm_lock to prevent light sleep when bluetooth is enabled due to current imcompatibility 2018-12-18 15:40:27 +08:00
Liu Zhi Fu
6a418013a3 esp32: fix WiFi stop bug in WiFi/BT coexist mode
This fix includes following changes:
1. Fix the bug that esp_restart()/esp_wifi_stop() sometimes fails in WiFi/BT coexist mode.
2. Add a timer for WiFi stop and stop WiFi forcibly once the timer expires.
2018-12-17 20:39:54 +08:00
zhiweijian
bd9eb5255d Component/bt: fix receive adv pkt when enable duplicate scan 2018-12-17 15:55:38 +08:00
wangmengyang
29da5b2e17 component/bt: add DRAM_ATTR attribute to global variables(mainly bss segment) in bt.c which can be accessed in ISRs 2018-12-14 21:21:22 +08:00
wangmengyang
1c4bbaa567 component/bt: bugfix of bluetooth modem sleep not being able to work with Dynamic Frequency Scaling
1. start an esp_timer on entering sleep to acquire pm_lock before wake up from modem sleep
2. decrease the clock division of XTAL fed to bluetooth low power clock from 32us to 2us period to allow to work under 240MHz Max CPU frequency
3. decrease the minimum sleep duration threshold to allow shorter bluetooth modem sleep period, especially for BLE with short connection interval
4. reconfigure bluetooth baseband(BT-BB) settings after PHY/RF init upon waking up from modem sleep to avoid packet RX/TX performance degradation
2018-12-14 21:21:22 +08:00
Tian Hao
129f1df461 fix bug that there's very low ratio to cause BLE assert(65536, 0) in rwble.c at line 222 2018-12-14 17:52:31 +08:00
Ivan Grokhotkov
2b58be5a6c panic: dump some instruction memory on IllegalInstruction exception 2018-12-13 17:09:53 +08:00
zhiweijian
ee99795f3d Component/bt: fix save keys when auth mode without bond 2018-12-13 15:49:02 +08:00
zhiweijian
f4b64a491b Component/bt: fix auth_mode error when reconnection in SMP 2018-12-13 15:36:51 +08:00
Sagar Bijwe
76f98a4b36 mbedtls: Fix compilation errors when CONFIG_MBEDTLS_HARDWARE_AES is disabled 2018-12-07 09:41:59 +00:00
Ivan Grokhotkov
0b3fdf420f Merge branch 'bugfix/fat_lock_log_v3.1' into 'release/v3.1'
fatfs: Do not log from critical sections (backport v3.1)

See merge request idf/esp-idf!3720
2018-12-07 14:07:16 +08:00
Jiang Jiang Jian
a7d37b303d Merge branch 'bugfix/btdm_assert_ble_32768_v3.1' into 'release/v3.1'
fix bug that there's very low ratio to cause BLE assert(32768, 0) in rwble.c at line 222

See merge request idf/esp-idf!3918
2018-12-07 13:54:18 +08:00
Angus Gratton
a7b5496770 Merge branch 'fix/spi_callback_in_iram_v3.1' into 'release/v3.1'
spi: fix the crash when callbacks are not in the IRAM (Backports v3.1)

See merge request idf/esp-idf!3886
2018-12-07 09:11:47 +08:00
Tian Hao
ce5b2709ab fix bug that there's very low ratio to cause BLE assert(32768, 0) in rwble.c at line 222 2018-12-06 21:17:49 +08:00
Michael (XIAO Xufeng)
3387d751d9 spi: fix the crash when callbacks are not in the IRAM
Introduced in 9c23b8e5 and 4f87a62f. To get higher speed, menuconfig
options are added to put ISR and other functions into the IRAM.  The
interrupt flag ESP_INTR_FLAG_IRAM is also mistakenly set when the ISR is
put into the IRAM. However callbacks, which are wrote by the user, are
called in the master and slave ISR. The user may not be aware of that
these callbacks are not disabled during flash operations. Any cache miss
during flash operation will cause panic.

Essentially IRAM functions and intrrupt flag ESP_INTR_FLAG_IRAM are
different, the latter means not disabling the ISR during flash
operations.  New bus_config flag intr_flags is offered to help set the
interrupt attribute, including priority level, SHARED, IRAM (not
disabled during flash operations).  It introduced a small BREAK to
IDFv3.1 (but the same as IDFv3.0) that the user has to manually set IRAM
flag now (therefore he's aware of the IRAM thing) to void the ISR being
disabled during flash operations.
2018-12-05 10:25:57 +08:00
Tian Hao
155e48bbde component/bt and esp32: fix two bluetooth bugs that caused by coexist module
1. Fix interrupt watchdog timeout in bluetooth "btdm_bb_isr"
    2. Fix BLE assert(512) or assert(1536)  in rwble.c at line 222
    3. Update librtc.a to fix BLE assert(512) in rwble.c at line 222

    The #1 and #2 occurs random.
    The #3 bug occurs in certain scenario:
    	1. If Wifi start softap and BLE is working
    	2. If wifi start station, but do not use normal station operation, such
    		as just use espnow, while BLE is working
    	3. Any other scenario, that wifi works without use software coexist
    		operation, while BLE is working(such as do advertising and ...)

    4. update libcoexist.a version to v1.1.2
2018-12-03 22:09:04 +08:00
zhiweijian
34064b4302 Component/bt: fix accept specified sec auth error 2018-11-29 20:49:54 +08:00
Ivan Grokhotkov
93fcc418fe Merge branch 'bugfix/i2c_hardware_filter_default_enable_v3.1' into 'release/v3.1'
driver(i2c): enable I2C master hardware filter by default for release/v3.1

See merge request idf/esp-idf!3816
2018-11-29 19:29:04 +08:00
Roland Dobai
6393ef0f52 VFS: select() on UART should return immediately when data is buffered 2018-11-29 10:12:25 +01:00
Ivan Grokhotkov
f00c6d1e84 Merge branch 'bugfix/freertos_idle_tick_count_v3.1' into 'release/v3.1'
freertos: use xTaskQueueMutex to protect tick count (backport v3.1)

See merge request idf/esp-idf!3728
2018-11-29 12:01:56 +08:00
kooho
2aea6e5e9c driver(i2c): enable I2C master hardware filter by default for release/v3.1 2018-11-28 17:38:50 +08:00
kooho
47a9e032d8 driver(uart): fixed uart read error bug when using dual core for release/v3.1. 2018-11-28 16:46:23 +08:00
Konstantin Kondrashov
868da0741c aes/sha/mpi: Bugfix a use of shared registers.
This commit resolves a blocking in esp_aes_block function.

Introduce:
The problem was in the fact that AES is switched off at the moment when he should give out the processed data. But because of the disabled, the operation can not be completed successfully, there is an infinite hang. The reason for this behavior is that the registers for controlling the inclusion of AES, SHA, MPI have shared registers and they were not protected from sharing.

Fix some related issue with shared using of AES SHA RSA accelerators.

Closes: https://github.com/espressif/esp-idf/issues/2295#issuecomment-432898137
2018-11-26 02:42:37 +00:00
Jiang Jiang Jian
09b2cd7d26 Merge branch 'bugfix/btdm_add_check_peer_addr_type_in_set_adv_params_v3.1' into 'release/v3.1'
Component/bt: add check peer addr type in set adv params (backport v3.1)

See merge request idf/esp-idf!3735
2018-11-23 20:14:15 +08:00
Liu Zhi Fu
ddbb535080 esp32: fix some wifi bugs
Fix some wifi bugs
1. Enable RX BAR
2. Fix the bug that ESP32 AP negotiates with iphone to 11g
3. Fix the bug that ESP32 STA has ap_loss because CMCC AP contains two SSID
2018-11-21 15:24:30 +08:00
Jiang Jiang Jian
195f7274c4 Merge branch 'bugfix/btdm_controller_disable_v3.1' into 'release/v3.1'
Fix two bugs when disable bluetooth controller(backport v3.1)

See merge request idf/esp-idf!3693
2018-11-20 17:00:38 +08:00
Jiang Jiang Jian
cdd3131f8a Merge branch 'bugfix/btdm_errors_in_comment_v3.1' into 'release/v3.1'
components/bt: Some errors in comment(backport 3.1)

See merge request idf/esp-idf!3714
2018-11-20 14:26:19 +08:00
zhiweijian
dfd46965ae Component/bt: add check peer addr type in set adv params 2018-11-19 17:21:28 +08:00
David Cermak
e885ff235f mdns: sending search packets also in probing and announcing state
mdns queries did not work properly when send imeadiately after set_hostname, which cuased reinit of pcb and therefore restarted probing, so search packets were blocked until probing finished
closes #2507, closes #2593
2018-11-19 04:56:34 +01:00
Ivan Grokhotkov
845bbc293a freertos: use xTaskQueueMutex to protect tick count
Having two different spinlocks is problematic due to possibly
different order in which the locks will be taken. Changing the order
would require significant restructuring of kernel code which is
undesirable.

An additional place where taking xTickCountMutex was needed was in
vApplicationSleep function. Not taking xTickCountMutex resulted in
other CPU sometimes possibly advancing tick count while light sleep
entry/exit was happening. Taking xTickCountMutex in addition to
xTaskQueueMutex has shown a problem that in different code paths,
these two spinlocks could be taken in different order, leading to
(unlikely, but possible) deadlocks.
2018-11-19 11:09:37 +08:00
zhangyanjiao
50f8b7b783 wifi: fix the bug that if station (sleep is enabled) and sniffer are enabled at the same time,
when disable sniffer, station will never enable phy and rf againi. (backport v3.1)
2018-11-16 20:19:21 +08:00
Roland Dobai
c4193d5ec1 fatfs: Do not log from critical sections
Logging in the critical section can result in a deadlock when the logger
is redirected to FATFS.

Closes https://github.com/espressif/esp-idf/issues/1693
2018-11-16 12:59:38 +01:00
baohongde
8e0bb3ec81 components/bt: Some errors in comment 2018-11-16 15:38:22 +08:00
Jiang Jiang Jian
13d4e43888 Merge branch 'bugfix/tw27096_fix_lwip_mbox_free_crash_v3.1' into 'release/v3.1'
fix the crash caused by sys_mbox_free (backport v3.1)

See merge request idf/esp-idf!3620
2018-11-15 10:32:06 +08:00
Tian Hao
dbd225c673 Fix two bugs when disable bluetooth controller
1. Fix the bug that disable controller suddenly cause crash when ble is working
2. Fix the bug that when disable controller, it will cause wifi cannot RX, TX timeout, buffer lack and etc.
2018-11-13 17:49:06 +08:00
morris
da8835aa0b ethernetif: fix potential memory leak
1. If L2_TO_L3_RX_BUF_MODE is not selected, we must assign l2_owner explictly before we call pbuf_free.
2018-11-13 11:41:17 +08:00
Jiang Jiang Jian
8e703b14ee Merge branch 'test/fix_bug_of_scan_interval_and_windows_for_v3.1' into 'release/v3.1'
test: fix bug of scan interval and window (backport v3.1)

See merge request idf/esp-idf!3668
2018-11-12 17:34:55 +08:00
Jiang Jiang Jian
79da87def9 Merge branch 'bugfix/wifi_do_not_load_phy_data_if_fail_to_open_nvs_v3.1' into 'release/v3.1'
esp32: do not try to load PHY data if fail to open NVS (backport v3.1)

See merge request idf/esp-idf!3649
2018-11-12 17:00:14 +08:00
Jiang Jiang Jian
0ffe9f0c4e Merge branch 'bugfix/mdns_crash_on_network_change_backport3.1' into 'release/v3.1'
Fixed mdns crashes on network changes (backport v3.1)

See merge request idf/esp-idf!3579
2018-11-12 15:30:44 +08:00
XiaXiaotian
8b50419f55 esp32: do not try to load PHY data if fail to open NVS 2018-11-12 03:17:11 +00:00
Liu Zhi Fu
3514effcd0 lwip: fix crash caused by sys_mbox_free
Fix lwip crashed bug caused by sys_mbox_free()
2018-11-11 11:51:10 +08:00
chensheng
f7b9ea8cb5 test: fix bug of scan interval and window 2018-11-09 11:28:16 +08:00
baohongde
ac124ee89c components/bt: Point ACL RX buffer ptr to ACL RX buffer if ACL RX buffer ptr is null(backprot 3.1)
1. When WIFI task or other high priority task blocks the Bluetooth task, ACL RX buffer will use up, ACL RX buffer ptr will point to null and will never point to a valid adress. Causing errors in Bluetooth.
2. hcimsgs.h used whether flow control is on or off
2018-11-09 03:26:36 +00:00
He Yin Ling
01cfb0d6bd Merge branch 'test/fixbug_create_service_check_message_change_v3.1' into 'release/v3.1'
test: bugfix create service check message change for v3.1

See merge request idf/esp-idf!3664
2018-11-09 11:22:05 +08:00