作者rz600000 (suedeN    )
看板LinuxDev
标题Re: [问题] 请问net device driver的小问题 烦请帮忙
时间Wed Jan 9 21:36:51 2008
那个request irq 所注册的 interrupr service function 中
好像没有 您说的 有call到rtl8139_rx()
我知道收到packet 後 会先拆掉 mac header 然後就call netif_rx()
但是 在哪里 有注册 rtl8139_rx()这个东西
:q!
※ 引述《Spig (Spig)》之铭言:
: ※ 引述《rz600000 (suedeN    )》之铭言:
: : 请问net device driver的小问题 烦请帮忙
: : 就是 针对 net device driver 中的 8139too来说
: : 一般我要注册 传送封包的function
: : dev->hard_start_xmit = rtl8139_start_xmit;
: : 会以上面那行 用以告知kernel说 以後要用传送封包的话
: : 要用rtl8139_start_xmit 很像就是EXPORT_SYMBOL 的观念说
: : 我把这个function 提供给上面kernel 使用
: : 但是现在 接收封包的 function 是 rtl8139_rx()
: : 我找不到 任何注册的动作 也没有任何东西 指向rtl8139_rx()
: : 这样在接收封包的时候 要怎麽知道呢????
: : 我想问的就是 在哪里有注册rtl8139_rx()这个functions的地方
: 去找 request_irq(), 他会注册一组中断函式(ISR)
: 这个中断函式会执行 Rx 的部份, 最後用 netif_rx() 往上送
: 简单来说
: Tx: Kernel -> xmit() -> Hardware -> Ethernet
: Rx: Ethernet -> Hardware -> ISR(tasklet) -> netif_rx() -> Kernel
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.117.176.182