I 'm running Angstrom distribution (console only) on BeagleBoard-xM. Image was build on Narcissus, with Bootloader Files (x-load/u-boot/scripts) added.

I want to connect a USB webcam (Logitech Pro 9000). Problem is that device isn't recognised by the kernel (/dev/video0 not listed). I have some questions:

  1. Is Video4Linux the driver I 'm looking for?
  2. Should I had include a toolchain on Narcissus, in order to build Video4Linux, before installing it? (any installation guide would really be appreciated).
  3. Is there any way instead, to rebuild Angstrom image including the appropriate drivers?

Any help, would be really appreciated.

closed as too broad by Anthon, Zelda, slm, rahmu, peterph Jan 16 '14 at 23:20

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • Why not patching the kernel with the good module? – Braiam Jan 16 '14 at 19:15

Your camera is on this list, so you should be able to get it to work with a properly configured kernel.

Is Video4Linux the driver I 'm looking for?

V4L (actually, V4L2, as V4L1 is obsolete) is a subsystem that includes drivers for various kinds of video devices. I believe that USB video is now standardized, and so there's really only one driver covering most webcams, the UVC (= USB Video Class) driver.

...in order to build Video4Linux...

It's part of the kernel, although it looks like you should be able to add support by just building the appropriate module(s) -- in any case, building modules requires the source tree your kernel was built from. In the 3.11 source, the USB video driver is in Device Drivers -> Multimedia Support -> Media USB Adapters -> USB Video Class. If you select those, V4L2 is included.

That should get the device node to show up.

  • If I am correct, UVC driver is part of multiple drivers that V4L2 subsystem contains and this driver itself will make the work done. – dempap Jan 17 '14 at 16:20
  • No, it is one of various drivers that fall under the V4L2 umbrella. USB video is standardized, meaning modern webcams should all work using the same driver, just like mice. They should not require individualized drivers because they are supposed to be built to a unifying standard, hardware interface wise. Of course, there are bound to be improper implementations and non-standard features, which is why there's the "works, doesn't work" list, etc. – goldilocks Jan 17 '14 at 16:29
  • Thanks for you quick reply. One more thing I can't figure out: I accessed the lib/modules/2.6.32/kernel/drivers directory. Is there somewhere the drivers I 'm looking for, in order to build them? – dempap Jan 17 '14 at 17:53
  • You build them by changing .config to include whatever options, e.g., via make menuconfig; if all you've changed is to add some M options, you don't need to re-build the kernel, you can just make modules_install -- beware you've set $INSTALL_MOD_PATH correctly. You can then copy specific modules directories into the target's /lib/modules/x.x.x and run depmod with the correct -b switch (or run depmod on the target system, since you don't need this one to boot). Also beware the kernel is persnickety about version numbers, etc. Use the exact same source tree! – goldilocks Jan 17 '14 at 18:29
  • I installed uvc driver opkg install kernel-module-uvcvideo and now, usb webcam is recognized (dev/video0). However I miss v4l2 drivers. Command make menuconfig failed with error: make: *** No rule to make target 'menuconfig'. Stop. I think I miss kernel sources, as directory usr/src is empty. Is there any way installing v4l2 drivers without all kernel sources? Thank's in advance. – dempap Feb 6 '14 at 18:58

Not the answer you're looking for? Browse other questions tagged or ask your own question.