Re: Hooking up SM501 on TQM5200 (MPC5200) board via device tree?

From: Grant Likely
Date: Fri Jun 03 2011 - 16:51:45 EST


On Tue, May 31, 2011 at 10:07:01PM -0700, Josh Triplett wrote:
> We have a TQM5200 board, which has GPIO lines hooked up to an SM501.
> I've managed to come up with the following patch to the tqm5200 device
> tree, which manages to convince the sm501 driver to attach an sm501-fb:
>
> --- a/arch/powerpc/boot/dts/tqm5200.dts 2009-11-23 03:13:27.000000000 -0800
> +++ b/arch/powerpc/boot/dts/tqm5200.dts 2011-05-31 22:00:28.000580627 -0700
> @@ -177,7 +177,8 @@
> compatible = "fsl,mpc5200-lpb","simple-bus";
> #address-cells = <2>;
> #size-cells = <1>;
> - ranges = <0 0 0xfc000000 0x02000000>;
> + ranges = <0 0 0xfc000000 0x02000000
> + 1 0 0xe0000000 0x04000000>;
>
> flash@0,0 {
> compatible = "cfi-flash";
> @@ -187,6 +188,13 @@
> #size-cells = <1>;
> #address-cells = <1>;
> };
> +
> + display@1,0 {
> + compatible = "smi,sm501";
> + reg = <1 0x00000000 0x00800000
> + 1 0x03e00000 0x00200000>;
> + interrupts = <1 1 3>;
> + };
> };
>
> pci@f0000d00 {
>
>
> However, this doesn't hook up the sm501-gpio bits. Reading the sm501
> driver carefully, it looks like it only hooks up sm501-gpio if it has
> platform_data available which sets some flags and other information.
> So, if I understand correctly, hooking up sm501-gpio would require
> adding functionality the driver to get the GPIO information from the
> device tree in preference to the platform_data, if available, and fall
> back to the platform_data for existing users?
>
> What should the necessary device tree properties look like to replace
> sm501_initdata?
>
> - Josh Triplett

You need to look at Documentation/devicetree/bindings/gpio/gpio.txt.

Also, you need to add bits to the sm501-gpio driver to register a
dynamically allocated range of gpio pins and to populate the
gpiochip->of_node pointer. If that points at a device tree node, then
the core code will take care of setting up translation for you.

g.
--
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/