Lines Matching refs:netdev

50 static int ipa_open(struct net_device *netdev)  in ipa_open()  argument
52 struct ipa_priv *priv = netdev_priv(netdev); in ipa_open()
70 netif_start_queue(netdev); in ipa_open()
86 static int ipa_stop(struct net_device *netdev) in ipa_stop() argument
88 struct ipa_priv *priv = netdev_priv(netdev); in ipa_stop()
98 netif_stop_queue(netdev); in ipa_stop()
118 ipa_start_xmit(struct sk_buff *skb, struct net_device *netdev) in ipa_start_xmit() argument
120 struct net_device_stats *stats = &netdev->stats; in ipa_start_xmit()
121 struct ipa_priv *priv = netdev_priv(netdev); in ipa_start_xmit()
182 void ipa_modem_skb_rx(struct net_device *netdev, struct sk_buff *skb) in ipa_modem_skb_rx() argument
184 struct net_device_stats *stats = &netdev->stats; in ipa_modem_skb_rx()
187 skb->dev = netdev; in ipa_modem_skb_rx()
205 static void ipa_modem_netdev_setup(struct net_device *netdev) in ipa_modem_netdev_setup() argument
207 netdev->netdev_ops = &ipa_modem_ops; in ipa_modem_netdev_setup()
209 netdev->header_ops = NULL; in ipa_modem_netdev_setup()
210 netdev->type = ARPHRD_RAWIP; in ipa_modem_netdev_setup()
211 netdev->hard_header_len = 0; in ipa_modem_netdev_setup()
212 netdev->min_header_len = ETH_HLEN; in ipa_modem_netdev_setup()
213 netdev->min_mtu = ETH_MIN_MTU; in ipa_modem_netdev_setup()
214 netdev->max_mtu = IPA_MTU; in ipa_modem_netdev_setup()
215 netdev->mtu = netdev->max_mtu; in ipa_modem_netdev_setup()
216 netdev->addr_len = 0; in ipa_modem_netdev_setup()
217 netdev->tx_queue_len = DEFAULT_TX_QUEUE_LEN; in ipa_modem_netdev_setup()
218 netdev->flags &= ~(IFF_BROADCAST | IFF_MULTICAST); in ipa_modem_netdev_setup()
219 netdev->priv_flags |= IFF_TX_SKB_SHARING; in ipa_modem_netdev_setup()
220 eth_broadcast_addr(netdev->broadcast); in ipa_modem_netdev_setup()
223 netdev->needed_headroom = sizeof(struct rmnet_map_header); in ipa_modem_netdev_setup()
224 netdev->needed_tailroom = IPA_NETDEV_TAILROOM; in ipa_modem_netdev_setup()
225 netdev->watchdog_timeo = IPA_NETDEV_TIMEOUT * HZ; in ipa_modem_netdev_setup()
226 netdev->hw_features = NETIF_F_SG; in ipa_modem_netdev_setup()
234 void ipa_modem_suspend(struct net_device *netdev) in ipa_modem_suspend() argument
236 struct ipa_priv *priv = netdev_priv(netdev); in ipa_modem_suspend()
239 if (!(netdev->flags & IFF_UP)) in ipa_modem_suspend()
269 void ipa_modem_resume(struct net_device *netdev) in ipa_modem_resume() argument
271 struct ipa_priv *priv = netdev_priv(netdev); in ipa_modem_resume()
274 if (!(netdev->flags & IFF_UP)) in ipa_modem_resume()
287 struct net_device *netdev; in ipa_modem_start() local
299 netdev = alloc_netdev(sizeof(struct ipa_priv), IPA_NETDEV_NAME, in ipa_modem_start()
301 if (!netdev) { in ipa_modem_start()
306 SET_NETDEV_DEV(netdev, &ipa->pdev->dev); in ipa_modem_start()
307 priv = netdev_priv(netdev); in ipa_modem_start()
310 ipa->name_map[IPA_ENDPOINT_AP_MODEM_TX]->netdev = netdev; in ipa_modem_start()
311 ipa->name_map[IPA_ENDPOINT_AP_MODEM_RX]->netdev = netdev; in ipa_modem_start()
312 ipa->modem_netdev = netdev; in ipa_modem_start()
314 ret = register_netdev(netdev); in ipa_modem_start()
317 ipa->name_map[IPA_ENDPOINT_AP_MODEM_RX]->netdev = NULL; in ipa_modem_start()
318 ipa->name_map[IPA_ENDPOINT_AP_MODEM_TX]->netdev = NULL; in ipa_modem_start()
319 free_netdev(netdev); in ipa_modem_start()
334 struct net_device *netdev = ipa->modem_netdev; in ipa_modem_stop() local
350 if (netdev) { in ipa_modem_stop()
351 struct ipa_priv *priv = netdev_priv(netdev); in ipa_modem_stop()
355 if (netdev->flags & IFF_UP) in ipa_modem_stop()
356 (void)ipa_stop(netdev); in ipa_modem_stop()
357 unregister_netdev(netdev); in ipa_modem_stop()
359 ipa->name_map[IPA_ENDPOINT_AP_MODEM_RX]->netdev = NULL; in ipa_modem_stop()
360 ipa->name_map[IPA_ENDPOINT_AP_MODEM_TX]->netdev = NULL; in ipa_modem_stop()
361 free_netdev(netdev); in ipa_modem_stop()