On Monday 02 April 2012, Roland Stigge wrote: > --- /dev/null > +++ linux-2.6/Documentation/devicetree/bindings/i2c/pnx.txt > @@ -0,0 +1,36 @@ > +* NXP PNX I2C Controller > + > +Required properties: > + > + - reg: Offset and length of the register set for the device > + - compatible: should be "nxp,pnx-i2c" > + - interrupts: <a b> where a is the interrupt number and b is a > + field that represents an encoding of the sense and level > + information for the interrupt The encoding of the interrupt is specific to the controller and does not belong here. Just write that there is one interrupt line to be configure. > + - interrupt-parent: the phandle for the interrupt controller that > + services interrupts for this device. interrupt-parent should be optional, it can be set in the (grand-)parent device on systems where all devices use the same controller. You should also require #address-cells = <1>; #size-cells = <0>; To create an address space for i2c slave device numbers. > +Examples: > + > + i2c1: i2c@400A0000 { > + compatible = "nxp,pnx-i2c"; > + reg = <0x400A0000 0x100>; > + interrupt-parent = <&mic>; > + interrupts = <51 0>; > + }; > + > + i2c2: i2c@400A8000 { > + compatible = "nxp,pnx-i2c"; > + reg = <0x400A8000 0x100>; Best use all lowercase letters in the addresses. > + interrupt-parent = <&mic>; > + interrupts = <50 0>; > + clock-frequency = <0x186a0>; > + pnx,timeout = <0x64>; > + slave-addr = <0x11>; > + }; > static struct platform_driver i2c_pnx_driver = { > .driver = { > .name = "pnx-i2c", > .owner = THIS_MODULE, > +#ifdef CONFIG_OF > + .of_match_table = i2c_pnx_of_match, > +#endif > }, > .probe = i2c_pnx_probe, > .remove = __devexit_p(i2c_pnx_remove), of_match_ptr() instead of this #ifdef, please. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html