我是靠谱客的博主 冷酷吐司,最近开发中收集的这篇文章主要介绍Marvell 8686 SDIO WIFI 内核配置,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

由于纯净的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 内核配置所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部