技术学习 发表于 2016-10-24 09:21:16

IMX6q-GPIO修改方法

修改imx6q EIM_DA13 为控制led灯的亮灭。 1. 在iomux-mx6q.h文件中找到MX6Q_PAD_EIM_DA13__GPIO_3_13 将其复制到board-mx6q_sabresd.h文件中的mx6q_sabresd_pad[]数组中,并注释掉数组中关于MX6Q_PAD_EIM_DA13__GPIO_3_13的其他定义。2.在board-mx6q_sabresd.c中 添加 #define SABRESD_GPIO_CTRL          IMX_GPIO_NR(3, 13) static struct gpio_led imx6q_gpio_leds[] =
{   GPIO_LED(SABRESD_CHARGE_NOW, "chg_now_led", 0, 1,"charger-charging"),   GPIO_LED(SABRESD_GPIO_CTRL, "gpio_**", 0, 1,"**"),};3.重新编译内核,烧写,只写0或1到/echo 0/1 > sys/class/leds/gpio_**/brightness 这个节点就能控制高低了。4. 如果无法控制,软件上一般脚的是配置问题,可以在mx6q_sabresd_pads找PAD_EIM_D3,看在MX6Q_PAD_EIM_D13__GPIO_3_13的后面有没有被其它脚给重新初始化成了别的功能。 root@ubuntu:/home/forlinx/kernel/linux-3.14.38/arch/arm/boot/dts# vi imx28-tx28.dts

黑桃acer 发表于 2016-11-18 14:57:17

好!mark!
页: [1]
查看完整版本: IMX6q-GPIO修改方法