1.经过一周的努力的今天终于解决了RK3288安卓系统中打不开WIFI的问题,特意记录一下。
2. 一般拿到板子厂家会提供RK3288的SDK框架包(我的是android8.1),在这里我附上移植WIFI帮助文档(在最后面)
3. 板级dts文件添加wifi模块需要的代码描述:(至于下面这些代码在哪个文件里面我就不说了,可能你的跟我的不一样,但都是在kernel/arch/arm/boot/bts/里面)

 wireless-wlan {compatible = "wlan-platdata";rockchip,grf = <&grf>;wifi_chip_type = "ap6335";sdio_vref = <1800>;WIFI,host_wake_irq = <&gpio4 30 GPIO_ACTIVE_HIGH>;status = "okay";};
&sdio0 {status = "okay";max-frequency = <150000000>;bus-width = <4>;cap-sd-highspeed;cap-sdio-irq;disable-wp;keep-power-in-suspend;mmc-pwrseq = <&sdio_pwrseq>;non-removable;num-slots = <1>;pinctrl-names = "default";pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk &sdio0_int>;sd-uhs-sdr104;supports-sdio;
};

4.当然添加上面这两段代码还远远不够,需要看文档继续修改添加,下面的我就不说了,文档找我拿。
5.编译好系统文件和系统镜像后,烧录到板子,发现WIFI一直打不开

6.打不开能怎么办?那只能看RK3288打印了啊(附图)下面都是报错的打印,你可以选择不看,然后我是在这里面找到问题的

[16020.274020] dhd_open: Enter dd6c8800
[16020.274051]
[16020.274051] Dongle Host Driver, version 1.579.77.41.2 (r)
[16020.274059] wl_android_wifi_on in 1
[16020.274066] wl_android_wifi_on in 2: g_wifi_on=0
[16020.274080] wifi_platform_set_power = 1
[16020.274086] ======== PULL WL_REG_ON(-1) HIGH! ========
[16020.274093] [WLAN_RFKILL]: rockchip_wifi_power: 1
[16020.274101] [WLAN_RFKILL]: wifi turn on power. -1
[16020.575297] sdio_reset_comm():
[16020.588702] mmc_host mmc1: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[16020.642667] sdio_read_cis: 2 callbacks suppressed
[16020.642693] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[16020.644206] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[16020.645743] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[16020.648662] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[16020.705084] mmc_host mmc1: Bus speed (slot 0) = 148500000Hz (slot req 150000000Hz, actual 148500000HZ div = 0)
[16020.832098] dwmmc_rockchip ff0d0000.dwmmc: Successfully tuned phase to 82
[16020.832526] sdioh_start: set sd_f2_blocksize 256
[16020.833396]
[16020.833396]
[16020.833396] dhd_bus_devreset: == WLAN ON ==
[16020.833494] F1 signature read @0x18000000=0x16224335
[16020.835729] F1 signature OK, socitype:0x1 chip:0x4339 rev:0x1 pkg:0x2
[16020.836619] DHD: dongle ram size is set to 786432(orig 786432) at 0x180000
[16020.836793] dhd_conf_read_config: Ignore config file endor/etc/firmware/config.txt
[16020.836816] Final fw_path=endor/etc/firmware_bcm4339a0_ag.bin
[16020.836822] Final nv_path=endor/etc/firmware/nvram_AP6335.txt
[16020.836829] Final clm_path=endor/etc/firmware/clm_bcmdhd.blob
[16020.836836] Final conf_path=endor/etc/firmware/config.txt
[16020.836841] dhd_set_bus_params: set use_rxchain 0
[16020.836847] dhd_set_bus_params: set txglomsize 36
[16020.837089] dhd_os_open_image: endor/etc/firmware_bcm4339a0_ag.bin (567196 bytes) open success
[16020.872375] sdioh_buffer_tofrom_bus: TX FAILED dae38000, addr=0x0a000, pkt_len=1948, ERR=-84
[16020.872394] dhdsdio_membytes: membytes transfer failed
[16021.055964] dwmmc_rockchip ff0d0000.dwmmc: Successfully tuned phase to 82
[16021.056330] dhdsdio_download_code_file: error -1 on writing 2048 membytes at 0x0020a000
[16021.056449] _dhdsdio_download_firmware: dongle image file download failed
[16021.056659] dhd_bus_devreset Failed to download binary to the dongle
[16021.056783] dhd_net_bus_devreset: dhd_bus_devreset: -35
[16021.056841] dhd_wl_ioctl: returning as busstate=0
[16021.056893] dhd_dbg_detach_pkt_monitor, 2204
[16021.056974] dhd_net_bus_devreset: dhd_bus_devreset: -35
[16021.057139] wifi_platform_set_power = 0
[16021.057224] ======== PULL WL_REG_ON(-1) LOW! ========
[16021.057276] [WLAN_RFKILL]: rockchip_wifi_power: 0
[16021.057373] [WLAN_RFKILL]: wifi shut off power.
[16021.057421] wl_android_wifi_on: Failed
[16021.057471] dhd_open : wl_android_wifi_on failed (-35)
[16021.057522] dhd_stop: Enter dd6c8800
[16021.057616] wl_android_wifi_off in 1
[16021.057665] wl_android_wifi_off in 2: g_wifi_on=0, on_failure=1
[16021.057714] dhd_wl_ioctl: returning as busstate=0
[16021.057796] dhd_dbg_detach_pkt_monitor, 2204
[16021.057845] dhd_net_bus_devreset: dhd_bus_devreset: -35
[16021.057973] sdioh_disable_func_intr: error for read SDIO_CCCR_IENx : 0xffffff92
[16021.058065] wifi_platform_set_power = 0
[16021.058113] ======== PULL WL_REG_ON(-1) LOW! ========
[16021.058161] [WLAN_RFKILL]: rockchip_wifi_power: 0
[16021.058250] [WLAN_RFKILL]: wifi shut off power.
[16021.058298] wl_android_wifi_off out
[16021.058421] dhd_stop: Exit
[16021.058499] dhd_open: Exit ret=-1
[16021.118126] dhd_open: Enter dd6c8800
  1. 附上解决问题的网页链接
  2. 解决办法:

    9.这是我的硬件原理图,我用的是SDIO接口的WIFI模块,所以板级dts文件还要看原理图对应配置

RK3288移植WIFI文档下载

10.OK我觉得我讲的很清楚了,代码都是手打的,图片都是剪切的,如果对你有帮助麻烦关注互粉一波啊兄弟!!!

[RK3288] AP6335WIFI模块移植(板级dts文件代码编写)相关推荐

  1. i.MX6 u-boot 怎么确定板级头文件

    /*********************************************************************** i.MX6 u-boot 怎么确定板级头文件* 说明: ...

  2. ( 杰理 AC695x ) 板级文件的配置

    最近使用了杰理695x系列芯片来做项目,这里分享下经验给小伙伴哈~具体的还需要自己看sdk啦~~ 一. AC695X 音箱sdk板级文件的配置 这里一般使用demo,然后在board_ac695x_d ...

  3. Linux 内核dts文件是怎么一回事?

    一个CPU可能对应多个平台,为了方便开发,只能这么做,dts文件和dtsi文件相当于C语言的.c和.h文件.一样可以包含,下面以BBB的DTS文件分析学习格式规范. 涉及的文件包含: am33xx.d ...

  4. Rockchip RK3588如何创建新一个新板级DTS

    Rockchip RK3588如何创建新一个新板级DTS 文章目录 Rockchip RK3588如何创建新一个新板级DTS 基于SDK已有的DTS选择一个适合的基础参考DTS RK3588 SDK发 ...

  5. IMX6Q,fsl,mxc_sdc_fb显示屏驱动移植,板级文件到设备树

    使用的是飞凌OKMX6Q/DL-C板子,和它对应的FIT-LVDS 10.1吋液晶显示模块.由3.0.35的板级文件移植到飞思卡尔官方IMX6Q的4.1.15内核的设备树使用,设备树关于显示部分也是参 ...

  6. NUC980开发板Linux系统EC20模块 移植 串口 PPP拨号

    NUC980开发板Linux系统EC20模块 移植 串口 PPP拨号 1. EC20模块连接 2. Linux内核配置 3. 交叉编译PPP 4. 拨号脚本 5. 进行拨号 1. EC20模块连接 在 ...

  7. STM32移植LVGL8.0.2超详细的保姆级教程附移植好的工程文件

    文章目录 前言 一.什么是LVGL? 二.先看效果 三.移植前准备工作 1.准备原有工程 2.下载LVGL源码 四.开始移植 1.把源码搬运到工程文件夹里 2.把搬运好的代码添加到keil工程 3.动 ...

  8. linux 为开发板添加板级文件config.h

    新的板子  需要在之前的板子基础上 做一些改动  首先就是要配置自己的板级文件 参考陈富林博客 这个写的很详细 https://www.cnblogs.com/chenfulin5/p/6393415 ...

  9. linux x86板级文件,Linux driver 板级文件跟踪一般方法

    /*********************************************************************************** * Linux driver ...

最新文章

  1. 一起学react day1
  2. c#精彩编程200例百度云_邂逅百度云智学院:福州理工学院AIOT实训营火热开营!...
  3. Nginx 之一:编译安装nginx 1.8.1 及配置
  4. dubbo服务接口如何mock_小程聊微服务-基于dubbo的mock测试系统
  5. MongoError: E11000 duplicate key error collection: blog.users index: email_1 dup key
  6. AI助特朗普当选?FB史上最大数据滥用曝光,牵出ACL终身奖得主
  7. jQuery的立即调用表达式
  8. NLP︱LDA主题模型的应用难题、使用心得及从多元统计角度剖析
  9. 基于TCP的网络游戏黑白棋系列(二):数据传输
  10. Affine层/Softmax层的实现
  11. unity api中文手册_unity 中文API之Display
  12. linux 类似迅雷下载软件,推荐几个可以替代迅雷的下载软件
  13. 批量一键删除QQ空间说说软件
  14. CAD标注快捷键有哪些?CAD标注快捷键命令大全
  15. Android Srt和Ass字幕解析器
  16. 完美世界国际版不用外挂多开的方法
  17. PPT——点鼠标,切换到下一页时,出现延迟几秒的解决办法
  18. 已有项目如何添加到gitee(码云)仓库
  19. 配置Docker镜像加速器
  20. Visual Studio快捷键大全

热门文章

  1. 设备模型管理对象kobject分析
  2. nodejs安装以及使用学习
  3. C# 窗体 TreeView控件
  4. Win10 设置显示 ClearType 的设置
  5. 判断一个日期是否在活动范围内,活动还未开始? 活动已结束?
  6. avi视频文件太大怎么变小
  7. 软件编程走火入魔之:程序对人身心的残忍摧残
  8. 用数据线连接电脑是电脑会对手机强行充电会对电池产生影响
  9. ubuntu安装程序权限问题
  10. (转)CD式随身播放器可能用到的软件,相关软件下载(更新于10.06.07)