arm-linux内核中串口时钟频率及波特率的设置

ARM 141浏览

本人使用的内核版本为linux-2.6.32,采用的ARM处理器为cortex-A8,采用的串口为NS16550。串口的驱动直接编译在内核中,当需要修改串口的时钟频率和波特率的时候, 需要修改以下地方。

1、在板子平台目录下平台相关的头文件路径下串口的头文件中,即arch/arm/mach-***/include/mach/ns16550.h中修改以下宏定义即可修改串口的时钟频率

#define CONFIG_SYS_NS16550_CLK        50000000

2、在板子平台目录下的设备文件路径下的串口设备.c文件中,即/arch/arm/mach-***/dev-uart.c中修改以下的宏定义即可修改串口时钟频率

#define UART_CLK 50000000

3、内核的波特率是通过uboot的bootargs传递过来的。