<var id="fnfpo"><source id="fnfpo"></source></var>
<rp id="fnfpo"></rp>

<em id="fnfpo"><object id="fnfpo"><input id="fnfpo"></input></object></em>
<em id="fnfpo"><acronym id="fnfpo"></acronym></em>
  • <th id="fnfpo"><track id="fnfpo"></track></th>
  • <progress id="fnfpo"><track id="fnfpo"></track></progress>
  • <tbody id="fnfpo"><pre id="fnfpo"></pre></tbody>

  • x
    x

    迅為瑞芯微3399開發板Android7-WiFi移植步驟

    發布時間:2021-11-10 10:28    發布者:落風
    關鍵詞: 3399開發板 , 瑞芯微開發板
    基于迅為3399開發板Android7-WiFi移植步驟
    1 增加設備樹節點
    在 /home/topeet/rk3399_7.1_industry/kernel/arch/arm64/boot/dts/rockchip/rk3399-topeet.dtsi 設 備 樹 中添加 WiFi 節點,如下圖所示:

    wifi_chip_type 屬性表示 WiFi 器件的類型為 rtl8822cs。
    查找 sdio0 節點,注釋掉下面的語句,注釋掉這句是因為注冊 sdio 設備時,會注冊不上。

    2 修改內核驅動
    修改驅動的思路:
    1) 將驅動文件拷貝內核中
    2) 在內核中加載上添加的驅動
    3) 我們提前了解下配置 wifi 固件一般是在源碼
    drivers/net/wireless/rockchip_wlan/rkwifi/rk_wifi_config.c,wifi 模塊驅動在源碼 net/rfkill/rfkill-wlan.c
    第一步,我們拷貝光盤資料下“iTOP-3399 開發板\02_iTOP-3399 開發資料匯總(不含光盤內容)\13_ 嵌入式 Linux 開發指南(RK3399)手冊配套資料\6.Android 底層驅動\Android7wifi 移植\原廠 wifi 驅動”
    RTL8822CS_WiFi_linux_v5.12.1.1-0.20210125.tar.gz,此驅動是 wifi 模組的廠家提供的,我們將其放入內核目錄 drivers/net/wireless/rockchip_wlan/下,并修改文件夾名稱為 rtl8822cs,如下圖所示:

    接著修改以下文件:
    (1)修改 drivers/net/wireless/rockchip_wlan/Makefile 文件,添加以下內容:
    obj-$(CONFIG_RTL8822CS) += rtl8822cs/

    (2)修改 drivers/net/wireless/rockchip_wlan/Kconfig 文件,添加
    source "drivers/net/wireless/rockchip_wlan/rtl8822cs/Kconfig

    (3)修改 drivers/net/wireless/rockchip_wlan/Kconfig/rtl8822cs 下的 Makefile 文件
    將文件中的 CONFIG_PLATFORM_I386_PC 的值修改為 n
    將文件中的 CONFIG_PLATFORM_ARM_RK3188 的值修改為 y
    如下圖所示:

    將如下圖所示所示的修改為 MODULE_NAME := 8822cs

    如下圖所示,可以打開或關閉 debug 信息。

    (4)修改 drivers/net/wireless/rockchip_wlan/Kconfig/rtl8822cs 下的 Kconfig 文件
    將第一行的 RTL8822BS 修改為 RTL8822CS,這里是廠家的源碼寫錯了,不改正的話不會編譯到這個源碼目錄。

    (5)然后在內核目錄下(也就是 kernel 目錄下)輸入以下命令配置加載驅動。
    make ARCH=arm64 menuconfig
    Device Drivers --->
  • Network device support --->
  • Wireless LAN --->
  • Rockchip Wireless LAN support --->
    Realtek 8822C SDIO WiFi

    (6)輸入以下命令,將保存好的.config 文件復制替換默認的內核配置 defconfig 文件
    cp .config arch/arm64/configs/rockchip_defconfig
    (7)然后修改/home/topeet/rk3399_7.1_industry/kernel/net/rfkill/rfkill-wlan.c 文件,添加如下所示內容。
    } else if (strcmp(wifi_chip_type_string, "rtl8822cs") == 0) {
    type = WIFI_RTL8822CS;

    (8)然后修改/home/topeet/rk3399_7.1_industry/kernel/include/linux/rfkill-wlan.h 文件,添加如下內容,
    如下圖所示:
    WIFI_RTL_8822CS,

    3 修改 HAl 層
    (1)我們修改/home/topeet/rk3399_7.1_industry/hardware/libhardware_legacy/wifi/rk_wifi_ctrl.c 文件,
    添加如下所示代碼,如下圖所示:
    {"RTL8822CS", "024c:c822"},

    (2)將 strcpy(recoginze_wifi_chip, "APXXX");注釋掉,修改為 strcpy(recoginze_wifi_chip, "RTL8822CS");
    strcpy(recoginze_wifi_chip, "RTL8822CS")

    (3)修改/home/topeet/rk3399_7.1_industry/hardware/libhardware_legacy/wifi/wifi.c 文件,添加代碼
    #define RTL8822CS_DRIVER_MODULE_PATH "/system/lib/modules/8822cs.ko"

    添加代碼,如下圖所示。
    #define RTL8822CS_DRIVER_MODULE_NAME "8822cs"

    添加代碼,如下圖所示:
    {"RTL8822CS", RTL8822CS_DRIVER_MODULE_NAME, UNKKOWN_DRIVER_MODULE_ARG},

    3.4APP 層
    Android 桌面“設置”APP 里面連接 WiFi 的程序在源碼:
    packages/apps/Settings/src/com/android/settings/wifi/目錄下。此部分不需要修改。
    (測試WIFI內容請看下節:測試 WiFi)




  • 本文地址:http://www.portaltwn.com/thread-778197-1-1.html     【打印本頁】

    本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
    您需要登錄后才可以發表評論 登錄 | 立即注冊

    廠商推薦

    • Microchip視頻專區
    • EtherCAT®和Microchip LAN925x從站控制器介紹培訓教程
    • MPLAB®模擬設計器——在線電源解決方案,加速設計
    • 讓您的模擬設計靈感,化為觸手可及的現實
    • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
    • 貿澤電子(Mouser)專區
    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    快速回復 返回頂部 返回列表
    精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷