Re: [問題] 請問net device driver的小問題 煩請幫忙
那個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
討論串 (同標題文章)
LinuxDev 近期熱門文章
PTT數位生活區 即時熱門文章
27
74