The problem is that "channel" is an unsigned int, when it's less 5 the
value of "channel - 5" is not a negative number as one would expect but
is very high positive value instead.
This means that "start" becomes a very high positive value. The result
of that is that we never enter the "for (i = start; i <= end; i++) {"
loop. Instead of storing the result from b43legacy_radio_aci_detect()
it just uses zero.
Fixes: ef1a628d83fc ("b43: Implement dynamic PHY API")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Michael Büsch <m@bues.ch>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20211006073621.GE8404@kili
|
||
|---|---|---|
| .. | ||
| b43.h | ||
| bus.c | ||
| bus.h | ||
| debugfs.c | ||
| debugfs.h | ||
| dma.c | ||
| dma.h | ||
| Kconfig | ||
| leds.c | ||
| leds.h | ||
| lo.c | ||
| lo.h | ||
| main.c | ||
| main.h | ||
| Makefile | ||
| phy_a.h | ||
| phy_ac.c | ||
| phy_ac.h | ||
| phy_common.c | ||
| phy_common.h | ||
| phy_g.c | ||
| phy_g.h | ||
| phy_ht.c | ||
| phy_ht.h | ||
| phy_lcn.c | ||
| phy_lcn.h | ||
| phy_lp.c | ||
| phy_lp.h | ||
| phy_n.c | ||
| phy_n.h | ||
| pio.c | ||
| pio.h | ||
| ppr.c | ||
| ppr.h | ||
| radio_2055.c | ||
| radio_2055.h | ||
| radio_2056.c | ||
| radio_2056.h | ||
| radio_2057.c | ||
| radio_2057.h | ||
| radio_2059.c | ||
| radio_2059.h | ||
| rfkill.c | ||
| rfkill.h | ||
| sdio.c | ||
| sdio.h | ||
| sysfs.c | ||
| sysfs.h | ||
| tables_lpphy.c | ||
| tables_lpphy.h | ||
| tables_nphy.c | ||
| tables_nphy.h | ||
| tables_phy_ht.c | ||
| tables_phy_ht.h | ||
| tables_phy_lcn.c | ||
| tables_phy_lcn.h | ||
| tables.c | ||
| tables.h | ||
| wa.c | ||
| wa.h | ||
| xmit.c | ||
| xmit.h | ||