LINUX.ORG.RU

web-камера sn9c102 возвращает ENOSPC

 , ,


0

1

при попытке открыть девайс /dev/video1 выдаёт «No space left on device»

dmesg

[62303.923616] usb 2-1.6: SN9C10[12] PC Camera Controller detected (vid:pid 0x0C45:0x6007)
[62303.944925] usb 2-1.6: TAS5110D image sensor detected
[62303.947838] usb 2-1.6: Initialization succeeded
[62303.947863] usb 2-1.6: V4L2 device registered as video1
[62303.947864] usb 2-1.6: Optional device control through 'sysfs' interface disabled
[62303.947876] usbcore: registered new interface driver sn9c102
[62303.963478] usb 2-1.6: usb_submit_urb() failed, error -28
28, согластно include/asm-generic/errno-base.h, это так же ENOSPC.

в коде ошибка находится в drivers/media/video/sn9c102/sn9c102_core.c в sn9c102_start_transfer(). глубже спустится не осилил т.к. там какая-то usb-шная бабуйня...

гугл полнится подобными проблемами, но решения среди них я не нашёл... что-то говорили про то, что bandwidth слишком большой и конфликтует с другими устройствами, и про то, что надо уменьшить размер пакета, но о чём это и как именно - я хз... со внутренностями usb я не сталкивался...

lsusb

Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 010: ID 046d:c05b Logitech, Inc. M-U0004 810-001317 [B110 Optical USB Mouse]
Bus 001 Device 011: ID 03f0:3404 Hewlett-Packard DeskJet 6122
Bus 002 Device 009: ID 0c45:6007 Microdia VideoCAM Eye

lsusb -t

/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
        |__ Port 6: Dev 9, If 0, Class=Vendor Specific Class, Driver=sn9c102, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
        |__ Port 1: Dev 10, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
        |__ Port 3: Dev 11, If 0, Class=Printer, Driver=, 12M

идеи есть какие-нить?

Может я ошибаюсь, но USB камера подключена к USB3.0. Подключи ее в обычный USB2.0 и попробуй. Отпиши результат.

pitman ()
Ответ на: комментарий от Fat-Zer

Да, ошибся чуток. Как вариант забанить модуль xhci_hcd для USB3.0 в module.blacklist и попробовать.

Встречал подобную ошибку в комбинации V4L девайса и USB3.0.

pitman ()
7 апреля 2013 г.

на новом(3.7) ядре работает через другой драйвер, gspca_sonixb. на старом(3.6) проверять нет желания...

[решено]

Fat-Zer ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.