diff options
Diffstat (limited to 'drivers/net/ax88796.c')
| -rw-r--r-- | drivers/net/ax88796.c | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/drivers/net/ax88796.c b/drivers/net/ax88796.c index 337488ec707c..a4eb6c40678c 100644 --- a/drivers/net/ax88796.c +++ b/drivers/net/ax88796.c | |||
| @@ -37,7 +37,10 @@ static int phy_debug = 0; | |||
| 37 | #define __ei_open ax_ei_open | 37 | #define __ei_open ax_ei_open |
| 38 | #define __ei_close ax_ei_close | 38 | #define __ei_close ax_ei_close |
| 39 | #define __ei_poll ax_ei_poll | 39 | #define __ei_poll ax_ei_poll |
| 40 | #define __ei_start_xmit ax_ei_start_xmit | ||
| 40 | #define __ei_tx_timeout ax_ei_tx_timeout | 41 | #define __ei_tx_timeout ax_ei_tx_timeout |
| 42 | #define __ei_get_stats ax_ei_get_stats | ||
| 43 | #define __ei_set_multicast_list ax_ei_set_multicast_list | ||
| 41 | #define __ei_interrupt ax_ei_interrupt | 44 | #define __ei_interrupt ax_ei_interrupt |
| 42 | #define ____alloc_ei_netdev ax__alloc_ei_netdev | 45 | #define ____alloc_ei_netdev ax__alloc_ei_netdev |
| 43 | #define __NS8390_init ax_NS8390_init | 46 | #define __NS8390_init ax_NS8390_init |
| @@ -623,6 +626,23 @@ static void ax_eeprom_register_write(struct eeprom_93cx6 *eeprom) | |||
| 623 | } | 626 | } |
| 624 | #endif | 627 | #endif |
| 625 | 628 | ||
| 629 | static const struct net_device_ops ax_netdev_ops = { | ||
| 630 | .ndo_open = ax_open, | ||
| 631 | .ndo_stop = ax_close, | ||
| 632 | .ndo_do_ioctl = ax_ioctl, | ||
| 633 | |||
| 634 | .ndo_start_xmit = ax_ei_start_xmit, | ||
| 635 | .ndo_tx_timeout = ax_ei_tx_timeout, | ||
| 636 | .ndo_get_stats = ax_ei_get_stats, | ||
| 637 | .ndo_set_multicast_list = ax_ei_set_multicast_list, | ||
| 638 | .ndo_validate_addr = eth_validate_addr, | ||
| 639 | .ndo_set_mac_address = eth_mac_addr, | ||
| 640 | .ndo_change_mtu = eth_change_mtu, | ||
| 641 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
| 642 | .ndo_poll_controller = ax_ei_poll, | ||
| 643 | #endif | ||
| 644 | }; | ||
| 645 | |||
| 626 | /* setup code */ | 646 | /* setup code */ |
| 627 | 647 | ||
| 628 | static void ax_initial_setup(struct net_device *dev, struct ei_device *ei_local) | 648 | static void ax_initial_setup(struct net_device *dev, struct ei_device *ei_local) |
| @@ -738,9 +758,7 @@ static int ax_init_dev(struct net_device *dev, int first_init) | |||
| 738 | ei_status.get_8390_hdr = &ax_get_8390_hdr; | 758 | ei_status.get_8390_hdr = &ax_get_8390_hdr; |
| 739 | ei_status.priv = 0; | 759 | ei_status.priv = 0; |
| 740 | 760 | ||
| 741 | dev->open = ax_open; | 761 | dev->netdev_ops = &ax_netdev_ops; |
| 742 | dev->stop = ax_close; | ||
| 743 | dev->do_ioctl = ax_ioctl; | ||
| 744 | dev->ethtool_ops = &ax_ethtool_ops; | 762 | dev->ethtool_ops = &ax_ethtool_ops; |
| 745 | 763 | ||
| 746 | ax->msg_enable = NETIF_MSG_LINK; | 764 | ax->msg_enable = NETIF_MSG_LINK; |
| @@ -753,9 +771,6 @@ static int ax_init_dev(struct net_device *dev, int first_init) | |||
| 753 | ax->mii.mdio_write = ax_phy_write; | 771 | ax->mii.mdio_write = ax_phy_write; |
| 754 | ax->mii.dev = dev; | 772 | ax->mii.dev = dev; |
| 755 | 773 | ||
| 756 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
| 757 | dev->poll_controller = ax_ei_poll; | ||
| 758 | #endif | ||
| 759 | ax_NS8390_init(dev, 0); | 774 | ax_NS8390_init(dev, 0); |
| 760 | 775 | ||
| 761 | if (first_init) | 776 | if (first_init) |
