i.MX6ULL终结者Linux按键输入实验修改设备树文件
作者:互联网
文章目录
1 添加Pinctrl节点
在i.MX6UL终结者开发板上按键KEY0使用了UART1_CTS引脚,打开topeet_emmc_4_3.dts文件,在 iomuxc 节点的 imx6ul-evk 子节点下创建一个名为“pinctrl_key”的子节点,节点内容如下所示:
1 pinctrl_key: keygrp {
2 fsl,pins = <
3 MX6UL_PAD_UART1_CTS_B__GPIO1_IO18 0xF080 /* KEY0 */
4 >;
5 };
第3行,将UART1_CTS引脚复用为GPIO1_IO18。
2 添加KEY设备节点
topeet_emmc_4_3.dts文件下,在根节点“/”下添加按键KEY0的节点,内容如下:
1 key {
2 #address-cells = <1>;
3 #size-cells = <1>;
4 compatible = "key";
5 pinctrl-names = "default";
6 pinctrl-0 = <&pinctrl_key>;
7 key-gpio = <&gpio1 18 GPIO_ACTIVE_LOW>; /* KEY0 */
8 status = "okay";
9 };
第 6 行,pinctrl-0 属性设置 KEY 所使用的 PIN 对应的 pinctrl 节点。
第 7 行,key-gpio 属性指定了KEY0所使用的 GPIO。
检查按键KEY0的UART1_CTS引脚有没有被其他设备使用,先检查UART1_CTS引脚在pinctrl节点下有没有重复申请,在检查“gpio1 18”有没有被其他设备引用。
设备树编写完成以后使用“make dtbs”命令重新编译设备树,然后使用新编译出来的 topeet_emmc_4_3.dtb 文件启动 Linux 系统。启动成功以后进入“/proc/device-tree”目录中查看“key”节点是否存在,如果存在的话就说明设备树基本修改成功(具体作用还要驱动验证),结果如图 2.1所示:
标签:CTS,终结者,KEY0,pinctrl,UART1,key,Linux,MX6ULL,节点 来源: https://blog.csdn.net/weixin_46635880/article/details/111150066