Hallo zusammen,
ich hab gerade eine Aufgabe zu lösen und komme nicht weiter bzw. ergibt sich daraus ein Sammelsurium an Anfängerfragen. Bin relativ neu im Thema.
Wir haben "ein Gerät" gebaut auf Basis des Raspberry Compute Modul 3 und Raspberry Pi OS Lite (Bullseye) als Betriebssystem. An der SPI Schnittstelle (über GPIO 8-10) ist eine Real-Time Clock angeschlossen von Microchip (MCP7951) https://ww1.microchip.com/downloads/en/ ... 02300C.pdf
Für diesen Chip gibt es auch ein Treibermodul, siehe https://www.kernelconfig.io/config_rtc_ ... arch=arm64.
Im Standard Kernel ist dieses Treibermodul allerdings nicht enthalten. Somit wäre mein Plan jetzt einen angepassten Kernel zu bauen - eben mit diesem Treiber inkludiert.
So wie unter https://www.raspberrypi.com/documentation/…hoosing_sources ansatzweise beschrieben.
Was habe ich gemacht ...
# Kernelversion abfragen
uname -r => 5.10.92-v7+
# (zum Kernel passende) Sources herunterladen => branch 5.10.y
git clone --depth=1 --branch rpi-5.10.y https://github.com/raspberrypi/linux
# prüfen ob das Modul für den RTC Baustein in den Sourcen enthalten ist (im Verzeichnis linux/drivers/rtc )
find . -name rtc-mcp795.c
./rtc-mcp795.c => passt!
Jetzt quält mich schon die erste Frage:
- Warum ist das Modul in den 5.10er Sourcen enthalten, aber nicht Bestandteil meines 5.10er Kernels auf meinem Raspberry ?
Unabhängig davon renne ich mir jetzt die Nase an bzw. wie kann ich jetzt steuern das der rtc-mcp795 Treiber berücksichtigt wird, um dann den Kernel neu zu bauen ?
Oder macht es in meinem Fall mehr sein ein Kernel-Modul zu bauen und dieses dann via
in den Kernel zu laden ? Allerdings fehlen mir dazu die header Dateien.
... bitte um etwas Klarheit