broadcom-wl: fix section mismatches in broadcom-wl driver
[openwrt/staging/wigyori.git] / package / kernel / broadcom-wl / patches / 030-remove_devinit_devexit.patch
diff --git a/package/kernel/broadcom-wl/patches/030-remove_devinit_devexit.patch b/package/kernel/broadcom-wl/patches/030-remove_devinit_devexit.patch
new file mode 100644 (file)
index 0000000..ead108e
--- /dev/null
@@ -0,0 +1,74 @@
+--- a/driver/include/linuxver.h
++++ b/driver/include/linuxver.h
+@@ -139,22 +139,6 @@ typedef   struct pcmcia_device dev_link_t;
+ #endif /* CONFIG_PCMCIA */
+-#ifndef __exit
+-#define __exit
+-#endif
+-#ifndef __devexit
+-#define __devexit
+-#endif
+-#ifndef __devinit
+-#define __devinit     __init
+-#endif
+-#ifndef __devinitdata
+-#define __devinitdata
+-#endif
+-#ifndef __devexit_p
+-#define __devexit_p(x)        x
+-#endif
+-
+ #if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 0))
+ #define pci_get_drvdata(dev)          (dev)->sysdata
+--- a/driver/wl_linux.c
++++ b/driver/wl_linux.c
+@@ -854,7 +854,7 @@ wl_read_proc(char *buffer, char **start,
+  */
+ #if !defined(BCMJTAG)
+ #ifdef CONFIG_PCI
+-static void __devexit wl_remove(struct pci_dev *pdev);
++static void wl_remove(struct pci_dev *pdev);
+ /** 
+  * determines if a device is a WL device, and if so, attaches it.
+  *
+@@ -862,7 +862,7 @@ static void __devexit wl_remove(struct p
+  * and if so, performs a wl_attach() on it.
+  *
+  */
+-int __devinit
++int
+ wl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
+ {
+       int rc;
+@@ -976,7 +976,7 @@ wl_resume(struct pci_dev *pdev)
+ }
+ #endif /* LINUXSTA_PS */
+-static void __devexit
++static void
+ wl_remove(struct pci_dev *pdev)
+ {
+       wl_info_t *wl = (wl_info_t *) pci_get_drvdata(pdev);
+@@ -1007,7 +1007,7 @@ static struct pci_driver wl_pci_driver =
+       suspend:        wl_suspend,
+       resume:         wl_resume,
+ #endif /* LINUXSTA_PS */
+-      remove:         __devexit_p(wl_remove),
++      remove:         wl_remove,
+       id_table:       wl_id_table,
+       };
+ #endif        /* CONFIG_PCI */
+--- a/driver/wl_linux.h
++++ b/driver/wl_linux.h
+@@ -33,7 +33,7 @@ extern irqreturn_t wl_isr(int irq, void
+ extern irqreturn_t wl_isr(int irq, void *dev_id, struct pt_regs *ptregs);
+ #endif
+-extern int __devinit wl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent);
++extern int wl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent);
+ extern void wl_free(wl_info_t *wl);
+ extern int  wl_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd);
+ extern struct net_device * wl_netdev_get(wl_info_t *wl);