diff options
-rw-r--r-- | documentation/bsp-guide/bsp.xml | 73 |
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 <JSON PROPERTY FILE> | --infile <JSON PROPERTY_FILE>] | 1104 | [-i <JSON PROPERTY FILE> | --infile <JSON PROPERTY_FILE>] |
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 |