You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openwrt/package/acx/patches/006-netdev_ops.patch

77 lines
2.6 KiB
Diff

Index: acx-20080210/pci.c
===================================================================
--- acx-20080210.orig/pci.c 2010-05-02 21:37:00.000000000 +0200
+++ acx-20080210/pci.c 2010-05-02 21:48:22.000000000 +0200
@@ -1437,6 +1437,18 @@
static void dummy_netdev_init(struct net_device *ndev) {}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30)
+static const struct net_device_ops acx_netdev_ops = {
+ .ndo_open = &acxpci_e_open,
+ .ndo_stop = &acxpci_e_close,
+ .ndo_start_xmit = &acx_i_start_xmit,
+ .ndo_get_stats = &acx_e_get_stats,
+ .ndo_set_multicast_list = &acxpci_i_set_multicast_list,
+ .ndo_tx_timeout = &acxpci_i_tx_timeout,
+ .ndo_change_mtu = &acx_e_change_mtu,
+};
+#endif
+
#ifdef CONFIG_PCI
static int __devinit acxpci_e_probe(struct pci_dev *pdev, const struct pci_device_id *id)
{
@@ -1547,17 +1559,21 @@
}
ether_setup(ndev);
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
ndev->open = &acxpci_e_open;
ndev->stop = &acxpci_e_close;
ndev->hard_start_xmit = &acx_i_start_xmit;
ndev->get_stats = &acx_e_get_stats;
+ ndev->set_multicast_list = &acxpci_i_set_multicast_list;
+ ndev->tx_timeout = &acxpci_i_tx_timeout;
+ ndev->change_mtu = &acx_e_change_mtu;
+#else
+ ndev->netdev_ops = &acx_netdev_ops;
+#endif
#if IW_HANDLER_VERSION <= 5
ndev->get_wireless_stats = &acx_e_get_wireless_stats;
#endif
ndev->wireless_handlers = (struct iw_handler_def *)&acx_ioctl_handler_def;
- ndev->set_multicast_list = &acxpci_i_set_multicast_list;
- ndev->tx_timeout = &acxpci_i_tx_timeout;
- ndev->change_mtu = &acx_e_change_mtu;
ndev->watchdog_timeo = 4 * HZ;
ndev->irq = pdev->irq;
ndev->base_addr = pci_resource_start(pdev, 0);
@@ -4191,17 +4207,24 @@
goto fail_alloc_netdev;
}
ether_setup(ndev);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)
ndev->open = &acxpci_e_open;
ndev->stop = &acxpci_e_close;
ndev->hard_start_xmit = &acx_i_start_xmit;
ndev->get_stats = &acx_e_get_stats;
+ ndev->set_multicast_list = &acxpci_i_set_multicast_list;
+ ndev->tx_timeout = &acxpci_i_tx_timeout;
+ ndev->change_mtu = &acx_e_change_mtu;
+ ndev->set_multicast_list = &acxpci_i_set_multicast_list;
+ ndev->tx_timeout = &acxpci_i_tx_timeout;
+ ndev->change_mtu = &acx_e_change_mtu;
+#else
+ ndev->netdev_ops = &acx_netdev_ops;
+#endif
#if IW_HANDLER_VERSION <= 5
ndev->get_wireless_stats = &acx_e_get_wireless_stats;
#endif
ndev->wireless_handlers = (struct iw_handler_def *)&acx_ioctl_handler_def;
- ndev->set_multicast_list = &acxpci_i_set_multicast_list;
- ndev->tx_timeout = &acxpci_i_tx_timeout;
- ndev->change_mtu = &acx_e_change_mtu;
ndev->watchdog_timeo = 4 * HZ;
adev = ndev2adev(ndev);