PCI oder Peripheral Component Interconnection ist der Bus von der Hauptplatine verwendet, um Geräte anzuschließen. Wenn mehrere Geräte gleichzeitig mit dem Motherboard verbunden sind, müssen sie teilen sich die Central Processing Unit , CPU oder . Sie erreichen dies mit Interrupt-Anforderungen oder IRQs . Gerätetreiber für Linux-Systeme einen IRQ zuweisen Anzahl der PCI-Gerät . Das Gerät verwendet das IRQ , um die CPU , dass das Gerät seine Aufmerksamkeit zu benachrichtigen. Die CPU übernimmt IRQs in einem vordefinierten Schema Priorität . Anleitung
1
Starten Sie die Konsole mit der Tastenkombination " Strg", "Alt" und "T" gleichzeitig .
2
Erstellen Sie eine Liste der PCI-Geräte an das System angeschlossen . An der Eingabeaufforderung " lspci " und drücken Sie " Enter". Dies erzeugt eine Liste aller PCI-Geräte .
3
Notieren Sie sich die PCI -Label für das Gerät in Frage. Suchen Sie nach dem Namen des Geräts , die Änderungen an den Treibern benötigt . Auf der äußersten linken Seite der Linie mit dem Gerätenamen , gibt es eine fünfstellige Code in das folgende Format: " xx: xx.x. " Dies ist der PCI -Label. Schreiben Sie es auf ein Stück Papier von Grund auf neu .
4
Überprüfen Sie, ob das Gerät bereits über eine IRQ zugewiesen. An der Eingabeaufforderung geben Sie "sudo cat /proc /interrupts " und drücken Sie " Enter". Scannen Sie die Liste für das Gerät in Frage. Wenn es von einem IRQ aufgeführt ist, ist der Prozess abgeschlossen.
5
Öffnen Sie die Gerätetreiber -Code , indem Sie " gedit ", dann ein Leerzeichen und dann den Pfad zum Treiber-Code . Zum Beispiel, wenn der Fahrer ist /home/code/driver1.c , Typ " gedit /home/code/driver1.c " und drücken Sie " Enter". Gedit öffnet die Codedatei .
6
anfordern IRQ vom Gerätetreiber -Code. In einem Code-Editor , fügen Sie den folgenden Code an das Gerät Initiierung Funktion :
if ( short_irq > = 0) {
result = request_irq ( short_irq , short_interrupt ,
SA_INTERRUPT , "short" , NULL);
if ( result) {
printk ( KERN_INFO " kurz gesagt: kann nicht irq % i \\ n zugewiesen bekommen " ,
short_irq );
short_irq = -1; }
else {
outb ( 0x10 , short_base +2) ;
} }
7
Speichern von Änderungen an den Gerätetreiber , indem Sie auf " Datei", " Speichern".
8
Kompilieren Sie die Gerätetreiber. An der Befehlszeile "gcc- c ", gefolgt von einem Leerzeichen und dann den Namen der Quelldatei . Mit dem vorherigen Beispiel , Typ " gcc- c /home/code/device1.c " und drücken Sie " Enter". Der Gerätetreiber wird zusammengestellt.
9
Starten Sie den Computer neu , um die Änderung Gerätetreiber zu aktivieren.