Reconhecimento de kernel do estado alterado de USB, mas sem feedback de status de USB de nível superior correto

4
$ dmesg | grep usb 

... mostra a mudança de status no USB ao conectar / desconectar

$ lsusb -v

lista o USB como um 'hub'

$ usb-devices

não me dá a saída desejada de:

T:  Bus=02 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#=  6 Spd=12  MxCh= 0
D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=06c2 ProdID=007b Rev=01.01
S:  Manufacturer=Phidgets Inc.
S:  Product=PhidgetStepper
S:  SerialNumber=267330
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=96mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=00 Prot=00 Driver=usbhid

... mas em vez disso:

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 3
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev=03.05
S:  Manufacturer=Linux 3.5.0-mt9v034+ ehci_hcd
S:  Product=OMAP-EHCI Host Controller
S:  SerialNumber=ehci-omap.0
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

Alguma idéia sobre o que pode ser a causa do kernel de baixo nível, captando as mudanças no USB ... mas sem identificação de nível mais alto do dispositivo (como com usb-devices )?

Também é importante notar que isso está tentando controlar um phidgets stepper, com uma instalação correta verificada no Linux por estes direções .

Na inicialização do host, também recebo esse erro via dmesg :

[    0.152526] usbhs_omap usbhs_omap: xclk60mhsp2_ck set parentfailed error:-22

E este novo comando que acabei de encontrar:

$ hwinfo --usb

Acontece uma saída cheia de erros:

hal.1: read hal dataprocess 1711: arguments to dbus_move_error() were incorrect, assertion "(dest) == NULL || !dbus_error_is_set ((dest))" failed in file ../../dbus/dbus-errors.c line 282.
This is normally a bug in some application using the D-Bus library.
libhal.c 3483 : Error unsubscribing to signals, error=The name org.freedesktop.Hal was not provided by any .service files
07: USB 00.0: 10a00 Hub                                         
[Created at usb.122]
Unique ID: k4bc.qEeA4IsuqFC
SysFS ID: /devices/platform/usbhs_omap/ehci-omap.0/usb1/1-0:1.0
SysFS BusID: 1-0:1.0
Hardware Class: hub
Model: "Linux 3.5.0-mt9v034+ ehci_hcd OMAP-EHCI Host Controller"
Hotplug: USB
Vendor: usb 0x1d6b "Linux 3.5.0-mt9v034+ ehci_hcd"
Device: usb 0x0002 "OMAP-EHCI Host Controller"
Revision: "3.05"
Serial ID: "ehci-omap.0"
Driver: "hub"
Driver Modules: "usbcore"
Speed: 480 Mbps
Module Alias: "usb:v1D6Bp0002d0305dc09dsc00dp00ic09isc00ip00"
Config Status: cfg=new, avail=yes, need=no, active=unknown

Editar:

Depois de instalar o hal

$ sudo apt-get install hal

A saída de

$ hwinfo --usb

limpo:

07: USB 00.0: 10a00 Hub                                         
[Created at usb.122]
UDI: /org/freedesktop/Hal/devices/usb_device_1d6b_2_ehci_omap_0_if0
Unique ID: k4bc.qEeA4IsuqFC
SysFS ID: /devices/platform/usbhs_omap/ehci-omap.0/usb1/1-0:1.0
SysFS BusID: 1-0:1.0
Hardware Class: hub
Model: "Linux 3.5.0-mt9v034+ ehci_hcd OMAP-EHCI Host Controller"
Hotplug: USB
Vendor: usb 0x1d6b "Linux 3.5.0-mt9v034+ ehci_hcd"
Device: usb 0x0002 "OMAP-EHCI Host Controller"
Revision: "3.05"
Serial ID: "ehci-omap.0"
Driver: "hub"
Driver Modules: "usbcore"
Speed: 480 Mbps
Module Alias: "usb:v1D6Bp0002d0305dc09dsc00dp00ic09isc00ip00"
Config Status: cfg=new, avail=yes, need=no, active=unknown

O arranque também parece estar a causar um problema:

$ dmesg grep | usb

mostrando esses dois erros na inicialização:

[    0.067077]  usbhs_omap: alias fck already exists
...
[    0.152496] usbhs_omap usbhs_omap: xclk60mhsp2_ck set parentfailed error:-22

POR PEDIDO:

$ sudo uname -a
Linux statler 3.5.0-mt9v034+ #1 PREEMPT Thu May 30 22:23:53 UTC 2013 armv7l armv7l armv7l GNU/Linux

... e a saída de:     $ sudo lsusb -v

link

    
por carl crott 09.09.2013 / 22:51

1 resposta

2

O seu USB está configurado no BIOS e no Linux para o modo legado e / ou USB 3.0? Parece que ele pode estar tentando usar um dos dois ou enquanto ambos não estão configurados para isso.

Pesquisar o ID do fornecedor fornecido na saída hwinfo -usb sugere que o problema é que seu vídeo e / ou driver USB não estão configurados corretamente. Como você precisa que o EHCI para USB funcione corretamente, e isso mostra que o HAL está gerando erros, é seguro dizer que é de onde vêm seus problemas com o USB.

Atualização: Parece que certas versões da placa podem não suportar USB 2.0 ou podem precisar ter suporte a USB_OTG embutido. Eu encontrei algumas guias para a placa beagle que devem cobrir qualquer configuração que você possa ter, mas há são muitas possibilidades para cobrir todos eles aqui.

P.S. Se você estiver usando alguma outra coisa, então um beagleboard ainda fornecerá boas informações para esse chip, mas é claro que você não vai querer passar nada dele diretamente para o seu dispositivo.

Para uma visão geral das diferenças entre alguns deles tipos de USB e o que eles podem ver: link

p"atches do uboot para placas com diferentes configurações de USB: link p">

Drivers USB do Core Linux para OMAP: link

Espero que isso ajude!

    
por 11.09.2013 / 00:11

Tags