|
@@ -4977,6 +4977,22 @@ static void __devinit cas_program_bridge(struct pci_dev *cas_pdev)
|
|
pci_write_config_byte(pdev, PCI_LATENCY_TIMER, 0xff);
|
|
pci_write_config_byte(pdev, PCI_LATENCY_TIMER, 0xff);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+static const struct net_device_ops cas_netdev_ops = {
|
|
|
|
+ .ndo_open = cas_open,
|
|
|
|
+ .ndo_stop = cas_close,
|
|
|
|
+ .ndo_start_xmit = cas_start_xmit,
|
|
|
|
+ .ndo_get_stats = cas_get_stats,
|
|
|
|
+ .ndo_set_multicast_list = cas_set_multicast,
|
|
|
|
+ .ndo_do_ioctl = cas_ioctl,
|
|
|
|
+ .ndo_tx_timeout = cas_tx_timeout,
|
|
|
|
+ .ndo_change_mtu = cas_change_mtu,
|
|
|
|
+ .ndo_set_mac_address = eth_mac_addr,
|
|
|
|
+ .ndo_validate_addr = eth_validate_addr,
|
|
|
|
+#ifdef CONFIG_NET_POLL_CONTROLLER
|
|
|
|
+ .ndo_poll_controller = cas_netpoll,
|
|
|
|
+#endif
|
|
|
|
+};
|
|
|
|
+
|
|
static int __devinit cas_init_one(struct pci_dev *pdev,
|
|
static int __devinit cas_init_one(struct pci_dev *pdev,
|
|
const struct pci_device_id *ent)
|
|
const struct pci_device_id *ent)
|
|
{
|
|
{
|
|
@@ -5166,21 +5182,12 @@ static int __devinit cas_init_one(struct pci_dev *pdev,
|
|
for (i = 0; i < N_RX_FLOWS; i++)
|
|
for (i = 0; i < N_RX_FLOWS; i++)
|
|
skb_queue_head_init(&cp->rx_flows[i]);
|
|
skb_queue_head_init(&cp->rx_flows[i]);
|
|
|
|
|
|
- dev->open = cas_open;
|
|
|
|
- dev->stop = cas_close;
|
|
|
|
- dev->hard_start_xmit = cas_start_xmit;
|
|
|
|
- dev->get_stats = cas_get_stats;
|
|
|
|
- dev->set_multicast_list = cas_set_multicast;
|
|
|
|
- dev->do_ioctl = cas_ioctl;
|
|
|
|
|
|
+ dev->netdev_ops = &cas_netdev_ops;
|
|
dev->ethtool_ops = &cas_ethtool_ops;
|
|
dev->ethtool_ops = &cas_ethtool_ops;
|
|
- dev->tx_timeout = cas_tx_timeout;
|
|
|
|
dev->watchdog_timeo = CAS_TX_TIMEOUT;
|
|
dev->watchdog_timeo = CAS_TX_TIMEOUT;
|
|
- dev->change_mtu = cas_change_mtu;
|
|
|
|
|
|
+
|
|
#ifdef USE_NAPI
|
|
#ifdef USE_NAPI
|
|
netif_napi_add(dev, &cp->napi, cas_poll, 64);
|
|
netif_napi_add(dev, &cp->napi, cas_poll, 64);
|
|
-#endif
|
|
|
|
-#ifdef CONFIG_NET_POLL_CONTROLLER
|
|
|
|
- dev->poll_controller = cas_netpoll;
|
|
|
|
#endif
|
|
#endif
|
|
dev->irq = pdev->irq;
|
|
dev->irq = pdev->irq;
|
|
dev->dma = 0;
|
|
dev->dma = 0;
|