返回顶部
首页 > 资讯 > 精选 >RK3288怎么添加WiFi和BT模块AP6212
  • 819
分享到

RK3288怎么添加WiFi和BT模块AP6212

2023-06-05 16:06:17 819人浏览 泡泡鱼
摘要

这篇文章将为大家详细讲解有关RK3288怎么添加WiFi和BT模块AP6212,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。CPU:RK3288系统:Android 5.1 注:系

这篇文章将为大家详细讲解有关RK3288怎么添加WiFi和BT模块AP6212,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

CPU:RK3288

系统:Android 5.1

 注:系统中自带的模块没有AP6212,相近的只有AP6210,设置为AP6210,直接添加固件也可以正常使用。

此文是手动添加AP6212的例程。

在设备树中修改 wifi 芯片为 ap6212,

kernel/arch/arm/boot/dts/rk3288-tb_8846.dts

diff --git a/kernel/arch/arm/boot/dts/rk3288-tb_8846.dts b/kernel/arch/arm/boot/dts/rk3288-tb_8846.dtsindex 6a65163..aa5480d 100755--- a/kernel/arch/arm/boot/dts/rk3288-tb_8846.dts+++ b/kernel/arch/arm/boot/dts/rk3288-tb_8846.dts@@ -42,7 +42,7 @@                  * rtl8188eu, rtl8723bs, rtl8723bu                  * esp8089                */-               wifi_chip_type = "ap6330";+               wifi_chip_type = "ap6212";          sdio_vref = <1800>; //1800mv or 3300mv

在 Kconfig 文件中增加 AP6212 选项。

/kernel/drivers/net/wireless/Kconfig

diff --git a/kernel/drivers/net/wireless/Kconfig b/kernel/drivers/net/wireless/Kconfigindex 544aa86..3e1026d 100755--- a/kernel/drivers/net/wireless/Kconfig+++ b/kernel/drivers/net/wireless/Kconfig@@ -84,6 +84,10 @@ choice        config AP6210                bool "AP6210"                depends on RKWIFI+               +       config AP6212+               bool "AP6212"+               depends on RKWIFI         config AP6234                bool "AP6234"

在配置文件 rockchip_defconfig 中屏蔽旧 wifi 芯片,增加新的 wifi 芯片

kernel/arch/arm/configs/rockchip_defconfig

diff --git a/kernel/arch/arm/configs/rockchip_defconfig b/kernel/arch/arm/configs/rockchip_defconfigindex e7c697a..5199ec0 100755--- a/kernel/arch/arm/configs/rockchip_defconfig+++ b/kernel/arch/arm/configs/rockchip_defconfig@@ -299,7 +299,7 @@ CONFIG_USB_SIERRA_NET=y CONFIG_RTL8188EU=y CONFIG_ESP8089=y CONFIG_RKWIFI=y-CONFIG_AP6335=y+# CONFIG_AP6335 is not set+CONFIG_AP6212=y # CONFIG_INPUT_MOUSEDEV is not set CONFIG_INPUT_EVDEV=y CONFIG_INPUT_KEYRESET=y

此时串口打印中会出现打开文件 fw_bcm43438a1.bin 失败,需要更新 wifi 模块固件。

[   18.686420] dhdsdio_download_code_file: Open firmware file failed /system/etc/firmware/fw_bcm43438a1.bin[   18.686430] _dhdsdio_download_firmware: dongle image file download failed

WiFI 固件路径:/external/wlan_loader/firmware

将模块供应商提供的固件文件拷贝到此目录下,然后编译烧录。

external/wlan_loader/firmware/fw_bcm43438a1.binexternal/wlan_loader/firmware/fw_bcm43438a1_apsta.binexternal/wlan_loader/firmware/fw_bcm43438a1_p2p.binexternal/wlan_loader/firmware/nvram_ap6212.txt

编译后,系统会将模块固件拷贝到 out/target/product/rk3288/system/etc//firmware/ 目录下

如果只是调试,可以通过 adb 将固件 push 到 /system/etc//firmware/ 目录下,然后重启。

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

wifi 驱动路径:kernel/net/rfkill/rfkill-wlan.c

如果器件升级,比如器件为AP6212A,供应商给的文件问 nvram_ap6212a.txt,则需要修改下面文件。(直接用以前的 nvram_ap6212.txt 也可以用,但文件不一样,不清楚)

路径:\kernel\drivers\net\wireless\rockchip_wlan\rkwifi\bcmdhd\dhd_config.c

diff --git a/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_config.c b/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_config.cindex 39641e1..91d7925 100755--- a/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_config.c+++ b/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_config.c@@ -477,7 +477,7 @@ dhd_conf_set_fw_name_by_chip(dhd_pub_t *dhd, char *fw_path, char *nv_path)                                strcpy(&fw_path[i+1], bcm43438a0_fw_name[fw_type]);                        else if (chiprev == BCM43430A1_CHIP_REV)                                strcpy(&fw_path[i+1], bcm43438a1_fw_name[fw_type]);-                       strcpy(&nv_path[j+1], "nvram_ap6212.txt");+                       strcpy(&nv_path[j+1], "nvram_ap6212a.txt");break;                case BCM43340_CHIP_ID:                        if (chiprev == BCM43340B0_CHIP_REV)

BT 驱动中增添代码,支持 AP6212

BT 驱动路径:kernel/net/rfkill/rfkill-bt.c

diff --git a/kernel/net/rfkill/rfkill-bt.c b/kernel/net/rfkill/rfkill-bt.cindex a1a156c..3070080 100755--- a/kernel/net/rfkill/rfkill-bt.c+++ b/kernel/net/rfkill/rfkill-bt.c@@ -95,6 +95,8 @@ static const char bt_name[] =     #else         "ap6210_24M"     #endif+#elif defined(CONFIG_AP6212)+               "ap6212" #elif defined(CONFIG_AP6330)                "ap6330" #elif defined(CONFIG_AP6476)@@ -266,7 +268,7 @@ static int rfkill_rk_set_power(void *data, bool blocked)        struct rfkill_rk_data *rfkill = data;     struct rfkill_rk_gpio *poweron = &rfkill->pdata->poweron_gpio;     struct rfkill_rk_gpio *reset = &rfkill->pdata->reset_gpio;-#if defined(CONFIG_AP6210) || defined(CONFIG_AP6335)+#if defined(CONFIG_AP6210) || defined(CONFIG_AP6212) || defined(CONFIG_AP6335)     struct rfkill_rk_gpio* rts = &rfkill->pdata->rts_gpio;     struct pinctrl *pinctrl = rfkill->pdata->pinctrl; #endif@@ -307,7 +309,7 @@ static int rfkill_rk_set_power(void *data, bool blocked)             msleep(20);                        gpio_direction_output(reset->io, reset->enable);         }-#if defined(CONFIG_AP6210) || defined(CONFIG_AP6335)+#if defined(CONFIG_AP6210) || defined(CONFIG_AP6212) || defined(CONFIG_AP6335)         if (pinctrl != NULL && gpio_is_valid(rts->io))         {             pinctrl_select_state(pinctrl, rts->gpio_state);

 到此 AP6212 就可以正常使用了,但是不知道供应商提供的 BT 固件应该拷贝到哪里。

关于RK3288怎么添加WiFi和BT模块AP6212就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: RK3288怎么添加WiFi和BT模块AP6212

本文链接: https://lsjlt.com/news/243580.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • RK3288怎么添加WiFi和BT模块AP6212
    这篇文章将为大家详细讲解有关RK3288怎么添加WiFi和BT模块AP6212,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。CPU:RK3288系统:Android 5.1 注:系...
    99+
    2023-06-05
  • HTML怎么为模块添加注释
    今天小编给大家分享一下HTML怎么为模块添加注释的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下...
    99+
    2024-04-02
  • 怎么在iptables中添加connlimit模块
    怎么在iptables中添加connlimit模块?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。注:2.6.23以前的内核版本默认不支持 connlimit 推荐规则 ip...
    99+
    2023-06-13
  • Springboot怎么添加本地模块依赖
    本篇内容介绍了“Springboot怎么添加本地模块依赖”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!添加本地模块依赖这个真的困扰了我好几天...
    99+
    2023-06-29
  • 安装apache后怎么添加代理模块
    这篇文章主要介绍安装apache后怎么添加代理模块,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前言:在安装完apache后,发现缺少一些必需的模块。因此需要自己手动来向apache中添加模块。我们以代理模块为例来介...
    99+
    2023-06-07
  • Python区块链块怎么添加
    这篇文章主要介绍了Python区块链块怎么添加的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python区块链块怎么添加文章都会有所收获,下面我们一起来看看吧。每个矿工将从先前创建的交易池中获取交易.要跟踪已挖...
    99+
    2023-06-30
  • 本地Apache服务器怎么添加php7模块
    这篇文章主要讲解了“本地Apache服务器怎么添加php7模块”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“本地Apache服务器怎么添加php7模块”吧!Apache的一些基础命令Opti...
    99+
    2023-06-20
  • matplotlib之pyplot模块添加文本、注解(text和annotate)
    目录概述text函数概述annotate函数概述text函数和annotate函数的对比总结概述 text函数作用是根据x,y坐标向图像添加文本。 annotate函数作用是根据x,...
    99+
    2024-04-02
  • 怎么在CentOS 6.3下给PHP添加mssql扩展模块
    本篇内容主要讲解“怎么在CentOS 6.3下给PHP添加mssql扩展模块”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么在CentOS 6.3下给PHP添加mssql扩展模块”吧!如果在L...
    99+
    2023-06-09
  • git-github子模块仓库更新及git中submodule子模块的添加、使用和删除方法是什么
    这篇文章主要介绍“git-github子模块仓库更新及git中submodule子模块的添加、使用和删除方法是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“git-github子模块仓库更新及g...
    99+
    2023-07-05
  • node中的path模块和fs模块怎么用
    本篇内容介绍了“node中的path模块和fs模块怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!pa...
    99+
    2024-04-02
  • Python中math模块和cmath模块怎么应用
    这篇文章主要介绍了Python中math模块和cmath模块怎么应用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中math模块和cmath模块怎么应用文章都会有所收获,下面我们一起来看看吧。cma...
    99+
    2023-06-27
  • python中的sys模块和os模块怎么用
    今天小编给大家分享一下python中的sys模块和os模块怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.sys模块...
    99+
    2023-06-29
  • Python中的time模块和calendar模块怎么用
    这篇文章将为大家详细讲解有关Python中的time模块和calendar模块怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在Python中对时间和日期的处理方式有很多,其中转换日期是最常见的一个功...
    99+
    2023-06-25
  • python中os模块和sys模块怎么使用
    今天小编给大家分享一下python中os模块和sys模块怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、os模块o...
    99+
    2023-07-05
  • Vue中怎么动态添加模板
    Vue中怎么动态添加模板,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。例如要做一个类 select 的组件,用户传入 opti...
    99+
    2024-04-02
  • ThinkPHP中怎么增加模块文件
    本篇内容介绍了“ThinkPHP中怎么增加模块文件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!ThinkPHP框架的结构:框架核心文件为T...
    99+
    2023-07-05
  • 添加和使用 Go 模块库次要版本(主要版本 > 2)
    问题内容 我一直致力于将我们的私有库转换为 go 模块,并且克服了发布和使用库的新主要版本(例如 tssgit.reyrey.com/teschste/go-httpmailer/v3...
    99+
    2024-02-05
  • Node中的url模块和querystring模块怎么使用
    这篇文章主要讲解了“Node中的url模块和querystring模块怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Node中的url模块和querystring模块怎么使用”吧!u...
    99+
    2023-07-05
  • 怎么在IDEA中添加文件模板
    今天就跟大家聊聊有关怎么在IDEA中添加文件模板,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1.前言在Mybatis中需要创建的配置文件有sqlMapconfig.xml,映射文件...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作