Linux Kerneltreiber Interrupt SPI

Gast #2584520
Lesenswert?

Hallo,

ich habe einen Kerneltreiber geschrieben, der einen Interrupt auf einen 
GPIO-Pin enthält.

Nun möchte ich in dieser Interrupt-Routine eine SPI-Kommunikation 
starten (auslesen eines Wertes von einem AD-Wandler). Laut verschiedener 
Quellen müsste dies mit der Funktion spi_async(...) gehen.
Ich bekomme allerdings immer einen Fehler (NULL-Pointer...) beim ersten 
auftreten des Interrupts.
In der Initialisierung funktioniert der spi_async()-Aufruf, nur in der 
Interrupt-Routine schlägt er fehl.

Kann mir jemand einen Tipp geben wie ich innerhalb einer 
Interrupt-Routine eine SPI-Kommunikation starten kann? Bzw. muss ich die 
Kommunikation in Tasklet oder einen eigenen Thread verlagern?

Viele Grüße
Ruben

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren