近期在项目中使用NUC975的时候发现一个问题,在已经配置好串口9的情况下,无法进行收发工作,已经将串口配置为如下方式,PWM未配置。在未配置串口9的情况下,能够控制管脚拉高拉低。使用的内核版本为Linux-3.10.x。
经过在网上查找资料,发现此网友的博客:http://blog.51cto.com/whylinux/1903195 中提到了串口2的问题,受到启发,便去查看.config文件和/drivers/tty/serial/nuc970_serial.c中的static int nuc970serial_pinctrl()这个函数中, 发现.config配置文件中对于uart9的配置为CONFIG_NUC970_UART9_PD2,而在/dev/tty/serial/nuc970_serial.c中static int nuc970serial_pinctrl()这个函数中的uart9的配置为CONFIG_NUC970_UART9_PD1。基本确定问题所在。
知道了问题所在,具体的修改就很简单了,将static int nuc970serial_pinctrl()这个函数中的uart9的CONFIG_NUC970_UART9_PD1更改为CONFIG_NUC970_UART9_PD2,重新编译,问题解决。
|