概述
由于纯净的Linux内核本来就支持这个型号的网卡,因此只需要打开相关内核配置即可:
①打开内核对802.11的支持:
-> Networking support
-> Wireless
-> 【*】cfg80211 - wireless configuration API
-> 【*】Generic IEEE 802.11 Networking Stack (mac80211)
②打开AP功能的支持:
-> Device Drivers
-> Network device support (NETDEVICES [=y])
-> Wireless LAN (WLAN [=y])
【*】IEEE 802.11 for Host AP (Prism2/2.5/3 and WEP/TKIP/CCMP)
③打开内核对SDIO/MMC的支持:
-> Device Drivers
->【*】 MMC/SD/SDIO card support --->
④打开Marvell 8686 SDIO驱动:
-> Device Drivers
-> Network device support
-> Wireless LAN
-> Marvell 8xxx Libertas WLAN driver support
->【*】 Marvell Libertas 8385/8686/8688 SDIO 802.11b/g cards
⑤打开SDIO Host Interface:
-> Device Drivers
-> MMC/SD/SDIO card support
【*】Secure Digital Host Controller Interface support
【*】SDHCI support on Samsung S3C SoC
对于WIFI网卡(类似于部分USB摄像头,例如Apple的个别型号),一般驱动初始化时需要在根文件系统下提供相应的固件,这个时候就需要到http://wireless.kernel.org或者http://linuxwireless.sipsolutions.net/en/users/上面去搜索固件,并且将固件放到跟文件系统下面,对于.fw文件需要放在/lib/firmware下,路径有特殊要求的固件,需要根据源码中的描述进行更改。
对于Marvell 8686这个SDIO借口的网卡,需要有两个固件:
sd8686_helper.bin和sd8686.bin(可以在http://dev.laptop.org/pub/firmware/libertas/获得),将这两个文件直接放在/lib/firmware目录下面即可。
在试验中,由于我的根文件系统是通过有线网卡DM9000 挂载nfs的,遇到了一个非常奇怪的问题:确认/lib/firmware目录下存在两个固件,但是每次系统上电自动初始化网卡的时候,总是提示找不到固件:
多次调试后,终于发现是由于在挂载nfs前,系统已经开始初始化无线网卡了,这样当然找不到文件了,解决方法有两个:
①继续使用nfs,将sdio网卡的驱动编译成模块(模块在内核中的相关项更改之后,最好还是重新对根目录下的文件进行覆盖),手动insmod或者通过rcS脚本加载网卡;
②将文件系统放在mtd设备上面。
最后
以上就是冷酷吐司为你收集整理的Marvell 8686 SDIO WIFI 内核配置的全部内容,希望文章能够帮你解决Marvell 8686 SDIO WIFI 内核配置所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复