[long] Re: Jaký vliv má ACPI na přiřazení IRQ?

Karel Babka dekls na volny.cz
Pátek Říjen 1 09:31:33 CEST 2004


On Fri, Oct 01, 2004 at 07:09:40AM +0000, Vasek Stodulka wrote:
> On Thu, 30 Sep 2004 10:46:44 GMT, Karel Babka <dekls na volny.cz> wrote:
> 
> >  Zdravím,
> >  objeví se mi následující hláška:
> > 
> >  capidrv-1: controller dead ??
> >  capidrv-1: listen_change_state state=1 event=1 ????
> > 
> >  v konfeře de.comp.os.unix.linux.isdn jsem našel, že na vině je kolize
> >  IRQ. K této kolizi _NEDOJDE_, spustím-li jádro s parametrem acpi=off.
> > 
> >  Pikantní na tom je to, že po _PRVNIM_ rebootu bez tohoto parametru ke
> >  kolizi též _NEDOJDE_. Po každém další rebootu ke kolizi spolehlivě
> >  dojde, až do opětovného rebootu s uvedeným parametrem.
> 
> 	Tomu se neni moc co divit, ACPI rozrazuje IRQ, pokud je o to
> pozadano. Druha funkce, o kterou se stara, je sprava napajeni. Drive se pro
> tyto sluzby pouzivalo PnP pro PCI (neplest s ISA PnP) a APM. Dnes by se melo
> pouzivat spis ACPI.
> 
> 	Kdyz system bootuje, BIOS rozhodi nejakym zpusobem zarizenim IRQ
> (tomu se rika PnP). Je to proto, aby se dal vubec nabootovat system.
> Potrebujete zpravidla cist z disku (radic musi mit IRQ), nebo pouzit sitovku
> (sitovka musi mit IRQ) atd. Pak nekdo vymyslel APM (zejmena kvuli prechodu
> AT -> ATX) a chvilku byl klid. Bavime se o cca prvni polovine 90tych let
> minuleho stoleti. Linux obe tyto technologie uspesne spolknul a vsichni byli
> stastni az do smrti.
> 
> 	Pak nekdo prisel na to, ze by bylo mozna nekdy vhodne, aby si
> system mohl rozhodit IRQ podle toho, jak potrebuje, a to jeste k tomu
> za chodu. A kdyz byli u toho, tak tam jeste pridali moznost kontrolovat
> napajeni pro jednotliva zarizeni a viola... mame tu ACPI.
> 
> 	Dale se operacni systemy zacaly delit na ACPI a neACPI. Microsoft
> velmi brzy obohatil sve operacni systemy o podporu ACPI, tusim uz prvi 95ky
> fungovaly bez problemu. NeACPI systemy (coz byl v te dobe DOS, Linux,
> Win3.11, tusim i OS/2, ...) si zatim fungovaly podle toho, jak jim BIOS
> rozhodil IRQ a vsichni byli i nadale spokojeni.
> 
> 	Podpora ACPI se v linuxu objevuje tusim nekde okolo 2.4.10 (i kdyz
> stale skoro nikomu nechybi, driv bylo pouze jako patch), preferovan je
> nadale APM. Lidi s notebookama uz ale ACPI patchuji a linuxove ACPI slavi
> prvni uspechy. Pise se cca rok 2000.
> 
> 	Zlom nastava nekde okolo roku 2002, kdy vyrobci hardware uz zacinaji
> velmi casto spolehat na to, ze OS podporuje ACPI. Jsou k videni treba desky,
> ktere pri startu systemu prideli IRQ jenom sitovce a diskovemu radici,
> ostatni periferie maji po startu IRQ 0. Vetsina distribuci Linuxu zacina
> defaultne pouzivat ACPI.
> 
> 	Bohuzel ACPI v Linuxu ma za sebou rozhodne mene, nez ve Windows,
> proto casto dochazi k problemum. Na dobrych deskach staci acpi=off, cimz
> prechazime zpet k PCI PnP, na spatnych deskach je to na vlastni patch jadra.
> 
> >  Zajímalo by mne:
> >  1. Proč ke kolizi dochází 
> 
> 	Protoze je vic zarizeni, nez volnych IRQ.
> 
> >  2. Proč k ní dochází pravidelně-asymetricky.
> 
> 	Na to se budete muset podivat, jak prerozdeluje IRQ kernel a jak
> BIOS a hledat spojitost.
> 

Děkuji, kvalifikovaná odpověď, jasná, úplná. Jsem spokojen. Už jsem
myslel, že to zapadne v záplavě spamu i jiného balastu. 

Karel Babka
-- 
Ing. Karel Babka		+420 377 430 586
DEKL&syn software		+420 606 268 746
Ořechová 12			email:dekls at volny dot cz
326 00 Plzeň, CZ		http://www.vol.cz/dekls



Další informace o konferenci Linux