【RK3399】[Android 6.0] linux4.4 調試8723BU記錄過程

8723BU USB-WIFI模塊調試過程

本人的硬件平臺是RK3399 內核版本LINUX4.4 Android 6.
一:先調試底層 kernel

  1. 8723BU模塊
    因爲當時RK平臺支持很多RTL WIFI 芯片,本人買了8723BU 和 8188EU 均調試成功,只調試了WIFI 模塊 因爲項目對Bt沒需求,所以只調試了WIFI部分功能。

2.WIFI驅動一般平臺支持的WIFI驅動 在 kernel/driver/net/wireless/下面,在這裏插入圖片描述若同志沒有相關的驅動或原來的驅動不太行 可下載我調試過的代碼
鏈接:https://download.csdn.net/download/qq_42233843/11657530

  1. 若在Android平臺上使用USB模塊,應該先把驅動調通 在逐漸向上開發。
    驅動已經有了,那麼直接在當前驅動make嗎? 如果make成功那就行,如果不行那就大部分是腳本文件的問題而不是驅動代碼的問題。
    一般要注意幾個mk文件。

驅動當前目錄下的MakeFile
在這裏插入圖片描述
在這裏插入圖片描述

在這裏插入圖片描述
自己寫一個自己平臺的條件 如上圖。

主要根據自己平臺進行配置。
注意的參數有
ARCH 你的系統是32還是64位的
CROSS_COMPILE 選擇你的編譯器 注意編譯器要和你編譯平臺代碼的編譯器一致 不懂可以看你編譯kernel的編譯器選擇那個。
KSRC: 你平臺的kernel路徑
這幾個一定要填對 不然編譯會報錯 又或者 編出來的驅動無法使用。

  1. 接下來是config文件的設置 讓驅動編譯進內核 就無需自己手動掛載了。
    有幾個一定要勾選的選項
    在kernel目錄下輸入 make menuconfig
    在Networking support > wireless 下
    在這裏插入圖片描述
    在 Device Driver > Netwirk device support > Wireless Lan > Rockchip Wireless Lan Support
    在這裏插入圖片描述
    這些就比較容易懂 ,不懂的話可以現在學會如何設置,如何看,簡單的說就是看Kconfig文件

選完之後 進入kernel目錄下 make編譯你的kernel。編譯的過程中看是否有編譯到你的驅動文件上。若沒有編譯到自己檢查問題出在哪,可能就是mk文件或者kconfig文件沒有正確。

  1. DTS 很簡單 改一下型號,藍牙不用的可以屏蔽掉

在這裏插入圖片描述
以上是kernel層的設置
一些可能用到的命令
ifconfig -a 看是否出現wlan0網口
cat /proc/net/wireless 看是否有網口出現 這裏可以檢驗你的驅動是否正確,出現wlan0 應該就是成功了。

二: Android層

當時只需要修改一個文件就可以再界面上打開wifi按鈕上連接wifi了,可惜。
修改一下一個文件在device/rockchip/common/wifi_bt_common.mk ,RK平臺是這個,其他的平臺可能在Boardconfig.mk。
修改如下:

在這裏插入圖片描述

編譯system後,燒寫,測試結果。

以上是調試過程中的筆記,方便自己回憶 也方便大家觀看。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章