UART通讯
一 添加新的uart口
以x2600e_vast_v20_nand_5.10_defconfig 为例查看使用的dts文件
bhu@bhu-PC:~/work/build$ grep -nr "kernel" configs/x2600e_vast_v20_nand_5.10_defconfig
6:APP_kernel_dir=../kernel/kernel
7:APP_kernel_config=x2600_vast_module_base_linux_sfc_nand_defconfig //kernel配置
9:# APP_kernel_dtb is not set
配置文件位于kernel/kernel/arch/mips/configs目录下
bhu@bhu-PC:~/work/build$ grep -nr ".dts" ../kernel/kernel/arch/mips/configs/x2600_vast_module_base_linux_sfc_nand_defconfig
257:CONFIG_DT_X2600_MODULE_BASE_DTS_FILE="x2600_vast_module_base.dts"
dts 文件位于kernel/kernel/module_drivers/dts,可以添加需要的uart,格式参考已经添加过的
kernel可以添加的uart参考同级目录下的x2600-pinctrl.dtsi文件,以uart0为例,支持pc21-24及pe9-12
二 uart测试
设备节点
# ls /dev/ttyS*
/dev/ttyS0 /dev/ttyS1 /dev/ttyS2
启动信息
[ 0.129663] 10030000.serial: ttyS0 at MMIO 0x10030000 (irq = 55, base_baud = 9375000) is a uart0
[ 0.131472] 10031000.serial: ttyS1 at MMIO 0x10031000 (irq = 54, base_baud = 9375000) is a uart1
[ 0.133155] 10032000.serial: ttyS2 at MMIO 0x10032000 (irq = 53, base_baud = 9375000) is a uart2
[ 0.133555] printk: console [ttyS2] enabled
[ 0.133555] printk: console [ttyS2] enabled
[ 0.134009] printk: bootconsole [early0] disabled
[ 0.134009] printk: bootconsole [early0] disabled
测试
# echo "this is serial test string" > /dev/ttyS2
this is serial test string