Commit Graph

8868 Commits

Author SHA1 Message Date
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
lly
c4b21e9d47 ble_mesh: Add several APIs for Provisioner
1. Add an API to get node with device uuid
2. Add an API to get node with unicast address
3. Add an API to delete node with device uuid
4. Add an API to delete node with unicast address
2020-04-20 18:26:15 +08:00
lly
cb2cb8fea7 ble_mesh: Add an API to get node info with unicast addr 2020-04-20 18:26:15 +08:00
lly
787ee04a5d ble_mesh: Clean up included header files 2020-04-20 18:26:14 +08:00
lly
db3fa3a100 ble_mesh: Miscellaneous updates
1. Store node name in nvs when Provisioner sets node name
2. Add an API to store node composition data
3. Update lightness last when lightness actual is changed
4. Add ble mesh english/chinese documents
5. Update ble mesh tx/rx test example
6. Add params to provisioner bind appkey comp event
7. Fix node ignoring relay messages issue
8. Fix PreviousAddress endianess in Friend Request
9. Support using a specific partition for ble mesh
10. Fix compile warning when proxy related macros are disabled
11. Not using internal macros in esp_ble_mesh_defs.h
12. No device address needed when PB-ADV is used
2020-04-20 18:26:14 +08:00
lly
3222dfef0e ble_mesh: Miscellaneous modifications
1. Deinit unprov_dev table and fast prov info
2. Fix an issue which may cause failing to send msg
3. Add deinit test into the coex_a2dp_mini example
4. Add an API esp_ble_mesh_provisioner_set_primary_elem_addr
5. Use bt_mesh.flags to indicate device role
6. Fix Provisioner entering IV Update procedure
7. Remove some useless macros
8. Callback rssi of received mesh provisioning packets
9. Modify the Provisioner disable function
10. Provisioner can provision devices with fixed addresses
11. Change some log level from debug to info
12. Add an API for Provisioner to get provisioned node info
2020-04-20 18:26:14 +08:00
lly
d33caa02c8 ble_mesh: Add ble mesh deinit functions 2020-04-20 18:26:14 +08:00
lly
5ef656af35 ble_mesh: Miscellaneous fixes
1. Add buf ref debug in adv_send
2. Use different locks for different items
3. Remove useless CONFIG_BLE_MESH_NODE
4. Modify lock used during provisioning
5. Add lock for message transport
6. Fix memory leak when node is reset
7. Remove static flag in provisioner init
8. Fix Provisioner lock and init issues
9. Rename some Provisioner related functions
10. Add an API to set Provisioner static oob value
2020-04-20 18:26:14 +08:00