Le périphérique USB n'accepte pas l'adresse

12

J'ai une série de machines que je construis pour le travail qui ont des lecteurs de cartes USB. Lorsque je les démarre, je reçois une longue série de messages:

...
[ 2347.768419] hub 1-6:1.0: unable to enumerate USB device on port 6
[ 2347.968178] usb 1-6.6: new full-speed USB device number 10 using ehci_hcd
[ 2352.552020] usb 1-6.6: device not accepting address 10, error -32
[ 2352.568421] hub 1-6:1.0: unable to enumerate USB device on port 6
[ 2352.768179] usb 1-6.6: new full-speed USB device number 12 using ehci_hcd
[ 2357.352033] usb 1-6.6: device not accepting address 12, error -32
...

Sur certaines machines plus anciennes, cela ne prend que quelques tentatives avant que le lecteur de carte n'accepte finalement une adresse, tandis que sur les machines plus récentes, cela peut prendre plusieurs minutes. Changer de matériel n'est pas une option et brancher le lecteur de carte USB sur un port différent n'est qu'une option pour les anciennes machines. C'était un problème sous 11.04 et j'utilise maintenant la version bêta 12.04 et ça continue.

Y a-t-il quelque chose que je puisse faire dans le logiciel (une règle udev peut-être?) Qui pourrait résoudre ce problème?

Tout conseil apprécié. Je suis heureux de fournir plus de détails si vous en avez besoin.

mikewilliamson
la source
Pour moi, le problème était avec le câble.
Gayan Weerakutti

Réponses:

6

Pourriez-vous essayer l'ancien schéma d'initialisation pour les périphériques USB? Cela peut être fait en changeant le paramètre du noyau dans /etc/default/grub:

  • changer la ligne qui dit GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"àGRUB_CMDLINE_LINUX_DEFAULT="quiet splash usbcore.old_scheme_first=1"
  • courir update-grub
  • redémarrer et voir si cela a aidé
taneli
la source
2

Dans mon cas, je semble avoir un concentrateur à l'intérieur de la machine (fournissant probablement le cluster à quatre ports à l'arrière) qui n'acceptera pas l'adresse attribuée.

Les messages de journal pour moi ressemblent à ceci:

usb 6-1: new low-speed USB device number 116 using uhci_hcd
usb 6-1: device not accepting address 116, error -71
hub 6-0:1.0: unable to enumerate USB device on port 1

Cela montre que c'est le bus USB 6 . Je n'ai rien de connecté et je veux que ça se taise.

Maintenant, nous devons trouver le pilote approprié. Dans ce cas, c'est uhci_hcddonc

$ sudo -s
# cd /sys/bus/pci/drivers/uhci_hcd

et trouvez quel périphérique PCI fournit le bus USB 6:

# echo */usb6
0000:00:1a.2/usb5

Le nom du répertoire est ici l'ID de bus PCI correspondant à ce bus USB. Ensuite, c'est tout simplement:

# echo 0000:00:1d.0 > unbind

pour l'éteindre.

Si cela fonctionne, seule la dernière ligne peut être ajoutée à un script de démarrage. Il semble qu'il devrait y avoir un paramètre de noyau pour éviter certains bus USB, mais je n'en trouve pas.

(Basé sur la réponse de titaniumtux mais essayant d'éviter de délier mon clavier. Appelez-moi à l'ancienne mais je l'utilise toujours.)

poolie
la source
0

J'ai rencontré la même situation que la tienne.

Mais j'ai utilisé Ubuntu 10.04.

Mais si j'utilisais un autre ordinateur, il ne sortait jamais.

Donc jusqu'à présent, je pense que c'était quelque chose avec mon interface USB.

Après avoir ajouté des règles udev à mon système, cela peut se produire moins auparavant.

Tu peux l'essayer .

Meilleurs vœux!

CathyLuan
la source
0

Créez un script contenant les éléments suivants et exécutez-le au démarrage:

cd /sys/bus/pci/drivers/ehci_hcd/

sudo sh -c 'find ./ -name "0000:00:*" -print| sed "s/\.\///">unbind'

Cela devrait résoudre le problème.

Source: ici

titaniumtux
la source
Notez que cette commande telle qu'elle est écrite va dissocier tous les périphériques EHCI, ce qui pourrait inclure votre clavier.
poolie