diff options
Diffstat (limited to 'drivers/net/mac8390.c')
-rw-r--r-- | drivers/net/mac8390.c | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/drivers/net/mac8390.c b/drivers/net/mac8390.c index 98e3eb2697c9..57716e22660c 100644 --- a/drivers/net/mac8390.c +++ b/drivers/net/mac8390.c | |||
@@ -304,7 +304,7 @@ struct net_device * __init mac8390_probe(int unit) | |||
304 | if (!MACH_IS_MAC) | 304 | if (!MACH_IS_MAC) |
305 | return ERR_PTR(-ENODEV); | 305 | return ERR_PTR(-ENODEV); |
306 | 306 | ||
307 | dev = ____alloc_ei_netdev(0); | 307 | dev = alloc_ei_netdev(); |
308 | if (!dev) | 308 | if (!dev) |
309 | return ERR_PTR(-ENOMEM); | 309 | return ERR_PTR(-ENOMEM); |
310 | 310 | ||
@@ -478,6 +478,20 @@ void cleanup_module(void) | |||
478 | 478 | ||
479 | #endif /* MODULE */ | 479 | #endif /* MODULE */ |
480 | 480 | ||
481 | static const struct net_device_ops mac8390_netdev_ops = { | ||
482 | .ndo_open = mac8390_open, | ||
483 | .ndo_stop = mac8390_close, | ||
484 | .ndo_start_xmit = ei_start_xmit, | ||
485 | .ndo_tx_timeout = ei_tx_timeout, | ||
486 | .ndo_get_stats = ei_get_stats, | ||
487 | .ndo_set_multicast_list = ei_set_multicast_list, | ||
488 | .ndo_validate_addr = eth_validate_addr, | ||
489 | .ndo_change_mtu = eth_change_mtu, | ||
490 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
491 | .ndo_poll_controller = ei_poll, | ||
492 | #endif | ||
493 | }; | ||
494 | |||
481 | static int __init mac8390_initdev(struct net_device * dev, struct nubus_dev * ndev, | 495 | static int __init mac8390_initdev(struct net_device * dev, struct nubus_dev * ndev, |
482 | enum mac8390_type type) | 496 | enum mac8390_type type) |
483 | { | 497 | { |
@@ -503,11 +517,7 @@ static int __init mac8390_initdev(struct net_device * dev, struct nubus_dev * nd | |||
503 | int access_bitmode = 0; | 517 | int access_bitmode = 0; |
504 | 518 | ||
505 | /* Now fill in our stuff */ | 519 | /* Now fill in our stuff */ |
506 | dev->open = &mac8390_open; | 520 | dev->netdev_ops = &mac8390_netdev_ops; |
507 | dev->stop = &mac8390_close; | ||
508 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
509 | dev->poll_controller = __ei_poll; | ||
510 | #endif | ||
511 | 521 | ||
512 | /* GAR, ei_status is actually a macro even though it looks global */ | 522 | /* GAR, ei_status is actually a macro even though it looks global */ |
513 | ei_status.name = cardname[type]; | 523 | ei_status.name = cardname[type]; |