Lines Matching refs:netdev
52 static int ipa_open(struct net_device *netdev) in ipa_open() argument
54 struct ipa_priv *priv = netdev_priv(netdev); in ipa_open()
72 netif_start_queue(netdev); in ipa_open()
87 static int ipa_stop(struct net_device *netdev) in ipa_stop() argument
89 struct ipa_priv *priv = netdev_priv(netdev); in ipa_stop()
99 netif_stop_queue(netdev); in ipa_stop()
121 ipa_start_xmit(struct sk_buff *skb, struct net_device *netdev) in ipa_start_xmit() argument
123 struct net_device_stats *stats = &netdev->stats; in ipa_start_xmit()
124 struct ipa_priv *priv = netdev_priv(netdev); in ipa_start_xmit()
155 netif_stop_queue(netdev); in ipa_start_xmit()
162 netif_wake_queue(netdev); in ipa_start_xmit()
172 netif_wake_queue(netdev); in ipa_start_xmit()
196 void ipa_modem_skb_rx(struct net_device *netdev, struct sk_buff *skb) in ipa_modem_skb_rx() argument
198 struct net_device_stats *stats = &netdev->stats; in ipa_modem_skb_rx()
201 skb->dev = netdev; in ipa_modem_skb_rx()
219 static void ipa_modem_netdev_setup(struct net_device *netdev) in ipa_modem_netdev_setup() argument
221 netdev->netdev_ops = &ipa_modem_ops; in ipa_modem_netdev_setup()
223 netdev->header_ops = NULL; in ipa_modem_netdev_setup()
224 netdev->type = ARPHRD_RAWIP; in ipa_modem_netdev_setup()
225 netdev->hard_header_len = 0; in ipa_modem_netdev_setup()
226 netdev->min_header_len = ETH_HLEN; in ipa_modem_netdev_setup()
227 netdev->min_mtu = ETH_MIN_MTU; in ipa_modem_netdev_setup()
228 netdev->max_mtu = IPA_MTU; in ipa_modem_netdev_setup()
229 netdev->mtu = netdev->max_mtu; in ipa_modem_netdev_setup()
230 netdev->addr_len = 0; in ipa_modem_netdev_setup()
231 netdev->tx_queue_len = DEFAULT_TX_QUEUE_LEN; in ipa_modem_netdev_setup()
232 netdev->flags &= ~(IFF_BROADCAST | IFF_MULTICAST); in ipa_modem_netdev_setup()
233 netdev->priv_flags |= IFF_TX_SKB_SHARING; in ipa_modem_netdev_setup()
234 eth_broadcast_addr(netdev->broadcast); in ipa_modem_netdev_setup()
237 netdev->needed_headroom = sizeof(struct rmnet_map_header); in ipa_modem_netdev_setup()
238 netdev->needed_tailroom = IPA_NETDEV_TAILROOM; in ipa_modem_netdev_setup()
239 netdev->watchdog_timeo = IPA_NETDEV_TIMEOUT * HZ; in ipa_modem_netdev_setup()
240 netdev->hw_features = NETIF_F_SG; in ipa_modem_netdev_setup()
248 void ipa_modem_suspend(struct net_device *netdev) in ipa_modem_suspend() argument
252 if (!(netdev->flags & IFF_UP)) in ipa_modem_suspend()
255 priv = netdev_priv(netdev); in ipa_modem_suspend()
275 netif_wake_queue(priv->tx->netdev); in ipa_modem_wake_queue_work()
283 void ipa_modem_resume(struct net_device *netdev) in ipa_modem_resume() argument
287 if (!(netdev->flags & IFF_UP)) in ipa_modem_resume()
290 priv = netdev_priv(netdev); in ipa_modem_resume()
301 struct net_device *netdev; in ipa_modem_start() local
313 netdev = alloc_netdev(sizeof(struct ipa_priv), IPA_NETDEV_NAME, in ipa_modem_start()
315 if (!netdev) { in ipa_modem_start()
320 SET_NETDEV_DEV(netdev, ipa->dev); in ipa_modem_start()
321 priv = netdev_priv(netdev); in ipa_modem_start()
327 priv->tx->netdev = netdev; in ipa_modem_start()
328 priv->rx->netdev = netdev; in ipa_modem_start()
330 ipa->modem_netdev = netdev; in ipa_modem_start()
332 ret = register_netdev(netdev); in ipa_modem_start()
335 priv->rx->netdev = NULL; in ipa_modem_start()
336 priv->tx->netdev = NULL; in ipa_modem_start()
338 free_netdev(netdev); in ipa_modem_start()
353 struct net_device *netdev = ipa->modem_netdev; in ipa_modem_stop() local
369 if (netdev) { in ipa_modem_stop()
370 struct ipa_priv *priv = netdev_priv(netdev); in ipa_modem_stop()
374 if (netdev->flags & IFF_UP) in ipa_modem_stop()
375 (void)ipa_stop(netdev); in ipa_modem_stop()
376 unregister_netdev(netdev); in ipa_modem_stop()
379 priv->rx->netdev = NULL; in ipa_modem_stop()
380 priv->tx->netdev = NULL; in ipa_modem_stop()
382 free_netdev(netdev); in ipa_modem_stop()