Journal Docs sur /proc/bus/usb

Posté par  (site web personnel) .
Étiquettes : aucune
0
15
avr.
2004
Je dois (entre autres choses) ecrire un driver pour un nouveau peripherique USB. Comme le peripherique est simple, j ai pense modifier le driver des USB-serial adapters, mais le developeur de ce driver m as plutot conseille d utiliser directement /proc pour interfacer mon peripherique ( comme le font les drivers de certains modems ADSL USB ). Le probleme, c est que je ne sais pas du tout ou cherche les docs pour ces choses la ...
Tout ce que je sais, c est que c est moi qui choisi le VID/PID du dit device. Donc j imagine qu il faudra que je parcourre tout l arbre /proc/bus/usb jusqu a trouver le bon periph ... mais comment accede t on aux differents EndPoint ? j ai 3 EndPoints a gerer ( c est pas encore trop complique :=) )

ou trouver des docs la dessus sans etre oblige de RT*S ?
  • # Re: Docs sur /proc/bus/usb

    Posté par  . Évalué à 1.

    Donc j imagine qu il faudra que je parcourre tout l arbre /proc/bus/usb jusqu a trouver le bon periph ...
    l'on se que tu accepte le peripherique lors de l'enregistrement du connais le chemenin...
    de plus je suis pas sur qu'il faille que tu utilise directement /proc/usb, mais il faut plutot que tu creer une autre entree dans proc genre /proc/driver/...

    Tu peux deja regarder la doc du ernel sur l'usb
  • # Re: Docs sur /proc/bus/usb

    Posté par  . Évalué à 1.

    Oula dans quoi tu te lance ?
    Pour la gestion d'un driver USB c'est tout simple !
    (j'en ai deja fais quelques un)
    je ne sait pas les caracterisque tes EP, mais si tu n'as que des transfert bulk a gere c'est meme deja tout fais, tu n'as cas allez voir dans les sources de ton kernel
    /usr/src/linux/drivers/usb/usb-skeleton.c
    ce driver intergre l'enumeration dans usbfs, le support devfs...
    tout ce dont tu as besoin.
    Si tu as des questions...
  • # Re: Docs sur /proc/bus/usb

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

    J'ai jamais programmé de driver mais a mon avis si tu veux que ton truc soit utile au plus grand nombre (que ça soit plus ou moins portable), utiliser /proc n'est peut-être pas une très bonne idée. Ya pas que Linux et Windows comme OS :)

    pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.

  • # Re: Docs sur /proc/bus/usb

    Posté par  . Évalué à 2.

    Il existe une libusb...
    • [^] # Faut par confondre

      Posté par  . Évalué à 1.

      libsub existe en version 0.1 mais faut savoir ce que l'on veut faire.
      libusb permet facilement , depuis l'espace user de relayer des requete USB c'est vrai,et c'est facile.
      Mais un driver ne fait pas que ca !!
      -quand on branche le device USB le driver devient actif (si charge par un insmod), avec libusb c'est quand tu demarre ton programme que tu parcours l'arbre usb pour trouver ton device.
      -un driver dispose de toute l'attention du proc quand il en as besoin et des qu'un evenement surivent(callback completion sur les transfert), pas libusb
      -tu recois tout les packet interrupt que ton device envoie des que disponible sans lattence, avec libusb c'est a toi de gere la lecture (et ce se ressent d'autant dans les performances).
      bref j'arrete la mais la liste est longue.
      libusb est un bel effort pour que tous les materiels usb fonctionne sous linux mais avec au depriment des performances (on peut pas tout avoir).
  • # Re: Docs sur /proc/bus/usb

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

    Ben c est quand meme l auteur de USB-serial lui meme qui m a propose d utiliser /proc ... donc je pensequ il sait de quoi il parle ...

    mais vos comments manquent d URL ....
    • [^] # Re: Docs sur /proc/bus/usb

      Posté par  . Évalué à 1.

      mon ami google a dit :
      http://libusb.sourceforge.net/(...)
      mais /proc n'est qu'un des moyen de communiquer entre un driver et l'espace utilisateur.
      les ioctl en sont un autre.
      Mais je pense que tu reussisse a te passer de l'ecriture d'un driver pour gerer ton device, et dans ce cas la l'usb-sketlon (je sait plus ou est le H dans le mot) sera le point de depart obliger pour toi.
      Tes EP gerent quoi ? de quel type sont il (bulk/inter/iso)?
      de quel class est ton device ?(c'est quoi que tu gere?)

Suivre le flux des commentaires

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