瑞芯微Rockchip开发者社区
直播中

孔朱磊

7年用户 935经验值
私信 关注
[问答]

如何对USB WiFi RTL8723DU进行移植呢

如何对USB WiFi RTL8723DU进行移植呢?有哪些移植步骤?

回帖(1)

孙婧

2022-3-2 14:55:40
1.简介

我们公司有一款RK3568 双wifi的产品,搭载的是AP6275s + RTL8723DU ,这两款都是RK支持的wifi系列,详细可以参考RK的官方写的文档 (路径:RK3568_SDKRKDocsandroidwifi

那么接下来我们就操作一遍适配RTL8723DU的驱动吧,因为走USB的,所以是不需要配置dts的,移植完成驱动就可以工作了

2.移植过程

2.1 参考文档

首先一个合格的程序员,当然是先把官方写的文档看一遍了,看完一遍大概流程就明白了(《Rockchip_Introduction_REALTEK_WIFI_Driver_Porting_CN&EN.pdf》)


2.2 驱动文件


这个我们一般是找供应商要,如果没有就找RK要,找到RTL8723DU的驱动就可以开始移植工作了


2.3 移植步骤


在kernel目录下,修改如下文件

(如果是RK给的驱动压缩包,不需要以下的修改,因为RK给的压缩包是已经修改完毕的了,上面kernel目录修改完成后就可以编译kernel了)

在rtl8723du驱动源文件上,修改Makefile,参考文档是8723cs,我们现在移植的是8723du ,需要注意一下。

在rtl8723du驱动源码文件上,修改os_dep/linux/u***_intf.c文件即可,因为是走USB的



3.测试


移植完成后,编译kernel img ,烧录进设备上。打开android Settng UI 界面开启wifi,就可以使用了。

4.问题排查过程


我们这边移植完毕后出现了一个情况,wifi一直都打开不成功。

我们查看开机 log后,发现驱动都没有跑起来

因为无上面的log打印,所以我们就把RTL系列的驱动都关闭了,只保留了RTL8723DU的驱动,因为kernel是以模块的方式加载这样wifi驱动的

这次驱动跑起来了,底层命令行可以正常工作了,但是我们又发现UI界面一直没办法正常工作



这个应该是上层的问题了,我们logcat分析了一下

发现是vid 与pid没有正常匹配。我们修改添加一下

接下来我们再运行一次,完美工作。

那么此次的USB WiFi RTL8723DU的移植工作就可以说是完成了
举报

更多回帖

发帖
×
20
完善资料,
赚取积分