[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87a5ztja4m.wl-tiwai@suse.de>
Date: Fri, 31 Mar 2023 15:58:17 +0200
From: Takashi Iwai <tiwai@...e.de>
To: Simon Horman <simon.horman@...igine.com>
Cc: Takashi Iwai <tiwai@...e.de>, Kalle Valo <kvalo@...nel.org>,
ath11k@...ts.infradead.org, linux-wireless@...r.kernel.org,
netdev@...r.kernel.org
Subject: Re: [PATCH] ath11k: pci: Add more MODULE_FIRMWARE() entries
On Fri, 31 Mar 2023 15:45:27 +0200,
Simon Horman wrote:
>
> On Thu, Mar 30, 2023 at 04:37:18PM +0200, Takashi Iwai wrote:
> > As there are a few more models supported by the driver, let's add the
> > missing MODULE_FIRMWARE() entries for them. The lack of them resulted
> > in the missing device enablement on some systems, such as the
> > installation image of openSUSE.
> >
> > While we are at it, use the wildcard instead of listing each firmware
> > files individually for each.
> >
> > Signed-off-by: Takashi Iwai <tiwai@...e.de>
> > ---
> >
> > I can rewrite without wildcards if it's preferred, too.
> > But IMO this makes easier to maintain.
> >
> > drivers/net/wireless/ath/ath11k/pci.c | 9 +++++----
> > 1 file changed, 5 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/net/wireless/ath/ath11k/pci.c b/drivers/net/wireless/ath/ath11k/pci.c
> > index 0aeef2948ff5..379f7946a29e 100644
> > --- a/drivers/net/wireless/ath/ath11k/pci.c
> > +++ b/drivers/net/wireless/ath/ath11k/pci.c
> > @@ -1039,7 +1039,8 @@ module_exit(ath11k_pci_exit);
> > MODULE_DESCRIPTION("Driver support for Qualcomm Technologies 802.11ax WLAN PCIe devices");
> > MODULE_LICENSE("Dual BSD/GPL");
> >
> > -/* QCA639x 2.0 firmware files */
> > -MODULE_FIRMWARE(ATH11K_FW_DIR "/QCA6390/hw2.0/" ATH11K_BOARD_API2_FILE);
> > -MODULE_FIRMWARE(ATH11K_FW_DIR "/QCA6390/hw2.0/" ATH11K_AMSS_FILE);
> > -MODULE_FIRMWARE(ATH11K_FW_DIR "/QCA6390/hw2.0/" ATH11K_M3_FILE);
> > +/* firmware files */
> > +MODULE_FIRMWARE(ATH11K_FW_DIR "/QCA6390/hw2.0/*");
> > +MODULE_FIRMWARE(ATH11K_FW_DIR "/QCN9074/hw1.0/*");
> > +MODULE_FIRMWARE(ATH11K_FW_DIR "/WCN6855/hw2.0/*");
> > +MODULE_FIRMWARE(ATH11K_FW_DIR "/WCN6855/hw2.1/*");
>
> I don't feel strongly about this.
>
> But unless I'm mistaken the above does seem to pick up a number of files
> totalling around 25Mbytes. Perhaps that isn't ideal.
MODULE_FIRMWARE() itself is nothing but a hint for the required
firmware files. The driver supports those models, hence it should
list up the mandatory firmware files that *can* be used with it;
without the firmware, the driver itself is just useless, as you know.
The rest -- how to reduce the actual sizes -- is above the kernel
modinfo covers, and it depends on the system implementation, IMO.
It can be somehow more selective, it can compress data, or it can load
the stuff on demands.
thanks,
Takashi
Powered by blists - more mailing lists