rtl8188eus usb wifi 連線ssid的移植
1、 核心配置
硬體上將USB的ID引腳接地
核心將DM365的USB配置成USB HOST工作模式
[*] USB_SUPPORT --->
<*>Inventra Highspeed Dual Role Controller (TI,ADI,...)
*****Platform Glue Layer
<*> Davinci
Driver Mode (USB Host) ---->
配置DM368開啟wifi的配置項
網路協議配置開啟80211相關協議
[*] Networking support --->
-*- Wireless --->
--- Wireless | |
| | <*> cfg80211 - wireless configuration API | |
| | [ ] nl80211 testmode command | |
| | [ ] enable developer warnings | |
| | [ ] cfg80211 regulatory debugging | |
| | [*] enable powersave by default | |
| | [ ] cfg80211 DebugFS entries | |
| | [ ] use statically compiled regulatory rules database | |
| | [*] cfg80211 wireless extensions compatibility | |
| | [*] Wireless extensions sysfs files | |
| | -*- Common routines for IEEE802.11 drivers | |
| | [ ] lib80211 debugging messages | |
| | <*> Generic IEEE 802.11 Networking Stack (mac80211) | |
| | [ ] PID controller based rate control algorithm | |
| | [*] Minstrel | |
| | [*] Minstrel 802.11n support | |
| | Default rate control algorithm (Minstrel) ---> | |
| | [ ] Enable mac80211 mesh networking (pre-802.11s) support | |
| | [ ] Export mac80211 internals in DebugFS | |
| | [ ] Select mac80211 debugging features --->
開啟WIRELESS LAN
Device Drivers --->
[*] Network device support --->
[*] Wireless LAN --->
<*> IEEE 802.11 for Host AP (Prism2/2.5/3 and WEP/TKIP/CCMP)
關閉USB CPPI DMA功能(這裡除錯了很久,wifi連線上AP,ping也可以ping通一段時間後面就報錯,後面嘗試著將這個選項關掉,問題解決,但是有缺陷,cpu在做運算密集型操作的時候可能掉包,usb bulk傳輸有瓶頸)
[*] Disable DMA (always use PIO)
2、8188EUS驅動的編譯
A、MAKEFILE的修改
驅動版本rtl8188EUS_rtl8189ES_linux_v4.1.7_1529.20140106_B
關閉CONFIG_PLATFORM_I386_PC= n
開啟CONFIG_PLATFORM_TI_DM365= y
修改交叉編譯器的路徑和核心目錄路徑
ifeq ($(CONFIG_PLATFORM_TI_DM365), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN-DCONFIG_PLATFORM_TI_DM365
ARCH := arm
CROSS_COMPILE :=/usr/local/ipnc/Source/dvsdk_ipnctools/linux-devkit/bin/arm-arago-linux-gnueabi-
KVER := 2.6.37
KSRC:=/usr/local/yourapp/Source/dvsdk_ipnctools/ipnc_psp_03_21_00_04/kernel
Endif
B、make生成的8188eu.ko拷貝到nfs的檔案系統下面,執行下面的命令
載入ko: insmod 8188eu.ko
開啟wlan0: ifconfig wlan0 up
設定一個同一網段的IP:ifconfig wlan0 192.168.2.103
後臺執行wpa_supplicant: ./wpa_supplicant -Dwext -iwlan0 -c./wpa_supplicant.conf -B &
測試ping閘道器: ping 192.168.2.1 &
3、 wireless tools工具和wpa_supplicant工具的交叉編譯
進入wireless_tools.30.rtl,
Gcc 改為/usr/local/ipnc/Source/dvsdk_ipnctools/linux-devkit/bin/arm-arago-linux-gnueabi-gcc
AR改為/usr/local/ipnc/Source/dvsdk_ipnctools/linux-devkit/bin/arm-arago-linux-gnueabi-ar
Ranlib改為RANLIB =/usr/local/ipnc/Source/dvsdk_ipnctools/linux-devkit/bin/arm-arago-linux-gnueabi-ranlib
然後編譯,將生成的iwconfig、iwevent、iwgetid、iwlist、iwpriv、iwspy拷貝到開發板中
進入wpa_supplicant-0.8
要編譯wpa_supplicant工具前先要編譯OPENSSL
(A)將openssl解壓
Tar zxvf openssl-0.9.8e.tar.gz
(B)將wpa_supplicant下的patch中的openssl-0.9.8e-tls-extensions.patch拷貝到openssl目錄下
Cp wpa_supplicant-0.8/patches/openssl-0.9.8e-tls-extensions.patchopenssl-0.9.8e/
(C)patch –p1 <oepnssl-0.9.8e-tls-extensions.patch
(D)Openssl工具的編譯
1. 動態連結庫
配置安裝路徑 ./config no-asm shared --prefix=/usr/local/openssl
2.
修改Makefile
CC=/usr/local/ipnc/Source/dvsdk_ipnctools/linux-devkit/bin/arm-arago-linux-gnueabi-gcc
AR= /usr/local/ipnc/Source/dvsdk_ipnctools/linux-devkit/bin/arm-arago-linux-gnueabi-gcc-ar$(ARFLAGS) r
RANLIB= /usr/local/ipnc/Source/dvsdk_ipnctools/linux-devkit/bin/arm-arago-linux-gnueabi-gcc-ranlib
make
3.
make install
產生libssl.a及libcrypto.a
Wpa_supplicant工具的編譯
進入wpa_supplicant目錄
#cp defconfig .config
#vim .config
CC= arm-linux-gcc -L/usr/local/ssl/lib/
CFLAGS += -I/usr/local/ssl/include/
LIBS += -L/usr/local/ssl/lib/
#make
拷貝工具以及庫到目標板
wpa_supplicant用法:
wpa_supplicant-D wext -c ./wpa_supplicant.conf -i wlan0 -B
其中wpa_supplicant.config 可參考內容如下:
ctrl_interface=/var/run/wpa_supplicant
ap_scan=1
network={
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMPTKIP
group=CCMP TKIP
ssid="TEST" 連線的ap
psk="123456" 密碼
}
insmod 成功起來後的log
[ 114.210981] RTL871X: +871x_drv - drv_open, bup=0
[ 114.218021] RTL871X: rtl8188e_FirmwareDownload: fw_ver=11 fw_subver=1sig=0x88e1
[ 114.262131] RTL871X: _FWFreeToGo: Checksum report OK!REG_MCUFWDL:0x00030004
[ 114.272009] RTL871X: =====> _8051Reset88E(): 8051 reset success .
[ 114.279348] RTL871X: _FWFreeToGo: Polling FW ready success!!REG_MCUFWDL:0x000300c6
[ 114.625402] ==> rtl8188e_iol_efuse_patch
[ 114.732880]RTL871X: ==> _InitAntenna_Selection....
[ 114.740022] RTL871X: _InitAntenna_Selection,Cur_ant:(1)Antenna_A
[ 114.748694] RTL871X: pDM_Odm TxPowerTrackControl = 1
[ 115.075256] RTL871X: rtl8188eu_hal_init in 860ms
[ 115.086955] RTL871X: MAC Address = 00:95:69:07:a8:a0
[ 115.093032] RTL871X: -871x_drv - drv_open, bup=1
[ 109.449857] RTL871X: rtl8188eu driver version=v4.1.7_1529.20140106_B
[ 109.457328] RTL871X: build time: Feb 18 2014 16:40:00
[ 109.462726] RTL871X:
[ 109.462741] usb_endpoint_descriptor(0):
[ 109.471166] RTL871X: bLength=7
[ 109.475196] RTL871X: bDescriptorType=5
[ 109.478979] RTL871X: bEndpointAddress=81
[ 109.482913] RTL871X: wMaxPacketSize=512
[ 109.488377] RTL871X: bInterval=0
[ 109.491644] RTL871X: RT_usb_endpoint_is_bulk_in = 1
[ 109.497846] RTL871X:
[ 109.497869] usb_endpoint_descriptor(1):
[ 109.503987] RTL871X: bLength=7
[ 109.508659] RTL871X: bDescriptorType=5
[ 109.512439] RTL871X: bEndpointAddress=2
[ 109.517573] RTL871X: wMaxPacketSize=512
[ 109.521441] RTL871X: bInterval=0
[ 109.525962] RTL871X: RT_usb_endpoint_is_bulk_out = 2
[ 109.530965] RTL871X:
[ 109.530981] usb_endpoint_descriptor(2):
[ 109.538699] RTL871X: bLength=7
[ 109.541787] RTL871X: bDescriptorType=5
[ 109.546822] RTL871X: bEndpointAddress=3
[ 109.550692] RTL871X: wMaxPacketSize=512
[ 109.555824] RTL871X: bInterval=0
[ 109.559089] RTL871X: RT_usb_endpoint_is_bulk_out = 3
[ 109.564072] RTL871X: nr_endpoint=3, in_num=1, out_num=2
[ 109.564097]
[ 109.572734] RTL871X: USB_SPEED_HIGH
[ 109.577266] RTL871X: CHIP TYPE: RTL8188E
[ 109.581240] RTL871X: rtw_handle_dualmac(): pbuddy_padapter == NULL, Setpbuddy_padapter
[ 109.590624] RTL871X: register rtw_netdev_ops to netdev_ops
[ 109.597469] RTL871X: Chip Version Info: CHIP_8188E_Normal_Chip_TSMC_A_CUT_1T1R_RomVer(0)
[ 109.606497] RTL871X: RF_Type is 3!!
[ 109.610044] RTL871X: _ConfigNormalChipOutEP_8188E OutEpQueueSel(0x05),OutEpNumber(2)
[ 109.619572] RTL871X: EEPROM type is E-FUSE
[ 109.623710] RTL871X: ====> _ReadAdapterInfo8188EU
[ 109.629974] RTL871X: Boot from EFUSE, Autoload OK !
[ 109.640901] bFWReady == _FALSE call reset 8051...
[ 109.647912] RTL871X: =====> _8051Reset88E(): 8051 reset success .
[ 109.667933] RTL871X: efuse_read_phymap_from_txpktbuf bcnhead:0
[ 109.676398] RTL871X: efuse_read_phymap_from_txpktbuf len:104,lenbak:104, aaa:104, aaabak:104
[ 109.697570] RTL871X: efuse_read_phymap_from_txpktbuf read count:102
[ 109.705659] RTL871X: EEPROM ID=0x8129
[ 109.709370] RTL871X: VID = 0x0BDA, PID = 0x8179
[ 109.713914] RTL871X: Customer ID: 0x00, SubCustomer ID: 0xCD
[ 109.721197] RTL871X: T
[ 109.723616] RTL871X:Hal_ReadPowerSavingMode88E...bHWPwrPindetect(0)-bHWPowerdown(0),bSupportRemoteWakeup(1)
[ 109.735245] RTL871X: ### PS params=> power_mgnt(1),usbss_enable(0) ###
[ 109.741910] RTL871X: ======= Path 0, Channel 1 =======
[ 109.748444] RTL871X: Index24G_CCK_Base[0][1] = 0x28
[ 109.753362] RTL871X: Index24G_BW40_Base[0][1] = 0x2e
[ 109.759639] RTL871X: ======= Path 0, Channel 2 =======
[ 109.765728] RTL871X: Index24G_CCK_Base[0][2] = 0x28
[ 109.770644] RTL871X: Index24G_BW40_Base[0][2] = 0x2e
[ 109.776919] RTL871X: ======= Path 0, Channel 3 =======
[ 109.782096] RTL871X: Index24G_CCK_Base[0][3] = 0x28
[ 109.788291] RTL871X: Index24G_BW40_Base[0][3] = 0x2e
[ 109.793291] RTL871X: ======= Path 0, Channel 4 =======
[ 109.799748] RTL871X: Index24G_CCK_Base[0][4] = 0x28
[ 109.805570] RTL871X: Index24G_BW40_Base[0][4] = 0x2e
[ 109.810574] RTL871X: ======= Path 0, Channel 5 =======
[ 109.817027] RTL871X: Index24G_CCK_Base[0][5] = 0x28
[ 109.821941] RTL871X: Index24G_BW40_Base[0][5] = 0x2e
[ 109.828214] RTL871X: ======= Path 0, Channel 6 =======
[ 109.833393] RTL871X: Index24G_CCK_Base[0][6] = 0x28
[ 109.839592] RTL871X: Index24G_BW40_Base[0][6] = 0x2e
[ 109.845501] RTL871X: ======= Path 0, Channel 7 =======
[ 109.850680] RTL871X: Index24G_CCK_Base[0][7] = 0x28
[ 109.856879] RTL871X: Index24G_BW40_Base[0][7] = 0x2e
[ 109.861882] RTL871X: ======= Path 0, Channel 8 =======
[ 109.868333] RTL871X: Index24G_CCK_Base[0][8] = 0x28
[ 109.873249] RTL871X: Index24G_BW40_Base[0][8] = 0x2e
[ 109.879522] RTL871X: ======= Path 0, Channel 9 =======
[ 109.885606] RTL871X: Index24G_CCK_Base[0][9] = 0x28
[ 109.890522] RTL871X: Index24G_BW40_Base[0][9] = 0x2e
[ 109.896798] RTL871X: ======= Path 0, Channel 10 =======
[ 109.902064] RTL871X: Index24G_CCK_Base[0][10] = 0x28
[ 109.908351] RTL871X: Index24G_BW40_Base[0][10] = 0x2e
[ 109.913442] RTL871X: ======= Path 0, Channel 11 =======
[ 109.919985] RTL871X: Index24G_CCK_Base[0][11] = 0x28
[ 109.925896] RTL871X: Index24G_BW40_Base[0][11] = 0x2e
[ 109.930987] RTL871X: ======= Path 0, Channel 12 =======
[ 109.937523] RTL871X: Index24G_CCK_Base[0][12] = 0x28
[ 109.942525] RTL871X: Index24G_BW40_Base[0][12] = 0x2e
[ 109.948892] RTL871X: ======= Path 0, Channel 13 =======
[ 109.954155] RTL871X: Index24G_CCK_Base[0][13] = 0x28
[ 109.960434] RTL871X: Index24G_BW40_Base[0][13] = 0x2e
[ 109.966429] RTL871X: ======= Path 0, Channel 14 =======
[ 109.971696] RTL871X: Index24G_CCK_Base[0][14] = 0x28
[ 109.977976] RTL871X: Index24G_BW40_Base[0][14] = 0x2e
[ 109.983061] RTL871X: ======= TxCount 0 =======
[ 109.988819] RTL871X: CCK_24G_Diff[0][0]= 0
[ 109.992956] RTL871X: OFDM_24G_Diff[0][0]= 0
[ 109.998786] RTL871X: BW20_24G_Diff[0][0]= -1
[ 110.003092] RTL871X: BW40_24G_Diff[0][0]= 0
[ 110.008576] RTL871X: EEPROMRegulatory = 0x2
[ 110.012798] RTL871X: mlmepriv.ChannelPlan = 0x20
[ 110.018716] RTL871X: CrystalCap: 0x18
[ 110.022410] RTL871X: EEPROM Customer ID: 0x 0
[ 110.028070] RTL871X: EEPROM : AntDivCfg = 1, TRxAntDivType = 1
[ 110.033938] RTL871X: Board Type: 0x 0
[ 110.038907] RTL871X: ThermalMeter = 0x1a
[ 110.042876] RTL871X: <==== _ReadAdapterInfo8188EU in 420 ms
[ 110.052471] RTL871X: rtw_macaddr_cfg MAC Address = 00:95:69:07:a8:a0
[ 110.059879] RTL871X: bDriverStopped:1, bSurpriseRemoved:0, bup:0,hw_init_completed:0
[ 110.072845] RTL871X: _rtw_drv_register_netdev, MAC Address (if1) = 00:95:69:07:a8:a0
[ 110.082585] usbcore: registered new interface driver rtl8188eu
[email protected]:/# ifconfig wlan0 up
[ 114.210981] RTL871X: +871x_drv - drv_open, bup=0
[ 114.218021] RTL871X: rtl8188e_FirmwareDownload: fw_ver=11 fw_subver=1sig=0x88e1
[ 114.262131] RTL871X: _FWFreeToGo: Checksum report OK!REG_MCUFWDL:0x00030004
[ 114.272009] RTL871X: =====> _8051Reset88E(): 8051 reset success .
[ 114.279348] RTL871X: _FWFreeToGo: Polling FW ready success!!REG_MCUFWDL:0x000300c6
[ 114.625402] ==> rtl8188e_iol_efuse_patch
[ 114.732880] RTL871X: ==> _InitAntenna_Selection ....
[ 114.740022] RTL871X: _InitAntenna_Selection,Cur_ant:(1)Antenna_A
[ 114.748694] RTL871X: pDM_Odm TxPowerTrackControl = 1
[ 115.075256] RTL871X: rtl8188eu_hal_init in 860ms
[ 115.086955] RTL871X: MAC Address = 00:95:69:07:a8:a0
[ 115.093032] RTL871X: -871x_drv - drv_open, bup=1
相關推薦
rtl8188eus usb wifi 連線ssid的移植
1、 核心配置 硬體上將USB的ID引腳接地 核心將DM365的USB配置成USB HOST工作模式 [*] USB_SUPPORT ---> <*>Inventra Highspeed Dual Role Controller (TI,ADI
在Windows10中安卓adb通過USB,WIFI連線電腦一些error的解決思路
could not read ok from ADB Server * failed to start daemon error: cannot connect to daemon adb server version (36) doesn’t match this client (40
USB wifi模組mt7601U移植至imx 6q android 6.0平臺
最近公司使用imx6q開發新產品,我們沒有經驗,選了最新的android 6.0平臺來做開發。而硬體給我們提供的wifi模組竟然是使用USB外接的wifi模組,沒錯,就是淘寶上買的那種小型無線網絡卡,不是嵌入式wifi模組(不想說硬體兄弟坑我們了,沒辦法,小
Hi3518EV200移植MT7601 USB-WIFI(STA)
1.修改makefile 1)增加platform PLATFORM = HI3518EV200 2)新增 #swann add ifeq ($(PLATFORM),HI3518EV200) LINUX_SRC = /home/swann/hi3518e/Hi3518E_SDK_V1.0.3.0
usb wifi移植終於搞定了
1.選的wifi晶片是rtl8188cus 2.選的開發包是0001-RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911.zip 3.編譯8192cu.ko 4.編譯iwconfig工具 5.編譯wpa工具 6.移植到板上 1>
第十七章:STA模式USB WIFI驅動移植
1、下載原始碼 首先將原始碼複製到ubuntu中實驗目錄,並解壓開,這裡我們用到的是sta模式,所以解壓MT7601U_LinuxAP_3.0.0.1_20130802.tar.bz2這個檔案。 我們這裡解壓之後放在了以下目錄中. 2、修改
嵌入式linux usb wifi移植[s3c6410平臺 轉載]
http://blog.chinaunix.net/uid-8048969-id-3251135.html 重新編譯關於WIFI方面的modules,然後編譯wifi模組的驅動。把模組設定成開機載入模式。
通過usb/wifi telnetd連線android真機或者模擬器
繼上一篇文章寫了關於如何將busybox放置到android4.1.2中,這一篇文章將討論如何利用usb或者wifi,執行telnetd來訪問真機或者模擬器 首先要有root許可權可以執行telnetd(至於為什麼用root,暫時還沒分析清楚,還有待深入),由於我司的平板
嵌入式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_
Linux 開發板4G轉WiFi熱點 手機連線熱點上網(三 WiFi模組的移植及AP的建立)
這裡對WiFi模組的驅動就不做詳細介紹,本篇文章可能會涉及兩款WiFi模組,一個是USB介面的WiFi模組,一個是SDIO介面的wifi模組,即AP6212,平臺可能涉及愛特梅爾和三星的4418兩個平臺。 本篇的記錄主要內容是:建立WiFi模組的AP熱點,並且客戶端裝置通過
hi3518e移植USB-WiFi RT3070 STA驅動
/**************************************************************************************************/
OK6410+RTL8192 USB WiFi移植
手上有一塊OK6410的板子,有一個水星的usb WiFi mw300,查了一下是RTL8192的驅動,OK6410接線到路由器掛載NFS有點麻煩,想把這個驅動移植的OK6410上,通過WiFi實現NFS掛載。 1、驅動移植 下載完成後再linux主機上解壓
android 平臺USB wifi驅動移植及使用
來自: http://blog.csdn.net/haomcu/article/details/7267090 一. Android平臺Wifi的基本程式碼路徑 1. Wpa_supplicant原始碼部分 external/wpa_sup
通過wifi連線Android裝置進行除錯
方法: 先用usb資料線連線裝置,再在terminal下輸入以下命令 D:\LianXi\aaa>adb tcpip 9999 restarting in TCP mode port: 9999 D:\LianXi\aaa>adb connect 192.168.11.120:9999
imx6 linux wifi ap模式配置(usb-wifi模組rt3070)
轉載自:https://blog.csdn.net/weixin_42381443/article/details/80566047 不是所有的usb-wif模組在linux下面都可以支援ap模式。 在linux下的ap模式是通過工具hostapd工具進行配置執行的,該工具一般使用nl8
Android獲取WIFI 的ssid 方法適配Android9.0
Android獲取WIFI 的ssid 方法適配Android9.0 本文首次發表於: 蝸牛魔方-Android獲取WIFI SSID方法,適配9.0 demo 地址:JavaExtensionUtilsForAndroid 廢話不多說了直接上程式碼 首先在Androidmani
樹莓派第一次配置+裝系統+遠端連線+WiFi連線
硬體準備: 1、新產一片樹莓派硬體板,官方SD卡 2、電源、滑鼠、鍵盤、顯示屏(HDMI介面)、
Android Studio WiFi 連線手機
使用一個外掛即可, 外掛下載地址 https://plugins.jetbrains.com/plugin/7983 或者https://github.com/pedrovgs/AndroidWiFiADB 總體步驟就是,下載外掛,匯入外掛,重啟studio,然後用資料線連線手機和電
獲取wifi 的ssid出現unknown ssid
前一篇文章介紹了 wifi的ssid獲取方式,但是在8.0版本手機上 執行 發現獲取到的名稱 展示為 <unknown ssid>,原來是版本原因, 8.0以後SSID這樣拿 ConnectivityManager cm =
Linux系統下中 在命令列中實現Wifi 連線的方法
Linux系統下中 在命令列中實現Wifi 連線的方法 from:https://www.cnblogs.com/chaobest/articles/6693161.html 無論何時要安裝一款新的 Linux 發行系統,一般的建議都是讓您通過有線連線來接到網際網路的。 這主要的原因有兩