Madwifi
everysmile
这个作者很懒,什么都没留下…
展开
-
Hal closed source
一开始一直以为Madwifi是完全的开源驱动,但是最近经过认真学习过后,才发现原来在这驱动里面有很重要的一个部分是非开源的,也就是在HAL文件里面对于HAL(hardware abstract layer)的操作与处理是非开源的。查证了一下,原来理Aheros公司为了保证公司的专利,所以与madwifi第一作者达成了一个约定,以目标文件的形式提供HAL层的操作,也就是在文件夹下面的一些压缩文件包,原创 2013-07-16 23:29:51 · 530 阅读 · 0 评论 -
网络数据的流程
来此记录一下网络数据的流程 一,接收数据处理。mydev_interrupt 底层收集数据后,向驱动层请求中断处理子程序进行处理。 netif_rx 将驱动层的sk_buff中的内容上次给协议层,从而sk_buff将不在驱动程序控制及操作的范围内。二,发送数据处理。output 将协议层(也即网络层)产生的数原创 2013-07-16 23:30:02 · 613 阅读 · 0 评论 -
Pci 函数
static struct pci_driver ath_pci_drv_id = { .name = "ath_pci", .id_table = ath_pci_id_table, .probe = ath_pci_probe, .remove = ath_pci_remove,#ifdef CONFIG_PM .suspend = ath_pci_suspend, .resume =原创 2013-07-16 23:30:04 · 1138 阅读 · 0 评论 -
madwifi结构初探
在整个madwifi模块里面各文件夹以及里面的文件的关系整理如下:Madwifi一,ath 文件夹里面包含的是对于无线网络设备操作的一些结构体以及函数,其中有几个重要的文件介绍如下:头文件:If_athioctl.h:对于网卡操作时所要用到的结构体定义.If_athvar.h:整个模块里面的各种重要的关于网卡参数的结构体以及很多操作的函数定义.If_athrate.h:原创 2013-07-16 23:29:26 · 1137 阅读 · 0 评论 -
net80211模块
发送模块struct sk_buff *ieee80211_encap(struct ieee80211com *ic, struct sk_buff *skb, struct ieee80211_node *ni)函数负责组装帧,在If_ath.c之中进行调用 skb = ieee80211_encap(ic, skb, ni);从而来进行帧的组原创 2013-07-16 23:29:29 · 1721 阅读 · 0 评论 -
Link Adaption in wlan
Link Adaptation startegy for Ieee 802.11 Wlan via received signal strength measurement.This is one paper post in IEEE to describe how to control the send rate via snr.During these days,I found that It原创 2013-07-16 23:29:55 · 606 阅读 · 0 评论 -
madwifi重要结构体
net_device 内核提供的结构体,描述网络设备的参数。ath_softc 在驱动里面提供的用来描述网络设备软件控制的一些参数的结构体。net_device *devath_softc *sc = dev->priv;在priv为net_device指向自己私有数据的指针。ath_buf *bfbf = STAILQ_FIRST(&sc->sc_rxbuf);#de原创 2013-07-16 23:30:06 · 1051 阅读 · 0 评论