Compile kernel/bootloader outside of the BSP
- TQ Systems GmbH development and testing is done under the documented environment. Please consider to use the same environment for testing if you think there are issues.
- BSP consists of bootloader, kernel, root FS and plumbing for patching, configuration and building images.
The big picture
Changes to mainline sources of Linux kernel and bootloader are provided in the form of patch series. These series are located inside patches directory of the BSP. These directories are either directly under the BSP root or at the same location as the platformconfig file for your hardware platform.
The series file describes the order how patches have to be applied. Please note that the patch series are against the documented versions of the boot loader or kernel.
If the first patch in the series is a tar.bz2 blob that means this will be a patch that raises the patchlevel from the base version to the bugfix version (for instance from Linux 3.2 mainline to Linux 3.2.20 stable)
Configuration
Configuration info is located at the following places:
- Linux: kernel configuration file is named kernelconfig.x.y and is located at the same location as the platformconfig file for your hardware platform.
- barebox: kernel configuration file is named barebox-<version>.config and is located at the same location as the platformconfig file for your hardware platform. The same applies for changes to the barebox default environment.
- U-Boot: U-Boot configuration string can be found in the PTXdist hardware configuration settings.
Tools
The following list is a selection of tools that are able to work with patch series:
- stg (Stacked git)
- quilt
- git quiltimport (from the git-sh extension)
Read manual pages how to use the tools.
Steps
- Get sources of the versions to build
- Apply patches from BSP
- Configure packages using the configuration from the BSP
- Build