[PATCH v6 6/8] pinctrl: cygnus: add gpio/pinconf driver

Linus Walleij linus.walleij at linaro.org
Tue Mar 10 03:20:43 PDT 2015

On Mon, Mar 9, 2015 at 9:45 PM, Ray Jui <rjui at broadcom.com> wrote:

> This adds the initial support of the Broadcom Cygnus GPIO/PINCONF driver
> that supports all 3 GPIO controllers on Cygnus including the ASIU GPIO
> controller, the chipCommonG GPIO controller, and the always-on GPIO
> controller. Basic PINCONF configurations such as bias pull up/down, and
> drive strength are also supported in this driver.
> Pins from the ASIU GPIO controller can be individually muxed to GPIO
> function, through interaction with the Cygnus IOMUX controller
> Signed-off-by: Ray Jui <rjui at broadcom.com>
> Reviewed-by: Scott Branden <sbranden at broadcom.com>
> Tested-by: Dmitry Torokhov <dtor at chromium.org>

Patch applied! But please look at this:

> +#include <linux/gpio.h>

Doesn't just #include <linux/gpio/driver.h> work?

> +static int __init cygnus_gpio_init(void)
> +{
> +       return platform_driver_probe(&cygnus_gpio_driver, cygnus_gpio_probe);
> +}
> +arch_initcall_sync(cygnus_gpio_init);

arch_initcall_sync() is a bit brutal.

Can you please investigate if you can have this as a normal device_initcall()
utilizing deferred probe if necessary?

Follow-up patches accepted!

Linus Walleij

More information about the linux-arm-kernel mailing list