Bon, j'ai un peu avancé.
J'arrive donc à ouvrir mon périphérique grâce à un filp_open en prenant garde à bien utiliser get_fs et set_fs.
Je peux lui faire des requêtes ioctl grâce à un hidraw_file->f_op->unlocked_ioctl(hidraw_file,cmd,arg)
Mais par contre, dès que la commande du ioctl demande à écrire (config du périf), j'ai un plantage du système alors qu'une lecture fonctionne parfaitement (lecture id, etc).
Par exemple, une commande HIDIOCGRAWNAME fonctionne par contre HIDIOCSFEATURE me plante le pi…
Une petite idée ?
A bientôt
Salut,
Merci de ta réponse, peux tu développer ? Car là, je ne sais vraiment pas comment faire.
open(), read(), write() et ioctl() semblent ne pas exister dans un module kernel ?
A bientôt
# ca avance
Posté par AlexJ . En réponse au message Kernel module accédant à hidraw. Évalué à 1.
Bon, j'ai un peu avancé.
J'arrive donc à ouvrir mon périphérique grâce à un filp_open en prenant garde à bien utiliser get_fs et set_fs.
Je peux lui faire des requêtes ioctl grâce à un hidraw_file->f_op->unlocked_ioctl(hidraw_file,cmd,arg)
Mais par contre, dès que la commande du ioctl demande à écrire (config du périf), j'ai un plantage du système alors qu'une lecture fonctionne parfaitement (lecture id, etc).
Par exemple, une commande HIDIOCGRAWNAME fonctionne par contre HIDIOCSFEATURE me plante le pi…
Une petite idée ?
A bientôt
[^] # Re: Appeler directement les fonctions qui t’intéresse
Posté par AlexJ . En réponse au message Kernel module accédant à hidraw. Évalué à 1.
Salut,
Merci de ta réponse, peux tu développer ? Car là, je ne sais vraiment pas comment faire.
open(), read(), write() et ioctl() semblent ne pas exister dans un module kernel ?
A bientôt