[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20081118004257.GA22584@xw6200.broadcom.net>
Date: Mon, 17 Nov 2008 16:42:57 -0800
From: "Matt Carlson" <mcarlson@...adcom.com>
To: "Stephen Hemminger" <shemminger@...tta.com>
cc: "David Miller" <davem@...emloft.net>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [PATCH 30/33] tg3: convert to net_device_ops
On Mon, Nov 17, 2008 at 03:42:37PM -0800, Stephen Hemminger wrote:
> Convert this driver to network device ops.
>
> Signed-off-by: Stephen Hemminger <shemminger@...tta.com>
>
> --- a/drivers/net/tg3.c 2008-11-17 14:03:52.000000000 -0800
> +++ b/drivers/net/tg3.c 2008-11-17 14:45:38.000000000 -0800
> @@ -13343,6 +13343,22 @@ static void __devinit tg3_init_coal(stru
> }
> }
>
> +static const struct net_device_ops tg3_netdev_ops = {
> + .open = tg3_open,
> + .stop = tg3_close,
> + .get_stats = tg3_get_stats,
> + .validate_addr = eth_validate_addr,
> + .set_multicast_list = tg3_set_rx_mode,
> + .set_mac_address = tg3_set_mac_addr,
> + .do_ioctl = tg3_ioctl,
> + .tx_timeout = tg3_tx_timeout,
> + .change_mtu = tg3_change_mtu,
> + .vlan_rx_register = tg3_vlan_rx_register,
> +#ifdef CONFIG_NET_POLL_CONTROLLER
> + .poll_controller = tg3_poll_controller,
> +#endif
> +};
> +
> static int __devinit tg3_init_one(struct pci_dev *pdev,
> const struct pci_device_id *ent)
> {
> @@ -13400,7 +13416,6 @@ static int __devinit tg3_init_one(struct
>
> #if TG3_VLAN_TAG_USED
> dev->features |= NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_RX;
> - dev->vlan_rx_register = tg3_vlan_rx_register;
> #endif
The tg3_vlan_rx_register() function is only defined if
CONFIG_VLAN_8021Q or CONFIG_VLAN_8021Q_MODULE is defined. You will need to
either surround the .vlan_rx_register declaration with TG3_VLAN_TAG_USED or
move the TG3_VLAN_TAG_USED preprocessor guards inside the body of
tg3_vlan_rx_register().
> tp = netdev_priv(dev);
> @@ -13458,21 +13473,11 @@ static int __devinit tg3_init_one(struct
> tp->rx_jumbo_pending = TG3_DEF_RX_JUMBO_RING_PENDING;
> tp->tx_pending = TG3_DEF_TX_RING_PENDING;
>
> - dev->open = tg3_open;
> - dev->stop = tg3_close;
> - dev->get_stats = tg3_get_stats;
> - dev->set_multicast_list = tg3_set_rx_mode;
> - dev->set_mac_address = tg3_set_mac_addr;
> - dev->do_ioctl = tg3_ioctl;
> - dev->tx_timeout = tg3_tx_timeout;
> + dev->netdev_ops = &tg3_netdev_ops;
> netif_napi_add(dev, &tp->napi, tg3_poll, 64);
> dev->ethtool_ops = &tg3_ethtool_ops;
> dev->watchdog_timeo = TG3_TX_TIMEOUT;
> - dev->change_mtu = tg3_change_mtu;
> dev->irq = pdev->irq;
> -#ifdef CONFIG_NET_POLL_CONTROLLER
> - dev->poll_controller = tg3_poll_controller;
> -#endif
>
> err = tg3_get_invariants(tp);
> if (err) {
>
> --
>
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists