前言:在嵌入式開(kāi)發(fā)過(guò)程中,選用成熟高性能WiFi模組保障功能穩(wěn)定性與可靠性,同時(shí)需要考慮供應(yīng)鏈的穩(wěn)定與驅(qū)動(dòng)的成熟度,往往是項(xiàng)目落地的關(guān)鍵環(huán)節(jié)。眺望電子針對(duì)企業(yè)項(xiàng)目技術(shù)服務(wù)過(guò)程中,將持續(xù)對(duì)外圍電路做support list更新,方便用戶選型使用。本章主要是詳細(xì)說(shuō)明RK3588 下RTL8821CS完整調(diào)試過(guò)程。
一、WiFi模組介紹
本次推薦的6221A-SRC 模塊(基于瑞昱 RTL8821CS 方案)具備以下核心優(yōu)勢(shì):
- 高性能無(wú)線能力:支持 Wi-Fi 5(802.11a/b/g/n/ac)和藍(lán)牙雙模,Wi-Fi 最大傳輸速率 150Mbps,藍(lán)牙 3Mbps,滿足高流量場(chǎng)景需求;
- 兼容性優(yōu)異:與正基 AP6255/AP6256 模塊 Pin to Pin 兼容,無(wú)需修改硬件設(shè)計(jì)即可替換;
- 成熟穩(wěn)定:采用瑞昱成熟方案,驅(qū)動(dòng)支持完善,適配 RK3588 等主流嵌入式平臺(tái)。
二、RTL8821C WIFI調(diào)試
2.1驅(qū)動(dòng)準(zhǔn)備與路徑配置
將rtl8821cs的wifi驅(qū)動(dòng)包復(fù)制到rk3588的SDK內(nèi),路徑如下~/kernel/drivers/net/wireless/rockchip_wlan/,并命名為rtl8821cs
2.2Makefile 配置
修改驅(qū)動(dòng)編譯配置文件,指定 WiFi 芯片類型和接口模式:
- 配置 WiFi IC:CONFIG_RTL8821C = y(其他設(shè)為 n)
- 配置接口:CONFIG_SDIO_HCI = y(其他設(shè)為 n)
2.3 設(shè)備樹(shù)(DTS)配置
在 Fuction.dtsi 中添加 WiFi 硬件信息,關(guān)鍵配置喚醒腳和引腳定義:
wireless-wlan { compatible ="wlan-platdata"; pinctrl-names ="default"; pinctrl-0= <&wifi_host_wake_irq>; wifi_chip_type ="rtl8821cs"; WIFI,host_wake_irq = <&gpio1 RK_PD6 GPIO_ACTIVE_HIGH>; status ="okay";}; wireless-wlan { wifi_host_wake_irq: wifi-host-wake-irq { rockchip,pins = <1 RK_PD6 RK_FUNC_GPIO &pcfg_pull_down>; };};
2.4 Kconfig 與 Makefile 添加編譯項(xiàng)
在~/kernel/drivers/net/wireless/rockchip_wlan/Kconfig中添加:
ifBCMDHDsource"drivers/net/wireless/rockchip_wlan/rkwifi/Kconfig"+source"drivers/net/wireless/rockchip_wlan/rtl8821cs/Kconfig"endif
source"drivers/net/wireless/rockchip_wlan/cywdhd/Kconfig"source"drivers/net/wireless/rockchip_wlan/infineon/Kconfig"
在~/kernel/drivers/net/wireless/rockchip_wlan/Makefile中添加:
# SPDX-License-Identifier: GPL-2.0obj-$(CONFIG_BCMDHD)+= rkwifi/obj-$(CONFIG_CYW_BCMDHD)+= cywdhd/obj-$(CONFIG_INFINEON_DHD)+= infineon/+ obj-$(CONFIG_RTL8821CS)+= rtl8821cs/
2.5內(nèi)核編譯與驅(qū)動(dòng)加載
- 進(jìn)入內(nèi)核配置菜單,勾選對(duì)應(yīng)驅(qū)動(dòng)(路徑:Device Drivers > Network device support > Wireless LAN > Rockchip Wireless LAN support > Broadcom Wireless Device Driver Support),編譯為模塊;
- 編譯后在
/kernel/drivers/net/wireless/rockchip_wlan/rtl8821cs生成 KO 文件,拷貝到開(kāi)發(fā)板; - 重新燒錄修改后的內(nèi)核,使用insmod 8821cs.ko加載驅(qū)動(dòng),生成 wlan0 節(jié)點(diǎn)。
2.6 聯(lián)網(wǎng)測(cè)試
配網(wǎng)命令:
nmclidev wifi connect"Talowe-2.4G-0"password"Talowe888"ifname wlan0udhcpc -i wlan0
wifi模塊就完成了配網(wǎng),進(jìn)行網(wǎng)絡(luò)連接,可以進(jìn)行ping百度和iperf測(cè)試。
三、RTL8821C 藍(lán)牙調(diào)試
3.1藍(lán)牙驅(qū)動(dòng)配置
將rtl8821cs的藍(lán)牙驅(qū)動(dòng)包復(fù)制到rk3588的SDK內(nèi),路徑如下~/kernel/drivers/bluetooth/bluetooth_uart_driver。
3.2藍(lán)牙設(shè)備樹(shù)配置
在Fuction.dtsi中添加以下信息,gpio0 PD3為REG_ON引腳,gpio4 PC為藍(lán)牙喚醒引腳。
wireless-bluetooth {compatible ="bluetooth-platdata";uart_rts_gpios = <&gpio3 RK_PD2 GPIO_ACTIVE_LOW>;pinctrl-names ="default","rts_gpio";pinctrl-0 = <&uart9m2_rtsn>;pinctrl-1 = <&uart9_gpios>;BT,power_gpio = <&gpio0 RK_PD3 GPIO_ACTIVE_HIGH>; // BT_REG_ONBT,wake_host_irq = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>; // BT_WAKE_HOSTstatus ="okay";};
wireless-bluetooth {uart9_gpios: uart9-gpios {rockchip,pins = <3 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;};};
3.3藍(lán)牙驅(qū)動(dòng)編譯配置
在~/kernel/drivers/bluetooth/Kconfig中添加:
config RTL_8821_UART_BTtristate"RTL_8821_uart_bt driver"helpRTL Bluetooth HCI uart driver.This driverisrequiredifyou want to use RTL BluetoothwithURAT interface.Say Y here tocompilesupportforRTL Bluetooth urat devicesinto the kernelorsay M tocompileitasmodule (btrtluart).
在~/kernel/drivers/bluetooth/Makefile中添加:
obj-$(CONFIG_BT_HCIUART_NOKIA) += hci_nokia.oobj-$(CONFIG_BT_HCIRSI) += btrsi.o+ obj-$(CONFIG_RTL_8821_UART_BT) += bluetooth_uart_driver/
四、固件加載與節(jié)點(diǎn)驗(yàn)證
- .在內(nèi)核的配置中勾選對(duì)應(yīng)的驅(qū)動(dòng)進(jìn)行編譯,路徑:Networking support > Bluetooth subsystem support > Bluetooth device drivers
- 勾選對(duì)應(yīng)的驅(qū)動(dòng)文件后,保存配置文件編譯內(nèi)核進(jìn)行燒錄,將藍(lán)牙的固件拷貝到RK3588開(kāi)發(fā)板的/lib/firmware/rtlbt路徑中
- 等待固件加載完成,查看藍(lán)牙節(jié)點(diǎn)
總結(jié)
6221A-SRC 作為一款成熟的 WiFi & 藍(lán)牙模組,通過(guò)本文的驅(qū)動(dòng)配置、設(shè)備樹(shù)修改、編譯與加載步驟,可見(jiàn)在 RK3588 平臺(tái)上調(diào)試十分簡(jiǎn)單快捷,工程師可快速完成模組集成,降低項(xiàng)目開(kāi)發(fā)周期。眺望電子也將持續(xù)更新外圍電路 support list,為嵌入式開(kāi)發(fā)者提供更多選型參考。若您在開(kāi)發(fā)使用中遇到任何問(wèn)題,請(qǐng)關(guān)注眺望電子公眾號(hào)并聯(lián)系我們,獲取完整測(cè)試報(bào)告與軟硬件設(shè)計(jì)參考資料,我們將竭誠(chéng)為您服務(wù)!
-
WIFI
+關(guān)注
關(guān)注
81文章
5436瀏覽量
210592 -
SDIO
+關(guān)注
關(guān)注
2文章
78瀏覽量
20334 -
RK3588
+關(guān)注
關(guān)注
8文章
457瀏覽量
6735
發(fā)布評(píng)論請(qǐng)先 登錄
SDMMC/SDIO的PCB設(shè)計(jì)要求 以RK3588舉例講解SDMMC/SDIO的pcb布線技巧

瑞芯微RK3588開(kāi)發(fā)板RK3588 EVB和RK3588S EVB解讀

RK3588 PCB推薦疊層及阻抗設(shè)計(jì)

簡(jiǎn)要說(shuō)明一下RK3588 MMC模式的DTS配置
RK3588J和RK3588是什么關(guān)系?
RK3588和RK3588S之間的區(qū)別是什么
ROC RK3588S PC源代碼RK356X/RK3588 RKNN SDK

rk3588和rk3588s的區(qū)別
RK3588與3588s的區(qū)別
RK3588系列有多少型號(hào)?
快速上手RK3588常用接口測(cè)試

評(píng)論