rk3128调试ap6256双频模块调试
最开始什么都不改,内核默认用的是ap6335,只是根据加载的固件名称,把原厂提供的ap6256的固件替换进来就可以了。
但这样替换了之后,可以打开WiFi,却不能正常使用。连接不了WiFi。
<4>[ 22.646044] sdioh_set_mode: set txglom_mode to multi-desc <4>[ 22.646058] Final fw_path=/system/etc/firmware/fw_bcm4329.bin <4>[ 22.646072] Final nv_path=/system/etc/firmware/nvram_AP6335.txt <4>[ 22.646087] Final conf_path=/system/etc/firmware/config.txt
需要再代码中加以下补丁:
iff --git a/arch/arm/boot/dts/x3128.dts b/arch/arm/boot/dts/x3128.dts index 9a7289f..89b9efe 100755 --- a/arch/arm/boot/dts/x3128.dts +++ b/arch/arm/boot/dts/x3128.dts @@ -20,7 +20,7 @@ * esp8089 ==> esp8089; * other ==> for other wifi; */ - wifi_chip_type = "ap6212"; + wifi_chip_type = "ap6256"; sdio_vref = <3300>; //1800mv or 3300mv
diff --git a/dhd_config.c b/dhd_config.c index 11d2c9e..59c7aa0 100755 --- a/dhd_config.c +++ b/dhd_config.c @@ -141,6 +141,14 @@ const static char *bcm43455c0_ag_fw_name[] = { "fw_bcm43455c0_ag_p2p.bin", "fw_bcm43455c0_ag_mfg.bin" }; + + +const static char *bcm43456c5_ag_fw_name[] = {^M + "fw_bcm43456c5_ag.bin",^M + "fw_bcm43456c5_ag_apsta.bin",^M + "fw_bcm43456c5_ag_p2p.bin",^M + "fw_bcm43456c5_ag_mfg.bin"^M +};^M const static char *bcm4354a1_ag_fw_name[] = { "fw_bcm4354a1_ag.bin", @@ -516,6 +524,10 @@ dhd_conf_set_fw_name_by_chip(dhd_pub_t *dhd, char *fw_path, char *nv_path) case BCM43454_CHIP_ID: if (chiprev == BCM43455C0_CHIP_REV) strcpy(&fw_path[i+1], bcm43455c0_ag_fw_name[fw_type]); + + if (chiprev == BCM43456C5_CHIP_REV)^M + strcpy(&fw_path[i+1], bcm43456c5_ag_fw_name[fw_type]);^M + strcpy(&nv_path[j+1], "nvram_ap6256.txt");^M break; case BCM4339_CHIP_ID: if (chiprev == BCM4339A0_CHIP_REV) diff --git a/dhd_config.h b/dhd_config.h index cd575a2..7dc5c82 100755 --- a/dhd_config.h +++ b/dhd_config.h @@ -30,6 +30,7 @@ extern uint dhd_slpauto; #define BCM4335A0_CHIP_REV 2 #define BCM4339A0_CHIP_REV 1 #define BCM43455C0_CHIP_REV 6 +#define BCM43456C5_CHIP_REV 9 #define BCM4354A1_CHIP_REV 1 #define BCM4359B1_CHIP_REV 5 #endif
在config.txt 加下面两个参数
dhd_slpauto=0
txglom_mode=0
并把config.txt、fw_bcm43456c5_ag.bin、nvram_ap6256.txt需要用到的固件push到system/etc/firmware即可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!