For simplicity, consider the following top-level BSP description file. Top-level BSP descriptions files employ both a structure and naming convention for consistency. The naming convention for the file is as follows:
bsp_name
-kernel_type
.scc
Here are some example top-level BSP filenames for the Minnow Board BSP, which is supported by the Yocto Project:
minnow-standard.scc minnow-preempt-rt.scc minnow-tiny.scc
Each file uses the BSP name followed by the kernel type.
is simple BSP description file whose name has the
form
mybsp
-standard
and supports the mybsp
machine using
a standard kernel:
define KMACHINEmybsp
define KTYPE standard define KARCH i386 include ktypes/standard includemybsp
.scc kconf hardwaremybsp
-extra
.cfg
Every top-level BSP description file should define the
KMACHINE
,
KTYPE
,
and KARCH
variables.
These variables allow the OpenEmbedded build system to identify
the description as meeting the criteria set by the recipe being
built.
This simple example supports the "mybsp" machine for the "standard"
kernel and the "i386" architecture.
Be aware that a hard link between the
KTYPE
variable and a kernel type description
file does not exist.
Thus, if you do not have kernel types defined in your kernel
Metadata, you only need to ensure that the kernel recipe's
LINUX_KERNEL_TYPE
variable and the KTYPE
variable in the
BSP description file match.
KTYPE
in the BSP optional.
To separate your kernel policy from your hardware configuration,
you include a kernel type (ktype
), such as
"standard".
In the previous example, this is done using the following:
include ktypes/standard
In the previous example, ktypes/standard.scc
aggregates all the configuration fragments, patches, and
features that make up your standard kernel policy.
See the "Kernel Types" section
for more information.
To aggregate common configurations and features specific to the
kernel for mybsp
, use the following:
include mybsp
.scc
For information on how to break a complete
.config
file into the various
configuration fragments, see the
"Generating Configuration Files"
section.
Finally, if you have any configurations specific to the
hardware that are not in a *.scc
file,
you can include them as follows:
kconf hardwaremybsp
-extra
.cfg