This is needed to enable the HDD LED on the OLPC XO-1.5 laptop, enabled through devicetree and the gpio-leds driver.
Signed-off-by: Daniel Drake <d...@laptop.org> --- .../devicetree/bindings/gpio/gpio_vx855.txt | 8 ++++++++ drivers/gpio/gpio-vx855.c | 5 +++++ 2 files changed, 13 insertions(+), 0 deletions(-) create mode 100644 Documentation/devicetree/bindings/gpio/gpio_vx855.txt Grant, please review the chosen scheme (based on gpio_nvidia). Is the "via,vx855-gpio" compatible tag OK? I made it up. diff --git a/Documentation/devicetree/bindings/gpio/gpio_vx855.txt b/Documentation/devicetree/bindings/gpio/gpio_vx855.txt new file mode 100644 index 0000000..93c0747 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/gpio_vx855.txt @@ -0,0 +1,8 @@ +VIA VX855 GPIO controller + +Required properties: +- compatible : "via,vx855-gpio" +- #gpio-cells : Should be two. The first cell is the pin number and the + second cell is used to specify optional parameters: + - bit 0 specifies polarity (0 for normal, 1 for inverted) +- gpio-controller : Marks the device node as a GPIO controller. diff --git a/drivers/gpio/gpio-vx855.c b/drivers/gpio/gpio-vx855.c index ef5aabd..5b7e9ba 100644 --- a/drivers/gpio/gpio-vx855.c +++ b/drivers/gpio/gpio-vx855.c @@ -31,6 +31,7 @@ #include <linux/platform_device.h> #include <linux/pci.h> #include <linux/io.h> +#include <linux/of.h> #define MODULE_NAME "vx855_gpio" @@ -216,6 +217,10 @@ static void vx855gpio_gpio_setup(struct vx855_gpio *vg) c->ngpio = NR_VX855_GP; c->can_sleep = 0; c->names = vx855gpio_names; + +#ifdef CONFIG_OF_GPIO + c->of_node = of_find_compatible_node(NULL, NULL, "via,vx855-gpio"); +#endif } /* This platform device is ordinarily registered by the vx855 mfd driver */ -- 1.7.6 _______________________________________________ devicetree-discuss mailing list devicetree-discuss@lists.ozlabs.org https://lists.ozlabs.org/listinfo/devicetree-discuss