Message ID | 20221028092332.238728-1-linus.walleij@linaro.org |
---|---|
State | New |
Headers | show |
Series | [v3] wifi: bcma/brcm80211: Use the proper include | expand |
Linus Walleij <linus.walleij@linaro.org> wrote: > The <linux/bcma/bcma_driver_chipcommon.h> is including the legacy > header <linux/gpio.h> to obtain struct gpio_chip. Instead, include > <linux/gpio/driver.h> where this struct is defined. > > It turns out that the brcm80211 brcmsmac depends on this to > bring in the symbol gpio_is_valid(). > > The driver looks up the BCMA parent GPIO driver and checks that > this succeeds, but then it goes on to use the deprecated GPIO > call gpio_is_valid() to check the consistency of the .base > member of the BCMA GPIO struct. The whole check can be dropped > because the bcma_gpio is initialized in the declarations: > > struct gpio_chip *bcma_gpio = &cc_drv->gpio; > > And this can never be NULL. > > Cc: Jonas Gorski <jonas.gorski@gmail.com> > Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com> > Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Patch applied to wireless-next.git, thanks. 2b6c0e152868 bcma: Use the proper gpio include
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/led.c b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/led.c index c1b9ac692d26..9540a05247c2 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/led.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/led.c @@ -63,9 +63,6 @@ int brcms_led_register(struct brcms_info *wl) int hwnum = -1; enum gpio_lookup_flags lflags = GPIO_ACTIVE_HIGH; - if (!bcma_gpio || !gpio_is_valid(bcma_gpio->base)) - return -ENODEV; - /* find radio enabled LED */ for (i = 0; i < BRCMS_LED_NO; i++) { u8 led = *leds[i]; diff --git a/include/linux/bcma/bcma_driver_chipcommon.h b/include/linux/bcma/bcma_driver_chipcommon.h index 2d94c30ed439..0cb6638b55e5 100644 --- a/include/linux/bcma/bcma_driver_chipcommon.h +++ b/include/linux/bcma/bcma_driver_chipcommon.h @@ -4,7 +4,7 @@ #include <linux/platform_device.h> #include <linux/platform_data/brcmnand.h> -#include <linux/gpio.h> +#include <linux/gpio/driver.h> /** ChipCommon core registers. **/ #define BCMA_CC_ID 0x0000