Commit Graph

8864 Commits

Author SHA1 Message Date
baohongde
f490b4ddfe hli: don't spill registers, instead save them to a separate region
Level 4 interrupt has a chance of preempting a window overflow or

underflow exception. Therefore it is not possible to use standard
context save functions, as the SP on entry to Level 4 interrupt may
be invalid (e.g. in WindowUnderflow4).
Instead, mask window overflows and save the entire general purpose
register file, plus some of the special registers. Then clear
WindowStart, allowing the C handler to execute without spilling the
old windows. On exit from the interrupt handler, do everything
    in reverse.
2020-04-17 23:09:50 +08:00
baohongde
712df748da hli_api: meta queue: fix out of bounds access, check for overflow 2020-04-17 23:09:26 +08:00
baohongde
918472f641 Feature: high level interrupt(5) 2020-04-17 23:09:04 +08:00
liu zhifu
473db9c14b esp32: add esp_wifi_set_mgmt() 2020-04-17 22:44:22 +08:00
baohongde
a7a20f2e17 components/bt: Fix a bug that when frame program disable because of 'parity change has been detected on the slave ACL link at slave synchronization algorithm', while now is handling 'the last programmed frame' that cause no acl resched was called after that. 2020-04-17 22:43:45 +08:00
xiewenxiang
7941e591d3 component/bt: fix don't dequeue the command queue after process the read_by_type_req(backport v3.3) 2020-04-17 22:38:16 +08:00
gengyuchao
09c895f0f9 Close L2CAP_WAKE_PARKED_LINK temporary because it may still have some bugs 2020-04-17 22:17:06 +08:00
baohongde
48e6aa916a Fix assert in ld_pscan.c line 1032 2020-04-17 22:16:42 +08:00
gengyuchao
67f1cedbed change btu queue size from 50 to 200 2020-04-17 21:59:29 +08:00
baohongde
0b76a8547f bugfix that when slave initiates unsniff procedure and meet transaction collision, no mode_change_event is reported
Add interrupt protect fpr vhci_env_p->vhci_intr_st
2020-04-17 21:58:45 +08:00
liu zhifu
dfd5e9da02 esp32: disable uncessary debug log for WiFi RX buffer allocation failure 2020-04-17 21:48:38 +08:00
liu zhifu
cb51f8c827 esp32: fix esp_wifi_internal_statistic_dump() 2020-04-17 21:48:11 +08:00
liu zhifu
5a09cf600e esp32: add esp_wifi_internal_statistic_dump()
The API is used to dump WiFi lmac/hmac/wpa key statistics, which is helpful for
WiFi issue debugging. The application need to call the API at the moment potential
problem happens, such as:
1. When receiving WiFi disconnect event
2. When receiving IP lost event
3. When sockets failed, such as TX or RX timeout etc
4. Any other places that the application suspect the WiFi works incorrectly
2020-04-17 21:45:58 +08:00
baohongde
92e111eb56 components/bt: Fix int wdt due to disable interrupt too long time 2020-04-17 21:45:20 +08:00
baohongde
7cc89bf83a components/coex: Fix wakeup delay with DFS 2020-04-17 21:40:43 +08:00
Xia Xiaotian
6d67dc7e7c Start lost ip timer when station is connected even regardless of
never got ip before.
2020-04-17 21:34:38 +08:00
Xia Xiaotian
a0d85de8af Optimize 4-way-handshake failure time 2020-04-17 21:34:19 +08:00
Xia Xiaotian
285f9672ae Increase TCP retransmit time to 1500ms
TCP TX throughput is low when coexisted with BT a2dp if TCP retransmit time is 500ms
2020-04-17 21:33:39 +08:00
baohongde
e1a33408c4 components/coex: Fix coex AFH taskposting err 2020-04-17 21:31:53 +08:00
Xia Xiaotian
1921a327c5 add more debug log for alloc null fail 2020-04-17 21:27:53 +08:00
liu zhifu
50b57516e8 esp_wifi: fix WiFi TX performance 2020-03-13 13:41:34 +08:00
liu zhifu
1b3f7d4dfe lwip: decrease TCP initial retransmit time 2020-03-13 13:41:22 +08:00
baohongde
1102d2b1d2 components/bt: Fix conn fail in loop 2020-03-13 13:36:23 +08:00
Xia Xiaotian
5a86c5b3a7 Improve stability of coex WiFi performance
1. Fix force WiFi impacts WiFi receiving data in unforce WiFi status.
    2. Increase sleep delay time to 7ms to improve success ratio of sending NULL data.
2020-03-13 11:23:32 +08:00
baohongde
a94ec95d6b components/bt: Disable check due to double isr 2020-03-11 23:26:01 +08:00
baohongde
5eee07f944 components/coex: Set AFH in btdm task when wifi change channel 2020-03-11 14:32:06 +08:00
baohongde
e75cf5d44e Fix some bugs due to interrupt response not timely
1. Fix assert in ld_fm.c line 371 due to double clk isr
2. Fix assert(25, 0) in lc_task.c
3. Fix assert due to different rxlinklbl
4. Fix assert due to different of currentrxdescptr and rxdone is not 0
2020-03-10 20:52:27 +08:00
baohongde
b81de503cd components/bt: disable some frequent logs 2020-03-06 17:00:01 +08:00
baohongde
c38d6a1dc5 components/bt: Fix assert(512,0) 2020-03-06 16:29:28 +08:00
wangmengyang
22b196c4bd component/bt: enable more trace loggings in bluetooth controller
1. add more debugging for issue assertion in ld_sscan.c, line 146
2. modify debug logging level for bluetooth controller, from ERROR to WRANING
2020-03-06 11:27:28 +08:00
baohongde
3d59dd404a Fix no free elt in prog push
ea.c ea_elt_insert will disable all interrupts then get calue of current time
2020-03-03 22:15:36 +08:00
zwj
e479b79462 component/bt: fix ble assert(131072 0) in rwble.c 2020-03-03 21:27:28 +08:00
Xia Xiaotian
1ea761ecee make sure WiFi connect first when run with ble gatt provision
fix incorrect coex scheme when bt is idle and ble is adv or connection
2020-03-03 16:51:09 +08:00
baohongde
8e6a52008c components/bt: change HCI task size back 2020-02-27 15:04:18 +08:00
Xia Xiaotian
1413b84a8a coexist: adjust coexist scheme when BT is in connected status
Wi-Fi: revert to report specific reason code when receiving deauth during 4-way-handshake
2020-02-24 15:50:57 +08:00
baohongde
afb96542dd components/coex: Fix a2dp stuck after creating another connection 2020-02-19 14:49:14 +08:00
baohongde
125e21c3e0 add auto latency to avoid bt stuck when ble connection use small
interval

1. Fix A2DP stuck when BLE's interval is too small
2020-02-19 14:48:58 +08:00
Xia Xiaotian
3cbd8ce32e Fix two coex and WiFi issues
1. WiFi sleep when BT is in connected status.

    2. Fix double recycle BAR buffer.
2020-02-13 18:29:00 +08:00
baohongde
1a82857251 components/coex: Fix task watchdog timeout with sleep 2020-01-17 17:42:09 +08:00
baohongde
818ea3e3ce components/coex: backports for coex schm
1. support 40M Wi-Fi when calculate AFH

2. Calculate channel classification according to Host and coex

3. Set BR/EDR/LE coex schm status in controller

4. Only set AFH for BT when WiFi is connected

5. Fix a potential dead lock issue when set AFH

6. Fix WiFi connecting coex schm issue due to periodic timer

7. Complete BT a2dp pause coex schm

8. Increase BT slice when BT a2dp pause in order to receive AVRC event

9. Add more coex schm for BT/BLE
2020-01-14 20:17:46 +08:00
baohongde
be10cc6251 Revert "components/bt: Add API and EVT for set AFH channels(BR/EDR)"
This reverts commit 3b704d2f3a.
2020-01-14 16:05:36 +08:00
liu zhifu
8114c51da0 esp32: fix WiFi buffer reload issue 2020-01-08 10:29:30 +08:00
baohongde
1a0d6699be components/coex: Fix crash after interrupt restore 2020-01-07 20:05:57 +08:00
Xia Xiaotian
0b74249a01 Fix next TBTT calculation overflow issue 2020-01-03 14:46:51 +08:00
liu zhifu
c5d6efa59d esp32: fix WiFi RX bug
Disable WiFi last RX buffer
2020-01-02 20:07:27 +08:00
liu zhifu
d9a91b835a esp32: fix WiFi A-MSDU decrypt issue 2019-12-30 17:24:25 +08:00
baohongde
0d31937a7d components/coex: Fix dead lock 2019-12-28 16:59:44 +08:00
baohongde
04e4f6fbf1 components/coex: Fix cache disable 2019-12-28 12:35:45 +08:00
baohongde
ea6033f0dc components/coex: Set BT AFH when Wi-Fi channel changed 2019-12-27 17:48:36 +08:00
Xia Xiaotian
98e618f75e adjust next TBTT when it is ahead of now 2019-12-27 17:33:52 +08:00