Forum Linux.général Manips USB

Posté par  .
Étiquettes : aucune
0
22
nov.
2004
Comment peut-on déconnecter un périph USB sous Linux sans le débrancher (si c'est possible...) (et en user space aussi, si possible a coup de commandes depuis le bash) (chuis exigeant hein ;) ?
J'ai bien pensé à balancer des trucs dans /proc/bus/usb mais recherches infructueuses jusqu'à présent.
  • # Que veut tu faire exactement?

    Posté par  . Évalué à 2.

    Si tu n'as qu'un seul perif d'un type et que tu veux re-initialiser la couche usb comme une deconnection fais le a coup de
    rmmod nom_du_module_qui_gere_mon_perif
    modprobe nom_du_module_qui_gere_mon_perif
    comme ca le module reprendra en charge a partir de 0 la gestion de ton perif.
    Par contre il n'y auras pas de re-enumeration sur le bus !
    • [^] # Re: Que veut tu faire exactement?

      Posté par  (site web personnel) . Évalué à 2.

      Souvent, quand je fais ça, il refuse de faire le rmmod en me disant que le module est utilisé. Par contre, débranchement, rebranchement physique, modprobe, et ça roule ...

      Y'a une solution 100% soft dans ces cas là ?
      • [^] # Re: Que veut tu faire exactement?

        Posté par  . Évalué à 2.

        trois choix:
        1)l'option -f de rmmod dans les serie 2.6 (mais il faut que le kernel soit compilé avec l'option CONFIG_MODULE_FORCE_UNLOAD)
        *ATTENTION* cette option est potentiellement dangereuse faut pas trop jouer avec
        2)l'option -w (wait for completion) qui interdit a un nouveau process d'utiliser ce module donc quand le dernier process utilisant ce module le libereras ce module sera decharger de la memoire.
        3)savoir pourquoi le module ce bloque et corriger cela
  • # Déconnecter le HUB.

    Posté par  . Évalué à 2.

    Je fais ça aussi pour réinitialiser un modem ADSL récalcitrant (je suppose que tu as le même problème), parce que cela me fait braire d'aller débrancher/rebrancher le câble USB à chaque fois : Pas bon pour la connectique.

    L'astuce que j'ai trouvé est la suivante : rmmod usb-uhci (ou rmmod uhci, ou encore rmmod ohci, selon les cas). Cela « descend » la gestion du hub USB comme pour une interface réseau et donc, quand l'implémentation est bien réalisée, cela mets tout le bus hors-tension.

    Y a plus qu'a remodprober et tout rentre dans l'ordre.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.