Subject: Re: [PATCH] ath11k: pci: Add more MODULE_FIRMWARE() entries

From: Simon Horman <[email-masked]>
Date: Fri, 31 Mar 2023 16:16:40 +0200

On Fri, Mar 31, 2023 at 03:58:17PM +0200, Takashi Iwai wrote:
> 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 <[email-masked]>
> > > ---
> > > 
> > > 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, understood.
If that is the case then I have no objections.

Reviewed-by: Simon Horman <[email-masked]>