From 29ec15e90ba9e20ff33da4824c32721bbc6bcfad Mon Sep 17 00:00:00 2001 From: Randy Dunlap Date: Wed, 10 Feb 2010 14:53:57 -0300 Subject: [PATCH] V4L/DVB: tm6000: fix build errors (1) tm6000 uses usb_*() interfaces, so it should depend on USB. drivers/built-in.o: In function `tm6000_usb_disconnect': tm6000-cards.c:(.text+0x4abb44): undefined reference to `usb_put_dev' drivers/built-in.o: In function `tm6000_usb_probe': tm6000-cards.c:(.text+0x4ac923): undefined reference to `usb_get_dev' tm6000-cards.c:(.text+0x4ac93c): undefined reference to `usb_set_interface' drivers/built-in.o: In function `tm6000_read_write_usb': (.text+0x4ad274): undefined reference to `usb_control_msg' drivers/built-in.o: In function `tm6000_uninit_isoc': tm6000-video.c:(.text+0x4b00d5): undefined reference to `usb_kill_urb' tm6000-video.c:(.text+0x4b00e4): undefined reference to `usb_unlink_urb' tm6000-video.c:(.text+0x4b013c): undefined reference to `usb_buffer_free' tm6000-video.c:(.text+0x4b014b): undefined reference to `usb_free_urb' drivers/built-in.o: In function `tm6000_prepare_isoc': tm6000-video.c:(.text+0x4b0773): undefined reference to `usb_alloc_urb' tm6000-video.c:(.text+0x4b0835): undefined reference to `usb_buffer_alloc' drivers/built-in.o: In function `tm6000_irq_callback': tm6000-video.c:(.text+0x4b1ad3): undefined reference to `usb_submit_urb' drivers/built-in.o: In function `tm6000_module_init': tm6000-cards.c:(.init.text+0x24499): undefined reference to `usb_register_driver' drivers/built-in.o: In function `tm6000_module_exit': tm6000-cards.c:(.exit.text+0x5cb0): undefined reference to `usb_deregister' (2) tm6000-alsa uses interfaces from tm6000-core, so when they are both built as modules, the core interfaces need to be exported. ERROR: "tm6000_set_reg" [drivers/staging/tm6000/tm6000-alsa.ko] undefined! ERROR: "tm6000_get_reg" [drivers/staging/tm6000/tm6000-alsa.ko] undefined! Cc: linux-next@vger.kernel.org, LKML , linux-media@vger.kernel.org Signed-off-by: Randy Dunlap Cc: Mauro Carvalho Chehab Cc: Michel Ludwig Signed-off-by: Mauro Carvalho Chehab --- drivers/staging/tm6000/Kconfig | 2 +- drivers/staging/tm6000/tm6000-core.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/staging/tm6000/Kconfig b/drivers/staging/tm6000/Kconfig index cb2011536363..5fe759cc2ee9 100644 --- a/drivers/staging/tm6000/Kconfig +++ b/drivers/staging/tm6000/Kconfig @@ -1,6 +1,6 @@ config VIDEO_TM6000 tristate "TV Master TM5600/6000/6010 driver" - depends on VIDEO_DEV && I2C && INPUT && EXPERIMENTAL + depends on VIDEO_DEV && I2C && INPUT && USB && EXPERIMENTAL select VIDEO_TUNER select TUNER_XC2028 select VIDEOBUF_VMALLOC diff --git a/drivers/staging/tm6000/tm6000-core.c b/drivers/staging/tm6000/tm6000-core.c index 9d66a3fc091d..afd03929e5a8 100644 --- a/drivers/staging/tm6000/tm6000-core.c +++ b/drivers/staging/tm6000/tm6000-core.c @@ -108,6 +108,7 @@ int tm6000_set_reg (struct tm6000_core *dev, u8 req, u16 value, u16 index) tm6000_read_write_usb (dev, USB_DIR_OUT | USB_TYPE_VENDOR, req, value, index, NULL, 0); } +EXPORT_SYMBOL_GPL(tm6000_set_reg); int tm6000_get_reg (struct tm6000_core *dev, u8 req, u16 value, u16 index) { @@ -122,6 +123,7 @@ int tm6000_get_reg (struct tm6000_core *dev, u8 req, u16 value, u16 index) return *buf; } +EXPORT_SYMBOL_GPL(tm6000_get_reg); int tm6000_get_reg16 (struct tm6000_core *dev, u8 req, u16 value, u16 index) { -- 2.39.5