1. 程式人生 > >rtl8811cu雙頻網絡卡移植到ARM

rtl8811cu雙頻網絡卡移植到ARM

一、配置核心支援無線網絡卡功能

二、需要移植生成的東西

        1> 驅動:rtl8821cu.ko

        2> wifi配置工具:wpa_supplicant(依賴庫openssl及libnl庫)

    (重點關注:wpa_supplicant不同版本依賴不同版本的openssl庫,需檢視wpa_supplicant裡面的README文件得知

 具體步驟

          1.驅動:修改原始碼包Makefile:

                               》選擇合適平臺選項

                               》去除電源節能選項

                                》對應平臺選項下修改CC、核心版本及核心原始碼路徑

                         編譯生成:make

           2. wifi配置工具:

                        版本:wpa_supplicant-0.7.3、openssl-0.9.8i

                            1)拷貝wpa_supplicant-0.7.3目錄下的patches/openssl-0.9.8i-...patch補丁包 到openssl-0.9.8i目錄下

                             2)編譯openssl:

                                          cd openssl-0.9.8i

                                          mkdir install (建立安裝目錄)

                                          chmod 777 install

                                          vim Makefile

                                               修改CC、AR、RANLIB、INSTALLTOP、OPENSSLDIR

                                          make

                                          make install

                                  3)編譯wpa_supplicant:

                                           cp defconfig .config

                                           vim .config

                                                  CC=...  -L/.../openssl../lib

                                                  CFLAGS+=-I/.../install/include

                                                  LIBS += -L/.../install/lib 

                                            make

                                            生成wpa_passphrase、wpa_supplicant、wpa_cli等工具及檔案

                                  4)拷貝 wpa_passphrase、wpa_supplicant、wpa_cli到開發板/bin目錄下,並賦予執行許可權

                                  5)配置網路:

                                               在開發板rootfs目錄下:vim /rootfs/etc/wpa_supplicant.conf

                                                                      ctrl_interface=/var/run/wpa_supplicant

                                                                      network={

                                                                      ssid="網路名稱"

                                                                      proto=WPA

                                                                      pairwise=TKIP

                                                                      key_mgmt=WPA-PSK

                                                                      psk="密碼"

                                                                       }   

                                                測試連線(開發板上執行):

                                                        insmod /modules/8821cu.ko

                                                        ifconfig eth0 down

                                                        ifconfig wlan0 up

                                                        wpa_supplicant -iwlan0 -c /etc/wpa_supplicant.conf  -Dwext  &

                                                        ifconfig wlan0 192.168.31.107 (手動設定IP)

                                                        route add default gw 192.168.31.1  (route閘道器)

                                                        ( *****若需自動獲取IP,配置dhcpc:

                                                                   1)配置核心和busybox,開啟DHCP功能                              

核心配置項

                                            2)把/busybox-1.21.1/examples/udhcp下的指令碼simple.script改名為default.script,放在開發板上的 /usr/share/dhcpc/目錄下,並增加該檔案的執行許可權:

                                                   3)開發板執行:

                                                                            insmod /modules/8821cu.ko

                                                                            ifconfig eth0 down

                                                                            ifconfig wlan0 up 

                                                                            wpa_supplicant -iwlan0 -c /etc/wpa_supplicant.conf  -Dwext  &

                                                                            udhcpc -i wlan0 -B(-B表後臺執行)