aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/smc-ultra.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/smc-ultra.c')
-rw-r--r--drivers/net/smc-ultra.c27
1 files changed, 19 insertions, 8 deletions
diff --git a/drivers/net/smc-ultra.c b/drivers/net/smc-ultra.c
index 00d6cf1af484..b3866089a206 100644
--- a/drivers/net/smc-ultra.c
+++ b/drivers/net/smc-ultra.c
@@ -187,6 +187,21 @@ out:
187} 187}
188#endif 188#endif
189 189
190static const struct net_device_ops ultra_netdev_ops = {
191 .ndo_open = ultra_open,
192 .ndo_stop = ultra_close_card,
193
194 .ndo_start_xmit = ei_start_xmit,
195 .ndo_tx_timeout = ei_tx_timeout,
196 .ndo_get_stats = ei_get_stats,
197 .ndo_set_multicast_list = ei_set_multicast_list,
198 .ndo_validate_addr = eth_validate_addr,
199 .ndo_change_mtu = eth_change_mtu,
200#ifdef CONFIG_NET_POLL_CONTROLLER
201 .ndo_poll_controller = ei_poll,
202#endif
203};
204
190static int __init ultra_probe1(struct net_device *dev, int ioaddr) 205static int __init ultra_probe1(struct net_device *dev, int ioaddr)
191{ 206{
192 int i, retval; 207 int i, retval;
@@ -198,7 +213,6 @@ static int __init ultra_probe1(struct net_device *dev, int ioaddr)
198 unsigned char num_pages, irqreg, addr, piomode; 213 unsigned char num_pages, irqreg, addr, piomode;
199 unsigned char idreg = inb(ioaddr + 7); 214 unsigned char idreg = inb(ioaddr + 7);
200 unsigned char reg4 = inb(ioaddr + 4) & 0x7f; 215 unsigned char reg4 = inb(ioaddr + 4) & 0x7f;
201 DECLARE_MAC_BUF(mac);
202 216
203 if (!request_region(ioaddr, ULTRA_IO_EXTENT, DRV_NAME)) 217 if (!request_region(ioaddr, ULTRA_IO_EXTENT, DRV_NAME))
204 return -EBUSY; 218 return -EBUSY;
@@ -228,8 +242,8 @@ static int __init ultra_probe1(struct net_device *dev, int ioaddr)
228 for (i = 0; i < 6; i++) 242 for (i = 0; i < 6; i++)
229 dev->dev_addr[i] = inb(ioaddr + 8 + i); 243 dev->dev_addr[i] = inb(ioaddr + 8 + i);
230 244
231 printk("%s: %s at %#3x, %s", dev->name, model_name, 245 printk("%s: %s at %#3x, %pM", dev->name, model_name,
232 ioaddr, print_mac(mac, dev->dev_addr)); 246 ioaddr, dev->dev_addr);
233 247
234 /* Switch from the station address to the alternate register set and 248 /* Switch from the station address to the alternate register set and
235 read the useful registers there. */ 249 read the useful registers there. */
@@ -301,11 +315,8 @@ static int __init ultra_probe1(struct net_device *dev, int ioaddr)
301 ei_status.get_8390_hdr = &ultra_get_8390_hdr; 315 ei_status.get_8390_hdr = &ultra_get_8390_hdr;
302 } 316 }
303 ei_status.reset_8390 = &ultra_reset_8390; 317 ei_status.reset_8390 = &ultra_reset_8390;
304 dev->open = &ultra_open; 318
305 dev->stop = &ultra_close_card; 319 dev->netdev_ops = &ultra_netdev_ops;
306#ifdef CONFIG_NET_POLL_CONTROLLER
307 dev->poll_controller = ei_poll;
308#endif
309 NS8390_init(dev, 0); 320 NS8390_init(dev, 0);
310 321
311 retval = register_netdev(dev); 322 retval = register_netdev(dev);