mac80211: fix firmware compat stuff for 2.6.32
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 18 Jan 2010 14:18:08 +0000 (14:18 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 18 Jan 2010 14:18:08 +0000 (14:18 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19222 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/mac80211/patches/100-compat_firmware.patch [new file with mode: 0644]

diff --git a/package/mac80211/patches/100-compat_firmware.patch b/package/mac80211/patches/100-compat_firmware.patch
new file mode 100644 (file)
index 0000000..18ab55f
--- /dev/null
@@ -0,0 +1,103 @@
+--- a/include/linux/compat-2.6.32.h
++++ b/include/linux/compat-2.6.32.h
+@@ -9,40 +9,6 @@
+ #include <linux/compat.h>
+ #include <net/iw_handler.h>
+ #include <linux/workqueue.h>
+-#include <linux/firmware.h>
+-
+-#define release_firmware compat_release_firmware
+-#define request_firmware compat_request_firmware
+-#define request_firmware_nowait compat_request_firmware_nowait
+-
+-#if defined(CONFIG_FW_LOADER) || (defined(CONFIG_FW_LOADER_MODULE) && defined(MODULE))
+-int compat_request_firmware(const struct firmware **fw, const char *name,
+-                   struct device *device);
+-int compat_request_firmware_nowait(
+-      struct module *module, int uevent,
+-      const char *name, struct device *device, gfp_t gfp, void *context,
+-      void (*cont)(const struct firmware *fw, void *context));
+-
+-void compat_release_firmware(const struct firmware *fw);
+-#else
+-static inline int compat_request_firmware(const struct firmware **fw,
+-                                 const char *name,
+-                                 struct device *device)
+-{
+-      return -EINVAL;
+-}
+-static inline int request_firmware_nowait(
+-      struct module *module, int uevent,
+-      const char *name, struct device *device, gfp_t gfp, void *context,
+-      void (*cont)(const struct firmware *fw, void *context))
+-{
+-      return -EINVAL;
+-}
+-
+-static inline void compat_release_firmware(const struct firmware *fw)
+-{
+-}
+-#endif
+ #define SDIO_VENDOR_ID_INTEL                  0x0089
+ #define SDIO_DEVICE_ID_INTEL_IWMC3200WIMAX    0x1402
+--- a/include/linux/compat-2.6.33.h
++++ b/include/linux/compat-2.6.33.h
+@@ -10,6 +10,40 @@
+ #include <pcmcia/cistpl.h>
+ #include <pcmcia/ds.h>
+ #include <linux/kfifo.h>
++#include <linux/firmware.h>
++
++#define release_firmware compat_release_firmware
++#define request_firmware compat_request_firmware
++#define request_firmware_nowait compat_request_firmware_nowait
++
++#if defined(CONFIG_FW_LOADER) || defined(CONFIG_FW_LOADER_MODULE)
++int compat_request_firmware(const struct firmware **fw, const char *name,
++                   struct device *device);
++int compat_request_firmware_nowait(
++      struct module *module, int uevent,
++      const char *name, struct device *device, gfp_t gfp, void *context,
++      void (*cont)(const struct firmware *fw, void *context));
++
++void compat_release_firmware(const struct firmware *fw);
++#else
++static inline int compat_request_firmware(const struct firmware **fw,
++                                 const char *name,
++                                 struct device *device)
++{
++      return -EINVAL;
++}
++static inline int request_firmware_nowait(
++      struct module *module, int uevent,
++      const char *name, struct device *device, gfp_t gfp, void *context,
++      void (*cont)(const struct firmware *fw, void *context))
++{
++      return -EINVAL;
++}
++
++static inline void compat_release_firmware(const struct firmware *fw)
++{
++}
++#endif
+ #define IFF_DONT_BRIDGE 0x800         /* disallow bridging this ether dev */
+ /* source: include/linux/if.h */
+--- a/compat/compat_firmware_class.c
++++ b/compat/compat_firmware_class.c
+@@ -20,6 +20,8 @@
+ #include <linux/highmem.h>
+ #include <linux/firmware.h>
++#if defined(CONFIG_FW_LOADER) || defined(CONFIG_FW_LOADER_MODULE)
++
+ #define to_dev(obj) container_of(obj, struct device, kobj)
+ MODULE_AUTHOR("Manuel Estrada Sainz");
+@@ -724,3 +726,5 @@ module_exit(firmware_class_exit);
+ EXPORT_SYMBOL(release_firmware);
+ EXPORT_SYMBOL(request_firmware);
+ EXPORT_SYMBOL(request_firmware_nowait);
++
++#endif