On 15 April 2015 at 15:07, Felix Fietkau <[email protected]> wrote:
> @@ -235,16 +235,17 @@ int bcma_gpio_init(struct bcma_drv_cc *cc)
>         }
>
>         /*
> -        * On MIPS we register GPIO devices (LEDs, buttons) using absolute 
> GPIO
> -        * pin numbers. We don't have Device Tree there and we can't really 
> use
> -        * relative (per chip) numbers.
> -        * So let's use predictable base for BCM47XX and "random" for all 
> other.
> +        * Register SoC GPIO devices with absolute GPIO pin base.
> +        * On MIPS, we don't have Device Tree and we can't use relative (per 
> chip)
> +        * GPIO numbers.
> +        * On some ARM devices, user space may want to access some system GPIO
> +        * pins directly, which is easier to do with a predictable GPIO base.
>          */
> -#if IS_BUILTIN(CONFIG_BCM47XX)
> -       chip->base              = bus->num * BCMA_GPIO_MAX_PINS;
> -#else
> -       chip->base              = -1;
> -#endif
> +       if (IS_BUILTIN(CONFIG_BCM47XX) ||
> +           cc->core->bus->hosttype == BCMA_HOSTTYPE_SOC)
> +               chip->base              = bus->num * BCMA_GPIO_MAX_PINS;
> +       else
> +               chip->base              = -1;

Is there any chance you will need predictable GPIO numbers of extra
bcma buses on ARM? Like accessing GPIO of PCIe card from user space?
Then you could prefer IS_BUILTIN(CONFIG_ARCH_BCM_5301X)

Anyway, I'm OK with this patch.

-- 
Rafał
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to