Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2808 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [usb linux]Besoin d'une explication sur les URB et interruptions

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[usb linux]Besoin d'une explication sur les URB et interruptions

n°957605
allawos
Posté le 20-01-2005 à 16:44:23  profilanswer
 

Bonjour à tous. Je laisse tomber mon post précédent pour en créer un nouveau, car je réalise que je fais fausse route.
Je ne suis pas très clair sur l'utilisation des URB (sous linux).
 
Je vous décrit donc mon problème, n'hésitez pas à me rediriger vers des docs explicant ca, si vous en connaissez.
 
En fait, je crée un module usbcam_module, dans lequel je code les fonctions de lecture (vers bulk EP 1 out) et écriture (vers bulk EP 1 in).
J'ai également créé une application usbcam_interface.c qui fait des read() ou des write() sur mon fichier (image du device).
 
Mon souci est de savoir comment forcer la copie de données dans le buffer d'un urb. Prenons l'exemple du ep 1 OUT. Dans usbcam_module.c, fonction read, je crée mon URB (FILL_BULK_URB), je le soumets (usb_submit_urb) ... mais il n'est pas encore rempli. J'ai cru comprendre que je devais créer une fonction (completion handler) qui elle, va forcer le remplissage ... est-ce juste ?
 
J'ai aussi l'impression qu'il faut lier les interruptions à ce remplissage mais je n'y vois pas très clair.
 
je ne vois pas non plus où se fait l'attente de la fin du remplissage du buffer ??? Dans le module usbcam_module ... fonction read ... avant de faire le copy_to_user() ? ... ou bien dans mon application interface (usbcam_interface.c) ???
 
Si vous avez la moindre information, elle me serrait précieuse, car la, je m'en arrache vraiment les cheveux ! Merci d'avance à tous.


Message édité par allawos le 20-01-2005 à 16:46:49
mood
Publicité
Posté le 20-01-2005 à 16:44:23  profilanswer
 

n°957709
++fab
victime du syndrome IH
Posté le 20-01-2005 à 18:04:50  profilanswer
 

Il y a des exemples de pilotes de périphériques sur le FTP de oreilly (ftp.oreilly.com), pub/examples/linux/ ...
Peut-etre y a t'il un exemple qui pourrait t'aider ?
 
ça aussi :
projetaurore.assos.univ-fcomte.fr/USB/USB.pdf
 
et bien sur  
/usr/src/linux/Documentation/usb/URB.txt, qui est valable pour ton noyau courant.

n°957722
allawos
Posté le 20-01-2005 à 18:29:17  profilanswer
 

Un grand merci à toi (encore une fois). Je vais bouquinner toutes ces sources mais après un survol rapide, j'ai l'impression que pas mal d'infos y sont contenues ... la suite au prochain épisode !!!
 
merci encore ++fab, qu'est-ce que je ferai sans toi ;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [usb linux]Besoin d'une explication sur les URB et interruptions

 

Sujets relatifs
Besoin d'aide macro sur excelBesoin de creer un outil de gestion de base de données
[C/Linux] récupérer signaux capteurs carte mèreComment lire une bdd SQL Server sous windows depuis Linux
generics : besoin d'aspirine :D [Résolu][UNIX / LINUX]Comment feriez vous ceci ?
[C] Compiler un module Linux[module linux] fread appelle ioctl avec cmd=TCGETS ???
[C/Linux] Gestion des interruptions [edit : exploiter le driver série] 
Plus de sujets relatifs à : [usb linux]Besoin d'une explication sur les URB et interruptions


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR