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

 


Dernière réponse
Sujet : [linux k2.6] Comment gérer le chargement auto d'un .ko
allawos OK, merci pour toutes ces infos, comme je l'ai dit dans l'autre post, j'ai effectivement pu, en configuratant /etc/udev/permissions.d/ ... , forcer udev à me créer le device avec les bons droits !

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
allawos OK, merci pour toutes ces infos, comme je l'ai dit dans l'autre post, j'ai effectivement pu, en configuratant /etc/udev/permissions.d/ ... , forcer udev à me créer le device avec les bons droits !
Dark_Schneider tu peux donner des droits par défaut lorsque tu charge le module, mais souvent udev passe derrière et applique ses propres droits si le device correspond à un des devices qu'il gère ( au niveau de la classe, etc ... )
allawos Euh ... les droits d'accès du node /dev/mydevice ... créé automatiquement par le module ... se configurent au niveau de udev ????
 
Parcequ'en fait j'ai laissé tomber l'idée de charger le module uniquement lorsque le device est pluggué,
mais j'aurais voulu pouvoir utiliser le node qu'il créé automatiquement : /dev/mydevice
...donc en lui filant les bons droits.
J'ai reposé ma question ici :
http://forum.hardware.fr/hardwaref [...] -1.htm#bas
 
... est-ce que c'est nécessaire de passer par udev pour ca ?
Dark_Schneider les droits d'accès se conf au niveau de udev. cf /etc/udev/rules.d/
allawos Pourtant ce que je lis sur udev semble correspondre ... pour que le node /dev/myname soit créé si le device est pluggué.
Je jetterai un oeuil à hotplug quand m^eme ... merci bien !
 
...mais du coup, je vais reposer ma question, car mon problème se situe plus au niveau du node /dev/myname, qui est généré automatiquement lorsque le module est lancé.
Je n'arrive pas à faire en sorte que les droits d'accès sur ce fichier soient corrects ... :(
Dark_Schneider udev ne le peut ps, mais hotplug peut s'en chargé.
 
lors que tu branches le devices, le noyau et/ou hotplug consulte la table de pci id, cela entraine une action de hotplug si cela correspond qui peut se charger de charger le module.
Mjules pour créer les fichiers dans /dev quand la caméra est branchée et attribuer les bons droits, regarde du coté de udev et /etc/udev
 
pour charger le module au démarrage, place le dans /etc/modprobe.preload
 
pour autocharger le module au branchement, devfs le faisait mais je sais pas si udev peut le faire (surement mais j'en sais pas plus)
allawos Je comprend pas :( ... j'ai mis ca dans le mode de mon usb_class_driver :
S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH
Ce qui, si je comprend bien donne les droits en lecture/ecriture à tout le monde ... et ca change rien au niveau de mon /dev/myname ...
 
... personne a une idée ???
allawos Bon OK, manifestement, il faut mettre la bonne valeur à l'attribut  mode du usb_classe_driver ... reste plus qu'à trouver quel flag permet de spécifier 666 ...
allawos J'avance un peu ...
J'ai viré les lignes dans usb.usermap et modules.usbmap mais j'ai laissé le fichier monmodule.ko.gz dans  /lib/modules/2.6.8.1-12mdk/kernel/drivers/usb/misc/.
 
J'ai lancé, sous root, la comande depmode, ce qui a pour effet d'ajouter dans le fichier /lib/modules/2.6.8.1-12mdk/modules.dep, la ligne :
/lib/modules/2.6.8.1-12mdk/kernel/drivers/usb/misc/monmodule.ko.gz: /lib/modules/2.6.8.1-12mdk/kernel/drivers/usb/core/usbcore.ko.gz
 
Je reboote la machine et la, super, mon module est bien lancé à l'initialisation. Mon problème est maintenant que le module, lors de son appel à usb_register_dev, me crée un fichier /dev/myname. Fichier qui est ensuite ouvert/fermé/écrit/lu lors de la communication avec le device.
 
Le souci, c'est que les droits d'accès sur ce fichiers sont rw uniquement pour root, et pas pour les autres utilisateurs.
 
J'utilisais auparavant la commande :  
mknod -m 666 /dev/myname c 180 0, qui elle donnait les bons droits d'accès,  
 
... mais comment faire pour que mon module donne tout seul les bons droits ... ??? Est-ce une option de la fonction usb_register_dev() ???
 
Merci encore d'avance :D
allawos Bonjour à tous.
 
J'ai interfacé des caméras usb à l'aide d'un module usb, que je génère sous la forme d'un fichier monmodule.ko.
Si je fais "insmod monmodule.ko", il se lance bien et tout fonctionne.
 
Je souhaiterai faire en sorte que le module ne soit chargé que si le device correspondant est pluggué. Je crois que cela est possible avec ce nouveau kernel (2.6) mais je n'ai pas réussi à trouver la solution.
 
J'ai gunzippé mon fichier en monmodule.ko.gz, je l'ai copié dans /lib/modules/2.6.8.1-12mdk/kernel/drivers/usb/misc/ et j'ai essayé de rebooté (avec le device pluggué au PC), cela ne fonctionne pas.
J'ai en plus rajouté les lignes correspondant à mon device (IdProd et IdVend) dans les fichiers /etc/hotplug/usb.usermap et dans lib/modules/2.4.20-8/modules.usbmap mais cela ne fonctionne toujours pas.
 
Est-ce que je dois copier le fichier .ko.gz ailleurs ? Est-ce que je dois configurer d'autres ficheirs ? Est-ce nécessaire d'éditer les fichiers usb.usermap et modules.usbmap ?
Je suis un peu perdu donc si certains d'entre vous connaissent la solution ...
 
Merci d'avance.

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)