View previous topic :: View next topic |
Author |
Message |
bercianor n00b
Joined: 10 Feb 2015 Posts: 11
|
Posted: Tue Feb 10, 2015 10:00 pm Post subject: [solved]/dev/video* doesn't exist and uvcvideo module not fo |
|
|
Hi all!
First of all I want to apologize for my english if I make some mistakes with the language...
In my first post in the forum I bring you a problem that makes me mad.
I've a "Creative Webcam" that appears when connected in the dmesg without any relevant error. In lsusb appears detected as well. On my kernel configuration I have the following options
MEDIA_SUPPORT [=y]
MEDIA_CAMERA_SUPPORT [=y]
MEDIA_USB_SUPPORT [=y]
USB_VIDEO_CLASS [=m] or USB_VIDEO_CLASS [=y] (I'm trying with both)
and some others (if necessary I'll paste all kernel .config)
Now the issue is that there isn't any /dev/video* device and when I try with the UVC as module it doesn't appear as module so "modprobe uvcvideo" says me: "FATAL: Module uvcvideo not found" and it doesn't appears in lsmod output.
Checking the genkernel log there isn't any reference to uvcvideo neither.
I'm using kernel 3.17.8-r1 from gentoo repository under a 64 bits system.
Many thanks in advance
Last edited by bercianor on Thu Feb 12, 2015 8:42 pm; edited 1 time in total |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54123 Location: 56N 3W
|
Posted: Tue Feb 10, 2015 10:10 pm Post subject: |
|
|
bercianor,
Welcome to Gentoo.
Lets start from the very beginning, post the line from lsusp that shows your webcam. Then we can check whicd kernel driver it really needs.
Rule one is assume nothing.
if you are sure that uvcvideo is a module and its not found, that is a pointer to you incorrectly installing your kernel, modules or both.
There is a test. Run Code: | uname -a
Linux NeddySeagoon_Static 3.16.1-gentoo #2 SMP PREEMPT Tue Sep 2 18:13:29 BST 2014 x86_64 AMD Phenom(tm) II X6 1090T Processor AuthenticAMD GNU/Linux | and look at the date and time. Here its Tue Sep 2 18:13:29 BST 2014. Thats the build time of the running kernel.
If you have made a kernel since the time in your uname -a, you are not using it. Possibly because you did not before installing it. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
bercianor n00b
Joined: 10 Feb 2015 Posts: 11
|
Posted: Wed Feb 11, 2015 7:09 pm Post subject: |
|
|
Hi NeddySeagoon,
thanks for the reply.
below I paste the output from both commands:
Code: | $> lsusb
Bus 001 Device 005: ID 041e:4071 Creative Technology, Ltd |
Code: | $> uname -a
Linux betelgeuse 3.17.8-gentoo-r1 #1 SMP Tue Feb 10 19:48:42 CET 2015 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 5600+ AuthenticAMD GNU/Linux |
which matches with the last kernel installation I did |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54123 Location: 56N 3W
|
Posted: Wed Feb 11, 2015 7:27 pm Post subject: |
|
|
bercianor,
This page shows that UVC is indeed the correct module for your webcam.
Your kernel install looks promising too.
Did you remember to run Code: | make modules_install | as part of your kernel build.
Its harmless to do that again. cd to your kernel tree, run that command, look in the output for the UVC module and try to modprobe it again.
Either USB_VIDEO_CLASS [=m] or USB_VIDEO_CLASS [=y] should work but only =m will give you a loadable module.
If all that looks good, make friends with wgetpaste and use it to put the output of onto a pastebin and your kernel .config file.
Neither will fit in a forums post. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
bercianor n00b
Joined: 10 Feb 2015 Posts: 11
|
Posted: Wed Feb 11, 2015 7:59 pm Post subject: |
|
|
NeddySeagoon,
I use genkernel with the --menuconfig option to install the kernel which I think to do that... anyway I do a make modules_install as you suggest, but UVC module doesn't appears in the output and is still missing.
Here you have the output of lsusb -vvv -d 041e:4071: https://bpaste.net/show/4abd68b725cd (I only extract the device output to avoid a lot of text)
and kernel .config file: https://bpaste.net/show/420b25037837 |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54123 Location: 56N 3W
|
Posted: Wed Feb 11, 2015 8:43 pm Post subject: |
|
|
bercianor,
I really wanted the complete lsusb -vvv output. Webcams can cause power issues for USB root hubs.
They usually need 500mA which is all a root hub is permitted to supply. This means that you cannot have other devices on the same USB root hub as the web cam at the same time.
With the entire output, I can see your entire USB device tree and work out if you may be having USB power issues.
Here we see that your webcam is Code: | Bus 001 Device 005: | whih hints that there are other divicesn on the bus, and it does indeed need a whole USB root hub to itself. True, I only need 3 or 4 lines for each device but if you post it, I'll find them.
Your kernel config is interesting
Code: | #
# Webcam devices
#
CONFIG_USB_VIDEO_CLASS=m | so you should have uvc as a module but you have already confirmed that its not there.
From your previous post, we knom that you are running Code: | 3.17.8-gentoo-r1 #1 SMP Tue Feb 10 19:48:42 CET 2015 |
What does Code: | readlink /usr/src/linux | return?
Thats the kernel that genkernel is building for you.
What does Code: | zgrep USB_VIDEO_CLASS /proc/config.gz | have to say?
Thats the .config used to build the running kernel, if you have /proc/config.gz _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
bercianor n00b
Joined: 10 Feb 2015 Posts: 11
|
Posted: Wed Feb 11, 2015 8:56 pm Post subject: |
|
|
NeddySeagoon,
here you have the entire lsusb -vvv output: https://bpaste.net/show/0127479e0f9a In advance I can say you that the webcam is directly plugged to a motherboard USB port.
and the outputs from the commands:
Code: | #> readlink /usr/src/linux
linux-3.17.8-gentoo-r1 |
Code: | #> zgrep USB_VIDEO_CLASS /proc/config.gz | returns nothing |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54123 Location: 56N 3W
|
Posted: Wed Feb 11, 2015 9:29 pm Post subject: |
|
|
bercianor,
Heres your USB Device tree extracted from your pastebin.
Code: | Bus 001 Device 008: ID 046d:c062 Logitech, Inc. M-UAS144 [LS1 Laser Mouse]
bcdUSB 2.00
MaxPower 98mA
Bus 001 Device 006: ID 05e3:0608 Genesys Logic, Inc. Hub
bcdUSB 2.00
MaxPower 100mA
Bus 001 Device 004: ID 05e3:0607 Genesys Logic, Inc. Logitech G110 Hub
bcdUSB 2.00
MaxPower 100mA
Bus 001 Device 005: ID 041e:4071 Creative Technology, Ltd
bcdUSB 2.00
MaxPower 500mA
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
bcdUSB 2.00
MaxPower 0mA |
Bus 001 is USB2, as are all the devices connected to it, so it will operate at USB2 speeds.
Unfortunately, its connected load is 798mA with an allowable maximum of 500mA.
Under power overload conditions like this, behavior varies from everything vorks to nothing works and in between, some things work.
Code: | Bus 002 Device 003: ID 03f0:1024 Hewlett-Packard Smart Card Keyboard
bcdUSB 2.00
MaxPower 100mA
Bus 002 Device 002: ID 047f:c00f Plantronics, Inc.
bcdUSB 2.00
MaxPower 100mA
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
bcdUSB 1.10
MaxPower 0mA |
Bus 002 is only USB 1.1 capable but all the connected devices are USB2 capable.
They are only running at USB1 speeds.
What to do about it.
Test with only the webcam connected to Bus 001, so you will want to move your mouse to Bus 002.
You seem to have two bus powered hubs connected to Bus 001.
Bus powered hubs are usually a bad idea unless its for low powered devices only.
I'm still not convinced its just a power issue becase your kernel .config does not tie up with the kernel in use.
if zgrep USB_VIDEO_CLASS /proc/config.gz and /proc/config.gz exists, then USB_VIDEO_CLASS is not set in the running kernel.
If /proc/config.gz is missing, then we can't tell.
Do you really only have two USB busses. Thats an unusally low number?
What does lspci show? _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
bercianor n00b
Joined: 10 Feb 2015 Posts: 11
|
Posted: Wed Feb 11, 2015 10:30 pm Post subject: |
|
|
NeddySeagoon,
the file /proc/config.gz really exists, but as you say, seems that the USB_VIDEO_CLASS isn't set in that kernel and I think that it is the cuestion who needs an answer.
About the power issue, after test only in the Bus002 with only the webcam, it still didn't work. I don't think the issue comes from there.
After plugging the webcam again, in dmesg appears the following (if it can help)
Code: | [51224.015636] usb 1-10: USB disconnect, device number 5
[51226.680052] usb 1-10: new high-speed USB device number 10 using ehci-pci
[51226.866568] usb 1-10: New USB device found, idVendor=041e, idProduct=4071
[51226.866572] usb 1-10: New USB device strings: Mfr=2, Product=1, SerialNumber=3
[51226.866574] usb 1-10: Product: VF0415 Live! Cam Vid. IM Ultra
[51226.866575] usb 1-10: Manufacturer: Creative Technology Ltd.
[51226.866577] usb 1-10: SerialNumber: 081030_A_02680
[51226.896811] usb 1-10: 3:1: cannot get freq at ep 0x84
[51226.906807] usb 1-10: Warning! Unlikely big volume range (=3328), cval->res is probably wrong.
[51226.906810] usb 1-10: [2] FU [Mic Capture Volume] ch = 1, val = 4608/7936/1
[51228.519936] usb 1-10: 3:1: cannot get freq at ep 0x84
[51228.542937] usb 1-10: 3:1: cannot get freq at ep 0x84
[51228.823808] usb 1-10: 3:1: cannot get freq at ep 0x84
[51228.846933] usb 1-10: 3:1: cannot get freq at ep 0x84 |
In lspci appears only 2 usb buses:
Code: | #> lspci
00:00.0 RAM memory: NVIDIA Corporation C51 Host Bridge (rev a2)
00:00.1 RAM memory: NVIDIA Corporation C51 Memory Controller 0 (rev a2)
00:00.2 RAM memory: NVIDIA Corporation C51 Memory Controller 1 (rev a2)
00:00.3 RAM memory: NVIDIA Corporation C51 Memory Controller 5 (rev a2)
00:00.4 RAM memory: NVIDIA Corporation C51 Memory Controller 4 (rev a2)
00:00.5 RAM memory: NVIDIA Corporation C51 Host Bridge (rev a2)
00:00.6 RAM memory: NVIDIA Corporation C51 Memory Controller 3 (rev a2)
00:00.7 RAM memory: NVIDIA Corporation C51 Memory Controller 2 (rev a2)
00:04.0 PCI bridge: NVIDIA Corporation C51 PCI Express Bridge (rev a1)
00:08.0 RAM memory: NVIDIA Corporation MCP55 Memory Controller (rev a1)
00:09.0 ISA bridge: NVIDIA Corporation MCP55 LPC Bridge (rev a2)
00:09.1 SMBus: NVIDIA Corporation MCP55 SMBus Controller (rev a2)
00:09.2 RAM memory: NVIDIA Corporation MCP55 Memory Controller (rev a2)
00:0a.0 USB controller: NVIDIA Corporation MCP55 USB Controller (rev a1)
00:0a.1 USB controller: NVIDIA Corporation MCP55 USB Controller (rev a2)
00:0c.0 IDE interface: NVIDIA Corporation MCP55 IDE (rev a1)
00:0d.0 IDE interface: NVIDIA Corporation MCP55 SATA Controller (rev a2)
00:0d.1 IDE interface: NVIDIA Corporation MCP55 SATA Controller (rev a2)
00:0d.2 IDE interface: NVIDIA Corporation MCP55 SATA Controller (rev a2)
00:0e.0 PCI bridge: NVIDIA Corporation MCP55 PCI bridge (rev a2)
00:0e.1 Audio device: NVIDIA Corporation MCP55 High Definition Audio (rev a2)
00:11.0 Bridge: NVIDIA Corporation MCP55 Ethernet (rev a2)
00:15.0 PCI bridge: NVIDIA Corporation MCP55 PCI Express bridge (rev a2)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] K8 [Athlon64/Opteron] DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
01:00.0 VGA compatible controller: NVIDIA Corporation G92 [GeForce 9600 GSO] (rev a2)
02:07.0 Multimedia video controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
02:07.1 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (rev 05)
02:07.2 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (rev 05)
02:07.4 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [IR Port] (rev 05) |
|
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54123 Location: 56N 3W
|
Posted: Wed Feb 11, 2015 10:46 pm Post subject: |
|
|
bercianor,
Plugging in the webcam should have listed the driver that was being used but it did not.
That points to the kernel.
Lets check some file timestamps to ensure everything hangs together will show times and dates.
In chronological order ...
It all starts with
Code: | /usr/src/linux/.config | This should be the oldest file.
After this, you build the kernel binary
Code: | /usr/src/linux/arch/x86/boot/bzImage | so his must be newer, or the .config has changed since the kernel was built.
Do you have a separate /boot partition?
If so ls /boot should be empty now. Check that then mount /boot
In /boot you should have a kernel with the same timestamp as /usr/src/linux/arch/x86/boot/bzImage, since its a renamed copy.
Make a note of the kernel file name.
Look in your bootloader config file to ensure that this kernel is being loaded.
You do indeed only have two USB root hubs
Code: | 00:0a.0 USB controller: NVIDIA Corporation MCP55 USB Controller (rev a1)
00:0a.1 USB controller: NVIDIA Corporation MCP55 USB Controller (rev a2) |
_________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
bercianor n00b
Joined: 10 Feb 2015 Posts: 11
|
Posted: Thu Feb 12, 2015 2:14 pm Post subject: |
|
|
NeddySeagoon,
Code: | $> ls -l /usr/src/linux/.config
-rw-r--r-- 1 root root 108899 feb 11 20:52 /usr/src/linux/.config |
Code: | $> ls -l /usr/src/linux/arch/x86/boot/bzImage
-rw-r--r-- 1 root root 3703936 feb 11 21:06 /usr/src/linux/arch/x86/boot/bzImage |
I have a separate /boot partition, but it is already mounted... Code: | $> ls -l /boot/kernel*
-rw-r--r-- 1 root root 3703936 feb 11 21:06 /boot/kernel-genkernel-x86_64-3.17.8-gentoo-r1 |
In /boot/grub/grub.cfg indeed it loads the file kernel-genkernel-x86_64-3.17.8-gentoo-r1
About the dates, yesterday I tried to compile the kernel again, that is why the kernel's date was updated
Code: | $> uname -a
Linux betelgeuse 3.17.8-gentoo-r1 #1 SMP Wed Feb 11 21:06:40 CET 2015 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 5600+ AuthenticAMD GNU/Linux |
|
|
Back to top |
|
|
krinn Watchman
Joined: 02 May 2003 Posts: 7470
|
Posted: Thu Feb 12, 2015 2:33 pm Post subject: |
|
|
- You enable a module in your .config
- You build the kernel
- You check the kernel : it match the build new version and date, but still lack the module from your .config
So it might comes from someone that is not using your .config or altering it, as you don't use a stock kernel but a genkernel ; are you sure genkernel is using "that" .config?
Please check genkernel doesn't use some caching or its own .config... or anything that would prevent genkernel from using the .config you think he should use.
Or build a kernel without genkernel help.
(i don't know what genkernel do or can do, but it seems it doesn't do what you think it should: ie using the .config you alter to enable the module you need) |
|
Back to top |
|
|
bercianor n00b
Joined: 10 Feb 2015 Posts: 11
|
Posted: Thu Feb 12, 2015 8:41 pm Post subject: |
|
|
krinn!!
you hit the nail on the head!
genkernel used an incorrect .config file. I run genkernel with the option --kernel-config, I select the correct .config file, and now it was compiled correctly!
Many thanks to you for the clue, and many thanks to NeddySeagoon for all the time and effort |
|
Back to top |
|
|
|