[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux] Re: 8255



Hello !

On Tue, Jul 31, 2001 at 01:02:30AM +0200, Benjamin Michotte wrote:
> salut,
> petite question pour un camarade.

Dis bonjour à Data de ma part ;)

> Il a une carte isa 8255 (DCI SmartLab 8255/8253 I/O Card).
> Comment peut-il l'utiliser sous nunux ?
> Doit-il essayer de trouver un quelconque driver ou peut-il directement
> écrire le petit prog C qui va écrire/lire sur les ports du 8255 ?
> Si il doit simplement écrire ce prog C, y a t'il des fonctions
> "spéciales" pour les sorties comme ca ? (genre outportb sous dos)
> Je crois qu'il y a outb c'est ça ?

Il est effectivement possible d'utiliser inb/outb and friends à
condition d'en avoir demandé la permission au kernel avec ioperm (man
ioperm pour plus d'infos). Cependant, le programme doit tourner sous
l'uid 0 (root) pour pouvoir faire ce genre de cochonstés.

À long terme (je suppose qu'il ne compte pas jeter sa carte ;), il est
donc beaucoup plus intéressant d'implémenter un driver (comme les
'/dev/ppi1{a,b,c}' sur les machines de robotique à l'In.Pr.E.S.). Ce
n'est pas trop compliqué, et ça peut faire une chouette introduction à
la programmation du kernel.

Il existe de nombreux documents sur la manière de procéder (google is
your friend) : J'avais déjà croisé la marche à suivre dans le KHG
(Kernel Hacker's Guide). O'Reilly vient juste de publier la deuxième
version d'un livre sur l'écriture de drivers pour le Kernel --
disponible online sur leur site !

> merci,
> O+,
> binny
[.../...]

Cu,
Dash.

-- 
Free Dmitry Sklyarov !
http://www.freesklyarov.org/
-- 
Damien Diederen
dash@linuxbe.org
http://users.swing.be/diederen/

[ Soyez précis dans vos sujets svp afin de déterminer directement  ]
[ le type de demande...                                            ]
[ Pour vous (dés)inscrire, aller sur http://linuxbe.org/ml.php     ]
[ Archives de la mailing list: http://archives.linuxbe.org/linux/  ]
[ http://LinuxBe.org              Contact: listmaster@linuxbe.org  ]