Thread (20 messages) 20 messages, 3 authors, 2015-03-18

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

From: rjui@broadcom.com (Ray Jui)
Date: 2015-03-10 17:57:08
Also in: linux-devicetree, linux-gpio, lkml

Hi Linus,

On 3/10/2015 3:20 AM, Linus Walleij wrote:
On Mon, Mar 9, 2015 at 9:45 PM, Ray Jui [off-list ref] wrote:
quoted
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@broadcom.com>
Reviewed-by: Scott Branden <sbranden@broadcom.com>
Tested-by: Dmitry Torokhov <redacted>
Patch applied! But please look at this:
quoted
+#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.
quoted
+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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help