add a few fixes for the sibyte target
[openwrt/svn-archive/archive.git] / target / linux / sibyte / patches / 002-sbmac_net_device_opts.patch
1 --- a/drivers/net/sb1250-mac.c
2 +++ b/drivers/net/sb1250-mac.c
3 @@ -2271,6 +2271,22 @@ static int sb1250_change_mtu(struct net_
4 return 0;
5 }
6
7 +static const struct net_device_ops sbmac_netdev_ops = {
8 + .ndo_open = sbmac_open,
9 + .ndo_stop = sbmac_close,
10 + .ndo_start_xmit = sbmac_start_tx,
11 + .ndo_tx_timeout = sbmac_tx_timeout,
12 + .ndo_do_ioctl = sbmac_mii_ioctl,
13 + .ndo_set_multicast_list = sbmac_set_rx_mode,
14 + .ndo_change_mtu = sb1250_change_mtu,
15 + .ndo_validate_addr = eth_validate_addr,
16 + .ndo_set_mac_address = eth_mac_addr,
17 +
18 +#ifdef CONFIG_NET_POLL_CONTROLLER
19 + .ndo_poll_controller = sbmac_netpoll,
20 +#endif
21 +};
22 +
23 /**********************************************************************
24 * SBMAC_INIT(dev)
25 *
26 @@ -2327,21 +2343,12 @@ static int sbmac_init(struct platform_de
27
28 spin_lock_init(&(sc->sbm_lock));
29
30 - dev->open = sbmac_open;
31 - dev->hard_start_xmit = sbmac_start_tx;
32 - dev->stop = sbmac_close;
33 - dev->set_multicast_list = sbmac_set_rx_mode;
34 - dev->do_ioctl = sbmac_mii_ioctl;
35 - dev->tx_timeout = sbmac_tx_timeout;
36 + dev->netdev_ops = &sbmac_netdev_ops;
37 +
38 dev->watchdog_timeo = TX_TIMEOUT;
39
40 netif_napi_add(dev, &sc->napi, sbmac_poll, 16);
41
42 - dev->change_mtu = sb1250_change_mtu;
43 -#ifdef CONFIG_NET_POLL_CONTROLLER
44 - dev->poll_controller = sbmac_netpoll;
45 -#endif
46 -
47 dev->irq = UNIT_INT(idx);
48
49 /* This is needed for PASS2 for Rx H/W checksum feature */