从MadWifi到ath5k,ath9k,ath10k最后到Linux kernel

这是一篇关于Atheros开源驱动发展历史的介绍。

MadWifi的官方开发者是Sam Leffler。他一直为FreeBSD维护和提高Atheros的驱动,并维护了MadWifi的HAL二进制文件。在2005年,Sam决定不再维护MadWifi,由其它志愿者进行维护。由于MadWifi的开发正式开放,并努力发展成Linux可用的WLAN驱动的之一,于是MadWifi项目诞生。

在驱动中,与Atheros芯片寄存器交互的部分叫做HAL(Hardware Abstraction Layer)。由于WLAN使用的是开放频谱,而各国对该频段都有相应的频段和功率的限制,但Atheros的芯片可以通过修改寄存器来实现所在国法律实际不允许的设置。所以,MadWifi的作者Sam Leffler经过Atheros同意,使用了一个二进制版本的HAL实现。后来MadWifi的后续维护人员使用了Reyk Floeter为FreeBSD开发的ar5k中的HAL源代码,发展出了开源的OpenHAL用于替代二进制的HAL。

在2007年MadWifi项目宣告终止,最后一个发布是在2008年。Madwifi的工作任务由ath5k和ath9k替代。ath5k和ath9k是在compat-wireless项目下进行维护。compat-wireless是一个为Linux开发的支持WLAN芯片驱动的合集。compat-wireless中的驱动代码会合入Linux kernel。但在使用了一个稳定版本的Linux kernel后,为了支持更新的WLAN芯片,需要更新的WLAN驱动部分,所以一般来说compat-wireless中驱动更常用一些。

继续阅读从MadWifi到ath5k,ath9k,ath10k最后到Linux kernel