Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
8390.c
Go to the documentation of this file.
1 /* 8390 core for usual drivers */
2 
3 static const char version[] =
4  "8390.c:v1.10cvs 9/23/94 Donald Becker ([email protected])\n";
5 
6 #include "lib8390.c"
7 
8 int ei_open(struct net_device *dev)
9 {
10  return __ei_open(dev);
11 }
13 
14 int ei_close(struct net_device *dev)
15 {
16  return __ei_close(dev);
17 }
19 
21 {
22  return __ei_start_xmit(skb, dev);
23 }
25 
27 {
28  return __ei_get_stats(dev);
29 }
31 
33 {
35 }
37 
39 {
40  __ei_tx_timeout(dev);
41 }
43 
45 {
46  return __ei_interrupt(irq, dev_id);
47 }
49 
50 #ifdef CONFIG_NET_POLL_CONTROLLER
51 void ei_poll(struct net_device *dev)
52 {
53  __ei_poll(dev);
54 }
55 EXPORT_SYMBOL(ei_poll);
56 #endif
57 
58 const struct net_device_ops ei_netdev_ops = {
59  .ndo_open = ei_open,
60  .ndo_stop = ei_close,
61  .ndo_start_xmit = ei_start_xmit,
62  .ndo_tx_timeout = ei_tx_timeout,
63  .ndo_get_stats = ei_get_stats,
64  .ndo_set_rx_mode = ei_set_multicast_list,
65  .ndo_validate_addr = eth_validate_addr,
66  .ndo_set_mac_address = eth_mac_addr,
67  .ndo_change_mtu = eth_change_mtu,
68 #ifdef CONFIG_NET_POLL_CONTROLLER
69  .ndo_poll_controller = ei_poll,
70 #endif
71 };
72 EXPORT_SYMBOL(ei_netdev_ops);
73 
75 {
76  struct net_device *dev = ____alloc_ei_netdev(size);
77  if (dev)
78  dev->netdev_ops = &ei_netdev_ops;
79  return dev;
80 }
82 
83 void NS8390_init(struct net_device *dev, int startp)
84 {
85  __NS8390_init(dev, startp);
86 }
88 
89 #if defined(MODULE)
90 
91 static int __init ns8390_module_init(void)
92 {
93  return 0;
94 }
95 
96 static void __exit ns8390_module_exit(void)
97 {
98 }
99 
100 module_init(ns8390_module_init);
101 module_exit(ns8390_module_exit);
102 #endif /* MODULE */
103 MODULE_LICENSE("GPL");