From: <yhchuang@realtek.com>
To: <kvalo@codeaurora.org>
Cc: <Larry.Finger@lwfinger.net>, <tehuang@realtek.com>,
<briannorris@chromium.org>, <sgruszka@redhat.com>,
<linux-wireless@vger.kernel.org>
Subject: [PATCH 18/24] rtw88: 8822c: set ack timeout
Date: Thu, 31 Jan 2019 20:21:31 +0800 [thread overview]
Message-ID: <1548937297-14660-19-git-send-email-yhchuang@realtek.com> (raw)
In-Reply-To: <1548937297-14660-1-git-send-email-yhchuang@realtek.com>
From: Yan-Hsuan Chuang <yhchuang@realtek.com>
For 8822C, driver needs to set ack timeout after hardware powered-on.
There are two values required for both CCK and OFDM rate sets.
But only OFDM ack timeout was set, and the value did not meet the
hardware specification (aSIFSTime + aSlotTime). For CCK, the ack
timeout should be 106us and for OFDM it should be 33us.
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com>
---
drivers/net/wireless/realtek/rtw88/reg.h | 1 +
drivers/net/wireless/realtek/rtw88/rtw8822c.c | 4 +++-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/realtek/rtw88/reg.h b/drivers/net/wireless/realtek/rtw88/reg.h
index 7fc2b8f..81eec3c 100644
--- a/drivers/net/wireless/realtek/rtw88/reg.h
+++ b/drivers/net/wireless/realtek/rtw88/reg.h
@@ -278,6 +278,7 @@
#define REG_RX_DRVINFO_SZ 0x060F
#define BIT_APP_PHYSTS BIT(28)
#define REG_USTIME_EDCA 0x0638
+#define REG_ACKTO_CCK 0x0639
#define REG_RESP_SIFS_CCK 0x063C
#define REG_RESP_SIFS_OFDM 0x063E
#define REG_ACKTO 0x0640
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822c.c b/drivers/net/wireless/realtek/rtw88/rtw8822c.c
index b2bc362..3634e41 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8822c.c
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822c.c
@@ -767,7 +767,8 @@ static void rtw8822c_phy_set_param(struct rtw_dev *rtwdev)
#define WLAN_BAR_ACK_TYPE 0x05
#define WLAN_RA_TRY_RATE_AGG_LIMIT 0x08
#define WLAN_RESP_TXRATE 0x84
-#define WLAN_ACK_TO 0x40
+#define WLAN_ACK_TO 0x21
+#define WLAN_ACK_TO_CCK 0x6A
#define WLAN_DATA_RATE_FB_CNT_1_4 0x01000000
#define WLAN_DATA_RATE_FB_CNT_5_8 0x08070504
#define WLAN_RTS_RATE_FB_CNT_5_8 0x08070504
@@ -889,6 +890,7 @@ static int rtw8822c_mac_init(struct rtw_dev *rtwdev)
/* WMAC configuration */
rtw_write8(rtwdev, REG_BBPSF_CTRL + 2, WLAN_RESP_TXRATE);
rtw_write8(rtwdev, REG_ACKTO, WLAN_ACK_TO);
+ rtw_write8(rtwdev, REG_ACKTO_CCK, WLAN_ACK_TO_CCK);
rtw_write16(rtwdev, REG_EIFS, WLAN_EIFS_DUR_TUNE);
rtw_write8(rtwdev, REG_NAV_CTRL + 2, WLAN_NAV_MAX);
rtw_write8(rtwdev, REG_WMAC_TRXPTCL_CTL_H + 2, WLAN_BAR_ACK_TYPE);
--
2.7.4
next prev parent reply other threads:[~2019-01-31 12:22 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-31 12:21 [PATCH 00/24] rtw88: major fixes for 8822c to have stable functionalities yhchuang
2019-01-31 12:21 ` [PATCH 01/24] rtw88: report correct tx status if mac80211 requested one yhchuang
2019-02-09 3:08 ` Brian Norris
2019-02-11 4:31 ` Tony Chuang
2019-02-11 19:21 ` Brian Norris
2019-01-31 12:21 ` [PATCH 02/24] rtw88: add get_c2h_from_skb for extracting c2h commands yhchuang
2019-01-31 12:21 ` [PATCH 03/24] rtw88: can not support vif beacon filter actually yhchuang
2019-01-31 12:21 ` [PATCH 04/24] rtw88: fix incorrect bit definition for RF mode yhchuang
2019-01-31 12:21 ` [PATCH 05/24] rtw88: add a delay after writing a rf register yhchuang
2019-01-31 12:21 ` [PATCH 06/24] rtw88: 8822c: correct crystal setting yhchuang
2019-01-31 12:21 ` [PATCH 07/24] rtw88: 8822c: update efuse table as released yhchuang
2019-02-01 2:26 ` Brian Norris
2019-01-31 12:21 ` [PATCH 08/24] rtw88: 8822c: update pwr_seq to v12 yhchuang
2019-01-31 12:21 ` [PATCH 09/24] rtw88: 8822c: update phy parameter to v27 yhchuang
2019-01-31 12:21 ` [PATCH 10/24] rtw88: 8822c: update channel setting yhchuang
2019-01-31 12:21 ` [PATCH 11/24] rtw88: 8822c: update trx mode setting yhchuang
2019-01-31 12:21 ` [PATCH 12/24] rtw88: add module param to switch lps supportability yhchuang
2019-01-31 12:21 ` [PATCH 13/24] rtw88: add 8822c tx power index table parsing support yhchuang
2019-01-31 12:21 ` [PATCH 14/24] rtw88: add 8822c tx agc support yhchuang
2019-01-31 12:21 ` [PATCH 15/24] rtw88: extract utility functions into util.c yhchuang
2019-01-31 12:21 ` [PATCH 16/24] rtw88: 8822c: add support for DACK yhchuang
2019-01-31 12:21 ` [PATCH 17/24] rtw88: 8822c: fix RSC setting yhchuang
2019-01-31 12:21 ` yhchuang [this message]
2019-01-31 12:21 ` [PATCH 19/24] rtw88: 8822c: do not reset MAC Rx before sending CCK packet yhchuang
2019-01-31 12:21 ` [PATCH 20/24] rtw88: 8822c: parse packet by sigb length yhchuang
2019-01-31 12:21 ` [PATCH 21/24] rtw88: do not count dummy tail into rx counter yhchuang
2019-01-31 12:21 ` [PATCH 22/24] rtw88: set OFDM ctx to receive ack after cts2self yhchuang
2019-01-31 12:21 ` [PATCH 23/24] rtw88: fix slot time value yhchuang
2019-01-31 12:21 ` [PATCH 24/24] rtw88: 8822b: turn rtw_write32s_mask into macro yhchuang
2019-02-01 1:24 ` Brian Norris
2019-02-11 2:29 ` Tony Chuang
2019-02-01 2:40 ` [PATCH 00/24] rtw88: major fixes for 8822c to have stable functionalities Brian Norris
2019-02-11 2:30 ` Tony Chuang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1548937297-14660-19-git-send-email-yhchuang@realtek.com \
--to=yhchuang@realtek.com \
--cc=Larry.Finger@lwfinger.net \
--cc=briannorris@chromium.org \
--cc=kvalo@codeaurora.org \
--cc=linux-wireless@vger.kernel.org \
--cc=sgruszka@redhat.com \
--cc=tehuang@realtek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).