lkml.org 
[lkml]   [2023]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH v3 5/9] wifi: rtw88: main: Reserve 8 bytes of extra TX headroom for SDIO cards
Date


> -----Original Message-----
> From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
> Sent: Tuesday, March 21, 2023 5:35 AM
> To: linux-wireless@vger.kernel.org
> Cc: Yan-Hsuan Chuang <tony0620emma@gmail.com>; Kalle Valo <kvalo@kernel.org>; Ulf Hansson
> <ulf.hansson@linaro.org>; linux-kernel@vger.kernel.org; netdev@vger.kernel.org;
> linux-mmc@vger.kernel.org; Chris Morgan <macroalpha82@gmail.com>; Nitin Gupta <nitin.gupta981@gmail.com>;
> Neo Jou <neojou@gmail.com>; Ping-Ke Shih <pkshih@realtek.com>; Jernej Skrabec <jernej.skrabec@gmail.com>;
> Larry Finger <Larry.Finger@lwfinger.net>; Martin Blumenstingl <martin.blumenstingl@googlemail.com>
> Subject: [PATCH v3 5/9] wifi: rtw88: main: Reserve 8 bytes of extra TX headroom for SDIO cards
>
> For SDIO host controllers with DMA support the TX buffer physical memory
> address need to be aligned at an 8-byte boundary. Reserve 8 bytes of
> extra TX headroom so we can align the data without re-allocating the
> transmit buffer.
>
> While here, also remove the TODO comment regarding extra headroom for
> USB and SDIO. For SDIO the extra headroom is now handled and for USB it
> was not needed so far.
>
> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

Reviewed-by: Ping-Ke Shih <pkshih@realtek.com>

> ---
> Changes since v2:
> - none
>
> Changes since v1:
> - none
>
>
> drivers/net/wireless/realtek/rtw88/main.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/realtek/rtw88/main.c b/drivers/net/wireless/realtek/rtw88/main.c
> index cdc4703ead5f..1cb553485cff 100644
> --- a/drivers/net/wireless/realtek/rtw88/main.c
> +++ b/drivers/net/wireless/realtek/rtw88/main.c
> @@ -2163,9 +2163,11 @@ int rtw_register_hw(struct rtw_dev *rtwdev, struct ieee80211_hw *hw)
> int max_tx_headroom = 0;
> int ret;
>
> - /* TODO: USB & SDIO may need extra room? */
> max_tx_headroom = rtwdev->chip->tx_pkt_desc_sz;
>
> + if (rtw_hci_type(rtwdev) == RTW_HCI_TYPE_SDIO)
> + max_tx_headroom += RTW_SDIO_DATA_PTR_ALIGN;
> +
> hw->extra_tx_headroom = max_tx_headroom;
> hw->queues = IEEE80211_NUM_ACS;
> hw->txq_data_size = sizeof(struct rtw_txq);
> --
> 2.40.0

\
 
 \ /
  Last update: 2023-03-27 01:13    [W:0.139 / U:1.424 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site