一、给imx6ul添加按键驱动
在linux4.1.15中给imx6ul添加按键驱动涉及到设备树文件和驱动源码如下
linux-4.1.15/arch/arm/boot/dts/tq-imx6ul.dts
linux-4.1.15/drivers/input/keyboard/gpio_keys.c
在板子
首先需要修改设备树文件,在tq-imx6ul.dts中添加如下代码:
gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_keys>;
1 {
label = "1"; //按键标签
gpios = <&gpio4 23 GPIO_ACTIVE_LOW>; //使用gpio4_23,低电平有效
gpio-key,wakeup; //该按键可以唤醒系统
linux,code = <KEY_1>; //键值
};
};
pinctrl_gpio_keys: gpio_keys{
fsl,pins = <
MX6UL_PAD_CSI_DATA02__GPIO4_IO23 0x17059
>;
};
其中KEY_1定义在linux-4.1.15/include/dt-bindings/input/input.h
make menuconfig将gpio button选上即可。