diff --git a/documentation/yocto-project-qs/yocto-project-qs.xml b/documentation/yocto-project-qs/yocto-project-qs.xml
index e259a1eb24..9ab638a3d9 100644
--- a/documentation/yocto-project-qs/yocto-project-qs.xml
+++ b/documentation/yocto-project-qs/yocto-project-qs.xml
@@ -871,131 +871,352 @@
- This section
-
-
- Kudos and thanks to Robert P. J. Day of
- CrashCourse for providing the basis
- for this "expert" section with information from one of his
- wiki
- pages.
-
-
- gives you a minimal description of how to use the Yocto Project to build
- images for Beaglebone hardware starting from scratch.
- The steps were performed on a 64-bit Ubuntu 12.04 system that
- has four cores.
+ This section provides minimal instruction for using the Yocto Project
+ to build an image for Beaglebone hardware and for building and
+ booting an image for the third-party
+ MinnowBoard MAX.
+
+ The steps used in this section were performed on a 64-bit
+ Ubuntu 14.10 system that has four cores.
+
-
- Getting the Yocto Project
+
+ Building Beaglebone from Scratch
- Set up your
- Source Directory
- by using Git to clone the poky
- repository and then check out the release branch:
-
+ This section
+
+
+ Kudos and thanks to Robert P. J. Day of
+ CrashCourse
+ for providing the basis for this "expert" section with
+ information from one of his
+ wiki
+ pages.
+
+
+ gives you a minimal description of how to use the Yocto Project to
+ build images for Beaglebone hardware starting from scratch.
+
+
+
+ Getting the Yocto Project
+
+
+ Set up your
+ Source Directory
+ by using Git to clone the poky
+ repository and then check out the release branch:
+
$ cd ~
$ git clone git://git.yoctoproject.org/poky
$ cd poky
$ git checkout -b &DISTRO_NAME; origin/&DISTRO_NAME;
-
-
-
+
+
+
-
- Setting Up Your Host
+
+ Setting Up Your Host
-
- You need some packages for everything to work.
- Rather than duplicate them here, look at the
- "The Packages"
- section earlier in this quick start.
-
-
+
+ You need some packages for everything to work.
+ Rather than duplicate them here, look at the
+ "The Packages"
+ section earlier in this quick start.
+
+
-
- Initializing the Build Environment
+
+ Initializing the Build Environment
-
- From the root directory of your
- Source Directory,
- initialize your environment and provide a meaningful
- Build Directory
- name:
-
+
+ From the root directory of your
+ Source Directory,
+ initialize your environment and provide a meaningful
+ Build Directory
+ name:
+
$ source &OE_INIT_FILE; mybuilds
-
- At this point, the mybuilds directory has
- been created for you and it is now your current working directory.
- If you do not provide your own directory name,
- it defaults to build,
- which is inside the Source Directory.
-
-
+
+ At this point, the mybuilds directory has
+ been created for you and it is now your current working directory.
+ If you do not provide your own directory name,
+ it defaults to build,
+ which is inside the Source Directory.
+
+
-
- Configuring the local.conf File
+
+ Configuring the local.conf File
-
- Initializing the build environment creates a
- conf/local.conf configuration file
- in the Build Directory.
- You need to manually edit this file to specify the machine you
- are building:
-
+
+ Initializing the build environment creates a
+ conf/local.conf configuration file
+ in the Build Directory.
+ You need to manually edit this file to specify the machine you
+ are building:
+
MACHINE ?= "beaglebone"
-
-
+
+
-
- A good deal that goes into a Yocto Project build is simply
- downloading all of the source tarballs.
- Steps exist that can help you be more efficient with gathering
- source files.
- For example, you can set up local mirrors that hold your
- source tarballs or you can pre-fetch all your source without
- initiating a build until later.
- For more information, see the
- "Working with Source Files"
- section in the Yocto Project Development Manual.
-
+
+ A good deal that goes into a Yocto Project build is simply
+ downloading all of the source tarballs.
+ Steps exist that can help you be more efficient with gathering
+ source files.
+ For example, you can set up local mirrors that hold your
+ source tarballs or you can pre-fetch all your source without
+ initiating a build until later.
+ For more information, see the
+ "Working with Source Files"
+ section in the Yocto Project Development Manual.
+
+
+
+
+ Building the Image
+
+
+ At this point, you need to select an image to build for the
+ Beaglebone hardware.
+ If this is your first build using the Yocto Project, you should
+ try the smallest and simplest image:
+
+ $ bitbake core-image-minimal
+
+ Now you just wait for the build to finish.
+
+
+
+ You might encounter various warning messages during the
+ build.
+ For example, if a source file fetch initially fails,
+ the OpenEmbedded build system notes that and attempts to
+ find the files using mirrors.
+ Another example could be values requested for but not
+ found in the final kernel .config
+ file.
+ For information on configuration warnings, see the
+ "Generating Configuration Files"
+ section in the Yocto Project Linux Kernel Development Manual.
+
+
+
+ By default, BitBake aborts when it encounters an error during
+ the build.
+ If you want to make sure the build continues even when BitBake
+ encounters an error, use this variation:
+
+ $ bitbake -k core-image-minimal
+
+
+
+
+ Once you have your image, you can take steps to load and boot
+ it on the target hardware.
+
+
+
+ You can learn about BitBake in general by reading the
+ BitBake User Manual.
+
+
-
- Building the Image
+
+ Building and Booting MinnowBoard MAX
- At this point, you need to select an image to build for the
- Beaglebone hardware.
- If this is your first build using the Yocto Project, you should try
- the smallest and simplest image:
-
+ As of the Yocto Project 1.6 release, the MinnowBoard MAX is
+ supported by the Yocto Project and the
+ meta-intel
+ intel-corei7-64 and
+ intel-core2-32 Board Support Packages (BSPs).
+
+ The MinnowBoard MAX ships with 64-bit firmware.
+ If you want to use the board in 32-bit mode, you must
+ download the
+ 32-bit firmware.
+
+
+
+
+ Getting the Yocto Project and meta-intel
+
+
+ Set up your
+ Source Directory
+ and the meta-intel layer
+ by using Git to clone the poky
+ and meta-intel repositories.
+ These commands use the "&DISTRO_NAME;" branch:
+
+ $ cd ~
+ $ mkdir source
+ $ cd source
+ $ git clone -b &DISTRO_NAME; git://git.yoctoproject.org/poky
+ $ cd poky
+ $ git clone -b &DISTRO_NAME; git://git.yoctoproject.org/meta-intel
+
+
+
+
+
+ Setting Up Your Host
+
+
+ You need some packages for everything to work.
+ Rather than duplicate them here, look at the
+ "The Packages"
+ section earlier in this quick start.
+
+
+
+
+ Initializing the Build Environment
+
+
+ From the root directory of your
+ Source Directory,
+ initialize your environment by running the build environment
+ initialization script:
+
+ $ source &OE_INIT_FILE;
+
+ At this point, the build directory has
+ been created for you and it is now your current working
+ directory.
+
+
+
+
+ Configure the Build
+
+
+ To configure the build, you edit the
+ bblayers.conf and
+ local.conf files, both of which are
+ located in the build/conf directory.
+
+
+
+ Here is a quick way to make the edits.
+ The first command adds the meta-intel
+ branch, which contains the intel-core*
+ BSPs to the build.
+ The second command selects the BSP by setting the
+ MACHINE
+ variable.
+
+ $ echo 'BBLAYERS += "~/source/poky/meta-intel"' >> conf/bblayers.conf
+ $ echo 'MACHINE = "intel-corei7-64"' >> conf/local.conf
+
+ Notes
+
+ If you want a 64-bit build, use the following:
+
+ $ echo 'MACHINE = "intel-corei7-64"' >> conf/local.conf
+
+
+
+
+ If you want 32-bit images, use the following:
+
+ $ echo 'MACHINE = "intel-core2-32"' >> conf/local.conf
+
+
+
+
+
+
+
+ Build the Image
+
+
+ Use this command to build the minimal image for
+ MinnowBoard MAX:
+
$ bitbake core-image-minimal
-
- Now you just wait for the build to finish.
-
+
+ Once the build completes, the resulting basic console image
+ is located in the Build Directory here:
+
+ tmp/deploy/images/intel-corei7-64/core-image-minimal-intel-corei7-64.hddimg
+
+
+
-
- By default, BitBake aborts when it encounters an error during
- the build.
- If you want to make sure the build continues even when BitBake
- encounters an error, use this variation:
-
- $ bitbake -k core-image-minimal
-
-
+
+ Write the Image
-
- Once you have your image, you can take steps to load and boot it on
- the target hardware.
-
+
+ You can write the image to a USB key, SATA drive, or SD card
+ by using the mkefidisk.sh script,
+ which is included in the poky
+ repository at scripts/contrib/mkefidisk.sh:
+
+ $ sudo $HOME/source/poky/scripts/contrib/mkefidisk.sh HOST_DEVICE \
+ tmp/deploy/images/intel-corei7-64/core-image-minimal-intel-corei7-64.hddimg TARGET_DEVICE
+
+ In the previous command, HOST_DEVICE
+ is the device node on the build system (e.g.
+ /dev/sdc or
+ /dev/mmcblk0).
+ TARGET_DEVICE is the name of the
+ device as the MinnowBoard MAX sees it (e.g.
+ /dev/sda or
+ /dev/mmcblk0).
+
+
-
- You can learn about BitBake in general by reading the
- BitBake User Manual.
-
+
+ Boot the Image
+
+
+ With the boot device provisioned, you can insert the media into
+ the MinnowBoard MAX and boot the hardware.
+ The board should automatically detect the media and boot to
+ the bootloader and subsequently the operating system.
+
+
+
+ If the board does not boot automatically, you can boot it
+ manually from the EFI shell as follows:
+
+ Shell> connect -r
+ Shell> map -r
+ Shell> fs0:
+ Shell> bootx64
+
+
+ For a 32-bit image use the following:
+
+ Shell> bootia32
+
+
+
+
+
+
+ Next Steps
+
+
+ Now that you can build a basic image, you could experiment
+ by building some other example images:
+
+ $ bitbake core-image-sato
+ $ bitbake core-image-sato-sdk
+
+ Another possibility is to experiment creating your own image
+ recipes that add packages to suit your needs.
+ For information on how to create recipes, see the
+ "Writing a New Recipe"
+ section in the Yocto Project Development Manual.
+
+