On 06/21/13 17:27, Laurent Pinchart wrote: > Hi, > > On Thursday 20 June 2013 11:52:44 Jim Davis wrote: >> Building with the attached random configuration file generates errors in >> both >> > [snip] > > The issue seem to be caused by USB_VIDEO_CLASS=y and VIDEO_V4L2=m && USB=m. > I'm not sure what made that combination possible, but I haven't been able to > reproduce it locally on next-20130620. Running make with the attached config > turns USB_VIDEO_CLASS=y into USB_VIDEO_CLASS=m. Yes, same for me: USB_VIDEO_CLASS=m instead of =y. However, please check the attached config file (as reported on June 17). On linux-next of 20130621 it still produces: CONFIG_USB_VIDEO_CLASS=y CONFIG_VIDEO_V4L2=m CONFIG_USB=m drivers/built-in.o: In function `vb2_fop_mmap': (.text+0xb8188): undefined reference to `video_devdata' drivers/built-in.o: In function `vb2_ioctl_streamoff': (.text+0xb8901): undefined reference to `video_devdata' drivers/built-in.o: In function `vb2_ioctl_streamon': (.text+0xb8a75): undefined reference to `video_devdata' drivers/built-in.o: In function `vb2_ioctl_expbuf': (.text+0xb8c71): undefined reference to `video_devdata' drivers/built-in.o: In function `vb2_ioctl_querybuf': (.text+0xb8df5): undefined reference to `video_devdata' drivers/built-in.o:(.text+0xb95c9): more undefined references to `video_devdata' follow drivers/built-in.o: In function `vb2_fop_release': (.text+0xb9a1b): undefined reference to `v4l2_fh_release' drivers/built-in.o: In function `vb2_ioctl_qbuf': (.text+0xb9fb0): undefined reference to `video_devdata' drivers/built-in.o: In function `vb2_ioctl_prepare_buf': (.text+0xba359): undefined reference to `video_devdata' drivers/built-in.o: In function `vb2_poll': (.text+0xba4ce): undefined reference to `video_devdata' drivers/built-in.o: In function `vb2_poll': (.text+0xba500): undefined reference to `v4l2_event_pending' drivers/built-in.o: In function `vb2_fop_poll': (.text+0xba6fe): undefined reference to `video_devdata' drivers/built-in.o: In function `vb2_ioctl_dqbuf': (.text+0xbabe4): undefined reference to `video_devdata' drivers/built-in.o: In function `vb2_fop_write': (.text+0xbafcc): undefined reference to `video_devdata' drivers/built-in.o: In function `vb2_fop_read': (.text+0xbb0b6): undefined reference to `video_devdata' drivers/built-in.o: In function `uvc_delete': uvc_driver.c:(.text+0xbb835): undefined reference to `v4l2_device_unregister' uvc_driver.c:(.text+0xbb880): undefined reference to `video_device_release' drivers/built-in.o: In function `uvc_unregister_video': uvc_driver.c:(.text+0xbb938): undefined reference to `video_unregister_device' drivers/built-in.o: In function `uvc_probe': uvc_driver.c:(.text+0xbd38d): undefined reference to `v4l2_device_register' uvc_driver.c:(.text+0xbd42a): undefined reference to `v4l2_prio_init' uvc_driver.c:(.text+0xbd954): undefined reference to `video_device_alloc' uvc_driver.c:(.text+0xbd9f5): undefined reference to `__video_register_device' uvc_driver.c:(.text+0xbda19): undefined reference to `video_device_release' drivers/built-in.o: In function `uvc_v4l2_ioctl': uvc_v4l2.c:(.text+0xbe346): undefined reference to `v4l_printk_ioctl' uvc_v4l2.c:(.text+0xbe369): undefined reference to `video_usercopy' drivers/built-in.o: In function `uvc_v4l2_open': uvc_v4l2.c:(.text+0xbe8b8): undefined reference to `video_devdata' uvc_v4l2.c:(.text+0xbe97e): undefined reference to `v4l2_fh_init' uvc_v4l2.c:(.text+0xbe986): undefined reference to `v4l2_fh_add' drivers/built-in.o: In function `uvc_v4l2_release': uvc_v4l2.c:(.text+0xbea20): undefined reference to `v4l2_fh_del' uvc_v4l2.c:(.text+0xbea28): undefined reference to `v4l2_fh_exit' drivers/built-in.o: In function `uvc_v4l2_do_ioctl': uvc_v4l2.c:(.text+0xbeaa3): undefined reference to `video_devdata' uvc_v4l2.c:(.text+0xbee15): undefined reference to `v4l2_prio_max' uvc_v4l2.c:(.text+0xbee33): undefined reference to `v4l2_prio_check' uvc_v4l2.c:(.text+0xbee58): undefined reference to `v4l2_prio_change' uvc_v4l2.c:(.text+0xbeecd): undefined reference to `v4l2_prio_check' uvc_v4l2.c:(.text+0xbefcf): undefined reference to `v4l2_prio_check' uvc_v4l2.c:(.text+0xbf210): undefined reference to `v4l2_prio_check' uvc_v4l2.c:(.text+0xbf33a): undefined reference to `v4l2_prio_check' uvc_v4l2.c:(.text+0xbf621): undefined reference to `v4l2_prio_check' drivers/built-in.o:uvc_v4l2.c:(.text+0xbf6d8): more undefined references to `v4l2_prio_check' follow drivers/built-in.o: In function `uvc_v4l2_do_ioctl': uvc_v4l2.c:(.text+0xbf880): undefined reference to `v4l2_event_subscribe' uvc_v4l2.c:(.text+0xbf890): undefined reference to `v4l2_event_unsubscribe' uvc_v4l2.c:(.text+0xbf8ab): undefined reference to `v4l2_event_dequeue' drivers/built-in.o: In function `uvc_ctrl_add_event': uvc_ctrl.c:(.text+0xc2526): undefined reference to `v4l2_event_queue_fh' drivers/built-in.o: In function `uvc_ctrl_send_event': uvc_ctrl.c:(.text+0xc25c5): undefined reference to `v4l2_event_queue_fh' drivers/built-in.o:(.rodata+0xfe20): undefined reference to `v4l2_ctrl_replace' drivers/built-in.o:(.rodata+0xfe28): undefined reference to `v4l2_ctrl_merge' -- ~Randy