作者gen2linux (晚宴行动如期举行)
看板Linux
标题[心得] RT2500 driver trace心得
时间Mon Sep 4 01:04:58 2006
全文
http://home.kimo.com.tw/gen2linux/
简短感想:
这个driver很明显是从 Windows的 NDIS版 driver修改而来的,所以有一些码感觉不
是那麽直接,此driver也鲜少用到kernel的一些helper function. 但是绝大部分
的函式注解说明都还算详细,比起一些已在kernel source tree里的driver来说的话.
我trace的版本是 RT2500 PCI版, 如果再让我选择一次的话, 也许我会选择
trace Atheros的Madwifi, trace rt2500好累...
前文如下:
网卡驱动程式(包括802.11)可以从四个面向来观察:
1. 初始化硬体—观察初始化的过程就可以知道此driver以及硬体的架构。
甲、probe阶段:核心发现此driver可以处理某个NIC device时。
乙、ifup阶段:使用者利用ifup指令後,核心进行装置的启动。
2. 传送封包—真正传输封包的起点,grep “start_hard_xmit” 便可以找到。
3. 接收封包—接收封包的”终点”是在driver呼叫netif_rx()时,往回推找起
点的话通常会是在 interrupt handler上或下半部处理函式里
4. 处理来自user space的 ioctl(2)命令(iwconfig)。
--
Red Shirt located. Do you have in sight?
Red Shirt confirmed.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 221.120.32.45