解决RK3328 RealTek 8822CS检测不到WIFI模块问题

前言

在rk3328的Android9.0版本中采用新的wifi芯片realtek 8822cs时出现检测不到WIFI模块的问题,咨询rk之后仍未解决,经过3天的排查尝试终于找到问题的原因,现将问题原因及解决方案记录下来,以便同道中人能避免或者解决此问题。

Kernel: v4.4.179
Device: rk3328
Platform Version: Android 9.0

出现的问题

前期kernel的dts配置可以参考rockchip提供的wifi配置文档Rockchip_Introduction_Android9.0_WIFI_Configuration_CN.pdf

按照上面文档中描述,识别流程如下:

开机会对wifi模块上电,并自动进行扫描sdio操作。如果WIFI模块识别成功会在dmesg中抓到如下日志(注意前面的内容可能不同,但红框内是一样的):

问题就出在这里,始终抓不到这条日志,那也就意味着,模块并未被扫描到。

解决的过程

1)首先先排查dts和原理图能不能对应上,配置的对不对(经过详细对比,并没有错)
2)然后仔细阅读文档、网上搜索以及咨询rk都没找到原因。
3)猜测是不是供电问题, 导致这WIFI芯片根本就没起来,通过示波器测量WIFI引脚,但经过测量是有供电的,但又有一点怀疑是不是电压不够。基于这个怀疑,仔细阅读8822s的datasheet,发现一个可疑的地方。


datasheet中写的是1.8V和3.3V根据SDIO协议定,SDIO协议又有3个,参考rk的另一个文档Rockchip_android7.1_wifi_配置明V1.6.pdf。


也就是说SDIO3.0,是1.8V,SDIO是3.3V, 又看了一下8822cs的datasheet。


默认写的是1.8V, 也就是默认已经建议使用1.8V了。
回去又看了一眼我们板子的原理图,硬件把它给成了3.3V, 并且不止这一个引脚,都给的3.3V, 而且把它给定死了。。。,这怎么搞?

想通过手动写寄存器把电压改成1.8V, 但不可行,放弃。

既然都是3.3V,理论上它也应该自己就切换到SDIO2.0啊,但它就是不行,你说气人不?陷入僵局,让硬件改板子把电压调成1.8V? 更不可行(重做板子要成本啊,而且这个芯片我们第一次用,都不知道能不能驱动起来,万一改了板还是驱动不起来,那就。。。。搞得人挺崩溃)

解决的方法

又重新查资料看看到底怎么回事?找到一个rk的Android7.0的SDIO的配置文档Rockchip SDMMC SDIO eMMC 开发指南 V1.0-20160630.pdf


最要命的就是这条其实写的也是太清楚,但最终确实靠它解决了。

将dts中的这条删除掉,一切OK了,自己切换到SDIO2.0了。

我觉得他应该再加一句,**如果只使用SDIO2.0,不要加这句。**因为我很早就看到这一句了,但未意识到它才是解决问题的关键。

反思

一个问题排查了挺长时间,结果解决它的最后只有一句话。同时也提醒自己,写文档的时候,尽量写清楚一点,哪怕多一句废话都成,但如果别人看不明白,会给不知道的人造成很大的麻烦。

解决RK3328 RealTek 8822CS检测不到WIFI模块问题相关推荐

  1. 降龙十八掌搞定rt3070 USB WIFI模块在android2.3平台上上网[基于x210开发板]

    第一掌:编译KO文件,生成rt3070sta.ko 编译时提示如下错误: 错误: ./include/generated/autoconf.h:708: fatal error: /home/lqm/ ...

  2. 虹科案例|虹科物联网安全防护平台-Realtek RTL8195A Wi-Fi 模块的主要漏洞

    在最近的供应链安全评估中,虹科Vdoo分析了多个网络设备的安全漏洞.在分析过程中,我们发现并负责地披露了这些设备所基于的Realtek RTL8195A Wi-Fi模块的四个主要漏洞. 利用这些漏洞, ...

  3. 如何搞定笔记本检测不到wifi,图标,Netkeeper链接不上

    如何搞定笔记本检测不到wifi,图标,Netkeeper链接不上 例如 像上面这种情况的两种解决办法: 问题解决了,把下面的代码复制粘贴到文本文档, 然后改后缀.reg,再运行最后重启就好了. Win ...

  4. IP 地址冲突检测程序源码(解决某种情况下检测无效的问题)

    1. 参考代码 先上一个 arp 参考代码,但是这个参考代码不能全面的检测 IP 地址冲突. http://blog.csdn.net/wanxiao009/article/details/56222 ...

  5. Realtek WiFi 模块受严重漏洞影响

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士 Realtek RT8170C WiFi 模块中被指存在多个严重漏洞,可被滥用于获取设备的提升权限并劫持无线通信. 以色列物联网公司 Vd ...

  6. RealTek WiFi 模块 RTL8710AF RTL8711AF RTL8711AM RTL8195AM

    瑞昱 8710 是一个完整且自成体系的 WiFi 网络解决方案, 能够独立运行,也可以作为从机搭载于其他主机 MCU 运行. 瑞昱 8710 在搭载应用并作为设备中唯⼀的应⽤处理器时,能够直接从外接闪 ...

  7. 笔记本检测不到WiFi,而手机可以

    笔记本检测不到WiFi,而手机可以 原因:路由器和笔记本的频段问题 解决方法:找到手机设置--WLAN--找到网关--浏览器输入IP与密码

  8. 解决方法:SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正

    解决方法:SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正 参考文章: (1)解决方法:SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正 (2)https: ...

  9. 解决vmware虚拟机安装ubuntu 无法连接wifi找不到wifi适配器问题

    解决vmware虚拟机安装ubuntu 无法连接wifi找不到wifi适配器问题 这个问题真的是折磨了我好久,bing了许多博客但都解决不了问题,几度想要放弃,已经准备用双系统,放弃虚拟机了,最后在实 ...

最新文章

  1. LCT维护子树信息(BZOJ4530:[BJOI2014]大融合)
  2. Java递归实现二分法
  3. PHP+Ajax手机移动端发红包实例
  4. oracle 查询表里信息_oracle查询表信息
  5. Linux之ssh-add命令
  6. 埃及分数怎么计算java_贪心算法之埃及分数问题(附c++源代码)
  7. Java实现动态代理的两种方式
  8. 作为项目经理如何做好项目进度管理
  9. android短信验证码自动填写
  10. k8s(十三)、企业级docker仓库Harbor在kubernetes上搭建使用
  11. 计算机网络4小时速成:应用层,cs模型,p2p模型,DNS域名系统,文件传输协议FTP,电子邮件SMTP,万维网HTTP,动态主机配置协议DHCP
  12. android dialog设置背景图片,如何为Dialog设置背景图片?
  13. 基本共射放大电路的动态分析以及放大电路Q点的稳定
  14. ele.getBoundingClientRect()使用
  15. 随机算法求pi、线性同余法求random、拉斯维加斯算法python
  16. 咸鱼CAD笔记—精准绘图
  17. 支付宝支付(沙箱环境)
  18. 阿里C/C++面试题
  19. 哈工大李治军老师操作系统笔记【10】:内核级线程实现(Learning OS Concepts By Coding Them !)
  20. 缓冲区溢出的保护机制

热门文章

  1. 获明略科技B+轮战略投资,思迈特软件Smartbi用强产品思维推动BI生态完善
  2. Linux修改文件时间或创建新文件:touch
  3. 关于欧几里得距离的一些解释
  4. Arduino压电震动传感器
  5. 基于HTTP的简单网络爬虫
  6. 我想咨询一下Python,请问在哪儿找资源比较好呀?
  7. 物联网测试完整解决方案 | 为你的芯片、模块、终端保驾护航
  8. js 当前时间减6个月
  9. 0x00a1bdb3 指令引用的 0x00000001 内存。该内存不能为 read。
  10. 《俗人笔记》之《Java基础语法上》