平台RK3288 Android5.1

最近由于硬件升级换芯片,WIFI模块换成AP6256,用原来的默认配置发现wifi和蓝牙都不能用。

首先查看SDIO是否正常通讯。有如下打印信息,说明通讯是正常的

[    2.263209] mmc2: new high speed SDIO card at address 0001

查询资料发现WIFI和蓝牙不同的型号会加载不同的固件。开机或打开WIFI时的会有如下的打印信息:

[  262.657531] dhd_bus_devreset: == WLAN ON ==

[  262.658134] F1 signature read @0x18000000=0x15294345

[  262.667091] F1 signature OK, socitype:0x1 chip:0x4345 rev:0x9 pkg:0x2

[  262.668922] DHD: dongle ram size is set to 819200(orig 819200) at 0x198000

[  262.669577] dhdsdio_probe_init: set use_rxchain 1 from config.txt

[  262.670011] dhd_conf_read_config: Ignore config file /system/etc/firmware/config.txt

[  262.670117] dhd_conf_set_fw_name_by_chip: firmware_path=/system/etc/firmware/fw_bcm4329.bin

[  262.670197] Final fw_path=/system/etc/firmware/fw_bcm4329.bin

[  262.670218] Final nv_path=/system/etc/firmware/nvram_AP6210.txt

[  262.670232] Final conf_path=/system/etc/firmware/config.txt

继续找资料,并拿到了一个AP6255-AP6256版本兼容的说明,发现6256的固件有以下几个相关文件

fw_bcm43456c5_ag.bin

fw_bcm43456c5_ag_apsta.bin

nvram_ap6256.txt

config.txt

查询源码,并没有发现这些文件, dts及源码相关选项也没有6256内容,可能拿到的SDK中硬件支持没有做到6256。那么自己动手添加。

1 . 将上面的文件拷贝到如下路径

external/wlan_loader/firmware

2. 关联dts及文件加载。

wifi_chip_type = "bcmwifi";

Dts中有wifi_chip_type用来加载wifi型号的,查看rk文档bcmwifi是个自适应的配置,这里我偷懒直接用了AP6335的(正常可以自己添加AP6256的选项)

修改dts为

wifi_chip_type = " ap6335";

3. 修改ap6335默认加载文件

/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/rk_wifi_config.c

将原来的修改为6256的文件

if (chip == WIFI_AP6335) {// sprintf(fw, "%s%s", ANDROID_FW_PATH, "fw_bcm4339a0_ag.bin");//sprintf(nvram, "%s%s", ANDROID_FW_PATH, "nvram_AP6335.txt");sprintf(fw, "%s%s", ANDROID_FW_PATH, "fw_bcm43456c5_ag.bin");sprintf(nvram, "%s%s", ANDROID_FW_PATH, "nvram_ap6256.txt");}

重新编译烧写后,开机打印正常加载设置的固件,但是设置界面打开WIFI却加载的其他固件,这块没仔细去研究RK的流程。应该还有地方没改到

继续研究打印信息,发现如下信息

[   12.811074] dhd_conf_read_nv_by_chip: chip=0x4345, chiprev=6, name=nvram_ap6255.txt

[   12.811082] dhd_conf_read_nv_by_chip: chip=0x4345, chiprev=9, name=nvram_ap6256.txt

看了系统读取芯片ID成功,6256的chiprev=9,可能这个地方加载有问题。找到这个文件进行修改。

4. 在以下文件添加43456相关加载内容

/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_config.c

添加定义

#define BCM43456C5_CHIP_REV     9

添加加载文件数组

const static char *bcm43456c5_ag_fw_name[] = {"fw_bcm43456c5_ag.bin","fw_bcm43456c5_ag_apsta.bin",// "fw_bcm43455c0_ag_p2p.bin",^M// "fw_bcm43455c0_ag_mfg.bin"^M};

修改函数dhd_conf_set_fw_name_by_chip,添加相关内容

case BCM4345_CHIP_ID:if (chiprev == BCM43455C0_CHIP_REV)^Mstrcpy(&fw_path[i+1], bcm43455c0_ag_fw_name[fw_type]);
//添加以下内容else if(chiprev == BCM43456C5_CHIP_REV)//strcpy(&fw_path[i+1], bcm43456c5_ag_fw_name[fw_type]);break;

重新编译烧写后,WIFI工作正常。

蓝牙修改

  1. 将固件BCM4345C5.hcd拷贝到vendor/rockchip/common/bluetooth/lib/firmware
  2. 以下文件添加蓝牙加载固件路径及名称

device/common/bluetooth/libbt/conf/rockchip/rk30sdk/bt_vendor.conf

FwPatchFileName = BCM4345C5.hcd

3.默认名称修改
path:device/rockchip/rk3288/bluetooth/bdroid_buildcfg.h
#define BTM_DEF_LOCAL_NAME    "XXXX"

蓝牙工作正常!

固件可到如下链接下载,如积分不够,可私信我(不一定能及时看到哦。。)

AP6255-AP6256固件及android linux版本兼容

RK3288 android5.1 增加AP6256 调试wifi和蓝牙相关推荐

  1. 2020-02-24 RK3288 Android7.1 5.1 增加AP6256 WI-FI Bluetooth调试记录

    RK3288 Android7.1 5.1 增加AP6256 WI-FI Bluetooth调试记录 一.硬件连接图,AP6335.AP6255.AP6256 Pin对Pin,可以直接替换. 二.原本 ...

  2. RK3288 Android5.1 RTL8723DS WIFI/BT模块移植 以及AP6XXX模块与RTL8723DS模块做兼容

    一.rk3288 android5.1 rtl8723ds移植 瑞芯微对RK3288 Android7.1的SDK已经集成了RTL8723DS的模块并做了wifi模块的兼容,但是android5.1并 ...

  3. RK3288的GTxx触摸屏驱动调试

    电容屏是在LCD屏上覆盖一个透明的矩阵键盘,在调试goodix gt9xx系列触控屏的驱动时,会遇到各种问题! 1.linux启动时,触控屏驱动偶尔不能加载固件信息. 2.在使用过程中偶尔不能触发或触 ...

  4. 调试wifi转串口的板子成功了

    今天下班回到家就开始调我在淘宝上买的wifi转串口的板子,到目前为止算是调通了.回头就是编写arduino的串口通信程序了.这样的话,我的手机智能家局系统很快就可以完成了.下边是调试wifi转串口板子 ...

  5. RK3288 Android5.1配置Innolux M215HJJ-L30 LVDS屏

    RK3288 Android5.1 SDK,Rockchip官方提供. Innolux M215HJJ-L30 21.5寸LVDS屏,需要在rk3288-tb_8846.dts配置的主板上点亮,在网上 ...

  6. 奇怪的知识又增加了8——Wi-Fi

    奇怪的知识又增加了8--Wi-Fi Wi-Fi 信号强度检测工具 一个检测脚本 linux命令 WiFi定位 非常详细的WiFi各种知识介绍:一文搞懂WiFi的所有知识点 为做一些WiFi信号强度检测 ...

  7. 智能家居无线方案ZIGBEE、Z-Wave、WIFI、蓝牙、红外、GPRS以及NB-IOT对比

    无线取代有线已经成为一个不可逆转的趋势,在智能家居行业最流行的是四种无线技术,即WiFi.Z-Wave.ZigBee.SmartRoom.其中WiFi技术和ZigBee这两种技术最值得竞争.那么WiF ...

  8. 关闭苹果无线服务器,苹果iOS11 WiFi、蓝牙无法关闭怎么回事?附彻底关闭方法...

    iOS 11版本更新给用户带来了不少全新功能,不过随着正式版登场后,一些问题也开始慢慢浮出水面,其中无法在控制中心彻底关闭WiFi和蓝牙功能更是被iPhone用户吐槽不已.这个早在六月份已经被不少玩家 ...

  9. win7 蓝牙4.0 ble驱动_恩智浦发布行业领先的2x2 Wi-Fi 6 +蓝牙解决方案,彻底改变游戏、音频、工业和物联网市场...

    原标题:恩智浦发布行业领先的2x2 Wi-Fi 6 +蓝牙解决方案,彻底改变游戏.音频.工业和物联网市场 恩智浦半导体(NXP Semiconductors N.V.)近日宣布推出2x2 Wi-Fi ...

最新文章

  1. 编写Makefile中遇到的各种奇葩问题汇总
  2. SAP中过账码or记账码posting code
  3. Llama-impala on yarn的中间协调服务
  4. win10打开计算机黑屏怎么办,教你如何解决win10电脑开机黑屏的问题
  5. centos7 源码安装goaccess
  6. 阿里云混合云Apsara Stack 2.0发布 加速政企数智创新
  7. mysql 8 nosql_MySQL8.0-NoSQL和SQL的对比及MySQL的优势
  8. 使用extundelete恢复测试liunx的删除文件
  9. 微信公众号文章编辑排版工具+自动采集+使用视频教程
  10. Matplotlib显示灰度图
  11. 妇女节手抄报Word电子小报
  12. C语言对称矩阵的判定
  13. Tomcat配置443端口验证微信
  14. App Store上架流程/苹果app发布流程
  15. 寻迹小车代码_活动 | 代码日记—计算机编程培训(泰达校区)
  16. Java中创建目录 或 创建文件
  17. uni-app项目自动化测试
  18. 多媒体技术及应用-(1)
  19. 基于vivado的IP设计与管理
  20. zgc的Allocate stall原理

热门文章

  1. 思派健康再次冲刺港股:上半年亏损3.5亿 腾讯为大股东
  2. “会说话”的手!这个手套可以翻译手语,还能通过APP转换语音
  3. 2021年浙江高考成绩一本线查询,2021年浙江高考分数线
  4. 【数据架构】概念数据模型和逻辑数据模型有什么区别
  5. uln2003驱动电路
  6. photoshop 打开图片 无法完成请求因为程序错误
  7. 浅析外国人在中国机场如何蹭网
  8. 剑指Offer第二版Java代码实现
  9. STM32CubeMX学习教程之一:GPIO输出之跑马灯
  10. 【电脑办公软件】万彩办公大师教程丨PDF批量添加页码工具帮助文档