Hvordan bruke PCI IRQ med Linux PCI enhetsdrivere

Hvordan bruke PCI IRQ med Linux PCI enhetsdrivere


PCI eller Peripheral Component Interconnection, er bussen som brukes av hovedkortet for å koble til enheter. Når flere enheter er samtidig koblet til hovedkortet, må de deler den sentrale prosessorenhet, eller CPU. De oppnår dette med avbruddsforespørsler, eller IRQ. Enhetsdrivere for Linux-systemer tildele en IRQ nummer til PCI-enhet. Enheten bruker IRQ å varsle CPU at enheten trenger sin oppmerksomhet. CPU håndterer IRQ i en forhåndsdefinert prioritet ordningen.

Bruksanvisning

1 Start terminal ved å trykke "Ctrl", "Alt" og "T" samtidig.

2 Generere en liste over PCI-enheter som er koblet til systemet. Ved ledeteksten skriver "lspci" og trykk "Enter". Dette genererer en liste over alle PCI-enheter.

3 Skriv ned PCI etiketten for den aktuelle enheten. Se etter navnet på enheten som trenger driverendringer. Helt til venstre side av linjen med navnet på enheten, er det en fem-sifret kode i følgende format: "xx. Xx.x" Dette er den PCI etiketten. Skriv det ned på et stykke kladdepapir.

4 Sjekk om enheten allerede har en IRQ tildelt. Ved ledeteksten skriver "sudo cat / proc / interrupts" og trykk "Enter". Skann listen for den aktuelle enheten. Hvis det er oppført av en IRQ, er prosessen fullført.

5 Åpne enhetsdriveren koden ved å skrive "gedit", deretter et mellomrom og deretter banen til sjåføren kode. For eksempel, hvis sjåføren banen er /home/code/driver1.c, type "gedit /home/code/driver1.c" og trykk "Enter". Gedit åpner koden filen.

6 Be om en IRQ fra enhetsdriveren kode. I en kode editor, lim inn følgende kode til innvielse enhet funksjon:

if (short_irq> = 0) {

result = request_irq(short_irq, short_interrupt,

SA_INTERRUPT, "short", NULL);

if (resultat) {

printk (KERN_INFO "Kort sagt: kan ikke bli tildelt IRQ% i \ n",

short_irq);

short_irq = 1;

}

else {

påhengs (0x10, short_base + 2);

}

}

7 Lagre endringer i enhetsdriveren ved å klikke på "File", "Lagre".

8 Kompilere enhetsdriveren. På kommandolinjen, skriv "gcc -c", deretter et mellomrom og deretter navnet på kildefilen. Bruke forrige eksempel skriver "gcc -c /home/code/device1.c" og trykk "Enter". Enhetsdriveren er kompilert.

9 Start datamaskinen på nytt for å aktivere den nylig endret enhetsdriveren.