[PATCH v3] leds: implement OpenFirmare GPIO LED driver

Trent Piepho tpiepho at freescale.com
Fri Jul 18 06:18:18 EST 2008


On Thu, 17 Jul 2008, Grant Likely wrote:
> Alternately, I would also be okay with a scheme where all LED nodes
> have a common parent and an of_platform driver would bind against the
> parent node; not the individual children.  Then the leds-gpio driver
> could be refactored to have both platform and of_platform bus
> bindings.

Basically what I did then in my patch then, refactor leds-gpio so most of
it is shared and there is a block of code that does platform binding and
another block that does of_platform binding.

I didn't change the OF platform binding syntax so as not to complicate the
example, but that's easy to do.  Something like:

leds {
 	compatible = "gpio-led";
 	gpios = <&mpc8572 6 0
 	         &mpc8572 7 0>;
 	labels = "red", "green";
};

Or like this, which needs a little more code to parse:

leds {
 	compatible = "gpio-led";
 	led at 6 {
 		gpios = <&mpc8572 6 0>;
 		label = "red";
 	};
 	led at 7 {
 		gpios = <&mpc8572 7 0>;
 		label = "green";
 	};
};

I like the first better.  It follows the example from the docs about how
devices with multiple gpios should work too.



More information about the Linuxppc-dev mailing list