diff --git a/documentation/bsp-guide/bsp.xml b/documentation/bsp-guide/bsp.xml index 2f2dca0084..a3a4508f74 100644 --- a/documentation/bsp-guide/bsp.xml +++ b/documentation/bsp-guide/bsp.xml @@ -191,29 +191,35 @@ - Below is an example of the Crown Bay BSP: + Below is an example of the eMenlow BSP: - meta-crownbay/COPYING.MIT - meta-crownbay/README - meta-crownbay/README.sources - meta-crownbay/binary/ - meta-crownbay/conf/ - meta-crownbay/conf/layer.conf - meta-crownbay/conf/machine/ - meta-crownbay/conf/machine/crownbay-noemgd.conf - meta-crownbay/recipes-bsp/ - meta-crownbay/recipes-bsp/formfactor/ - meta-crownbay/recipes-bsp/formfactor/formfactor_0.0.bbappend - meta-crownbay/recipes-bsp/formfactor/formfactor/ - meta-crownbay/recipes-bsp/formfactor/formfactor/crownbay-noemgd/ - meta-crownbay/recipes-bsp/formfactor/formfactor/crownbay-noemgd/machconfig - meta-crownbay/recipes-kernel/ - meta-crownbay/recipes-kernel/kmod - meta-crownbay/recipes-kernel/kmod/kmod_git.bbappend - meta-crownbay/recipes-kernel/linux/ - meta-crownbay/recipes-kernel/linux/linux-yocto-rt_3.10.bbappend - meta-crownbay/recipes-kernel/linux/linux-yocto_3.10.bbappend + meta-emenlow/COPYING.MIT + meta-emenlow/README + meta-emenlow/README.sources + meta-emenlow/binary/ + meta-emenlow/conf/ + meta-emenlow/conf/layer.conf + meta-emenlow/conf/machine/ + meta-emenlow/conf/machine/emenlow-noemgd.conf + meta-emenlow/recipes-bsp/ + meta-emenlow/recipes-bsp/formfactor/ + meta-emenlow/recipes-bsp/formfactor/formfactor/ + meta-emenlow/recipes-bsp/formfactor/formfactor_0.0.bbappend + meta-emenlow/recipes-bsp/formfactor/formfactor/emenlow-noemgd/ + meta-emenlow/recipes-bsp/formfactor/formfactor/emenlow-noemgd/machconfig + meta-emenlow/recipes-graphics/ + meta-emenlow/recipes-graphics/xorg-xserver + meta-emenlow/recipes-graphics/xorg-xserver/xserver-xf86-config + meta-emenlow/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend + meta-emenlow/recipes-graphics/xorg-xserver/xserver-xf86-config/emenlow-noemgd + meta-emenlow/recipes-graphics/xorg-xserver/xserver-xf86-config/emenlow-noemgd/xorg.config + meta-emenlow/recipes-kernel/ + meta-emenlow/recipes-kernel/linux/ + meta-emenlow/recipes-kernel/linux/linux-yocto-dev.bbappend + meta-emenlow/recipes-kernel/linux/linux-yocto-rt_3.10.bbappend + meta-emenlow/recipes-kernel/linux/linux-yocto_3.10.bbappend + meta-emenlow/recipes-kernel/linux/linux-yocto_3.14.bbappend @@ -234,7 +240,7 @@ These optional files satisfy licensing requirements for the BSP. The type or types of files here can vary depending on the licensing requirements. - For example, in the Crown Bay BSP all licensing requirements are handled with the + For example, in the eMenlow BSP all licensing requirements are handled with the COPYING.MIT file. @@ -278,12 +284,21 @@ - This file provides information on where to locate the BSP source files. - For example, information provides where to find the sources that comprise - the images shipped with the BSP. - Information is also included to help you find the + This file provides information on where to locate the BSP + source files used to build the images (if any) that reside in + meta-bsp_name/binary. + Images in the binary would be images + released with the BSP. + The information in the README.sources + file also helps you find the Metadata used to generate the images that ship with the BSP. + + If the BSP's binary directory is + missing or the directory has no images, an existing + README.sources file is + meaningless. + @@ -297,21 +312,26 @@ - This optional area contains useful pre-built kernels and user-space filesystem - images appropriate to the target system. - This directory typically contains graphical (e.g. Sato) and minimal live images - when the BSP tarball has been created and made available in the + This optional area contains useful pre-built kernels and + user-space filesystem images released with the BSP that are + appropriate to the target system. + This directory typically contains graphical (e.g. Sato) and + minimal live images when the BSP tarball has been created and + made available in the Yocto Project website. - You can use these kernels and images to get a system running and quickly get started - on development tasks. + You can use these kernels and images to get a system running + and quickly get started on development tasks. - The exact types of binaries present are highly hardware-dependent. - However, a README file should be present in the BSP Layer that explains how to use - the kernels and images with the target hardware. - If pre-built binaries are present, source code to meet licensing requirements must also - exist in some form. + The exact types of binaries present are highly + hardware-dependent. + The README file should be present in the + BSP Layer and it will explain how to use the images with the + target hardware. + Additionally, the README.sources file + should be present to locate the sources used to build the + images and provide information on the Metadata. @@ -354,20 +374,20 @@ To illustrate the string substitutions, here are the corresponding statements - from the Crown Bay conf/layer.conf file: + from the eEmenlow conf/layer.conf file: # We have a conf and classes directory, add to BBPATH BBPATH .= ":${LAYERDIR}" - # We have a recipes directory, add to BBFILES + # We have recipes-* directories, add to BBFILES BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ ${LAYERDIR}/recipes-*/*/*.bbappend" - BBFILE_COLLECTIONS += "crownbay" - BBFILE_PATTERN_crownbay := "^${LAYERDIR}/" - BBFILE_PRIORITY_crownbay = "6" + BBFILE_COLLECTIONS += "emenlow" + BBFILE_PATTERN_emenlow := "^${LAYERDIR}/" + BBFILE_PRIORITY_emenlow = "6" - LAYERDEPENDS_crownbay = "intel" + LAYERDEPENDS_emenlow = "intel" @@ -412,11 +432,10 @@ - This crownbay.conf file could also include - a hardware "tuning" file that is commonly used to - define the package architecture and specify - optimization flags, which are carefully chosen to give best - performance on a given processor. + This configuration file could also include a hardware "tuning" + file that is commonly used to define the package architecture + and specify optimization flags, which are carefully chosen + to give best performance on a given processor. @@ -428,13 +447,15 @@ - To use an include file, you simply include them in the machine configuration file. - For example, the Crown Bay BSP crownbay-noemgd.conf contains the + To use an include file, you simply include them in the + machine configuration file. + For example, the eEmenlow BSP + emenlow-noemgd.conf contains the following statements: - require conf/machine/include/meta-intel.inc require conf/machine/include/intel-core2-32-common.inc require conf/machine/include/intel-common-pkgarch.inc + require conf/machine/include/meta-intel.inc @@ -449,19 +470,23 @@ - This optional directory contains miscellaneous recipe files for the BSP. + This optional directory contains miscellaneous recipe files for + the BSP. Most notably would be the formfactor files. - For example, in the Crown Bay BSP there is the + For example, in the eMenlow BSP there is the formfactor_0.0.bbappend file, which is an append file used to augment the recipe that starts the build. - Furthermore, there are machine-specific settings used during the - build that are defined by the machconfig file. - In the Crown Bay example, the machconfig file - supports the Video Electronics Standards Association (VESA) graphics - driver: + Furthermore, there are machine-specific settings used during + the build that are defined by the + machconfig file further down in the + directory. + In the eMenlow example, the machconfig + file supports the Video Electronics Standards Association + (VESA) graphics driver: - meta-crownbay/recipes-bsp/formfactor/formfactor/crownbay-noemgd/machconfig - meta-crownbay/recipes-bsp/formfactor/formfactor_0.0.bbappend + # Assume a USB mouse and keyboard are connected + HAVE_TOUCHSCREEN=0 + HAVE_KEYBOARD=1 @@ -487,15 +512,16 @@ This optional directory contains recipes for the BSP if it has special requirements for graphics support. - All files that are needed for the BSP to support a display are kept here. - For example, the meta-emenlow layer, which supports - the eMenlow platform consisting of the + All files that are needed for the BSP to support a display are + kept here. + For example, the meta-emenlow layer, + which supports the eMenlow platform consisting of the Intel Atom Z5xx processor with the Intel - System Controller Hub US15W uses these files for supporting the Video - Electronics Standards Association (VESA) graphics: + System Controller Hub US15W, uses these files for supporting + the Video Electronics Standards Association (VESA) graphics: meta-emenlow/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend meta-emenlow/recipes-graphics/xorg-xserver/xserver-xf86-config/emenlow-noemgd/xorg.conf @@ -542,10 +568,10 @@ specific BSP settings to the kernel, thus configuring the kernel for your particular BSP. - As an example, look at the existing Crown Bay BSP. + As an example, look at the existing eMenlow BSP. The append file used is: - meta-crownbay/recipes-kernel/linux/linux-yocto_3.10.bbappend + meta-emenlow/recipes-kernel/linux/linux-yocto_3.10.bbappend The following listing shows the file. Be aware that the actual commit ID strings in this example listing might be different @@ -554,35 +580,37 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + COMPATIBLE_MACHINE_emenlow-noemgd = "emenlow-noemgd" + KMACHINE_emenlow-noemgd = "emenlow" + KBRANCH_emenlow-noemgd = "standard/emenlow" + KERNEL_FEATURES_append_emenlow-noemgd = " features/drm-gma500/drm-gma500" - COMPATIBLE_MACHINE_crownbay-noemgd = "crownbay-noemgd" - KMACHINE_crownbay-noemgd = "crownbay" - KBRANCH_crownbay-noemgd = "standard/crownbay" - KERNEL_FEATURES_append_crownbay-noemgd = " cfg/vesafb" - - LINUX_VERSION_crownbay-noemgd = "3.10.55" - SRCREV_meta_crownbay-noemgd = "f79a00265eefbe2fffc2cdb03f67235497a9a87e" - SRCREV_machine_crownbay-noemgd = "3677ea7f9476458aa6dec440243de3a6fb1343a9" + LINUX_VERSION_emenlow-noemgd = "3.10.55" + SRCREV_meta_emenlow-noemgd = "f79a00265eefbe2fffc2cdb03f67235497a9a87e" + SRCREV_machine_emenlow-noemgd = "3677ea7f9476458aa6dec440243de3a6fb1343a9" - This append file contains statements used to support the Crown Bay BSP. + This append file contains statements used to support the + eMenlow BSP. The file defines machines using the COMPATIBLE_MACHINE variable and uses the - KMACHINE variable to - ensure the machine name used by the OpenEmbedded build system maps to the - machine name used by the Linux Yocto kernel. + KMACHINE + variable to ensure the machine name used by the OpenEmbedded + build system maps to the machine name used by the Linux Yocto + kernel. The file also uses the optional - KBRANCH variable - to ensure the build process uses the standard/crownbay - kernel branch. + KBRANCH + variable to ensure the build process uses the + standard/emenlow kernel branch. The KERNEL_FEATURES variable enables features specific to the kernel (e.g. VESA graphics support in this case). The append file points to specific commits in the - Source Directory Git - repository and the meta Git repository branches to identify the - exact kernel needed to build the Crown Bay BSP. + Source Directory + Git repository and the meta Git repository + branches to identify the exact kernel needed to build the + eMenlow BSP.