My mistake.

After checking over and over the dts i figured out that gpio_130 is on bank 
5 (not 6).
&i2c2 {
   clock-frequency = <400000>;
   status = "okay";
   foo: foo@0x08 {
        compatible = "foo, foo_i2c";
        reg = <0x08>;
        interrupt-parent = <&gpio5>;
        interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
        enable = <&gpio5 29 GPIO_ACTIVE_HIGH>;
   };
};

Is working fine :)


On Tuesday, April 8, 2014 11:27:55 AM UTC+2, Christophe Ricard wrote:
>
> Hi,
>
> I am currently facing concern to manage gpio interrupt inside my device 
> driver with device tree. It is working fine with static platform_data 
> configuration.
> My device is connected to i2c. Here is my how my node looks like:
>
> &i2c2 {
>    clock-frequency = <400000>;
>    status = "okay";
>    foo: foo@0x08 {
>         compatible = "foo, foo_i2c";
>         reg = <0x08>;
>         interrupt-parent = <&gpio6>;
>         interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
>         enable = <&gpio6 29 GPIO_ACTIVE_HIGH>;
>    };
> };
>
> In my probe function, i am able to retrieve and configure the enable gpio.
> I am retrieving the interrupts with irq_of_parse_and_map(pp, 0); and the 
> polarity with irq_get_trigger_type.
>
> When requesting the irq with devm_request_threaded_irq, the irq goes crazy 
> and trigger multiple interrupt for ever.
>
> This phenomenon is not visible with following node:
> &i2c2 {
>    clock-frequency = <400000>;
>    status = "okay";
>    foo: foo@0x08 {
>         compatible = "foo, foo_i2c";
>         reg = <0x08>;
>         irq = <&gpio6 2 IRQ_TYPE_LEVEL_LOW>;
>         enable = <&gpio6 29 GPIO_ACTIVE_HIGH>;
>    };
> };
>
> And using following sequence:
> - devm_gpio_request
> - gpio_direction_input
> - gpio_to_irq
> - devm_request_threaded_irq
>
>
> gpio6 2 is gpio_130
> gpio6 29 is gpio_157
>
> Do you have any idea about what i am doing wrong ?
>
> Best Regards
> Christophe
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to