Commit Graph

9025 Commits

Author SHA1 Message Date
baohongde
d5f02c8302 add DRAM_ATTR & add logs 2020-07-20 17:09:49 +08:00
Li Shuai
61b646aa8a optimize the live lock soft solution process 2020-07-20 17:09:49 +08:00
Li Shuai
76717f72d6 add debug code for wdt reset 2020-07-20 17:09:49 +08:00
maojianxin
19fd28aad8 correct cache_utils fix 2020-07-20 17:09:49 +08:00
Mahavir Jain
c0ca9cd531 freertos: modify configASSERTs around scheduler state check
Regression introduced in commit 79e74e5d5f

It is possible that some FreeRTOS APIs are invoked prior to
scheduler start condition (e.g. flash initialization in unicore mode).
In that condition these asserts should not trigger (scheduler state being yet to be started),
hence changes per this fix.
2020-07-20 17:09:49 +08:00
Darian Leung
4610f058e8 freertos: Fix configASSERT thread safety
This commit fixes thread safety issues with configASSERT() calls
regarding the value of uxSchedulerSuspended. A false negative
occurs if a context switch to the opposite core occurs in between
the getting the core ID and the assesment.

Closes https://github.com/espressif/esp-idf/issues/4230
2020-07-20 17:09:49 +08:00
Li Shuai
fa0348b512 Fixed interrupt watchdog error caused by live lock 2020-07-20 17:09:48 +08:00
maojianxin
c2dac74cc5 Fix psram task coredump block
Fix coredump erase flash delay
2020-07-20 17:09:48 +08:00
maojianxin
00d6b12671 heap:release lock to avoid critical timeout 2020-07-20 17:09:48 +08:00
xutao
b48bdefe54 skip app cpu when core dump stack in psram 2020-07-20 17:09:48 +08:00
Ivan Grokhotkov
de662d5e11 core dump: move stack into the internal memory when dumping to flash
Since SPI flash operations can not be performed when the stack is in
external RAM, we need to switch to a different stack when doing a
core dump to flash. This is achieved by a pair of longjmp's, one of
which is crafted manually to jump into a designated function with a
specific stack set up.
The cost of this feature is a bit of IRAM, plus the DRAM required for
the extra stack.

Closes AUD-1355
2020-07-20 17:09:48 +08:00
Li Shuai
a80cf2dc69 Fix interrupt watchdog caused by livelock 2020-07-20 17:09:48 +08:00
KonstantinKondrashov
ca51072461 esp_timer/esp32: Fix case when alarm_reg > counter_reg but FRC_TIMER_INT_STATUS is not set
Closes: WIFI-1576
Closes: https://github.com/espressif/esp-idf/issues/2954
2020-07-20 17:09:47 +08:00
Ivan Grokhotkov
1fb82085b9 core dump: skip core dump to flash if the stack pointer is in PSRAM
Since flash operations disable the cache, we shouldn't try to run
core dump to flash when the stack is in PSRAM.

Ref. AUD-1355
2020-07-20 17:09:47 +08:00
Darian Leung
1167a5c2f9 Add vTaskPrioritySetCurrent() 2020-07-20 17:09:47 +08:00
KonstantinKondrashov
49cb9972de esp_timer: Fix set_alarm. Case when timestamp < now_time
arg1 = MAX(int64_t arg1, uint64_t arg2) gave the wrong result, if arg1 < 0, it was presented as a larger value.
And ALARM_REG = (uin32_t)arg1. This leads to an infinite loop.
Fixed: both args are int64_t.

Closes: WIFI-1511
2020-07-20 17:09:47 +08:00
Li Shuai
cef73cd232 added psram stack check in backtrace 2020-07-20 17:09:47 +08:00
Xia Xiaotian
f8fbb2be5c soc: clear PHY status when cpu start 2020-07-20 17:09:47 +08:00
maojianxin
c1374ff769 Fix http client read return value
1.esp_tls: fail connection if esp_tls_conn_new() timeouts
https://gitlab.espressif.cn:6688/espressif/esp-idf/merge_requests/7397

2.esp32:panic: avoid access cache in panichandler

3.Sync https://gitlab.espressif.cn:6688/espressif/esp-idf/merge_requests/7152
Even if frame->exccause != PANIC_RSN_CACHEERR, it is possible that the cache error interrupt status is set. For example, this may happen due to an invalid cache access in the panic$
Check cache error interrupt status instead of frame->exccause to decide whether to do CPU reset or digital reset.
Also remove unnecessary esp_dport_access_int_pause from esp_cache_err_get_cpuid, since the panic handler already calls
esp_dport_access_int_abort on entry.
2020-07-20 17:09:28 +08:00
lly
d396624a60 ble_mesh: Check if appkey exist before deleting it 2020-04-20 18:26:17 +08:00
lly
4ede6c8c15 ble_mesh: Fix compile error when -O2 (performance) is chosen 2020-04-20 18:26:17 +08:00
lly
0c5d5c9dd6 ble_mesh: Add length check for some mesh operations 2020-04-20 18:26:17 +08:00
lly
1a89bfaef3 ble_mesh: Reduce the level of some mesh logs 2020-04-20 18:26:17 +08:00
lly
be3be59feb ble_mesh: Remove some redundant functions 2020-04-20 18:26:17 +08:00
lly
679b55da62 ble_mesh: Provisioner provisioning miscellaneous fix 2020-04-20 18:26:17 +08:00
lly
e9b87fda73 ble_mesh: Continue node info restore even if failure happens 2020-04-20 18:26:17 +08:00
lly
20f1838563 ble_mesh: Fix Provisioner provisioning deadlock 2020-04-20 18:26:16 +08:00
lly
f3e107ada9 ble_mesh: Fix update wrong last_hb info 2020-04-20 18:26:16 +08:00
lly
fb33c67532 ble_mesh: Change Provisioned before log to info level 2020-04-20 18:26:16 +08:00
lly
99c6aad0a6 ble_mesh: Use the right netkey during iv update 2020-04-20 18:26:16 +08:00
lly
1ff2d61ddf ble_mesh: Use the right net_idx & app_idx for publish 2020-04-20 18:26:16 +08:00
lly
bb2c0475eb ble_mesh: Check buf->ref before unref the buffer 2020-04-20 18:26:16 +08:00
lly
b5ab64b4d9 ble_mesh: Fix mesh memory use-after-free issue 2020-04-20 18:26:16 +08:00
lly
5c2e8930f9 ble_mesh: Add an API to directly erase mesh info 2020-04-20 18:26:16 +08:00
lly
f34f7bade6 ble_mesh: Add ble mesh deinit in btc task 2020-04-20 18:26:16 +08:00
lly
4790b63e2b ble_mesh: Free beacon timer when deinit mesh 2020-04-20 18:26:16 +08:00
lly
407b9b0a68 ble_mesh: Use lock for mesh timer operations 2020-04-20 18:26:16 +08:00
lly
bad97eb1f9 ble_mesh: Add an API to get Provisioner node table entry 2020-04-20 18:26:16 +08:00
lly
b6bcdad3db ble_mesh: Provisioner supports receiving heartbeat 2020-04-20 18:26:16 +08:00
lly
b6cb812499 ble_mesh: Allow maximum 377 octets payload 2020-04-20 18:26:16 +08:00
lly
f41b9d6d64 ble_mesh: Reset transport info when node is removed 2020-04-20 18:26:16 +08:00
lly
576dcffec1 ble_mesh: Provisioner ignores msg from removed node 2020-04-20 18:26:15 +08:00
lly
8a7c8b2d60 ble_mesh: Provisioner supports multiple nvs namespaces 2020-04-20 18:26:15 +08:00
lly
a58c272b8c ble_mesh: Different vendor models use the same opcode 2020-04-20 18:26:15 +08:00
lly
dfbdddecc1 ble_mesh: Fix compile error with c++ files 2020-04-20 18:26:15 +08:00
lly
46a23d9f8a ble_mesh: Kconfig included a UTF-8 comma 2020-04-20 18:26:15 +08:00
lly
36918e179c ble_mesh: Miscellaneous modifications
1. Add an API to get provisioned node count
2. Update several ble mesh documents
3. Fix some bugs which have been merged
2020-04-20 18:26:15 +08:00
lly
3d49e49210 ble_mesh: Fix an issue which may cause task block 2020-04-20 18:26:15 +08:00
lly
5f04a02bb1 ble_mesh: Miscellaneous updates
1. Use PSRAM for BLE Mesh mutex, queue and task
2. Add a parameter for esp_ble_mesh_deinit()
3. Add a option to enable using memory from PSRAM
4. Provisioner use internal static oob length
5. Update ble mesh tx rx test examples
6. Clear ble coexistence status bit by bit
7. Fix an issue which fails to store comp data
2020-04-20 18:26:15 +08:00
lly
3b935e3fad ble_mesh: Miscellaneous modifications
1. Add local AppKey and NetKey update APIs
2. NULL can be input if message has no parameters
3. Fix compile warning when BT log is disabled
4. Initilize mesh stack local variables
5. Use the latest coexist functions
2020-04-20 18:26:15 +08:00