超碰激情 I 成人福利网站 I 淫国产 I 曰批视频免费30分钟成人 I 刘亦菲裸体视频一区二区三区 I 午夜久 I 尤物综合 I 亚洲一区av在线观看 I 欧美亚洲国产精品久久高清 I 欧美老熟妇乱子伦视频 I 无码中出人妻中文字幕av I 久久美女福利视频 I 精品无人区乱码1区2区3区在线 I 性饥渴的农村熟妇 I 色综合综合色 I 少妇人妻88久久中文字幕 I 久久夜色精品国产噜噜av I 老熟妇仑乱视频一区二区 I 男女做爰猛烈叫床视频动态图 I 日本大片一区二区 I 人成午夜免费视频在线观看 I 激情婷婷av I 男女下面一进一出免费视频网站 I 久久影视一区 I 午夜污网站 I 先锋人妻无码av电影 I 久久久久久久岛国免费网站 I 又粗又大又黄又硬又爽免费看 I 人妻无码免费一区二区三区 I www.色成人100 I 欧美高清网站 I 精品国产第一页 I 国产suv一区二区三区88区 I 橹图极品美女无圣光 I 午夜宅男欧美

產(chǎn)品分類

當(dāng)前位置: 首頁(yè) > 工業(yè)電子產(chǎn)品 > 其他電子產(chǎn)品 > 開(kāi)發(fā)板,套件,編程器 > 開(kāi)發(fā)板

類型分類:
科普知識(shí)
數(shù)據(jù)分類:
開(kāi)發(fā)板

為Freescale i.MX6移植WiFi驅(qū)動(dòng)程序

發(fā)布日期:2022-10-14 點(diǎn)擊率:64

Freescale i.MX6 + Qualcomm Atheros AR9582并不罕見(jiàn),但AR9582即WiFi部分采用on-board設(shè)計(jì),就是是前所未有的,獨(dú)一無(wú)二的設(shè)計(jì)。需要指出的是,AR9582與i.MX6采用PCI-e接口進(jìn)行通信,其性能遙遙領(lǐng)先于SDIO接口WiFi模塊。

首先面臨的問(wèn)題是對(duì)WiFi進(jìn)行校準(zhǔn)與測(cè)試,按照本站早前發(fā)表的《為Freescale i.MX6處理器移植ART》文中提到的方法,對(duì)ART腳本進(jìn)行小幅改動(dòng)之后,板載AR9582進(jìn)行射頻校準(zhǔn)與測(cè)試順利完成,校準(zhǔn)信息也正確寫入。

接下來(lái)面臨的問(wèn)題是WiFi驅(qū)動(dòng)程序問(wèn)題,這也是本文的重點(diǎn),以下是記錄的調(diào)試過(guò)程。

1. 對(duì)于校準(zhǔn)完成的板子,依次加載ath9k_hw.ko,ath9k_common.ko,ath9k.ko,使用ifconfig -a命令,卻看不到wlan0網(wǎng)卡。

2. 由于上一版采用AR9382插卡的方式,可以正常加載驅(qū)動(dòng)程序,所以可以排除PCI-e總線的驅(qū)動(dòng)問(wèn)題;這一版的板載AR9582設(shè)計(jì)取自量產(chǎn)方案,可以保證設(shè)計(jì)準(zhǔn)確性。

3. 看不到wlan0網(wǎng)卡的情況通常是由于WiFi未校準(zhǔn)引起的,使用cat /proc/bus/pci/devices命令,可以看到AR9582的devid為0033,如果未校準(zhǔn)devid應(yīng)為abcd。

4. 經(jīng)過(guò)漫長(zhǎng)的代碼閱讀及分析,發(fā)現(xiàn)LTIB軟件包中自帶的ath9k驅(qū)動(dòng)程序目錄下的hw.h中不存在0033這樣的devid,而AR9382的devid 0030則存在其中,如下圖。

DEVID-LTIB

5. 那么問(wèn)題應(yīng)該就出在這里,LTIB軟件包中自帶的ath9k驅(qū)動(dòng)程序版本過(guò)低,無(wú)法識(shí)別較新的WiFi芯片。

6. Google一下,發(fā)現(xiàn)compat-wireless是普遍使用的WiFi驅(qū)動(dòng)程序。compat-wireless是一個(gè)Linux的無(wú)線驅(qū)動(dòng)兼容性解決方案,提供Linux內(nèi)核2.6.25及以上版本的最新無(wú)線驅(qū)動(dòng)支持的改進(jìn)。它可以在Linux 802.11系統(tǒng)上進(jìn)行編繹和安裝而不必重新編繹整個(gè)內(nèi)核。而對(duì)于一些用戶來(lái)說(shuō)可能需要獲得最新的compat-wireless驅(qū)動(dòng)包以解決網(wǎng)卡的驅(qū)動(dòng)問(wèn)題。

7. 下載compat-drivers-3.7.1-1.tar.gz,解壓后放置于ltib/rpm/BUILD目錄下。可以看到AR9580系列芯片對(duì)應(yīng)的devid 0033出現(xiàn)在其中,如下圖。

DEVID-New

8. 根據(jù)實(shí)際情況變更c(diǎn)onfig.mk文件。

9. 根據(jù)編譯服務(wù)器的實(shí)際情況確定toolchain及Kernel的路徑編譯命令為:make ARCH=arm CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-none-linux-gnueabi- KLIB=/home/alex/ltib/rpm/BUILD/linux-3.0.35 KLIB_BUILD=/home/alex/ltib/rpm/BUILD/linux-3.0.35 CONFIG_NET_SCHED=1

10. 編譯完成后可得下列的內(nèi)核模塊:

./compat/compat.ko

./drivers/net/wireless/ath/ath.ko

./drivers/net/wireless/ath/ath9k/ath9k.ko

./drivers/net/wireless/ath/ath9k/ath9k_common.ko

./drivers/net/wireless/ath/ath9k/ath9k_hw.ko

./net/mac80211/mac80211.ko

./net/wireless/cfg80211.ko

11. 將以上內(nèi)核模塊打包至文件系統(tǒng),并按照順序依次加載模塊,板載AR9582終于可以正常工作。

下一篇: PLC、DCS、FCS三大控

上一篇: TI CC3200 WiFi芯片射

推薦產(chǎn)品

更多