// -*- mode:doc -*- ; [[board-support]] Creating your own board support ------------------------------- Creating your own board support in Buildroot allows users of a particular hardware platform to easily build a system that is known to work. To do so, you need to create a normal Buildroot configuration that builds a basic system for the hardware: toolchain, kernel, bootloader, filesystem and a simple Busybox-only userspace. No specific package should be selected: the configuration should be as minimal as possible, and should only build a working basic Busybox system for the target platform. You can of course use more complicated configurations for your internal projects, but the Buildroot project will only integrate basic board configurations. This is because package selections are highly application-specific. Once you have a known working configuration, run +make savedefconfig+. This will generate a minimal +defconfig+ file at the root of the Buildroot source tree. Move this file into the +configs/+ directory, and rename it +BOARDNAME_defconfig+. It is recommended to use upstream versions of the Linux kernel and bootloaders where possible, and also to use default kernel and bootloader configurations if possible. If the defaults are incorrect for your board, or no default exists, we encourage you to send fixes to the corresponding upstream projects. However, in the mean time, you may want to store kernel or bootloader configuration or patches specific to your target platform. To do so, create a directory +board/MANUFACTURER+ and a subdirectory +board/MANUFACTURER/BOARDNAME+ (after replacing, of course, MANUFACTURER and BOARDNAME with the appropriate values, in lower case letters). You can then store your patches and configurations in these directories, and reference them from the main Buildroot configuration.