Re: Comment savoir si un driver est compilé en dur ou en module?
SuperDindon a écrit :
je répète la question pour les mal-entendants : comment savoir si un driver
est compilé en dur ou en module? En fait je bosse actuellement sur un
paquetage, et ja ibesoin de savoir si un driver ( ehci_hcd pour être
précis ), est compilé en dur, en module ou pas du tout. Je comptais utiliser
le fichier de config du noyau, mais est-ce un moyen infaillible?
Nécessairement, un module chargeable doit se trouver bien rangé dans
/lib/modules/`uname -r`
avec un find et le nom du fichier correspondant au module (attention, il
peut être différent du nom du pilote).
si le fichier correspondant au pilote s'y trouve, alors il y a de bonnes
chances pour que le pilote soit compilé en tant que module (la seule
exception que je vois, c'est quelqu'un qui a bidouillé n'importe comment
dans les modules... peut-être un cas à prévoir tout de même).
Maintenant, le le module n'est pas présent, reste à savoir si le pilote
est intégré au noyau ou pas présent du tout.
Pour ça, il devrait normalement laisser une trace dans un des fichiers
/proc (au moins pour les pilotes de périphériques, pour les modules
purs, je ne sais pas).
Par exemple, tous les périphériques caractère ou bloc sont inscrits dans
/proc/devices. D'autre part, je ne connais pas de périphérique qui
n'utilise pas de plage d'entrées/sorties, auquel cas on doit retrouver
ces informations dans /proc/ioports ou /proc/iomem.
Bref, pour ce deuxième test, pas mal d'indices peuvent être utilisés, je
ne sais pas s'il existe un moyen plus direct (ormis, comme indiqué par
Basile, le fichier /proc/config.gz dans le cas du 2.6).
Bon courage.
--
Jonathan ILIAS, vraisemblablement mal entendant
Reply to: