Hallo zusammen,
ich bin vollkommen neu in der Linux Kernelmodul bzw. Device-Treiber
Entwicklung, kann aber auf ein paar Jahre Berufserfahrung unter vxWorks
zurückblicken.
Für ein Hobbyprojekt habe ich mir vorgenommen mit GNUBLIN ein EA-DOG-M
Display und ein Pollin Funkmodul via SPI anzusteuern.
Dazu ein paar Fragen:
-Der spi-Driver unterstützt ja scheinbar verschiedene Chip-Selects. Gibt
es einen einfachen Weg diesen im Kernelmodul auf bestimmte GPIOs zu
mappen?
-Das DOG-M-Display braucht ja noch ein zusätzliches Signal um zu
unterscheiden ob Daten oder Kommandos geschickt werden. Macht es hier
Sinn ein eigenes Kernelmodul für das DOG-M zu schreiben das auf den
SPI-Modul aufbaut? Sorgen mache ich mir hauptsächlich darum, das ja bei
mir mehrere Module am SPI hängen und ich die synchronistation der
Zugriffe nicht unbedingt über Semaphoren im Userland machen möchte. Ich
würde also ungerne im Userland nen GPIO setzen, dann über SPI das
Kommando rauschreiben und dann den GPIO zurücknehmen.
-Das Funkmodul besitzt einen DATA-READY Ausgang. Diesen möchte ich auch
ungerne im Userland pollen. Also auch hier ein Kernelmodul das auf dem
SPI-Modul aufsetzt? Hat jemand vielleicht schon etwas ähnliches gemacht,
bzw. gibts irgendwo Sourcen zum abgucken?
Besten Dank :D