summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--documentation/bsp-guide/bsp.xml73
1 files changed, 36 insertions, 37 deletions
diff --git a/documentation/bsp-guide/bsp.xml b/documentation/bsp-guide/bsp.xml
index 6fd61c0291..a1a678b1c1 100644
--- a/documentation/bsp-guide/bsp.xml
+++ b/documentation/bsp-guide/bsp.xml
@@ -48,8 +48,8 @@
48 This root is what you add to the 48 This root is what you add to the
49 <ulink url='&YOCTO_DOCS_REF_URL;#var-BBLAYERS'><filename>BBLAYERS</filename></ulink> 49 <ulink url='&YOCTO_DOCS_REF_URL;#var-BBLAYERS'><filename>BBLAYERS</filename></ulink>
50 variable in the <filename>conf/bblayers.conf</filename> file found in the 50 variable in the <filename>conf/bblayers.conf</filename> file found in the
51 <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-build-directory'>Yocto Project Build Directory</ulink>. 51 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>.
52 Adding the root allows the Yocto Project build system to recognize the BSP 52 Adding the root allows the OpenEmbedded build system to recognize the BSP
53 definition and from it build an image. 53 definition and from it build an image.
54 Here is an example: 54 Here is an example:
55 <literallayout class='monospaced'> 55 <literallayout class='monospaced'>
@@ -99,13 +99,14 @@
99 </para> 99 </para>
100 100
101 <para> 101 <para>
102 The proposed form does have elements that are specific to the Yocto Project and 102 The proposed form does have elements that are specific to the
103 OpenEmbedded build systems. 103 OpenEmbedded build system.
104 It is intended that this information can be 104 It is intended that this information can be
105 used by other systems besides Yocto Project and OpenEmbedded and that it will be simple 105 used by other build systems besides the OpenEmbedded build system
106 and that it will be simple
106 to extract information and convert it to other formats if required. 107 to extract information and convert it to other formats if required.
107 Yocto Project, through its standard layers mechanism, can directly accept the format 108 The OpenEmbedded build system, through its standard layers mechanism, can directly
108 described as a layer. 109 accept the format described as a layer.
109 The BSP captures all 110 The BSP captures all
110 the hardware-specific details in one place in a standard format, which is 111 the hardware-specific details in one place in a standard format, which is
111 useful for any person wishing to use the hardware platform regardless of 112 useful for any person wishing to use the hardware platform regardless of
@@ -297,9 +298,10 @@
297 </para> 298 </para>
298 299
299 <para> 300 <para>
300 The <filename>conf/layer.conf</filename> file identifies the file structure as a Yocto 301 The <filename>conf/layer.conf</filename> file identifies the file structure as a
301 Project layer, identifies the 302 layer, identifies the
302 contents of the layer, and contains information about how Yocto Project should use it. 303 contents of the layer, and contains information about how the build
304 system should use it.
303 Generally, a standard boilerplate file such as the following works. 305 Generally, a standard boilerplate file such as the following works.
304 In the following example, you would replace "<filename>bsp</filename>" and 306 In the following example, you would replace "<filename>bsp</filename>" and
305 "<filename>_bsp</filename>" with the actual name 307 "<filename>_bsp</filename>" with the actual name
@@ -333,7 +335,7 @@
333 335
334 <para> 336 <para>
335 This file simply makes BitBake aware of the recipes and configuration directories. 337 This file simply makes BitBake aware of the recipes and configuration directories.
336 The file must exist so that the Yocto Project build system can recognize the BSP. 338 The file must exist so that the OpenEmbedded build system can recognize the BSP.
337 </para> 339 </para>
338 </section> 340 </section>
339 341
@@ -348,7 +350,7 @@
348 350
349 <para> 351 <para>
350 The machine files bind together all the information contained elsewhere 352 The machine files bind together all the information contained elsewhere
351 in the BSP into a format that the Yocto Project build system can understand. 353 in the BSP into a format that the build system can understand.
352 If the BSP supports multiple machines, multiple machine configuration files 354 If the BSP supports multiple machines, multiple machine configuration files
353 can be present. 355 can be present.
354 These filenames correspond to the values to which users have set the 356 These filenames correspond to the values to which users have set the
@@ -388,8 +390,8 @@
388 390
389 <para> 391 <para>
390 Tuning files are found in the <filename>meta/conf/machine/include</filename> 392 Tuning files are found in the <filename>meta/conf/machine/include</filename>
391 directory of the 393 directory within the
392 <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-files'>Yocto Project Files</ulink>. 394 <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
393 Tuning files can also reside in the BSP Layer itself. 395 Tuning files can also reside in the BSP Layer itself.
394 For example, the <filename>ia32-base.inc</filename> file resides in the 396 For example, the <filename>ia32-base.inc</filename> file resides in the
395 <filename>meta-intel</filename> BSP Layer in <filename>conf/machine/include</filename>. 397 <filename>meta-intel</filename> BSP Layer in <filename>conf/machine/include</filename>.
@@ -441,7 +443,7 @@
441 formfactor recipe 443 formfactor recipe
442 <filename>meta/recipes-bsp/formfactor/formfactor_0.0.bb</filename>, 444 <filename>meta/recipes-bsp/formfactor/formfactor_0.0.bb</filename>,
443 which is found in the 445 which is found in the
444 <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-files'>Yocto Project Files</ulink>. 446 <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
445 </para></note> 447 </para></note>
446 </section> 448 </section>
447 449
@@ -573,10 +575,10 @@
573 The file also points to some configuration fragments to use by setting the 575 The file also points to some configuration fragments to use by setting the
574 <filename>KERNEL_FEATURES</filename> variable. 576 <filename>KERNEL_FEATURES</filename> variable.
575 The location for the configuration fragments is the kernel tree itself in the 577 The location for the configuration fragments is the kernel tree itself in the
576 <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-build-directory'>Yocto Project Build 578 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>
577 Directory</ulink> under <filename>linux/meta</filename>. 579 under <filename>linux/meta</filename>.
578 Finally, the append file points to the specific commits in the 580 Finally, the append file points to the specific commits in the
579 <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-files'>Yocto Project Files</ulink> Git 581 <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink> Git
580 repository and the <filename>meta</filename> Git repository branches to identify the 582 repository and the <filename>meta</filename> Git repository branches to identify the
581 exact kernel needed to build the Crown Bay BSP. 583 exact kernel needed to build the Crown Bay BSP.
582 </para> 584 </para>
@@ -629,7 +631,7 @@
629 For example, if you are working with a local clone of the kernel repository, 631 For example, if you are working with a local clone of the kernel repository,
630 you could checkout the kernel's <filename>meta</filename> branch, make your changes, 632 you could checkout the kernel's <filename>meta</filename> branch, make your changes,
631 and then push the changes to the local bare clone of the kernel. 633 and then push the changes to the local bare clone of the kernel.
632 The result is that you directly add configuration options to the Yocto kernel 634 The result is that you directly add configuration options to the
633 <filename>meta</filename> branch for your BSP. 635 <filename>meta</filename> branch for your BSP.
634 The configuration options will likely end up in that location anyway if the BSP gets 636 The configuration options will likely end up in that location anyway if the BSP gets
635 added to the Yocto Project. 637 added to the Yocto Project.
@@ -672,7 +674,7 @@
672 <itemizedlist> 674 <itemizedlist>
673 <listitem><para>The requirements here assume the BSP layer is a well-formed, "legal" 675 <listitem><para>The requirements here assume the BSP layer is a well-formed, "legal"
674 layer that can be added to the Yocto Project. 676 layer that can be added to the Yocto Project.
675 For guidelines on creating a Yocto Project layer that meets these base requirements, see the 677 For guidelines on creating a layer that meets these base requirements, see the
676 "<link linkend='bsp-layers'>BSP Layers</link>" and the 678 "<link linkend='bsp-layers'>BSP Layers</link>" and the
677 "<ulink url='&YOCTO_DOCS_DEV_URL;#understanding-and-creating-layers'>Understanding 679 "<ulink url='&YOCTO_DOCS_DEV_URL;#understanding-and-creating-layers'>Understanding
678 and Creating Layers"</ulink> in the Yocto Project Development Manual.</para></listitem> 680 and Creating Layers"</ulink> in the Yocto Project Development Manual.</para></listitem>
@@ -719,15 +721,15 @@
719 <filename>recipe-*</filename> subdirectory. 721 <filename>recipe-*</filename> subdirectory.
720 You can find <filename>recipes.txt</filename> in the 722 You can find <filename>recipes.txt</filename> in the
721 <filename>meta</filename> directory of the 723 <filename>meta</filename> directory of the
722 <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-files'>Yocto 724 <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>,
723 Project Files</ulink>, or in the OpenEmbedded Core Layer 725 or in the OpenEmbedded Core Layer
724 (<filename>openembedded-core</filename>) found at 726 (<filename>openembedded-core</filename>) found at
725 <ulink url='http://git.openembedded.org/openembedded-core/tree/meta'></ulink>. 727 <ulink url='http://git.openembedded.org/openembedded-core/tree/meta'></ulink>.
726 </para> 728 </para>
727 <para>Within any particular <filename>recipes-*</filename> category, the layout 729 <para>Within any particular <filename>recipes-*</filename> category, the layout
728 should match what is found in the OpenEmbedded Core 730 should match what is found in the OpenEmbedded Core
729 Git repository (<filename>openembedded-core</filename>) 731 Git repository (<filename>openembedded-core</filename>)
730 or the Yocto Project Files (<filename>poky</filename>). 732 or the source directory (<filename>poky</filename>).
731 In other words, make sure you place related files in appropriately 733 In other words, make sure you place related files in appropriately
732 related <filename>recipes-*</filename> subdirectories specific to the 734 related <filename>recipes-*</filename> subdirectories specific to the
733 recipe's function, or within a subdirectory containing a set of closely-related 735 recipe's function, or within a subdirectory containing a set of closely-related
@@ -910,7 +912,7 @@
910 for a component or components. 912 for a component or components.
911 For these cases, you are required to accept the terms of a commercial or other 913 For these cases, you are required to accept the terms of a commercial or other
912 type of license that requires some kind of explicit End User License Agreement (EULA). 914 type of license that requires some kind of explicit End User License Agreement (EULA).
913 Once the license is accepted, the Yocto Project build system can then build and 915 Once the license is accepted, the OpenEmbedded build system can then build and
914 include the corresponding component in the final BSP image. 916 include the corresponding component in the final BSP image.
915 If the BSP is available as a pre-built image, you can download the image after 917 If the BSP is available as a pre-built image, you can download the image after
916 agreeing to the license or EULA. 918 agreeing to the license or EULA.
@@ -953,13 +955,12 @@
953 </para> 955 </para>
954 956
955 <para> 957 <para>
956 A couple different methods exist within the Yocto 958 A couple different methods exist within the OpenEmbedded build system to
957 Project build system to satisfy the licensing 959 satisfy the licensing requirements for an encumbered BSP.
958 requirements for an encumbered BSP.
959 The following list describes them in order of preference: 960 The following list describes them in order of preference:
960 <orderedlist> 961 <orderedlist>
961 <listitem><para><emphasis>Use the <filename>LICENSE_FLAGS</filename> variable 962 <listitem><para><emphasis>Use the <filename>LICENSE_FLAGS</filename> variable
962 to define the Yocto Project recipes that have commercial or other types of 963 to define the recipes that have commercial or other types of
963 specially-licensed packages:</emphasis> 964 specially-licensed packages:</emphasis>
964 For each of those recipes, you can 965 For each of those recipes, you can
965 specify a matching license string in a 966 specify a matching license string in a
@@ -1024,7 +1025,7 @@
1024 The Yocto Project includes a couple of tools that enable 1025 The Yocto Project includes a couple of tools that enable
1025 you to create a <link linkend='bsp-layers'>BSP layer</link> 1026 you to create a <link linkend='bsp-layers'>BSP layer</link>
1026 from scratch and do basic configuration and maintenance 1027 from scratch and do basic configuration and maintenance
1027 of the kernel without ever looking at a Yocto Project metadata file. 1028 of the kernel without ever looking at a metadata file.
1028 These tools are <filename>yocto-bsp</filename> and <filename>yocto-kernel</filename>, 1029 These tools are <filename>yocto-bsp</filename> and <filename>yocto-kernel</filename>,
1029 respectively. 1030 respectively.
1030 </para> 1031 </para>
@@ -1051,8 +1052,7 @@
1051 1052
1052 <para> 1053 <para>
1053 Both tools reside in the <filename>scripts/</filename> subdirectory 1054 Both tools reside in the <filename>scripts/</filename> subdirectory
1054 of the <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-files'>Yocto Project 1055 of the <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
1055 Files</ulink>.
1056 Consequently, to use the scripts, you must <filename>source</filename> the 1056 Consequently, to use the scripts, you must <filename>source</filename> the
1057 environment just as you would when invoking a build: 1057 environment just as you would when invoking a build:
1058 <literallayout class='monospaced'> 1058 <literallayout class='monospaced'>
@@ -1104,7 +1104,7 @@
1104 [-i &lt;JSON PROPERTY FILE&gt; | --infile &lt;JSON PROPERTY_FILE&gt;] 1104 [-i &lt;JSON PROPERTY FILE&gt; | --infile &lt;JSON PROPERTY_FILE&gt;]
1105 1105
1106 This command creates a Yocto BSP based on the specified parameters. 1106 This command creates a Yocto BSP based on the specified parameters.
1107 The new BSP will be a new Yocto BSP layer contained by default within 1107 The new BSP will be a new BSP layer contained by default within
1108 the top-level directory specified as 'meta-bsp-name'. The -o option 1108 the top-level directory specified as 'meta-bsp-name'. The -o option
1109 can be used to place the BSP layer in a directory with a different 1109 can be used to place the BSP layer in a directory with a different
1110 name and location. 1110 name and location.
@@ -1310,8 +1310,8 @@
1310 <listitem><para>The remainder of the prompts are routine. 1310 <listitem><para>The remainder of the prompts are routine.
1311 Defaults are accepted for each.</para></listitem> 1311 Defaults are accepted for each.</para></listitem>
1312 <listitem><para>By default, the script creates the new BSP Layer in the 1312 <listitem><para>By default, the script creates the new BSP Layer in the
1313 <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-build-directory'>Yocto Project 1313 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>.
1314 Build Directory</ulink>.</para></listitem> 1314 </para></listitem>
1315 </orderedlist> 1315 </orderedlist>
1316 </para> 1316 </para>
1317 1317
@@ -1336,8 +1336,7 @@
1336 <title>Managing Kernel Patches and Config Items with yocto-kernel</title> 1336 <title>Managing Kernel Patches and Config Items with yocto-kernel</title>
1337 1337
1338 <para> 1338 <para>
1339 Assuming you have created a Yocto Project 1339 Assuming you have created a <link linkend='bsp-layers'>BSP Layer</link> using
1340 <link linkend='bsp-layers'>BSP Layer</link> using
1341 <link linkend='creating-a-new-bsp-layer-using-the-yocto-bsp-script'> 1340 <link linkend='creating-a-new-bsp-layer-using-the-yocto-bsp-script'>
1342 <filename>yocto-bsp</filename></link> and you added it to your 1341 <filename>yocto-bsp</filename></link> and you added it to your
1343 <ulink url='&YOCTO_DOCS_REF_URL;#var-BBLAYERS'><filename>BBLAYERS</filename></ulink> 1342 <ulink url='&YOCTO_DOCS_REF_URL;#var-BBLAYERS'><filename>BBLAYERS</filename></ulink>
@@ -1348,7 +1347,7 @@
1348 1347
1349 <para> 1348 <para>
1350 The <filename>yocto-kernel</filename> script allows you to add, remove, and list patches 1349 The <filename>yocto-kernel</filename> script allows you to add, remove, and list patches
1351 and kernel config settings to a Yocto Project BSP's kernel 1350 and kernel config settings to a BSP's kernel
1352 <filename>.bbappend</filename> file. 1351 <filename>.bbappend</filename> file.
1353 All you need to do is use the appropriate sub-command. 1352 All you need to do is use the appropriate sub-command.
1354 Recall that the easiest way to see exactly what sub-commands are available 1353 Recall that the easiest way to see exactly what sub-commands are available