[PATCH] media_build: fix module_*_driver redefined warnings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The conditions "#ifndef module_usb_driver" and "#ifndef module_platform_driver"
are always true, as the header files where this macros are defined are not
included in compat.h (linux/usb.h and linux/platform_devices.h).

This produces a lot of warnings like "module_usb_driver redefined" or
"module_platform_driver redefined" with kernels 3.2 and 3.3.

But including the header files in compat.h produces other "redefined" warnings,
so let's check the kernel version instead.

module_usb_driver was first introduced in kernel 3.3,
while module_platform_driver was introduced in kernel 3.2.

Tested with kernel 3.3, 3.2 and 3.0.

Signed-off-by: Gianluca Gennari <gennarone@xxxxxxxxx>
---
 v4l/compat.h |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/v4l/compat.h b/v4l/compat.h
index 62710c9..ab0f2e7 100644
--- a/v4l/compat.h
+++ b/v4l/compat.h
@@ -864,7 +864,7 @@ static inline int snd_ctl_enum_info(struct snd_ctl_elem_info *info, unsigned int
 #endif
 #endif /*pr_debug_ratelimited */
 
-#ifndef module_usb_driver
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 3, 0)
 #define module_usb_driver(drv)			\
 static int __init usb_mod_init(void)		\
 {						\
@@ -878,7 +878,7 @@ module_init(usb_mod_init);			\
 module_exit(usb_mod_exit);
 #endif /* module_usb_driver */
 
-#ifndef module_platform_driver
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 2, 0)
 #define module_platform_driver(drv)		\
 static int __init plat_mod_init(void)		\
 {						\
-- 
1.7.5.4

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux