Was ist ein BSP?
Die Frage ist nicht ganz einfach zu beantworten, denn BSPs können ganz unterschiedliche Grössen und Bereiche beinhalten und sie werden von den Leuten unterschiedlich definiert.
Hier eine einfache Definition: Ein Board Support Package ist eine Ansammlung von Anpassungen auf der Betriebssystemebene, damit dieses auf einer spezifischen Hardware ausgeführt werden kann.
Bei einem Embedded Linux wird als Basis einen Mainline Kernel (kernel.org) verwendet. Der Chip Hersteller des SoC’s stellt die Rechnerspezifischen Treiber für sie Hardware-Abstraktionen zur Verfügung. Weiter stellt auch die Opensource Community (vielmals Firmen) weiter Fixes zu verfügen.
Das gleiche wird in der Regel auch gleich für den Bootloader wie U-Boot gemacht.
Jetzt müssen nur noch die eigenen Erweiterungen und Anpassungen eingebracht werden, welche auf das spezifische Produkt / Hardware gebraucht werden.
Folgende Abbildung zeigt eine vereinfachte Form der verschiedenen Anpassungen
Damit man alle Anpassungen organisieren kann, wird meistens das Build-System Yocto verwendet. Dies ermöglicht ein komplettes Image zu bauen, für die benötigte Hardware und dem jeweiligen Crosscompiler.

