海思3518E開發——移植wifi模塊到開發板(聯發科7601)


前邊已經實現村里通了4g網,可是▄█▀█●流量太貴,看片傷不起,那必須上wifi呀!

一、資料獲取

聯發科官網

二、修改MAKEFILE

在211行的位置,修改LINUX_SRC為內核目錄源碼的位置,
修改LINUX_COMPILE為交叉編譯器的位置。如下圖所示。

修改完成后執行make編譯。
想改加載的無線網卡名字可以在include/rtmp_def.h里修改,修改如下所示。

不想修改的話默認編譯出來網卡名字為ra0.
編譯完成,因為我們沒有修改makefile設置為arm系列,所以編譯出來在os/linux 目錄下。

如圖所示,我們編譯出來的驅動為mt7601Usta.ko。拷貝到開發板上。我這里放到了/mylib目錄下,其他目錄也可以。
加載驅動,使用 ismod mt7601Usta.ko 既可以加載驅動,加載完成,執行ifconfig -a 可以看到ra0。說明無線網卡驅動已經加載成功。

和4g模塊驅動同樣的,驅動加載成功還沒有連接wifi。這里就要請出 wpa_supplicant了
wpa_supplicant是wifi客戶端(client)加密認證工具,wpa_supplicant支持wep、wpa、wpa2等完整的加密認證
繼續移植,交叉編譯
官網獲取源碼
我這里使用的是wpa_supplicant-2.7.tar.gz
1、解壓源碼包tar xvzf wpa_supplicant-2.7.tar.gz
2、cd wpa_supplicant-2.7/wpa_supplicant
3、拷貝默認配置cp defconfig .config
4、打開.config 需要修改的配置如下

CONFIG_DRIVER_WEXT=y         //使用WEXT通過ioctl和驅動通信,典型工具ifconfig等

                CONFIG_DRIVER_NL80211=y    //使用NL80211通過一個特殊的socket和驅動打通信,典型工具包括                                                                                                     iwconfig等,使能該選項時應指定libnl庫,移植libnl請參考libnl3.2 移植。
                CFLAGS += -I../../libnl-3.2.25/install/include/     // CONFIG_DRIVER_NL80211=y時。需指定libnl頭文件
                LIBS += -L../../libnl-3.2.25/install/include/          // CONFIG_DRIVER_NL80211=y時,需指定libnl庫
                CONFIG_LIBNL32=y                                           // CONFIG_DRIVER_NL80211=y時,需指定libnl庫版本
                CC = arm-hisiv300-linux-gcc            // 配置編譯器
                CONFIG_TLS = internal     // 配置TLS實現,可選有openssl、internal,選擇penssl時需指定openssl庫,移植步驟請參考Openssl 移植,由於開發板flash空間較小,出於節省空間的考慮,選擇                                                                                                internal

                CONFIG_INTERNAL_LIBTOMMATH = y     //CONFIG_TLS = internal時,需使能

                CFLAGS += -I../../openssl-1.1.1/install/include/     // CONFIG_TLS = openssl時。需指定openssl頭文件

                LIBS += -L../../lopenssl-1.1.1/install/include/          // CONFIG_TLS = openssl時,需指定openssl庫

5、執行make編譯
6、將可執行程序wpa_supplicant、wpa_cli拷貝到開發板文件系統/usr/bin/目錄下,使用chmod命令修改可執行權限
7、在開發板/etc 目錄下建立開發板的配置文件。
內容如下,填寫對應的wifi名字和密碼。

ctrl_interface=/var/run/wpa_supplicant

network={
        proto=WPA
        key_mgmt=WPA-PSK
        ssid="wifi名"
        psk="wifi密碼"
        }

8、執行wpa_supplicant -i ra0 -B -c /etc/wpa_supplicant.conf。既可以連接wifi。
9、實現開機自動加載驅動,並啟動wifi連接。修改/etc/init.d 下的配置

如圖所示。最后一個udhcpc為dhcp,自動獲取ip。需要在busybox配置dhcp功能。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM