Nastaveni IRQ na PCI

Martin Mares mj na atrey.karlin.mff.cuni.cz
Pátek Leden 8 00:09:01 CET 1999


Zdravim,

> Mam dotaz, zda je mozne zmenit pouzite IRQ sitove PCI karty a pokud je tak
> jak.

   Pridelovani IRQ jednotlivym PCI kartam se motherboard od motherboardu
vyrazne lisi -- na nekterych boardech jsou IRQ "natvrdo nadratovana", na jinych
je chipset umi prirazovat, coz ridi BIOS pri bootu. Neexistuje universalni
mechanismus, kterym by IRQ bylo mozno ridit, takze bohuzel neni v moci
Linuxu neco takoveho udelat.

   Na vetsine rozumnych motherboardu je pridelovani IRQ alespon castecne
ovlivnitelne nastavenim BIOSoveho setupu.

   Jiz delsi dobu uvazuji o tom, ze bych napsal program, ktery by alespon
nektere chipsety znal a byl na nich schopen interrupty prenastavovat, lec
dosud jsem se k tomu nedostal. Jistou moznosti by bylo sehnat dokumentaci
od Vaseho chipsetu a pak pomoci setpci prenastavit chipsetove registry
definujici routing preruseni.

> Zkousel jsem `setpci -s x:xx.x interrupt_line=5` (puvodni IRQ bylo 9), ale
> IRQ po vypisu `lspci -v` se nezmenilo.

   Neni se cemu divit, protoze (1) registr interrupt_line je pouze informativni
a sama karta jej vubec k nicemu nevyuziva -- je to pouze takovy podivny
komunikacni kanal mezi BIOSem, ktery IRQ pridelil a driverem karty; (2) Linux
si udrzuje vlastni informace o IRQ, ktere v nekterych pripadech vychazi
z pocatecni hodnoty tohoto registru v okamziku startu systemu, ale casto
pak projdou ruznymi transformacemi. Z toho plyne, ze zmenou tohoto registru
nejen ze neovlivnite prirazene IRQ, ale ani to, jaky na nej ma nazor jadro.

				Have a nice fortnight
-- 
Martin `MJ' Mares   <mj na ucw.cz>   http://atrey.karlin.mff.cuni.cz/~mj/
Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth
"New PC concept: "plug and pray""


Další informace o konferenci Linux