[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20220412230806.jcq2q26gglavg2e6@bang-olufsen.dk>
Date: Tue, 12 Apr 2022 23:08:06 +0000
From: Alvin Šipraga <ALSI@...g-olufsen.dk>
To: Andrejs Cainikovs <andrejs.cainikovs@...adex.com>
CC: "linux-wireless@...r.kernel.org" <linux-wireless@...r.kernel.org>,
Amitkumar Karwar <amitkarwar@...il.com>,
Ganapathi Bhat <ganapathi017@...il.com>,
Sharvari Harisangam <sharvari.harisangam@....com>,
Xinming Hu <huxinming820@...il.com>,
Kalle Valo <kvalo@...nel.org>,
"David S . Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Brian Norris <briannorris@...omium.org>,
Jonas Dreßler <verdre@...d.nl>,
Francesco Dolcini <francesco.dolcini@...adex.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [PATCH 1/2] mwifiex: Select firmware based on strapping
Hi Andrejs,
On Fri, Apr 08, 2022 at 09:50:59AM +0200, Andrejs Cainikovs wrote:
> Some WiFi/Bluetooth modules might have different host connection
> options, allowing to either use SDIO for both WiFi and Bluetooth,
> or SDIO for WiFi and UART for Bluetooth. It is possible to detect
> whether a module has SDIO-SDIO or SDIO-UART connection by reading
> its host strap register.
>
> This change introduces a way to automatically select appropriate
> firmware depending of the connection method, and removes a need
> of symlinking or overwriting the original firmware file with a
> required one.
>
> Host strap register used in this commit comes from the NXP driver [1]
> hosted at Code Aurora.
>
> [1] https://source.codeaurora.org/external/imx/linux-imx/tree/drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_sdio_mmc.c?h=rel_imx_5.4.70_2.3.2&id=688b67b2c7220b01521ffe560da7eee33042c7bd#n1274
>
> Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@...adex.com>
> ---
> drivers/net/wireless/marvell/mwifiex/sdio.c | 18 +++++++++++++++++-
> drivers/net/wireless/marvell/mwifiex/sdio.h | 5 +++++
> 2 files changed, 22 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/marvell/mwifiex/sdio.c b/drivers/net/wireless/marvell/mwifiex/sdio.c
> index bde9e4bbfffe..23160d179485 100644
> --- a/drivers/net/wireless/marvell/mwifiex/sdio.c
> +++ b/drivers/net/wireless/marvell/mwifiex/sdio.c
> @@ -182,6 +182,9 @@ static const struct mwifiex_sdio_card_reg mwifiex_reg_sd8997 = {
> .host_int_rsr_reg = 0x4,
> .host_int_status_reg = 0x0C,
> .host_int_mask_reg = 0x08,
> + .host_strap_reg = 0xF4,
> + .host_strap_mask = 0x01,
> + .host_strap_value = 0x00,
I had a look at the cards supported by mwifiex, and it seems that the SD8987
also supports this strapping detection [1]. Could you perhaps add the same
.host_strap_{reg,mask,value} settings to mwifiex_reg_sd8987?
[1] https://source.codeaurora.org/external/imx/linux-imx/tree/drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_sdio_mmc.c?h=rel_imx_5.4.70_2.3.2&id=688b67b2c7220b01521ffe560da7eee33042c7bd#n1364
> .status_reg_0 = 0xE8,
> .status_reg_1 = 0xE9,
> .sdio_int_mask = 0xff,
With that change added, feel free to carry my Reviewed-by in your v2 patch:
Reviewed-by: Alvin Šipraga <alsi@...g-olufsen.dk>
Kind regards,
Alvin
Powered by blists - more mailing lists