[PATCH wireless 5/5] wifi: b43: Support advertising lack of QoS capability

Michael Büsch m at bues.ch
Sat Dec 30 05:45:23 PST 2023


On Sat, 30 Dec 2023 04:51:51 +0000
Rahul Rameshbabu <sergeantsagara at protonmail.com> wrote:

> bcm4331 appears to lack QoS support.

I think that's rather unlikely.
The firmware probably is just too old for this device.

> +static const u16 b43_no_qos_chip_ids[] = {
> +	BCMA_CHIP_ID_BCM4331,
> +	0,
> +};
> +
> +static bool b43_qos_not_supported(struct b43_wldev *dev)
> +{
> +	int idx;
> +
> +	for (idx = 0; b43_no_qos_chip_ids[idx]; idx++)
> +		if (dev->dev->chip_id == b43_no_qos_chip_ids[idx])
> +			return true;
> +
> +	return false;
> +}
> +
>  static void b43_wireless_core_exit(struct b43_wldev *dev);
>  static int b43_wireless_core_init(struct b43_wldev *dev);
>  static struct b43_wldev * b43_wireless_core_stop(struct b43_wldev *dev);
> @@ -2587,7 +2603,7 @@ static void b43_request_firmware(struct work_struct *work)
>  
>  start_ieee80211:
>  	wl->hw->queues = B43_QOS_QUEUE_NUM;
> -	if (!modparam_qos || dev->fw.opensource)
> +	if (!modparam_qos || dev->fw.opensource || b43_qos_not_supported(wl->current_dev))

This looks a bit over-engineered to me.
Can we just instead do it like this, please?

	if (!modparam_qos || dev->fw.opensource || dev->dev->chip_id == BCMA_CHIP_ID_BCM4331)

>  		wl->hw->queues = 1;
>  
>  	err = ieee80211_register_hw(wl->hw);





-- 
Michael Büsch
https://bues.ch/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/b43-dev/attachments/20231230/6983c49b/attachment.sig>


More information about the b43-dev mailing list