J'ai un ordinateur portable bon marché jetable que j'aimerais faire tourner, un Thinkpad SL 500.
Ce qui me dérange, ce sont deux leds, l'une pour la connectivité sans fil et celle pour l'hibernation, qui ne s'allument pas du tout, bien qu'elles soient fonctionnelles, je l'ai essayé sur Windows.
Je voudrais donc écrire un pilote de noyau pour eux, rien de grand, cela ressemble à une bonne idée de jouer avec le noyau.
Ma question est quelle méthodologie dois-je suivre systématiquement pour savoir quels appareils sont responsables de ces voyants (en général, pas nécessairement spécifiques à mon matériel), et quels pilotes sont responsables des deux autres voyants qui fonctionnent, Bluetooth et l'indicateur de batterie?
Et quand je dis méthodologie, je veux vraiment dire la méthodologie, étape par étape, avec les raisons de chaque étape, comme dans la réponse que j'ai donnée à quelqu'un d'autre ici: Que signifie && dans void * p = && abc;
Je suis compétent pour fgrepping à travers de grands référentiels de code, en utilisant des analyseurs de code statiques & co, mais je pense que mon manque de connaissances matérielles me gêne sur ce problème.
PS: J'utilise ArchLinux, donc presque la dernière version du noyau.
la source
Réponses:
Idéalement, vous devriez trouver une source (ouverte) du système d'exploitation du noyau sur lequel fonctionnent les voyants de votre ordinateur portable, puis vous pouvez simplement commenter partie par partie du noyau jusqu'à ce que vous localisiez le code responsable des voyants (et que le système se bloque quelques fois, mais c'est la partie amusante).
C'est la meilleure réponse que quiconque puisse donner, je le crains, et cela ne vous rend (presque) rien de plus intelligent qu'avant. Vous indique simplement que vous devez savoir exactement de quel matériel vous disposez, pour pouvoir faire quelque chose de plus.
Pour être plus utile, deux conseils:
L'une des puces IDE ou SATA souvent utilisées est la série Intel ICHX ou ICHXr (ICH5, ICH6, ICH7 ... ou ICH6R, ICH7R, ...).
Répertoire du noyau Linux où se trouve le code source pour contrôler beaucoup de LED
Je vous donnerais également un 3e pointeur, mais comme cette gorkypy l'a déjà écrit ci-dessus, je peux simplement répéter: pilotes de périphériques Linux, 3e édition , en PDF, gratuitement.
la source