Am 2015-10-14 um 17:12 schrieb Lars-Peter Clausen: > On 10/14/2015 03:15 PM, Martin Kepplinger wrote: > [...] >> + if (irq1 > 0) >> + client->irq = irq1; > > You must not overwrite client->irq, that field is manged by the I2C core and > is supposed to be read only for device drivers. > I thought about it again and before I implement it, let me show you: since interrupt-names would be "invented" anyways ("INT1", "INT2"), here's an idea for the bindings doc that would be a more long-term solution to implement: - interrupts: interrupt mapping for GPIO IRQ These devices have two interrupt pins called INT1 and INT2 they can route their different interrupt sources to: IRQ Name Interrupt Source Wired Pin -------- ---------------- --------- DATA_READY_1 data ready INT1 DATA_READY_2 INT2 MOTION_1 motion events INT1 MOTION_2 INT2 INT1 all INT1 INT2 INT2 - interrupt-names: should contain IRQ Names in the order in which they were supplied in the interrupts property. Depending on how your chip is wired and what interrupt sources should be handled by the driver, choose one IRQ Name per Interrupt source, or INT1/INT2 for all sources to one pin here. Example 1: mma8453fc@1d { compatible = "fsl,mma8453"; reg = <0x1d>; interrupt-parent = <&gpio1>; interrupts = <5 0>; interrupt-names = "INT2"; // interrupt pin wired to INT2 }; Example 2: mma8453fc@1d { compatible = "fsl,mma8453"; reg = <0x1d>; interrupt-parent = <&gpio1>; interrupts = <4 0>, <5 0>; /* data ready comes from INT2, motion events from INT1 */ interrupt-names = "DATA_READY_2", "MOTION_1"; }; What do you think? thanks martin -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html