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

From: Ray Jui
Date: Tue Mar 10 2015 - 13:57:10 EST


Hi Linus,

On 3/10/2015 3:20 AM, Linus Walleij wrote:
> On Mon, Mar 9, 2015 at 9:45 PM, Ray Jui <rjui@xxxxxxxxxxxx> 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@xxxxxxxxxxxx>
>> Reviewed-by: Scott Branden <sbranden@xxxxxxxxxxxx>
>> Tested-by: Dmitry Torokhov <dtor@xxxxxxxxxxxx>
>
> Patch applied! But please look at this:
>
>> +#include <linux/gpio.h>
>
> Doesn't just #include <linux/gpio/driver.h> work?
>

I think I need linux/gpio.h for gpiochip_add_pin_range and some related
APIs.

>> +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!
>

I understand. Further investigation is needed and this may take a while,
since a lot of our Cygnus drivers depend on GPIO and regulators (and all
need to be converted to check against deferred probe errors). If
possible, I'll definitely fix this.

> Yours,
> Linus Walleij
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/