关于WLAN驱动开发
公司WLAN芯片,有没有好的这方面资料?Linux,除了802.11 definitive guide,linux协议栈有没有哪些参考资料?
做过的,指点一二。 回复 1# chinaunixj
我是做Wi-Fi驱动和协议的,可以加我的QQ群109787694来讨论, 你好,想咨询您一点关于wifi驱动的知识!qq:910829749
1)alloc_netdev_mq 分配一个新的netdev实例后,最后一个参数是发送队列的个数,解释一下这个发送队列是如何工作的?有些驱动在netdev start_xmit里面,调用了skb_get_queue_mapping获取
skb的队列映射,根据获取所在的队列映射id,放入至id所对应的发送队列(至前分配)。每一次调用start_xmit,带有skb参数,请问,这个skb所在的队列映射,是CPU调度的还是?什么情况下,每次调用start_xmit,队列映射
的id是一样的?什么时候是不一样的。例如我分配了5个发送队列,在alloc_netdev_mq里面指定,什么时候用0,什么时候用1,什么时候用2,什么时候用3,依此内推。
2)帧,包,skb,发送队列,四者的关系?
3)
chinaunix@Linux:~/work$ ifconfig
eth0 Link encap:EthernetHWaddr 3c:d9:2b:6a:cd:39
inet addr:xx.xx.xx.xxBcast:xx.xx.xx.xxMask:xx.xx.xx.xx
inet6 addr: fe80::3ed9:2bff:fe6a:cd39/64 Scope:Link
UP BROADCAST RUNNING MULTICASTMTU:1500Metric:1
RX packets:2923820 errors:0 dropped:0 overruns:0 frame:0
TX packets:4709072 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1521703316 (1.5 GB)TX bytes:1262444954 (1.2 GB)
Interrupt:20 Memory:fe500000-fe520000
解释上面的RX packets,TX Packets,MTU,RX bytes,TX bytes,txqueuelen。
备注:
关于问题1,
查找到的参考文章:http://blog.csdn.net/dog250/article/details/5303416
牵涉到的函数:alloc_netdev_mq,dev_queue_xmit->dev_pick_tx
如果我现在的WLAN网卡,需要做队列和流控设计,队列的设计是不是需要跟芯片本身的SRAM(FIFO)容量有关系?还是内核需要维护一个软件层次的队列控制,再另外实现另一个队列设计。
关于流控设计,有没有什么好的资料或者思路推荐。
页:
[1]