三星S5PV210移植RTL8723BU WiFi驅動
硬體環境:Samsung s5pv210
軟體環境:Linux kernel 2.6.35.7
1、編譯生成生成.ko檔案
下載完成的驅動包先解壓到Windows系統中,然後移動到Ubuntu中,如下圖:
編輯Makefile如下:
###################### Platform Related #######################
CONFIG_PLATFORM_I386_PC = n
CONFIG_PLATFORM_ANDROID_X86 = n
CONFIG_PLATFORM_ANDROID_INTEL_X86 = n
CONFIG_PLATFORM_JB_X86 = n
CONFIG_PLATFORM_ARM_S3C2K4 = n
CONFIG_PLATFORM_ARM_PXA2XX = n
CONFIG_PLATFORM_ARM_S3C6K4 = n
#主要增加這一行,加入對s5pv210的支援
CONFIG_PLATFORM_ARM_S5PV210 = y
CONFIG_PLATFORM_MIPS_RMI = n
CONFIG_PLATFORM_RTD2880B = n
CONFIG_PLATFORM_MIPS_AR9132 = n
CONFIG_PLATFORM_RTK_DMP = n
CONFIG_PLATFORM_MIPS_PLM = n
CONFIG_PLATFORM_MSTAR389 = n
CONFIG_PLATFORM_MT53XX = n
CONFIG_PLATFORM_ARM_MX51_241H = n
CONFIG_PLATFORM_FS_MX61 = n
CONFIG_PLATFORM_ACTIONS_ATJ227X = n
CONFIG_PLATFORM_TEGRA3_CARDHU = n
CONFIG_PLATFORM_TEGRA4_DALMORE = n
CONFIG_PLATFORM_ARM_TCC8900 = n
CONFIG_PLATFORM_ARM_TCC8920 = n
CONFIG_PLATFORM_ARM_TCC8920_JB42 = n
CONFIG_PLATFORM_ARM_RK2818 = n
CONFIG_PLATFORM_ARM_RK3066 = n
CONFIG_PLATFORM_ARM_RK3188 = n
CONFIG_PLATFORM_ARM_URBETTER = n
CONFIG_PLATFORM_ARM_TI_PANDA = n
CONFIG_PLATFORM_MIPS_JZ4760 = n
CONFIG_PLATFORM_DMP_PHILIPS = n
CONFIG_PLATFORM_MSTAR_TITANIA12 = n
CONFIG_PLATFORM_MSTAR = n
CONFIG_PLATFORM_SZEBOOK = n
CONFIG_PLATFORM_ARM_SUNxI = n
CONFIG_PLATFORM_ARM_SUN6I = n
CONFIG_PLATFORM_ARM_SUN7I = n
CONFIG_PLATFORM_ARM_SUN8I_W3P1 = n
CONFIG_PLATFORM_ARM_SUN8I_W5P1 = n
CONFIG_PLATFORM_ACTIONS_ATM702X = n
CONFIG_PLATFORM_ACTIONS_ATV5201 = n
CONFIG_PLATFORM_ACTIONS_ATM705X = n
CONFIG_PLATFORM_ARM_RTD299X = n
CONFIG_PLATFORM_ARM_SPREADTRUM_6820 = n
CONFIG_PLATFORM_ARM_SPREADTRUM_8810 = n
CONFIG_PLATFORM_ARM_WMT = n
CONFIG_PLATFORM_TI_DM365 = n
CONFIG_PLATFORM_MOZART = n
CONFIG_PLATFORM_RTK119X = n
CONFIG_PLATFORM_NOVATEK_NT72668 = n
CONFIG_PLATFORM_HISILICON = n
###############################################################
在Makefile中增加這一段程式碼,主要設定交叉編譯工具鏈和kernel目錄樹
ifeq ($(CONFIG_PLATFORM_ARM_S5PV210), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
ARCH := arm
#交叉編輯工具鏈一定要選對
CROSS_COMPILE := arm-linux-
#kernel版本
KVER := 2.6.35.7
#原始碼目錄樹
KSRC ?= /root/root/kernel/kernel
endif
然後#make clean &&make
..........
CC [M] /root/root/rtl8723bu_wifi/hal/OUTSRC/rtl8723b/HalHWImg8723B_BB.o
CC [M] /root/root/rtl8723bu_wifi/hal/OUTSRC/rtl8723b/HalHWImg8723B_MAC.o
CC [M] /root/root/rtl8723bu_wifi/hal/OUTSRC/rtl8723b/HalHWImg8723B_RF.o
CC [M] /root/root/rtl8723bu_wifi/hal/OUTSRC/rtl8723b/HalHWImg8723B_FW.o
CC [M] /root/root/rtl8723bu_wifi/hal/OUTSRC/rtl8723b/HalHWImg8723B_MP.o
CC [M] /root/root/rtl8723bu_wifi/hal/OUTSRC/rtl8723b/phydm_RegConfig8723B.o
CC [M] /root/root/rtl8723bu_wifi/hal/OUTSRC/rtl8723b/HalPhyRf_8723B.o
CC [M] /root/root/rtl8723bu_wifi/hal/OUTSRC/rtl8723b/phydm_RTL8723B.o
CC [M] /root/root/rtl8723bu_wifi/platform/platform_ops.o
CC [M] /root/root/rtl8723bu_wifi/core/rtw_mp.o
CC [M] /root/root/rtl8723bu_wifi/core/rtw_mp_ioctl.o
CC [M] /root/root/rtl8723bu_wifi/core/rtw_bt_mp.o
LD [M] /root/root/rtl8723bu_wifi/8723bu.o
Building modules, stage 2.
MODPOST 1 modules
CC /root/root/rtl8723bu_wifi/8723bu.mod.o
LD [M] /root/root/rtl8723bu_wifi/8723bu.ko
make[1]: Leaving directory `/root/root/kernel/kernel'
[email protected]:~/root/rtl8723bu_wifi#
編譯完成後生成8723bu.ko就是我們需要的驅動了
2、製作根檔案系統
將我們編譯生成的.ko檔案放在我們的根檔案系統中
動手製作.ext2檔案系統,步驟如下:
(1)dd if=/dev/zero of=rootfs.ext2 bs=1024 count=204800
losetup /dev/loop1 rootfs.ext2
mke2fs -m 0 /dev/loop1 204800
mount -t ext2 /dev/loop1 ./ext2_rootfs/
(2)向./ext2_rootfs中複製內容,用cp ../rootfs/* ./ -rf
(3)umount /dev/loop1
losetup -d /dev/loop1
(4)完成後得到的rootfs.ext2就是我們做好的rootfs映象。拿去燒錄即可。
燒錄映象到開發板上啟動:
Starting sshd: OK
Starting qttest...
[ 16.193284] EXT2-fs (mmcblk0p4): warning: mounting ext3 filesystem as ext2
[ 16.198675] EXT2-fs (mmcblk0p4): warning: mounting unchecked fs, running e2fsck is recommended
Welcome to Buildroot
x210v3 login: root
Password:
[root@x210v3 ~]#
[root@x210v3 ~]#
[root@x210v3 ~]# cd /
[root@x210v3 /]# cd home/
[root@x210v3 home]# ls
8723bu.ko default/ ftp/ mt7601Usta.ko
[root@x210v3 home]#
3、安裝並測試驅動
[root@x210v3 home]# insmod 8723bu.ko
[ 82.343476] RTL871X: module init start
[ 82.345749] RTL871X: rtl8723bu v4.3.16_14189.20150519_BTCOEX20150119-5844
[ 82.352941] RTL871X: build time: Jun 22 2017 21:44:43
[ 82.357681] RTL871X: rtl8723bu BT-Coex version = BTCOEX20150119-5844
[ 82.514318] RTL871X: rtw_ndev_init(wlan0)
[ 82.520354] usbcore: registered new interface driver rtl8723bu
[ 82.524874] RTL871X: module init ret=0
[root@x210v3 home]#
本來列印資訊有很多的,我在原始碼 include/autoconf.h 中遮蔽了#define CONFIG_DEBUG 如果需要列印全資訊 在原始碼中放開這行註釋就行了。
開啟wlan0網絡卡:# ifconfig wlan0 up
[root@x210v3 home]# ifconfig wlan0 up
[root@x210v3 home]# ifconfig eth0 down
[root@x210v3 home]# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
wlan0 Link encap:Ethernet HWaddr 60:42:7F:76:D9:E9
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:50 errors:0 dropped:3 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
[root@x210v3 home]#
編輯 /etc/wpa_supplicant.conf檔案內容如下:
:
ctrl_interface=/var/run/wpa_supplicant
network={
key_mgmt=WPA-PSK
#WiFi名稱
ssid="*******"
#WiFi密碼
psk="*********"
}
連線網路#wpa_supplicant -B -c /etc/wpa_supplicant.conf -i wlan0
[root@x210v3 home]# wpa_supplicant -B -c /etc/wpa_supplicant.conf -i wlan0
Successfully initialized wpa_supplicant
[ 422.563815] RTL871X: nolinked power save leave
[ 422.573330] RTL871X: set bssid:00:00:00:00:00:00
[ 422.577015] RTL871X: set ssid [gÆisQÿJì)ͺ«òûãF|ÂTøZ.c3ŸÉš ] fw_state=0x00000008
ioctl[SIOCSIWAP]: Operation not permitted
ioctl[SIOCSIWENCODEEXT]: Invalid argument
ioctl[SIOCSIWENCODEEXT]: Invalid argument
[root@x210v3 home]# [ 423.922443] RTL871X: indicate disassoc
[ 423.928499] RTL871X: set ssid [Xiaomi_310] fw_state=0x00000008
[ 423.933107] RTL871X: set bssid:f0:b4:29:d4:d1:78
[ 424.146620] RTL871X: start auth
[ 424.165219] RTL871X: auth success, start assoc
[ 424.189771] RTL871X: assoc success
[ 424.191876] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[root@x210v3 home]#
編輯/etc/network/interface檔案
增加wlan0的描述
# Configure Loopback
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
#增加wlan0的配置
auto wlan0
iface wlan0 inet dhcp
檢視連線狀態:wpa_cli -i wlan0 status
[[email protected] home]#
[[email protected] home]# wpa_cli -i wlan0 status
bssid=f0:b4:29:d4:d1:78
ssid=Xiaomi_310
id=0
mode=station
pairwise_cipher=CCMP
group_cipher=TKIP
key_mgmt=WPA2-PSK
wpa_state=ASSOCIATED
address=60:42:7f:76:d9:e9
已經連上了
然後分配閘道器 ip地址等,使用udhcpc自動分配
[[email protected] home]# udhcpc -i wlan0
udhcpc (v1.21.0) started
Sending discover...
Sending select for 192.168.31.186...
Lease of 192.168.31.186 obtained, lease time 43200
deleting routers
route: SIOCDELRT: No such process
adding dns 192.168.31.1
使用ifconfig檢視是否分配成功
[root@x210v3 home]# ifconfig wlan0
wlan0 Link encap:Ethernet HWaddr 60:42:7F:76:D9:E9
inet addr:192.168.31.186 Bcast:192.168.31.255 Mask:255.255.255.0
inet6 addr: fe80::6242:7fff:fe76:d9e9/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:23 errors:0 dropped:18707 overruns:0 frame:0
TX packets:6 errors:0 dropped:1 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:80615 (78.7 KiB) TX bytes:5652 (5.5 KiB)
[root@x210v3 home]#
如上已經分配成功
至此移植完成,最後檢查一下可以ping通百度不
[[email protected] home]# ping www.baidu.com
PING www.baidu.com (14.215.177.37): 56 data bytes
64 bytes from 14.215.177.37: seq=0 ttl=54 time=14.371 ms
64 bytes from 14.215.177.37: seq=1 ttl=54 time=9.603 ms
64 bytes from 14.215.177.37: seq=2 ttl=54 time=9.518 ms
64 bytes from 14.215.177.37: seq=3 ttl=54 time=9.451 ms
64 bytes from 14.215.177.37: seq=4 ttl=54 time=10.404 ms
64 bytes from 14.215.177.37: seq=5 ttl=54 time=9.721 ms
64 bytes from 14.215.177.37: seq=6 ttl=54 time=9.927 ms
64 bytes from 14.215.177.37: seq=7 ttl=54 time=9.753 ms
64 bytes from 14.215.177.37: seq=8 ttl=54 time=10.090 ms
64 bytes from 14.215.177.37: seq=9 ttl=54 time=15.682 ms
64 bytes from 14.215.177.37: seq=10 ttl=54 time=9.876 ms
--- www.baidu.com ping statistics ---
11 packets transmitted, 11 packets received, 0% packet loss
round-trip min/avg/max = 9.451/10.763/15.682 ms
相關推薦
三星S5PV210移植RTL8723BU WiFi驅動
硬體環境:Samsung s5pv210 軟體環境:Linux kernel 2.6.35.7 1、編譯生成生成.ko檔案 下載完成的驅動包先解壓到Windows系統中,然後移動到Ubuntu中,如下圖: 編輯Makefile如下: ##
Freescale i.MX 6 MNC平臺移植BT/WIFI驅動
此專案之前移植到Android6.0.1版本。基本系統可以起來了。現在要調一下WiFi和Bluetooth。此板上用的是Broadcom BCM89335的WiFi和Bluetooth二合一晶片。WiFi通過4線SDIO和SoC相連線,Bluetooth通過U
wifi驅動 && wpa_supplicant在Linux PC上的移植
一. 編譯環境準備 1. 安裝ubuntu 我嘗試過編譯MT7603的driver, 發現在ubuntu kernel 2.6.32上編譯會出錯, 所以安裝的ubuntu kernel版本必須大於2.6.32, 建議是3.0 以上的。 我選擇安裝ubuntu 12.04
8 Android平臺開發-WIFI 驅動移植 -- 詳細
一、WIFI的基本架構(程式碼路徑) 1、WIFI Settings應用程式: packages/apps/Settings/src/com/android/setting
WIFI驅動移植--udhcpc獲取IP
在使用wpa工具連線WIFI的時候,一般採用DHCP方式自動獲取裝置ip。在執行完udhcpc命令後,發現獲取到了IP,但是ifconfig一看,還是沒有IP資訊。在獲取IP後需要配置指令碼設定ip。本文使用udhcpc命令配合配置指令碼,實現自動獲取、設定ip的功能。一、建
第十七章:STA模式USB WIFI驅動移植
1、下載原始碼 首先將原始碼複製到ubuntu中實驗目錄,並解壓開,這裡我們用到的是sta模式,所以解壓MT7601U_LinuxAP_3.0.0.1_20130802.tar.bz2這個檔案。 我們這裡解壓之後放在了以下目錄中. 2、修改
WIFI驅動移植---編譯MT7601驅動
1.修改Makefile 1)新增平臺型別 2)新增編譯工具等ifeq ($(PLATFORM),3518E) LINUX_SRC = /home/float/share/Hi3518E_SDK_V1.0.4.0/package/osdrv/opensour
android wifi驅動移植及其部分問題回答
Update(19/05/2011): Verify validity against Gingerbread. Update (11/08/2010): Updated patch to fix the loading of awext driver at run tim
移植tslib和Qt5.6到三星s5pv210開發板
tslib1.4移植 下載tslib1.4後1.cp tslib-1.4.tar.bz2 /home/gec 2.tar jxvf tslib-1.4.tar.bz2 3.sudo -s 4.c
Android系統如何移植wpa_supplicant及wifi驅動
一、WPA_SUPPLICANT簡介 1. 什麼是wpa_supplicant wpa_supplicant is a WPA Supplicant for Linux, BSD, Mac OS X, and Windows with support for WPA a
嵌入式linux usb wifi驅動移植
wpa_driver_wext_set_operstate: operstate 0->0 (DORMANT) netlink: Operstate: linkmode=-1, operstate=5 wpa_driver_wext_associate wpa_driver_wext_set_
Wifi Sta驅動移植與wifi連結使用
開發環境: 開發板:hisi3520D 核心linux3.0.8 交叉編譯器:arm-hisiv100nptl-linux-gcc wifi模組:rt5572和mt7601 在介紹wpa_supplicant工具前,需要先介紹一下它和wireless-tool的差
rt3070 wifi驅動移植
平臺:TI dm6441, ,linux2.6.18, wifi:RT3070 我看wifi模組上沒有寫是鐳凌公司的,因為公司同事是在另一個公司買的,但是當我看模組的驅動手冊時,看到了驅動模組是rt3070sta.ko,狗狗一下後知道了一切。於是:下載了wifi驅動。 wi
hi3518e移植USB-WiFi RT3070 STA驅動
/**************************************************************************************************/
android 平臺USB wifi驅動移植及使用
來自: http://blog.csdn.net/haomcu/article/details/7267090 一. Android平臺Wifi的基本程式碼路徑 1. Wpa_supplicant原始碼部分 external/wpa_sup
CC2640R2F&TI-RTOS 拿到 TI CC2640R2F 開發板 第一件事就是移植串口驅動,重定向 printf
ade 默認值 hand drivers exp bin 初始化 strong simple /* * board_uart.c * * Created on: 2018年7月3日 * Author: admin */ #include "boa
ubuntu 16.04 裝機無wifi (手動匯入wifi驅動)
電腦新裝的ubuntu16.04 開機沒有wifi顯示,設定中的網路裡也看不到wifi選項,可能是驅動沒有 1.通過設定-軟體和更新-附加驅動 檢視不到可更新的wifi驅動。 2.手動安裝無線網絡卡驅動 現在檢視網絡卡名稱: ~$ lspci -knn | grep Net -A
wifi驅動的理解(4)——usb介面在wifi模組中的角色
轉載請註明出處:http://blog.csdn.net/Righthek 謝謝! 還有1天就到2017年了,回顧整個2016年至此,都沒發表過一篇技
wifi驅動的理解(3)——usb介面在wifi模組中的角色
轉載請註明出處:http://blog.csdn.net/Righthek 謝謝! 上一篇文章已經提到USB介面在wifi模組中的最重要兩個函式是usb_
wifi驅動的理解(2)——usb介面在wifi模組中的角色
轉載請註明出處:http://blog.csdn.net/Righthek 謝謝! 上一篇文章我們已經通過三條線索簡單地描述了wifi驅動的框架,現在我們開始深入到每條線索中。首先我們從USB裝置這條線