Linux设备树GPIO中断

时间:2015-08-28 00:53:44

标签: linux kernel interrupt device-tree

我有一个I2C加速度计芯片,我试图连接到运行Linux 3.12内核的AM335X处理器。

我已经以这种方式设置了设备树,但它似乎并没有正确地连接中断源。我的驱动程序(http://www.st.com/web/en/catalog/tools/PF258114)没有收到任何中断。

i2c1: i2c@4802a000 {
        status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&i2c1_pins>;

        clock-frequency = <100000>;

        accel: accel@19 {
                /* compatible="st,lis3lv02d" */
                compatible="st,lis2dh";
                interrupt-parent = <&gpio0>;
                interrupts = < 22 0x01 >;
                reg = <0x19>;
        };
};

我的芯片位于地址19。

我的GPIO中断线是GPIO 0-22,它是高电平有效

当我修改驱动程序时,它会启动并设置硬件,但不执行任何操作:

# insmod /mnt/rootfs/lis2dh_acc.ko
[   38.351272] lis2dh_acc accelerometer driver: init
[   38.362857] lis2dh_acc 1-0019: probe start.
[   38.367291] lis2dh_acc 1-0019: using default plaform_data
[   38.382664] lis2dh_acc: hw init start
[   38.392011] lis2dh_acc: hw init done
[   38.402053] input: lis2dh_acc as /devices/ocp.2/4802a000.i2c/i2c-1/1-0019/input/input1
[   38.415506] lis2dh_acc 1-0019: lis2dh_acc: probed
[   38.429872] i2c-core: driver [lis2dh_acc] using legacy suspend method
[   38.442815] i2c-core: driver [lis2dh_acc] using legacy resume method

我甚至强迫一个&#34; 1&#34;进入enable_device:

echo 1&gt; /sys/devices/ocp.2/4802a000.i2c/i2c-1/1-0019/input/input1/device/enable_device

但仍然没有。

有人可以帮我弄清楚我的设备树是否设置不正确吗?或者可能是什么问题?

由于

0 个答案:

没有答案