RK3576+kernel6.1+Android14移远5G模组(RG200U-CN)底层驱动与系统服务集成实战

1. 环境准备与硬件连接

最近在RK3576平台上折腾移远RG200U-CN 5G模组,发现Android14系统配合kernel6.1确实带来不少新特性,但也遇到了不少坑。先说说硬件连接部分,RG200U-CN采用的是Mini PCIe接口,但实际通信走的是USB协议,这点很关键。

拿到开发板后,首先确认硬件连接正确。RG200U-CN需要连接到Mini PCIe接口,并确保天线已经接好。供电方面,RG200U-CN要求3.3V供电,峰值电流可能达到2A,所以电源稳定性很重要。我一开始用的电源模块容量不足,导致模组时不时重启,换了更大功率的电源后问题解决。

硬件连接好后,上电启动系统。通过adb shell进入设备,首先检查USB设备枚举情况。运行lsusb命令,看到输出中有"2c7c:0900"这个设备,这就是移远RG200U-CN的VID和PID。如果你没看到这个设备,首先要检查硬件连接和供电,确保模组正常上电。

接下来检查tty设备枚举,运行ls /dev/ttyUSB*应该能看到ttyUSB0到ttyUSB4共5个串口设备。这几个串口各有用途:ttyUSB0通常用于AT命令,ttyUSB1用于GPS数据,ttyUSB2用于模组调试,ttyUSB3和ttyUSB4用于数据传输。这个分配很重要,后面配置RIL服务时会用到。

2. 内核驱动配置

内核驱动是5G模组正常工作的基础。RK3576的kernel6.1已经包含了很多USB串口驱动,但还需要确认移远模组的支持情况。

首先检查option驱动是否支持我们的模组。查看drivers/usb/serial/option.c文件,搜索"2c7c:0900",如果已经有这个设备的定义,就不需要修改。如果没有,需要添加对应的VID和PID到设备列表中。我用的这个内核版本已经包含了支持,所以跳过这一步。

接下来要配置内核,确保相关驱动已经编译。运行make menuconfig,在Device Drivers -> USB Support -> USB Serial Converter support下,确保以下选项启用:

  • USB driver for GSM and CDMA modems
  • USB Winchiphead CH341 Single Port Serial Driver
  • USB FTDI Single Port Serial Driver

还需要在Networking support -> Wireless -> USB Network Adapters下启用:

  • QMI WWAN driver for Qualcomm MSM based devices
  • CDC Ethernet support

保存配置后重新编译内核。编译命令如下:

make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j8

编译完成后生成新的内核镜像,烧写到设备中。重启后检查驱动加载情况,通过dmesg | grep usb可以看到USB设备识别

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值