Commit graph

6412 commits

Author SHA1 Message Date
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
Ivan Grokhotkov
7ca260554f tiny-test-fw: invoke expect callbacks in order of appearance
Previously the callbacks were invoked in the same order as the list of
patterns to be matched.
2018-12-28 09:56:15 +08:00
He Yin Ling
4e9b4cb9cc test: fix merge error when backport junit report 2018-12-28 09:56:15 +08:00
houchenyao
efe9100306 fix the bug that multi device's dut can't detect case 2018-12-28 09:56:15 +08:00
houchenyao
ac62b8437d bugfix:fix the multi device stop thread bug 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
Jiang Jiang Jian
a18f92b09b Merge branch 'bugfix/tw27963_fix_wifi_stop_bug_v3.1' into 'release/v3.1'
esp32: fix WiFi stop bug in WiFi/BT coexist mode (backport v3.1)

See merge request idf/esp-idf!3981
2018-12-18 11:40:42 +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
Jiang Jiang Jian
ad9bce3203 Merge branch 'bugfix/btdm_assert_ble_65536_v3.1' into 'release/v3.1'
fix bug that there's very low ratio to cause BLE assert(65536, 0) in rwble.c at line 222

See merge request idf/esp-idf!3967
2018-12-14 20:34:33 +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
Roland Dobai
b5371b38c9 tools: Print useful error message from idf_monitor when toolchain isn't available 2018-12-12 09:46:13 +01:00
Ivan Grokhotkov
07e8b35ead Merge branch 'bugfix/xts_compile_err_3.1' into 'release/v3.1'
Bugfix/xts compile err 3.1

See merge request idf/esp-idf!3747
2018-12-10 17:41:29 +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
Roland Dobai
a617116479 tools: fix idf.py monitor for MSYS 2018-12-05 10:43:46 +01:00
Jiang Jiang Jian
4070d095d0 Merge branch 'bugfix/btdm_bugs_caused_by_coex_v3.1' into 'release/v3.1'
component/bt and esp32:  fix two bluetooth bugs that caused by coexist module

See merge request idf/esp-idf!3871
2018-12-05 14:17:33 +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
Angus Gratton
13155223f3 Merge branch 'ci/combine_unit_test_and_integration_test_v3.1' into 'release/v3.1'
ci: combine unit_test and integration_test stage (backport v3.1)

See merge request idf/esp-idf!3844
2018-12-03 11:28:49 +08:00
He Yin Ling
61ecee012e ci: combine unit_test and integration_test stage:
The number of runners of integration test is not bottleneck to CI
pipeline performance now. Combine these 2 stages will make integration
test executed even unit test fails. This could help us to collect more
info about test history.
2018-11-30 13:45:53 +08:00
Angus Gratton
ab8e4069b5 Merge branch 'test/enhanced_junit_test_result_v3.1' into 'release/v3.1'
test: enhanced junit test result (backport v3.1)

See merge request idf/esp-idf!3793
2018-11-30 11:38:26 +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
He Yin Ling
a27e0357b8 ci: use artifacts:reports feature of Gitlab CI 2018-11-26 17:22:04 +08:00