OpenEdv-开源电子网

标题: linux驱动开发指南第五十八章input子系统实验申请中断失败的原因以及解决办法 [打印本页]

作者: liuyiyiyi    时间: 2023-8-4 17:42
标题: linux驱动开发指南第五十八章input子系统实验申请中断失败的原因以及解决办法
书上给的例程以及示例程序直接编译在板子上加载会显示申请中断失败,原因是书上第五十八章给的教程上,设备树代码没有把GPIO的中断添加上去

实际应该在这部分设备树代码的基础上添加中断的相关属性,将设备树节点添加下面这两个中断属性(下面截图来自驱动开发指南51.3.1节中断实验章节):

修改完设备树再编译加载书上例程代码就可正常申请中断运行接下来程序!

作者: liuyiyiyi    时间: 2023-8-4 17:48
怎么发不了图片?那就直接给设备树的节点代码
49.3.1的设备树代码如下,没有添加中断相关属性,故不能申请中断


// ============示例代码 49.3.1.2 创建 KEY 节点 ==================
1 key {
2     #address-cells = <1>;
3     #size-cells = <1>;
4     compatible = "atkalpha-key";
5     pinctrl-names = "default";
6     pinctrl-0 = <&pinctrl_key>;
7     key-gpio = <&gpio1 18 GPIO_ACTIVE_LOW>; /* KEY0 */
8     status = "okay";
9 };



需要将其修改为:

        key{
                #address-cells = <1>;
                     #size-cells = <1>;
                compatible = "alientek-key";
                pinctrl-names = "default";
                pinctrl-0 = <&pinctrl_key>;
                key-gpio = <&gpio1 18 GPIO_ACTIVE_LOW>;
                interrupt-parent = <&gpio1>;
                interrupts = <18 IRQ_TYPE_EDGE_BOTH>; /* FALLING RISING */
                status = "okay";
        };





欢迎光临 OpenEdv-开源电子网 (http://47.111.11.73:80/) Powered by Discuz! X3.4