需要在AM3517上添加一个串口;而该串口所使用的PIN,原来被定义为其他用途;在此需要完成的工作:
1,屏蔽原来的驱动;
2,设置pin脚为uart功能;
3,注册uart驱动和设备。
分别来完成下列工作:
1,屏蔽原来的驱动在board-xxx.c板级初始化文件中屏蔽;
2,AM3517的pin设置有两种方式:
a,在uboot中,使用MUX_VAL()进行管脚的配置;比如:
MUX_VAL(CP(SDRC_D29), (IEN | PTD | DIS | M0));将其配置为SDRC_D29进行配置,配置为输入使能,下拉,下拉禁止,M0(模式0);具体可以查看一下该函数,以及数据手册;即可找到对应的pin脚,以及配置方式;
将uart的pin脚原来功能该为uart功能;
b,在linux中有个将所有管脚的复用功能都注册,可以通过一个函数进行模式的修改;手里没源码,后面补上。
3,kernel板级c文件中,有个serial_open函数;但是尚有一个问题,怎么知道注册了1,2,3,4呢?
今天收获:
1,主要是知道了在am3517板子上,怎么去修改pin脚;
2,重新熟悉了内核的代码结构;虽然任重道远。