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

Re: irq routing conflict - einige varianten



Hallo Liste,

> Der Router verbindet dann die PIRQ1-4 mit den IRQ-Eingängen am PIC. Es
gibt
> Chipsätze die können mehr als 4 Leitungen auf die Steckplätze verteilen,
z.B.
> der SiS735.
> [...]
> Sie nimmt immer INTA#, es sei denn sie braucht mehrere INTs. INTA# ist von
> Steckplatz zu Steckplatz mit einem anderen PIRQ verbunden. Bei Slot1 und
> Slot5 sind jeweils INTA# mit PIRQ1 verbunden. Wenn in beiden eine Karte
> drinsteckt führt das unvermeidbar zum IRQ-Sharing. Das Bild erklärt im
übrigen
> ziemlich gut warum das Vertauschen von Karten Sinn macht, oder?

jo, tut es - jetzt wird mir sehr viel klar - vielen dank für die darstellung
:-)

> Welche IRQ Nummer je PIRQ zugewiesen werden kann steht in den []-Klammern
> in der Ausgabe von dump_pirq. Theoretisch kann jedem PIRQ die gleiche IRQ
> Nummer zugewiesen werden -> IRQ-Sharing.

genau da müsste man ja eigentlich ansetzen können, also den Router etwas
"modden" damit er die einstellungen nimmt, die der linux kernel haben
will...?

> Die Begrenzte Anzahl ist in der PC Architektur begründet. Theoretisch sind
> 224 IRQ Nummern möglich, da aber nur zwei PICs eingebaut sind, sind es
halt
> nur 16. Davon führen aus Sicht des PIC 11 Leitungen zum Router und zum
> ISA-Bus (parallel). IRQ2 und IRQ9 ist ein und derselbe IRQ.

also PIC und IRQ-Router sind unterschiedliche Dinge: hardware - router -
PIC - CPU oder ?

> > eine weitere Frage wäre, wie die CPU mit dem IRQ Router verbunden ist,
also
> > wie die Interaktion zwischen beiden funktioniert.
>
> Welche Interaktion meinst Du?

nunja, wie, wenn die hardware mit dem router verbunden ist; die CPU als
zentrale komponente
daran angeschlossen ist - aber das hat sich ja inwischen geklärt - vom
router führt für jeden "route"baren IRQ
eine Leitung zum PIC, also dessen IRQ Eingängen, welcher dann die
IRQ-Verwaltung für die CPU übernimmt.
http://de.wikipedia.org/wiki/Interruptcontroller

> > hmm - also ist hardwaremäßig der pci steckplatz nicht fest verschaltet,
der
> > router hat prinzipiell die möglichkeit, den IRQ zuzuweisen, auch
> > wenn das bios keine einstellungsmöglichkeiten bietet, programmierbar ist
der
> > router doch trotzdem ....
>
>  Sicher, in einigen Fällen macht der kernel das sogar.

muss dazu
- der kernel APIC unterstützen
- der kernel & das "mainboard" apic unterstützen
- nur das "mainboard"...
- oder keiner apic unterstützen (... also es schon im "normalen" pci treiber
enthalten ist...) ?

> Bei IOAPIC sind alle 24 Interrupts fest verdrahtet, ohne Router. Der alte
PIC
> wird bei aktivierung der IO-APIC abgeschaltet.

hmm 24 Interrupts ? gibt es da einen dritten PIC (+8) bzw. wer übernimmt
dann die IRQ Verwaltung für die CPU wenn der "alte" pic abgeschalten ist ?
oder bedeutet IOAPIC (=APIC ?), dass ein anderer PIC verbaut ist, der statt
mit 8 dann mit 24 Interrupts zurechtkommt ?

(sorry für die vielen fragen ... bin der ansicht, dass eine problemlösung
nur sinnvoll oder sogar möglich ist, wenn man das problem auch wirklich
versteht :-))

> > wäre es möglich, damit auch den IRQ router zu manipulieren ?
>
> Mit setpci soll es gehen...

hmm ok - kann man da was kaputtmachen ? *g*

> [dump_pirq] -> schaue ich mir später an.

jo, vielen dank für deine Hilfe :-)


> Mit freundlichen Gruessen
> Bjoern Schmidt

mfg christoph



Reply to: