IMX6 GPIO设置为输出时读取的value一直为0
转载请注明:http://blog.csdn.net/kp339/article/details/53096531
问题描述:在使用IMX6进行开发时发现:即使IO口设置为输出状态,设置其电平为高,硬件上测量电平也是对的,但是gpio_get_value获取的状态一直是0。
解决方法:配置SION位,使IO口在输出状态下可以正确获取状态。
这里以DTS配置为例:
&iomux {
pinctrl-name = "default";
pinctrl-0 = <&pinctrl_hog_1>;
imx6ul-evk {
...
/* 第29位配置为4,即表示设置SION位 */
MX6UL_PAD_GPIO1_IO09__GPIO1_IO09 0x40017059
...
};
...
};
参考资料:
drivers/pinctrl/freescale/pinctrl-imx.c
关键词:IMX_PAD_SION
http://permalink.gmane.org/gmane.linux.ports.arm.kernel/295260