[Kos-dev] IDE ... ca avance !

kos-dev@enix.org kos-dev@enix.org
03 Feb 2002 11:06:41 +0100


"Christophe" <hlide@club-internet.fr> writes:

> Je vais te faire une confidence : on aurait pu faire mieux si on nous=
 avait
> laiss=E9 une peu plus de temps.

Oui, mais de toute facon on peut toujours faire mieux. Et si tu veux
toucher ton salaire, il faut bien que la boite se fixe des objectifs
d'un point de vue temporel !

> Plusieurs choses :
>=20
> - activer la cascade master-slave et les IRQ 14 ou 15;

Activer la cascade, c'est juste que le bit de l'IRQ 2 soit a 0 dans le
Mask Register du master, c'est bien ca ?

Pour les IRQ 14 et 15 c'est fait !

> - placer le bit 1 (nIEN, /IEN : Interrupt No ENable) dans le registre=
 de
> port 0x3F6 (octet en =E9criture, registre Device Controller) soit =E0=
 0;

Ca je sais.

> Un chose toutefois : si tu utilises les interruptions mais qu'=E0 un =
moment
> donn=E9 tu as besoin de faire du polling, utilise le registre de port=
 0x3F6
> (octet en lecture, registre Alternate STATus) au lieu du registre de =
port
> 0x1F7 pour =E9viter la perte d'un IRQ. Ces deux registres font exacte=
ment la
> m=EAme chose que le dernier a une effet sur la valeur du pin INTR du =
cont=F4leur
> ATA.

Ok je retiens ca, ca peut servir !

> Ah, petit d=E9tail, on devrait dire ATA et non IDE ! il y a un site l=
=E0-dessus
> avec un source de driver freeware : www.ata-atapi.com.

Oui effectivement. Je connaissais deja ce site, mais j'ai pas trouve
mon bonheur. J'ai plutot trouve mon bonheur dans les sources de
FreeBSD (nettement plus propre et comprehensible que ceux de Linux),
et sur www.t13.org dans un PDF.=20

Merci beaucoup Hlide !

A+

Thomas
--=20
PETAZZONI Thomas - thomas.petazzoni@enix.org - UIN : 34937744
(Perso)      http://www.enix.org/~thomas/
(KOS)        http://kos.enix.org/=20
(Club LinUT) http://club-linut.enix.org