Pro inspiraci: Dva COMy na jednom IRQ.

Vojtech Pavlik vojtech na twilight.ucw.cz
Pondělí Únor 10 23:43:14 CET 1997


[dva porty na stejnem IRQ]

> Soudim, ze jelikoz oba porty funguji, hardwarovy problem to neni. Proc
> to tedy ten Linux neumi? Zatim mam dve prozatimni reseni:

Ono je to hardwarovy problem. V pripade, ze jsou dva seriove porty
(nebo jakakoliv jina dve zarizeni) na spolecnem IRQ, neni mozne kvuli
architekture PC (konkretne interrupt controlleru) zamezit tomu, aby
se cas od casu (i kdyz skutecne velmi zridka) od jednoho zarizeni
interrupt neztratil. 

Navic by musela, pokud by se sdileni interruptu udelalo aspon trosku
obecne, pribyt znacna agenda do interrupt rutiny, coz zejmena u serioveho
driveru neni vubec vhodne.

Proto to Linux nepodporuje. 

> 1. Operativne startovat/ukoncovat gpm pri praci s terminalem :-(
> 2. Pomoci 'setserial /dev/cua? irq   2'  prepnout driver pro jeden   z
>    portu  z  interrupt do polling   rezimu.  To funguje,   ale neni to
>    nejrychlejsi (v zavislosti na velikosti bufferu v UART cipu), a 
>    zbytecne to zatezuje system. 

Nebo proste jeden z portu prevelet na IRQ 5. To na lecktere 
karte/motherboardu jde, pripadne to dost casto jde vyresit drobnou
zmenou tistaku. :)

> Komentare vitany (ale zase se s tim moc netrapte). 

Ono by to do Linuxoveho serialoveho driveru slo docela snadno dodelat,
ale zase tu zustava otazka, ma-li to vubec cenu, kdyz to pak nemuze
chodit spolehlive.

Vojtech.



Další informace o konferenci Linux