Larry Finger
6d62269283
rtlwifi: btcoexist: Fix antenna selection code
...
In commit 87d8a9f352
("rtlwifi: btcoex: call bind to setup btcoex"),
the code turns on a call to exhalbtc_bind_bt_coex_withadapter(). This
routine contains a bug that causes incorrect antenna selection for those
HP laptops with only one antenna and an incorrectly programmed EFUSE.
These boxes are the ones that need the ant_sel module parameter.
Fixes: 87d8a9f352
("rtlwifi: btcoex: call bind to setup btcoex")
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Cc: Stable <stable@vger.kernel.org > # 4.13+
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-09-07 15:55:56 +03:00
Larry Finger
a33fcba6ec
rtlwifi: btcoexist: Fix breakage of ant_sel for rtl8723be
...
In commit bcd37f4a08
("rtlwifi: btcoex: 23b 2ant: let bt transmit when
hw initialisation done"), there is an additional error when the module
parameter ant_sel is used to select the auxilary antenna. The error is
that the antenna selection is not checked when writing the antenna
selection register.
Fixes: bcd37f4a08
("rtlwifi: btcoex: 23b 2ant: let bt transmit when hw initialisation done")
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Cc: Stable <stable@vger.kernel.org > # 4.12+
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-09-07 15:55:56 +03:00
Gustavo A. R. Silva
14cc696c0a
rtlwifi: btcoex: 23b 1ant: fix duplicated code for different branches
...
Refactor code in order to avoid identical code for different branches.
This issue was detected with the help of Coccinelle.
Addresses-Coverity-ID: 1415177
Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-08-24 12:52:22 +03:00
Ping-Ke Shih
58438d9ae1
rtlwifi: move IS_HARDWARE_TYPE_xxx checker to wifi.h
...
Use rtlpriv instead of rtlhal as argument, so driver and btcoex use
the same definitions.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-07-28 18:16:38 +03:00
Ping-Ke Shih
6aad6075cc
rtlwifi: Add BT_MP_INFO to c2h handler.
...
We use H2C to ask BT's status, and C2H will return the status.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-07-28 18:16:35 +03:00
Ping-Ke Shih
76f146b664
rtlwifi: Add in_4way field for btcoexist
...
If wifi is in 4way, btcoex give wifi higher priority to use antenna.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-28 20:51:01 +03:00
Ping-Ke Shih
f1cb27eda3
rtlwifi: Add ap_num field for btcoexist
...
If there are many AP (dirty environment), we use another strategy set
to resolve coex issue.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-28 20:51:00 +03:00
Ping-Ke Shih
8488e211d6
rtlwifi: Add return value to btc_set.
...
We will use return value to handle error case.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-28 20:51:00 +03:00
Ping-Ke Shih
838dd0d3ff
rtlwifi: Update some cases in btc_get function -- roam, 5G, AP mode, and return value.
...
Return value may be false in some situations.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-28 20:50:59 +03:00
Ping-Ke Shih
42213f2f35
rtlwifi: btcoexist control to enter/leave LPS
...
To yield better user experience, have btcoex control LPS's parameters.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-21 18:28:07 +03:00
Ping-Ke Shih
c692205da1
rtlwifi: add btc_is_bt_lps_on() for btcoexist
...
If LPS is controlled by btcoex, this function tell driver LPS is on or off.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-21 18:28:06 +03:00
Ping-Ke Shih
2635664e6e
rtlwifi: Add rx ampdu cfg for btcoexist.
...
If RX ampdu is too long, BT will have less time.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-21 18:28:06 +03:00
Ping-Ke Shih
54685f9c7a
rtlwifi: Add btcoex record_pwr_mode
...
Add btcoex record pwr mode to control LPS's parameters and share time
with BT.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-21 18:28:05 +03:00
Ping-Ke Shih
43f5644a90
rtlwifi: btcoex: set correct interface type and parameter.
...
This commit fixies two problems. The first one is interface types
(e.g. PCI) that are used to switch antenna, and the second is to add
wifi_only parameter to give correct state.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-21 18:27:58 +03:00
Ping-Ke Shih
87d8a9f352
rtlwifi: btcoex: call bind to setup btcoex
...
New btcoex add a function 'bind' to connect adapter, so we should call
it during initializing.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-21 18:27:58 +03:00
Yan-Hsuan Chuang
c42ea61335
rtlwifi: btcoex: let btcoex get wifi rssi and link status
...
Instead of rssi status, the btcoex also needs to get the link status of
the wifi. In addition, some of the rssi status can be merged into link
status.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-13 10:02:30 +03:00
Yan-Hsuan Chuang
6aafa23074
rtlwifi: btcoex: remove unused display functions
...
These display functions are useless and will not be called in the
future.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-13 10:02:30 +03:00
Yan-Hsuan Chuang
0199103ea7
rtlwifi: btcoex: bind BT coex information with wifi driver
...
When initializing, gather BT information in struct btcoexist and
provide them to wifi driver.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-13 10:02:29 +03:00
Yan-Hsuan Chuang
7937f02d19
rtlwifi: btcoex: hook external functions for newer chips
...
Hook the external functions for newer ICs such as 8821a and 8192e.
Rename ex_halbtc8192e2ant_halt_notify to ex_btc8192e2ant_halt_notify.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-13 10:02:29 +03:00
Yan-Hsuan Chuang
60f44100ee
rtlwifi: btcoex: add settings before the hardware is ready
...
When the hardware is turned on and in the initialization stage, the PTA
circuit is unstable. Hence we need to force some hardware settings to
make sure the PTA circuit work correctly, otherwise it may affect the
user's experience.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-13 10:02:28 +03:00
Yan-Hsuan Chuang
86f9ab2ef4
rtlwifi: btcoex: hook external PnP notify by chip for wifi driver
...
Hook the chip-specific PnP notify functions for the wifi driver to
notify btcoexistence.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-13 10:02:28 +03:00
Yan-Hsuan Chuang
6fbbc82adf
rtlwifi: btcoex: settings before firmware is downloaded
...
The btcoex is sometimes unstable because there are some unexpected
behaviors before the firmware has been downloaded successfully.
Therefore we force the antenna path settings to avoid this, then let the
firmware control the btcoexistence when the firmware is ready.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-13 10:02:27 +03:00
Yan-Hsuan Chuang
753c953bae
rtlwifi: btcoex: rename ex_halbtc*ant to ex_btc*ant
...
These external functions are for BT-coexistence, so remove the "hal"
prefix for consistancy.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-13 10:02:27 +03:00
Yan-Hsuan Chuang
d178b1321e
rtlwifi: btcoex: add macros to check chip type
...
For some external functions that have hardware dependency, we need to
know the type of the hardware before invoking them.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Ping-Ke Shih <pkshih@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-06-13 10:02:26 +03:00
Dan Carpenter
e578618934
rtlwifi: btcoex: 23b 1ant: initialize bt_disabled to false
...
We only want to disable this if bt_disable_cnt is >= 2.
Fixes: f66509e3d7
("rtlwifi: btcoex: Remove 23b 1ant configuration parameter")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com >
Acked-by: Larry Finger <Larry.Finger@lwfinger.net >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:51:30 +03:00
Yan-Hsuan Chuang
86aeb82563
rtlwifi: btcoex: 23b 1ant: turn off ps and tdma mechanism when concurrent mode
...
When wifi is under concurrent mode, we can not distinguish if it is the
real PS or just a fake one by sending null data, so we turn it off
in case of miracast scenario.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:50:38 +03:00
Ping-Ke Shih
f9cbb5b4e9
rtlwifi: btcoex: 23b 1ant: fine tune for bt_sco_hid busy
...
Fine tune the parameters in case of act_bt_sco_hid_only_busy.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:50:38 +03:00
Ping-Ke Shih
40ca188235
rtlwifi: btcoex: 23b 1ant: fine tune for wifi not connected
...
Fine tune the parameters in cases of scan, assoc and auth when wifi isn't
connected.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:50:37 +03:00
Ping-Ke Shih
1ecdc4363f
rtlwifi: btcoex: 23b 1ant: fine tune for wifi connected
...
Fine tune the parameters in cases of bt_acl_busy and scan when wifi is
connected.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:50:37 +03:00
Ping-Ke Shih
056faad2e9
rtlwifi: btcoex: 23b 1ant: coex table fine tune
...
Set register settings for coex table fine tune.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:50:36 +03:00
Ping-Ke Shih
46b5689c37
rtlwifi: btcoex: 23b 1ant: Add coex_table_type to log
...
Display coex_table_type in log.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:50:36 +03:00
Ping-Ke Shih
8be514054d
rtlwifi: btcoex: 23b 1ant: remove verbose log from periodic function
...
Simplify the debug trace log.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:50:35 +03:00
Ping-Ke Shih
5ae40d9935
rtlwifi: btcoex: 23b 1ant: check more cases when bt is queing
...
If bt is queing, we need to set the packet priority properly.
Originally we only consider if wifi was connected or not, but now we
also consider if bt is under abnormal scan or wifi is scanning, roaming
or linking, and set the coex table.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:50:35 +03:00
Ping-Ke Shih
c34e42aa3e
rtlwifi: btcoex: 23b 1ant: define wifi in high priority task.
...
Add the definition of wifi in high priority task for bt inquiry.
According to driver's notifications, btc will knows whether wifi is in high
priority tasks or not.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:50:34 +03:00
Ping-Ke Shih
fa73a1ebe7
rtlwifi: btcoex: 23b 1ant: Special packets statistic in notification
...
Count and log special packets of DHCP, EAPOL and ARP, and check whether
the interface is in 4-way handshake.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:50:34 +03:00
Ping-Ke Shih
29c1de9193
rtlwifi: btcoex: 23b 1ant: Revise media status notify to fix no scan result issue
...
Force antenna setup for no scan result issue
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:49:21 +03:00
Ping-Ke Shih
f9af7af4a1
rtlwifi: btcoex: 23b 1ant: fine tune connect notify
...
When association starts, force antenna setup for no scan result issue.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:49:21 +03:00
Ping-Ke Shih
3ceac0a772
rtlwifi: btcoex: 23b 1ant: Add rf status notification
...
If driver announce wifi RF status is off, btc can switch antenna to BT.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:49:20 +03:00
Ping-Ke Shih
53e18bcf3c
rtlwifi: btcoex: 23b 1ant: Setup register for BT WHCK test
...
If BT is under WHCK, we enter a special mode.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:49:20 +03:00
Ping-Ke Shih
7d0d2c14cc
rtlwifi: btcoex: 23b 1ant: parse more BT information from C2H
...
BT FW provide more BT status as clues, thus we also display them in
coex log to help debug in field.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:49:19 +03:00
Ping-Ke Shih
f9c6ede79a
rtlwifi: btcoex: 23b 1ant: Add power_on_setting
...
This change is highly related to init_hwconfig that was decomposed into
two parts for better program flow.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:49:19 +03:00
Ping-Ke Shih
8ffb5b6926
rtlwifi: btcoex: 23b 1ant: add wifi_only argument to init_hwconfig
...
In case of wifi_only, we can simply switch antenna to wifi.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:49:18 +03:00
Ping-Ke Shih
0d4ae14226
rtlwifi: btcoex: 23b 1ant: adjust wifi duration for bt a2dp
...
The larger the bt a2dp bit pool is, the more time bt needs to receive
them. If we do not adjust the wifi duration, the voice quality will be
low. Hence we reduce the time that wifi holds, to improve the a2dp
service.
If the bt is slave, it may receive a packet at any time, so we
need to mark them as high priority packets in case of packet loss
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:49:18 +03:00
Ping-Ke Shih
c01fd117e5
rtlwifi: btcoex: 23b 1ant: need these information when scan
...
Log the scan procedure, and update ap_num for future usage when scan done.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:49:17 +03:00
Ping-Ke Shih
96e3baadd0
rtlwifi: btcoex: 23b 1ant: Switch antenna to wifi or BT.
...
Since wifi and BT share the same physical antenna, we should switch antenna
to fit every situation.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-24 16:49:17 +03:00
Ping-Ke Shih
12515a08e7
rtlwifi: btcoex: 23b 1ant: check PS state before setting tdma duration
...
For time division multiple access, the wifi and bt take turns to
transmit, but we need to let AP know that wifi is under standby mode by
sending null data to "pretend" entering power saving state using lps
rpwm.
But, the fw does not know if it is the actual power saving mode or just a
fake one to cheat to the AP. Hence, before fw setting the tdma duration,
the fw needs the driver to check the power saving state first.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-18 17:09:52 +03:00
Ping-Ke Shih
12e87c09cf
rtlwifi: btcoex: 23b 1ant: monitor bt is enabled or disabled
...
Check BT's status, and record it in field bt_disabled. When BT is disabled,
We do special action called wifi_only. Also, we move the field from
'struct btc_coexist' to 'struct coex_sta_8723b_1ant'.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-18 17:09:52 +03:00
Ping-Ke Shih
75717802c9
rtlwifi: btcoex: 23b 1ant: check if BT high priority packet exist
...
If there are BT high priority packets, we arrange more time to BT.
To make user experience to be better, HID and SCO are also seen as
high priority packet exist.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-18 17:09:51 +03:00
Ping-Ke Shih
37a5be0cfc
rtlwifi: btcoex: 23b 1ant: monitor wifi and BT counter
...
In field debug, we check wifi and BT counter to analyze problems.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-18 17:09:51 +03:00
Ping-Ke Shih
2622d7d86a
rtlwifi: btcoex: 23b 1ant: TDMA duration for ACL busy
...
BT ACL is a special case, so we create a routine to deal this case.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com >
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net >
Cc: Yan-Hsuan Chuang <yhchuang@realtek.com >
Cc: Birming Chiu <birming@realtek.com >
Cc: Shaofu <shaofu@realtek.com >
Cc: Steven Ting <steventing@realtek.com >
Signed-off-by: Kalle Valo <kvalo@codeaurora.org >
2017-05-18 17:09:51 +03:00