linux/drivers/net/wireless/realtek/rtw88
Yan-Hsuan Chuang 4136214f7c rtw88: add BT co-existence support
Both RTL8822BE/RTL8822CE are WiFi + BT combo chips. Since
WiFi and BT use 2.4GHz to transmit, it is important to
make sure they run concurrently without interfering each
other. To achieve this, WiFi driver requires a mechanism
to collaborate with BT, whether they share the antenna(s)
or not.

The final decision made by the co-existence mechanism is
to choose a proper strategy, or called "tdma/table", and
inform either firmware or hardware of the strategy.
To choose a strategy, co-existence mechanism needs to
have enough information from WiFi and BT.

BT information is provided through firmware C2H.
The contents describe the current status of BT, such as
if BT is connected or is idle, or the profile that is
being used.

WiFi information can be provided by WiFi itself. The WiFi
driver will call various of "notify" functions each time
the state of WiFi changed, such as WiFi is going to switch
channel or is connected. Also WiFi driver can know if it
shares antenna with BT by reading efuse content. Antenna
configuration of the module will finally get a different
strategy.

Upon receiving any information from WiFi or BT, the WiFi
driver will run the co-existence mechanism immediately.
It will set the RF antenna configuration according to the
strategy through the TDMA H2C to firmware and a hardware
table. Based on the tdma/table, WiFi + BT should work with
each other, and having a better user experience.

Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2019-08-06 15:42:13 +03:00
..
coex.c rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
coex.h rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
debug.c rtw88: debug: dump tx power indexes in use 2019-07-24 14:53:14 +03:00
debug.h
efuse.c
efuse.h
fw.c rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
fw.h rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
hci.h rtw88: fix typo rtw_writ16_set 2019-06-25 08:09:01 +03:00
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
mac80211.c rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
mac.c rtw88: power on again if it was already on 2019-06-25 08:08:59 +03:00
mac.h
main.c rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
main.h rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
Makefile rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
pci.c rtw88: allow c2h operation in irq context 2019-08-06 15:42:11 +03:00
pci.h
phy.c rtw88: use txpwr_lmt_cfg_pair struct, not arrays 2019-08-06 15:24:53 +03:00
phy.h rtw88: use txpwr_lmt_cfg_pair struct, not arrays 2019-08-06 15:24:53 +03:00
ps.c rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
ps.h
reg.h rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
regd.c rtw88: update tx power limit table to RF v20 2019-06-27 20:24:27 +03:00
regd.h rtw88: update tx power limit table to RF v20 2019-06-27 20:24:27 +03:00
rtw8822b_table.c rtw88: use txpwr_lmt_cfg_pair struct, not arrays 2019-08-06 15:24:53 +03:00
rtw8822b_table.h
rtw8822b.c rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
rtw8822b.h
rtw8822c_table.c rtw88: use txpwr_lmt_cfg_pair struct, not arrays 2019-08-06 15:24:53 +03:00
rtw8822c_table.h
rtw8822c.c rtw88: add BT co-existence support 2019-08-06 15:42:13 +03:00
rtw8822c.h rtw88: restore DACK results to save time 2019-06-25 08:09:00 +03:00
rx.c
rx.h
sec.c
sec.h
tx.c rtw88: rsvd page should go though management queue 2019-06-25 08:09:01 +03:00
tx.h
util.c
util.h