RE: [PATCH 3/4] rtw88: Move enum rtw_tx_queue_type mapping code to tx.{c,h}

From: Pkshih
Date: Wed Jan 19 2022 - 01:04:58 EST



> -----Original Message-----
> From: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>
> Sent: Saturday, January 15, 2022 7:48 AM
> To: linux-wireless@xxxxxxxxxxxxxxx
> Cc: tony0620emma@xxxxxxxxx; kvalo@xxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> Neo Jou <neojou@xxxxxxxxx>; Jernej Skrabec <jernej.skrabec@xxxxxxxxx>; Pkshih <pkshih@xxxxxxxxxxx>; Martin
> Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>
> Subject: [PATCH 3/4] rtw88: Move enum rtw_tx_queue_type mapping code to tx.{c,h}
>
> This code is not specific to the PCIe bus type but can be re-used by USB
> and SDIO bus types. Move it to tx.{c,h} to avoid code-duplication in the
> future.
>
> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>

[...]

> diff --git a/drivers/net/wireless/realtek/rtw88/tx.c b/drivers/net/wireless/realtek/rtw88/tx.c
> index efcc1b0371a8..ec6a3683c3f8 100644
> --- a/drivers/net/wireless/realtek/rtw88/tx.c
> +++ b/drivers/net/wireless/realtek/rtw88/tx.c
> @@ -665,3 +665,38 @@ void rtw_txq_cleanup(struct rtw_dev *rtwdev, struct ieee80211_txq *txq)
> list_del_init(&rtwtxq->list);
> spin_unlock_bh(&rtwdev->txq_lock);
> }
> +
> +static enum rtw_tx_queue_type ac_to_hwq[] = {
> + [IEEE80211_AC_VO] = RTW_TX_QUEUE_VO,
> + [IEEE80211_AC_VI] = RTW_TX_QUEUE_VI,
> + [IEEE80211_AC_BE] = RTW_TX_QUEUE_BE,
> + [IEEE80211_AC_BK] = RTW_TX_QUEUE_BK,
> +};
> +
> +static_assert(ARRAY_SIZE(ac_to_hwq) == IEEE80211_NUM_ACS);
> +
> +enum rtw_tx_queue_type rtw_tx_ac_to_hwq(enum ieee80211_ac_numbers ac)
> +{
> + return ac_to_hwq[ac];
> +}
> +EXPORT_SYMBOL(rtw_tx_ac_to_hwq);
> +

Could I know why we can't just export the array ac_to_hwq[]?
Is there a strict rule?

--
Ping-Ke