嵌入式爱好者

查看: 22268|回复: 1

[Linux] IMX6q-GPIO修改方法

[复制链接]

3

主题

39

帖子

369

积分

i.MX6UL通行证i.MX6Q通行证XX18通行证TCU通行证AM335x通行证

扫一扫,手机访问本帖
发表于 2016-10-24 09:21:16 | 显示全部楼层 |阅读模式
修改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

回复

使用道具 举报

0

主题

12

帖子

12

积分

i.MX6UL通行证i.MX6Q通行证

发表于 2016-11-18 14:57:17 | 显示全部楼层
好!mark!
点评回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-4-27 01:28

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表