国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

書白的個(gè)人空間 http://www.qingdxww.cn/space-uid-134862.html [收藏] [復(fù)制] [RSS]

博客

迅為4412開發(fā)板(全能版)V_4.0 ubuntu 在Android4.4.4的內(nèi)核下移植wifi

已有 1639 次閱讀2017-4-13 09:30 | 嵌入式開發(fā), 4412開發(fā)板, 移植wifi, Android

為4412全能版V_4.0 ubuntu 在Android4.4.4的內(nèi)核下移植wifi
背景:由于廠家迅為的全能版的V4.0底板和V3.5底板的wifi部分有改動(dòng),所以需要重新移植wifi      
軟件基礎(chǔ) :基于迅為提供的全能版V_4.0的Android4.4.4源碼編譯出來的ubuntu內(nèi)核之上移植ubuntu文件系統(tǒng)
硬件基礎(chǔ):全能版V4.0底板,4412的scp大內(nèi)存,或者pop大內(nèi)存都行
一. 預(yù)備知識(shí):
        1.WPA Supplicant,這里我使用的是wpa_supplicant-2.5.tar.gz        
簡(jiǎn)介:WPA Supplicant is a Wi-Fi Protected Access (WPA) client and IEEE 802.1X supplicant. 
It implements WPA key negotiation with a WPA Authenticator and Extensible Authentication 
Protocol (EAP) authentication with an Authentication Server. In addition, it controls the 
roaming and IEEE 802.11 authentication/association of the wireless LAN driver. This is 
useful for connecting to a password protected wireless access point.

大概意思是: WPA Supplicant 是一個(gè)受保護(hù)的wifi接入點(diǎn)的客戶端,這個(gè)客戶端兼有鏈接和認(rèn)證802.1x協(xié)議的功能。
它具體實(shí)現(xiàn)了WPA 密碼在WPA 認(rèn)證器上的認(rèn)證功能,并且控制著漫游(訪問外網(wǎng))和無線局域網(wǎng)驅(qū)動(dòng)的IEEE 802.11的
認(rèn)證和鏈接。 在連接有密碼保護(hù)的無線接入點(diǎn)時(shí)是很有用的。

        2.libnl,這里我使用的是libnl-1.1.4.tar.gz
簡(jiǎn)介:The libnl-suite is a collection of libraries providing APIs to netlink protocol based Linux kernel interfaces.
大概意思是:這個(gè)libnl套件是是一些庫的集合,這些庫為基于Linux內(nèi)核接口的網(wǎng)絡(luò)連接協(xié)議提供了一些API。

因?yàn)閃PA Supplicant是基于linux內(nèi)核的,并且需要連接網(wǎng)絡(luò),所以需要libnl來提供API。

        3.openssl 這里我使用是openssl-0.9.8za.tar.gz
簡(jiǎn)介:The OpenSSL package contains management tools and libraries relating to cryptography.
These are useful for providing cryptographic functions to other packages, such as OpenSSH, 
email applications and web browsers (for accessing HTTPS sites).
大概的意思是:OpenSSL包含了一些管理工具和一些涉及到密碼學(xué)的庫。他對(duì)需要加密的傳輸包是有用的,比如OpenSSH
電子郵件或者是網(wǎng)頁瀏覽。

很明顯openssl在用WPA Supplicant來上網(wǎng)是時(shí)是起到加密作用的。

二. 一些必要的資料
1. 6620_launcher    2. firmware文件夾下的東西  3. mt6620文件夾下的東西 4.genetlink.h

前三個(gè)都是MT6620這個(gè)wifi芯片廠家提供的源碼驅(qū)動(dòng)編譯出來的驅(qū)動(dòng)和固件,以及加載固件所有的工具。這些東西都跟Android4.4.4共用,
可以在編譯好的Android源碼中的out目錄下找到。
另外第四個(gè)是在調(diào)試過程中發(fā)現(xiàn)libnl的一個(gè)bug,為了解決這個(gè)問題需要用這個(gè)文件和libnl中的替換,下面有介紹。

三. 具體操作步驟:
以下操作是在開發(fā)板上進(jìn)行,需要提前把以上提到的資料復(fù)制到TF卡上,然后進(jìn)行下面的步驟。
另外需要首先安裝vim ,開機(jī)后連接網(wǎng)線輸入apt-get install vim  

①. 將廠家提供的東西替換之前版本ubuntu系統(tǒng)上同樣的東西
1. 備份6620_launcher,將新的6620_launcher復(fù)制過去,并且設(shè)置權(quán)限為777
cp /system/bin/6620_launcher /system/bin/6620_launcher_back
cp /media/disk/wifi/6620_launcher /system/bin/6620_launcher
chmod 777 /system/bin/6620_launcher

2. 備份modules文件夾,將mt6620復(fù)制過去,命名為modules,并且設(shè)置權(quán)限777
cp -r /system/lib/modules /system/lib/modules_back
rm -r /system/lib/modules
cp -r /media/disk/wifi/mt6620 /system/lib/modules
chmod 777 /system/lib/modules/*

3. 備份firmware,將新的firmware復(fù)制過去,并且設(shè)置權(quán)限為777
cp -r /system/etc/firmware /system/etc/firmware_back
rm -r /system/etc/firmware
cp -r /media/disk/wifi/firmware /system/etc/firmware
chmod -R 777 /system/etc/firmware/*

cp -r /etc/firmware /etc/firmware_back
rm -r /etc/firmware
cp -r /media/disk/wifi/firmware /etc/firmware
chmod -R 777 /etc/firmware/*

②.修改wifi名字和密碼文件
將/etc/wpa_supplicant.conf文件中除了第一行全部刪掉
最后結(jié)果應(yīng)該是只剩下這句話:
ctrl_interface=/var/run/wpa_supplicant

③.修改腳本文件/etc/init.d/itop-set
將腳本中 “support MT6620 WIFI Module” 部分修改成這樣
  mknod /dev/stpwmt c 190 0
  mknod /dev/stpgps c 191 0
  mknod /dev/fm c 193 0
  mknod /dev/wmtWifi c 194 0

  insmod /system/lib/modules/mtk_hif_sdio.ko
  insmod /system/lib/modules/mtk_stp_wmt.ko
  insmod /system/lib/modules/mtk_stp_uart.ko
  insmod /system/lib/modules/mtk_stp_gps.ko
#  #insmod /system/lib/modules/hci_stp.ko
#  insmod /system/lib/modules/mt6620_fm_drv.ko
#  insmod /system/lib/modules/mtk_fm_priv.ko
  insmod /system/lib/modules/mtk_wmt_wifi.ko WIFI_major=194
  insmod /system/lib/modules/wlan_mt6620.ko

  chmod 0666 /dev/stpwmt
  chmod 0666 /dev/stpgps
  chmod 0666 /dev/fm
  chmod 0666 /dev/wmtWifi
  chmod 0660 /dev/ttySAC0
  chmod 0666 /dev/gps

   /system/bin/6620_launcher -m 1 -b 115200 -n /system/etc/firmware/mt6620_patch_hdr.bin -d /dev/ttySAC0 &

  sleep 5

  echo 1 > /dev/wmtWifi

#  wpa_supplicant_topeet -d -Dwext -iwlan0 -c /etc/wpa_supplicant.conf &
   /usr/bin/wpa_supplicant -Dnl80211 -iwlan0 -c /etc/wpa_supplicant.conf &

  sleep 3

  dhclient wlan0 & 


特別注意:insmod /system/lib/modules/wlan_mt6620.ko  和 /usr/bin/wpa_supplicant -Dnl80211 -iwlan0 -c /etc/wpa_supplicant.conf &
還有/system/bin/6620_launcher -m 1 -b 115200 -n /system/etc/firmware/mt6620_patch_hdr.bin -d /dev/ttySAC0 &
一定要一致
④.移植預(yù)備知識(shí)中提到的三個(gè)資料
1. 在根目錄下建立wpa文件夾,并且將libnl-1.1.4.tar.gz、openssl-0.9.8za.tar.gz、wpa_supplicant-2.5.tar.gz
拷貝到里面解壓。

2.把wpa_supplicant-2.5里面的patches文件夾下的openssl-0.9.8za-tls-extensions.patch文件拷貝到openssl-0.9.8za目錄下,運(yùn)行:
patch -p1 < openssl-0.9.8za-tls-extensions.patch
若果提示錯(cuò)誤patch: command not found,那么執(zhí)行apt-get install patch,然后在運(yùn)行。

3.進(jìn)入openssl-0.9.8za目錄新建install文件夾,用于裝opessl,修改Makefile,修改如下:
CC=gcc
RANLIB=ranlib
INSTALLTOP=/wpa/openssl-0.9.8za/install
OPENSSLDIR=/wpa/openssl-0.9.8za/install
然后編譯 make
安裝 make install
完成后會(huì)在/wpa/openssl-0.9.8za/install下生成一些文件
然后執(zhí)行:cp -r /wpa/openssl-0.9.8za/install/lib/* /usr/lib

4.進(jìn)入libnl-1.1.4
配置安裝目錄:./configure --prefix=/usr
然后:make
編譯完之后需要執(zhí)行以下步驟,把提供的genetlink.h替換libnl-1.1.4中的genetlink.h
cp -r /wpa/libnl-1.1.4/lib/* /usr/lib/
rm /wpa/libnl-1.1.4/include/linux/genetlink.h
cp /media/disk/wifi/genetlink.h /wpa/libnl-1.1.4/include/linux/
cp -r /wpa/libnl-1.1.4/include/* /usr/include/

5.進(jìn)入/wpa/wpa_supplicant-2.5/wpa_supplicant下,編譯wpa_supplicant
首先建立配置文件:
cp defconfig .config
然后修改.config,增加以下內(nèi)容:
CC=gcc -L/wpa/openssl-0.9.8za/install/lib 
CFLAGS+=-I/wpa/openssl-0.9.8za/install/include
LIBS+=-L/wpa/openssl-0.9.8za/install/lib
然后:make
把編譯出來的wpa_supplicant和wpa_passphrase復(fù)制到/usr/bin中。
這里注意/usr/bin已經(jīng)有wpa_passphrase,可以先將這個(gè)文件刪除,然后再復(fù)制過來

另外為了排除干擾可以把之前wifi的東西刪除:
rm /sbin/wpa_supplicant
rm -r /etc/wpa_supplicant
rm /system/bin/wpa_supplicant

四.連接wifi
經(jīng)過以上步驟wifi的移植就結(jié)束了,下面是怎么連接wifi。

1. 開機(jī)之后輸入wifi名字和密碼,類似于這樣:

wpa_passphrase XXX "YYY " >> /etc/wpa_supplicant.conf

比如我們的wifi名字是Xm 密碼是aaaaaaaa
那么就這樣輸入:wpa_passphrase Xm "aaaaaaaa" >> /etc/wpa_supplicant.conf 

2. 再次開機(jī)就可以自動(dòng)連接上了,測(cè)試是否可以聯(lián)網(wǎng)可以ping一下百度

ping www.baidu.com
至此,在公司同事的幫助下,Ubuntu移植WiFi的工作就完成了。在檢驗(yàn)wifi能夠成功連接的情況下,可以把那些備份文件刪掉,這樣可以減小系統(tǒng)的大小。

另外強(qiáng)調(diào)一點(diǎn)就是,上面的所有操作都是在迅為的V4.0全能板上燒寫迅為的Ubuntu系統(tǒng)做的。

路過

雞蛋

鮮花

握手

雷人

評(píng)論 (0 個(gè)評(píng)論)

facelist

您需要登錄后才可以評(píng)論 登錄 | 立即注冊(cè)

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
返回頂部
主站蜘蛛池模板: 久久99精品久久久66 | 四虎国产精品影库永久免费 | 青青青在线免费 | se97se成人亚洲网站 | 国产成人高清在线观看播放 | 日韩一区二区久久久久久 | 好好的日视频www | 成人a级特黄毛片 | 一级一片免费看 | 久久国产精品一国产精品 | 九九九九在线精品免费视频 | 奇米一区二区三区四区久久 | 久久黄视频 | 99视频精品国在线视频艾草 | 在线啪视频 | 日韩毛片在线 | 伊人小婷婷色香综合缴缴情 | 羞羞网站在线看 | 亚洲h视频在线观看 | 亚洲日本视频在线 | 欧美日韩免费在线视频 | 青青艹在线视频 | 一二三区在线视频 | 看一级特黄a大片日本片 | 色综合综合在线 | 日日操日日射 | 日本-区二区三区免费精品 日本强日本不卡一 | 天堂色 | 国产成人毛片毛片久久网 | 极品色综合 | 精品国产高清久久久久久小说 | 最新亚洲| 丝瓜草莓向日葵芭比小猪 | 中文字幕欧美日韩一 | 国产高清自拍一区 | 国精品一区二区三区 | 日韩精品中文字幕视频一区 | 亚洲欧美视频在线播放 | 免费国产成人高清在线观看麻豆 | 国产成人午夜视频 | 精品视频一区二区三区在线播放 |