Solution possible pour les problèmes de disque USB 3.0

Salut,

J’utilise Debian 6.0 (Squeeze) amd64.

J’avais des problèmes pour faire fonctionner mon disque dur externe USB 3.0 sur mon express cart USB 3.0 (une Trendnet TU3-H2EC), le disque se montait parfois, environ une fois sur 10, et 9 fois sur 10 j’avais plein d’erreurs en regardant dmesg. Si le disque ne se montait pas après avoir démarré, je n’avais pas d’autre choix que de redémarrer encore et encore jusqu’à ce qu’il se monte correctement.

Bien entendu ceci m’a passablement exaspéré et j’ai cherché des solutions sur internet. Mais aucune n’a fonctionné dans mon cas.
Premièrement, voici la sortie de la commande lsmod | grep xhci :

xhci 33444 0 usbcore 122386 6 usb_storage,usbhid,uhci_hcd,ehci_hcd,xhci

Parmis les solutions proposées, voici ce que j’ai essayé :
[list=]
[] Ajouter une option à la ligne du kernel. J’ai édité le fichier /etc/default/grub et ajouté ce qui suit dans le paramètreGRUB_CMDLINE_LINUX : xhci_hcd.enable=1, puis xhci-hcd.enable=1, sans plus de chance. J’ai aussi essayé avecxhci.enable=1 (ça me semblait plus logique puisque je n’ai aucun module du nom de xhci_hcd) mais ça me mettait l’erreur “xhci : unknown parameter enable” et xhci était alors désactivé. J’ai deviné que la solution ne devait pas être loin, mais n’ayant pas la liste des paramètres possibles de xhci, j’ai abandonné. Bien entendu je n’avais pas oublié de faire un update-grub après avoir modifié le fichier.
[
] Créer un fichier /etc/modprobe.d/xhci avec le contenu “options xhci enable=1” ou /etc/modprobe.d/xhci_hcd avec le conten u “options xhci_hcd enable=1” mais toujours rien de concluant.
[*] créer un fichier /etc/pm/config.d/unload_module ou /etc/pm/config.d/xhci_hcd ou /etc/pm/config.d/xhci avec le contenu “SUSPEND_MODULES=xhci_hcd” ou “SUSPEND_MODULES=xhci” mais toujours rien mis à part le fait que la commande “hiberner” m’éteint complètement le PC (mais ne le met pas en hibernation, c’est une extinction complète et je perds tout ce qui était ouvert).
[/list]

Donc rien n’a fonctionné.

J’ai pourtant pressenti que le module xhci était chargé trop tard et que donc il ne fonctionnait pas correctement la plupart du temps. Donc il fallait trouver un moyen de le charger avant les autres modules.

Voici ce que j’ai alors essayé, après avoir restauré les fichiers précédemment modifiés :
[list=]
[*] Ajouter la ligne “xhci” à /etc/modules" de sorte que ce fichier contienne :

firewire-sbp2 loop xhci
Ceci devrait avoir pour effet de charger le module plus tôt durant le boot.
[*] Ajouté une ligne “softdep ehci-hcd pre: xhci-hcd” à /etc/modprobe.d/aliases.conf avant les deux dernières lignes pour forcer xhci à être chargé avant les autres modules ; voici donc les trois dernières lignes de ce fichier :

softdep ehci-hcd pre: xhci-hcd softdep uhci-hcd pre: ehci-hcd softdep ohci-hcd pre: ehci-hcd
[/list]

J’ai alors redémarré. Ça marche ! J’ai alors redémarré à nouveau. Ça marche encore ! J’ai alors redémarré une troisième fois (on ne sait jamais…) Ça a marché une fois de plus ! Mon disque est monté correctement.

Donc si vous souffrez du même problème avec votre périphérique USB 3.0, vous pouvez tester ma solution. Ca faut le coup d’essayer !

En espérant que ça aidera quelqu’un un jour ou l’autre !

Cordialement.

[quote=“gabrielh”]Salut,

J’utilise Debian 6.0 (Squeeze) amd64.

J’avais des problèmes pour faire fonctionner mon disque dur externe USB 3.0 sur mon express cart USB 3.0 (une Trendnet TU3-H2EC), le disque se montait parfois, environ une fois sur 10, et 9 fois sur 10 j’avais plein d’erreurs en regardant dmesg. Si le disque ne se montait pas après avoir démarré, je n’avais pas d’autre choix que de redémarrer encore et encore jusqu’à ce qu’il se monte correctement.

Bien entendu ceci m’a passablement exaspéré et j’ai cherché des solutions sur internet. Mais aucune n’a fonctionné dans mon cas.
Premièrement, voici la sortie de la commande lsmod | grep xhci :

xhci 33444 0 usbcore 122386 6 usb_storage,usbhid,uhci_hcd,ehci_hcd,xhci

Parmis les solutions proposées, voici ce que j’ai essayé :
[ul]
[li] Ajouter une option à la ligne du kernel. J’ai édité le fichier /etc/default/grub et ajouté ce qui suit dans le paramètreGRUB_CMDLINE_LINUX : xhci_hcd.enable=1, puis xhci-hcd.enable=1, sans plus de chance. J’ai aussi essayé avecxhci.enable=1 (ça me semblait plus logique puisque je n’ai aucun module du nom de xhci_hcd) mais ça me mettait l’erreur “xhci : unknown parameter enable” et xhci était alors désactivé. J’ai deviné que la solution ne devait pas être loin, mais n’ayant pas la liste des paramètres possibles de xhci, j’ai abandonné. Bien entendu je n’avais pas oublié de faire un update-grub après avoir modifié le fichier.[/li]
[li] Créer un fichier /etc/modprobe.d/xhci avec le contenu “options xhci enable=1” ou /etc/modprobe.d/xhci_hcd avec le conten u “options xhci_hcd enable=1” mais toujours rien de concluant.[/li]
[li] créer un fichier /etc/pm/config.d/unload_module ou /etc/pm/config.d/xhci_hcd ou /etc/pm/config.d/xhci avec le contenu “SUSPEND_MODULES=xhci_hcd” ou “SUSPEND_MODULES=xhci” mais toujours rien mis à part le fait que la commande “hiberner” m’éteint complètement le PC (mais ne le met pas en hibernation, c’est une extinction complète et je perds tout ce qui était ouvert).[/li][/ul]

Donc rien n’a fonctionné.

J’ai pourtant pressenti que le module xhci était chargé trop tard et que donc il ne fonctionnait pas correctement la plupart du temps. Donc il fallait trouver un moyen de le charger avant les autres modules.

Voici ce que j’ai alors essayé, après avoir restauré les fichiers précédemment modifiés :
[ul]
[li] Ajouter la ligne “xhci” à /etc/modules" de sorte que ce fichier contienne :

firewire-sbp2 loop xhci
Ceci devrait avoir pour effet de charger le module plus tôt durant le boot.[/li]
[li] Ajouté une ligne “softdep ehci-hcd pre: xhci-hcd” à /etc/modprobe.d/aliases.conf avant les deux dernières lignes pour forcer xhci à être chargé avant les autres modules ; voici donc les trois dernières lignes de ce fichier :

softdep ehci-hcd pre: xhci-hcd softdep uhci-hcd pre: ehci-hcd softdep ohci-hcd pre: ehci-hcd[/li][/ul]

J’ai alors redémarré. Ça marche ! J’ai alors redémarré à nouveau. Ça marche encore ! J’ai alors redémarré une troisième fois (on ne sait jamais…) Ça a marché une fois de plus ! Mon disque est monté correctement.

Donc si vous souffrez du même problème avec votre périphérique USB 3.0, vous pouvez tester ma solution. Ca faut le coup d’essayer !

En espérant que ça aidera quelqu’un un jour ou l’autre !

Cordialement.[/quote]