OPENWRT(MT7621) 修改串口
系统:openwrt CC
内核版本:3.10.108
CPU: MT7621
无设备树
废话少说,直接上干货!!!
以增加ttyS2 ===UART3为例
修改GPIO模式
这里主要修改GPIO_MODE 寄存器
两种修改方式,一种是直接修改内核,修改完执行make clean再编译
另一种是在build_dir目录下修改,但只是临时修改,执行 make clean 后修改的代码会被覆盖掉!!!
内核路径:linux-3.10.108/drivers/char/
对应build_dir路径为:/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7621/linux-3.10.108/drivers/char/ralink_gpio.h
取消uart 引脚的GPIO功能,修改ralink_gpio.h中的宏定义

修改ralink_gpio.c中的ralink_gpio_init(void)函数

UART参数配置
内核路径:linux-3.10.108/arch/mips/ralink/init.c
对应build_dir路径为:/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7621/linux-3.10.108//arch/mips/ralink/init.c
修改数组 serial_req【】

修改 prom_init_serial_port函数


修改prom_get_ttysnum函数

修改serial_setbrg函数

配置 kernel_menuconfig
执行 make kernel_menuconfig
选择 Dervice Drivers

选择Character devices

选择 Serial drivers

配置串口数量

然后保存配置执行 make V=s 编译即可,下载到开发板上会发现出现了ttyS2的驱动文件名称

结束!!!
本文详细介绍了如何在OPENWRTCC系统中,针对MT7621芯片修改GPIO模式以增加ttyS2(UART3)串口。主要涉及内核中的ralink_gpio.h和ralink_gpio.c文件的修改,以及在arch/mips/ralink/init.c文件中对serial_req数组和相关函数的配置。通过kernel_menuconfig进行串口数量配置,并执行make编译以实现新串口驱动。
9408

被折叠的 条评论
为什么被折叠?



