|
发表于 2017-6-19 17:31:47
|
显示全部楼层
您好,下面是一个修改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的后面有没有被其它脚给重新初始化成了别的功能。
|
|