无线网络驱动(ath9k_htc)
ath9k_htc是一个基于USB接口的SoftMAC无线网络适配器。为了其驱动能正常工作,首先必
须调用usb_register来注册驱动定义的usb_driver,以借助USB Core的力量来处646802]
[<c08bafl0>]
8/0x988)
11.
[
]
[<c08bb920>]
12.
[
]
[<c068a578>]
13.
[
]
[<c0467d98>]
I14
[
]
[<C0468144>]
15.
[
]
[<C0468414>]
16.
[
]
[<C04313C0>]
(tcp_v4_rcv+0x540/0x908) from [<c07c23d4>] (ip_local_deliver_finish+0xl58/0x318)
(ip_local_deliver_finish+0xl58/0x318) from [<c07cle44>] (ip_rcv_finish+0x420/0x440
(ip_rcv_finish+0x420/0x440) from [<c0772dcc>] (_netif_receive_skb+0x4d0/0x534)
(_netif_receive_skb+0x4d0/0x534) from [<c0774434>] (netif_receive_skb+0x9c/0xb4)
(netif_receive_skb+0x9c/0xb4) from [<c08b8e6c>] (ieee80211_deliver_skb+0xl34/0xl64
(ieee80211_deliver_skb+0xl34/0xl64) from [<c08b9ed8>] (ieee80211_rx_handlers+0xl03
(ieee80211_rx_handlers+0xl03c/0xl978) from [<c08bafl0>] (ieee80211_prepare_and_rx_
(ieee80211_prepare_and_rx_handle+0x6fc/0x788) from [<c08bb920>] (ieee80211_rx+0x90
(ieee80211_rx+0x908/0x988) from [<c068a578>] (ath9k_rx_tasklet+0x4e4/0x54c)
(ath9k_rx_tasklet+0x4e4/0x54c) from [<c0467d98>] (tasklet_action+0xa8/0xl4c)
(tasklet_action+0xa8/0xl4c) from [<c0468144>] (_do_softirq+0x88/0xl58)
(_do_softirq+0x88/0xl58) from [<c0468414>] (irq_exit+0x48/0xac)
(irq_exit+0x48/0xac) from [<c04313c0>] (do_local_timer+0x50/0x80)
(do_local_timer+0x50/0x80) from [<c0436708>] (_irq_svc+0x48/0xe0)
(Data TX)流理
数据发送流程如下图所示:
net/core
上半部分涉及到的相关代码如下所示(以上流程主要通过dump_stack获取):
net/
net/ipv4/
net/ipv4/
net/ipv4/
net/ipv4/
net/core/
net/core/
7. INET初始化
INET 为 Linux OS 实现了 TCP/IP 协议集,
其初始化代码如下所示:
它使用BSD Socket接口作为与User通讯的方式。
代码位于:net/ipv4/
1.
static int _init inet_init
Linux Wireless架构总结 来自淘豆网www.taodocs.com转载请标明出处.