Release Notes Kernel 6.1 (Deutsch)
Der RevPi Kernel wurde von Version 5.10 auf 6.1 aktualisiert und ist damit wieder auf dem gleichen Stand wie die im RaspberryPi OS verwendete Version. Der Kernel basiert auf Version 6.1.46 des stable-Kernels und Version 6.1.46-rt13 des Echtzeit-Kernel Patches. Neben allgemeinen Bugfixes und Verbesserungen in Treibern und Subsystemen hat sich folgendes geändert:
piControl:
Das piControl Kernel Modul wurde zu einem großen Teil überarbeitet: Ein bedeutender Teil des Moduls wurde in einen in den Kernel kompilierten Treiber verschoben, der ein “serdev” Gerät registriert und die komplette RS-458 Kommunikation übernimmt. Dies stellt einen weiteren Schritt auf unserem Langzeit-Ziel dar, den piControl Code in den Mainline Kernel zu integrieren.
Standardmäßig ist dieser Treiber bereits im RevPi Kernel enthalten, so dass wie bisher nur das piControl Modul geladen werden muss, um mit den RevPi Geräten kommunizieren zu können.
Beim Bauen eines eigenen Kernels aus unseren bereitgestellten Kernelquellen kann der Treiber aber auch als eigenständiges Kernelmodul pibridge.ko
gebaut werden. Dazu muss in der Kernelkonfiguration der Konfigurationsparameter CONFIG_SERIAL_DEV_MUX_PIBRIDGE
von y
auf m
geändert werden. Bei Verwenden des pibridge Treibers als eigenständiges Kernelmodul muss dieses vor dem Laden des piControl Moduls geladen werden.
Durch das Auslagern des Datenverkehrs auf der PiBridge haben sich die Latenzen für die Kommunikation mit angeschlossenen RevPi Modulen verringert, so dass nun kürzere Zykluszeiten beim Abfragen und Setzen von Gerätezuständen erreicht werden.
TPM:
Der TPM Interrupt wird jetzt unterstützt, so dass die Prozessorlast verringert ist, wenn der TPM eingesetzt wird. Zudem wird nun sichergestellt, dass der TPM Chip beim Booten korrekt aus dem Reset genommen und somit beim Laden des Treibers korrekt erkannt wird.
RTC:
Für die PCF2127 RTC wurde das Timestamping-Feature deaktiviert. Dadurch wird ein Hardware-Fehler umgangen, bei dem während eines Neustarts fälschlicherweise ein Bit in einem der RTC Interrupt-Register gesetzt wurde. Das fehlerhaft gesetzt Bit führte zu einer Fehlfunktion des Watchdogs auf dem Connect 4.
Release Notes Kernel 6.1 (English)
The RevPi kernel has been updated from version 5.10 to 6.1 and is thus up to par again with the version used by RaspberryPi OS. It is based on version 6.1.46 of the stable kernel and version 6.1.46-rt13 of the real-time kernel patches. Beside general bug fixes and improvements in drivers and subsystems, the following has changed:
piControl:
The piControl kernel module has been largely reworked: A significant portion of it has been moved to an in-kernel driver that registers a "serdev" device and handles all RS-485 communication on the PiBridge. This gets us one step closer to our long-term goal of upstreaming piControl into the mainline kernel.
The driver is compiled into the RevPi kernel, so as before only the piControl module needs to be loaded to communicate with the RevPi devices. When building your own kernel from our kernel source repository, the driver can optionally be built as an independent kernel module pibridge.ko
. For this the configuration parameter CONFIG_SERIAL_DEV_MUX_PIBRIDGE
must be changed from y
to m
in the kernel configuration. When using the pibridge driver as a standalone kernel module, it must be loaded before loading the piControl module.
One result of the reworked architecture is that latency of the communication with connected RevPi modules has decreased, so that now shorter cycle times are achieved when querying and setting device state.
TPM:
The TPM interrupt is now supported, so the processor load is reduced when using the TPM. In addition, it is now ensured that the TPM chip is correctly taken out of reset during booting and thus correctly recognized when loading the driver.
RTC:
The timestamping feature has been deactivated for the PCF2127. This works around a hardware erratum where a bit in one of the RTC interrupt registers was set by mistake during a warm restart. The erroneously set bit led to a malfunction of the watchdog on the Connect 4.