diff options
| author | Scott Rifenbark <scott.m.rifenbark@intel.com> | 2011-10-03 11:41:12 -0700 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-10-04 13:46:44 +0100 |
| commit | 8c10e069319458255826f9e0cdef5c90886c67d1 (patch) | |
| tree | 2676cd1fee1de8b467801faba2326b563fb31807 | |
| parent | 031930d4bf01b9735c8a96c631d573421b4e08e4 (diff) | |
| download | poky-8c10e069319458255826f9e0cdef5c90886c67d1.tar.gz | |
documentation/dev-manual/dev-manual-bsp-appendix.xml: scrubbed example
I changed several small things in the example as I worked through it
once again. The commit IDs changed for using the atom-pc kernel.
Also the command to build the sato image can no longer use 'live'.
(From yocto-docs rev: faff1e7f21b5059dfe708c6a3d83116c7349fe55)
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | documentation/dev-manual/dev-manual-bsp-appendix.xml | 67 |
1 files changed, 34 insertions, 33 deletions
diff --git a/documentation/dev-manual/dev-manual-bsp-appendix.xml b/documentation/dev-manual/dev-manual-bsp-appendix.xml index 9c7d5b6a72..86f6f20164 100644 --- a/documentation/dev-manual/dev-manual-bsp-appendix.xml +++ b/documentation/dev-manual/dev-manual-bsp-appendix.xml | |||
| @@ -40,14 +40,14 @@ | |||
| 40 | $ git branch -a | 40 | $ git branch -a |
| 41 | $ git tag -l | 41 | $ git tag -l |
| 42 | </literallayout> | 42 | </literallayout> |
| 43 | For this example we are going to use the Yocto Project 1.1 Release, | 43 | For this example we are going to use the Yocto Project 1.1 Release, which is code |
| 44 | which maps to the <filename>1.1</filename> branch in the repository. | 44 | named "edison". |
| 45 | These commands create a local branch named <filename>1.1</filename> | 45 | These commands create a local branch named <filename>edison</filename> |
| 46 | that tracks the remote branch of the same name. | 46 | that tracks the remote branch of the same name. |
| 47 | <literallayout class='monospaced'> | 47 | <literallayout class='monospaced'> |
| 48 | $ cd poky | 48 | $ cd poky |
| 49 | $ git checkout -b 1.1 origin/1.1 | 49 | $ git checkout -b edison origin/edison |
| 50 | Switched to a new branch '1.1' | 50 | Switched to a new branch 'edison' |
| 51 | </literallayout> | 51 | </literallayout> |
| 52 | </para> | 52 | </para> |
| 53 | </section> | 53 | </section> |
| @@ -56,7 +56,8 @@ | |||
| 56 | <title>Choosing a Base BSP</title> | 56 | <title>Choosing a Base BSP</title> |
| 57 | 57 | ||
| 58 | <para> | 58 | <para> |
| 59 | For this example, the base BSP is the Intel Atom Processor E660 with Intel Platform | 59 | For this example, the base BSP is the <trademark class='registered'>Intel</trademark> |
| 60 | <trademark class='trade'>Atom</trademark> Processor E660 with Intel Platform | ||
| 60 | Controller Hub EG20T Development Kit, which is otherwise referred to as "Crown Bay." | 61 | Controller Hub EG20T Development Kit, which is otherwise referred to as "Crown Bay." |
| 61 | The BSP layer is <filename>meta-crownbay</filename>. | 62 | The BSP layer is <filename>meta-crownbay</filename>. |
| 62 | </para> | 63 | </para> |
| @@ -73,7 +74,7 @@ | |||
| 73 | 74 | ||
| 74 | <para> | 75 | <para> |
| 75 | You need to have the base BSP layer on your development system. | 76 | You need to have the base BSP layer on your development system. |
| 76 | Like the local Yocto Project files, you can get the BSP | 77 | Similar to the local Yocto Project files, you can get the BSP |
| 77 | layer one of two ways: | 78 | layer one of two ways: |
| 78 | download the BSP tarball and extract it, or set up a local Git repository that | 79 | download the BSP tarball and extract it, or set up a local Git repository that |
| 79 | has the Yocto Project BSP layers. | 80 | has the Yocto Project BSP layers. |
| @@ -83,7 +84,7 @@ | |||
| 83 | </para> | 84 | </para> |
| 84 | 85 | ||
| 85 | <para> | 86 | <para> |
| 86 | This example assumes a local <filename>meta-intel</filename> Git repository | 87 | This example assumes the local <filename>meta-intel</filename> Git repository is |
| 87 | inside the local <filename>poky</filename> Git repository. | 88 | inside the local <filename>poky</filename> Git repository. |
| 88 | The <filename>meta-intel</filename> Git repository contains all the metadata | 89 | The <filename>meta-intel</filename> Git repository contains all the metadata |
| 89 | that supports BSP creation. | 90 | that supports BSP creation. |
| @@ -92,11 +93,11 @@ | |||
| 92 | <para> | 93 | <para> |
| 93 | Because <filename>meta-intel</filename> is its own Git repository, you will want | 94 | Because <filename>meta-intel</filename> is its own Git repository, you will want |
| 94 | to be sure you are in the appropriate branch for your work. | 95 | to be sure you are in the appropriate branch for your work. |
| 95 | For this example we are going to use the <filename>1.1</filename> branch. | 96 | For this example we are going to use the <filename>edison</filename> branch. |
| 96 | <literallayout class='monospaced'> | 97 | <literallayout class='monospaced'> |
| 97 | $ cd meta-intel | 98 | $ cd meta-intel |
| 98 | $ git checkout -b 1.1 origin/1.1 | 99 | $ git checkout -b edison origin/edison |
| 99 | Switched to a new branch 'bernard' | 100 | Switched to a new branch 'edison' |
| 100 | </literallayout> | 101 | </literallayout> |
| 101 | </para> | 102 | </para> |
| 102 | </section> | 103 | </section> |
| @@ -105,14 +106,14 @@ | |||
| 105 | <title>Making a Copy of the Base BSP to Create Your New BSP Layer</title> | 106 | <title>Making a Copy of the Base BSP to Create Your New BSP Layer</title> |
| 106 | 107 | ||
| 107 | <para> | 108 | <para> |
| 108 | Now that you have the local Yocto Project files and the base BSP files you need to create a | 109 | Now that you have the local Yocto Project files and the base BSP files, you need to create a |
| 109 | new layer for your BSP. | 110 | new layer for your BSP. |
| 110 | To create your BSP layer you simply copy the <filename>meta-crownbay</filename> | 111 | To create your BSP layer, you simply copy the <filename>meta-crownbay</filename> |
| 111 | layer to a new layer. | 112 | layer to a new layer. |
| 112 | </para> | 113 | </para> |
| 113 | 114 | ||
| 114 | <para> | 115 | <para> |
| 115 | For this example the new layer will be named <filename>meta-mymachine</filename>. | 116 | For this example, the new layer will be named <filename>meta-mymachine</filename>. |
| 116 | The name must follow the BSP layer naming convention, which is | 117 | The name must follow the BSP layer naming convention, which is |
| 117 | <filename>meta-<name></filename>. | 118 | <filename>meta-<name></filename>. |
| 118 | The following example assumes your working directory is <filename>meta-intel</filename> | 119 | The following example assumes your working directory is <filename>meta-intel</filename> |
| @@ -148,7 +149,7 @@ | |||
| 148 | </para> | 149 | </para> |
| 149 | 150 | ||
| 150 | <para> | 151 | <para> |
| 151 | First, since in this example the new BSP will not support EMGD we will get rid of the | 152 | First, since in this example the new BSP will not support EMGD, we will get rid of the |
| 152 | <filename>crownbay.conf</filename> file and then rename the | 153 | <filename>crownbay.conf</filename> file and then rename the |
| 153 | <filename>crownbay-noemgd.conf</filename> file to <filename>mymachine.conf</filename>. | 154 | <filename>crownbay-noemgd.conf</filename> file to <filename>mymachine.conf</filename>. |
| 154 | Much of what we do in the configuration directory is designed to help the Yocto Project | 155 | Much of what we do in the configuration directory is designed to help the Yocto Project |
| @@ -172,7 +173,7 @@ | |||
| 172 | Note that inside the <filename>mymachine.conf</filename> is the | 173 | Note that inside the <filename>mymachine.conf</filename> is the |
| 173 | <filename>PREFERRED_PROVIDER_virtual/kernel</filename> statement. | 174 | <filename>PREFERRED_PROVIDER_virtual/kernel</filename> statement. |
| 174 | This statement identifies the kernel that the BSP is going to use. | 175 | This statement identifies the kernel that the BSP is going to use. |
| 175 | In this case the BSP is using <filename>linux-yocto</filename>, which is the | 176 | In this case, the BSP is using <filename>linux-yocto</filename>, which is the |
| 176 | current Linux Yocto kernel based on the Linux 3.0 release. | 177 | current Linux Yocto kernel based on the Linux 3.0 release. |
| 177 | </para> | 178 | </para> |
| 178 | 179 | ||
| @@ -180,8 +181,9 @@ | |||
| 180 | The next configuration file in the new BSP layer we need to edit is <filename>layer.conf</filename>. | 181 | The next configuration file in the new BSP layer we need to edit is <filename>layer.conf</filename>. |
| 181 | This file identifies build information needed for the new layer. | 182 | This file identifies build information needed for the new layer. |
| 182 | You can see the | 183 | You can see the |
| 183 | <ulink url='http://www.yoctoproject.org/docs/1.1/bsp-guide/bsp-guide.html#bsp-filelayout-layer'> | 184 | "<ulink url='http://www.yoctoproject.org/docs/1.1/bsp-guide/bsp-guide.html#bsp-filelayout-layer'>Layer Configuration File</ulink>" section in |
| 184 | Layer Configuration File</ulink> section in the Board Support Packages (BSP) Development Guide | 185 | <ulink url='http://www.yoctoproject.org/docs/1.1/bsp-guide/bsp-guide.html'>The Board |
| 186 | Support Packages (BSP) Development Guide</ulink> | ||
| 185 | for more information on this configuration file. | 187 | for more information on this configuration file. |
| 186 | Basically, we are changing the existing statements to work with our BSP. | 188 | Basically, we are changing the existing statements to work with our BSP. |
| 187 | </para> | 189 | </para> |
| @@ -212,10 +214,10 @@ | |||
| 212 | <para> | 214 | <para> |
| 213 | Now we will take a look at the recipes in your new layer. | 215 | Now we will take a look at the recipes in your new layer. |
| 214 | The standard BSP structure has areas for BSP, graphics, core, and kernel recipes. | 216 | The standard BSP structure has areas for BSP, graphics, core, and kernel recipes. |
| 215 | When you create a BSP you use these areas for appropriate recipes and append files. | 217 | When you create a BSP, you use these areas for appropriate recipes and append files. |
| 216 | Recipes take the form of <filename>.bb</filename> files. | 218 | Recipes take the form of <filename>.bb</filename> files. |
| 217 | If you want to leverage the existing recipes the Yocto Project build system uses | 219 | If you want to leverage the existing recipes the Yocto Project build system uses |
| 218 | but change those recipes you can use <filename>.bbappend</filename> files. | 220 | but change those recipes, you can use <filename>.bbappend</filename> files. |
| 219 | All new recipes and append files for your layer must go in the layer’s | 221 | All new recipes and append files for your layer must go in the layer’s |
| 220 | <filename>recipes-bsp</filename>, <filename>recipes-kernel</filename>, | 222 | <filename>recipes-bsp</filename>, <filename>recipes-kernel</filename>, |
| 221 | <filename>recipes-core</filename>, and | 223 | <filename>recipes-core</filename>, and |
| @@ -321,14 +323,14 @@ | |||
| 321 | Here are the statements: | 323 | Here are the statements: |
| 322 | <literallayout class='monospaced'> | 324 | <literallayout class='monospaced'> |
| 323 | SRCREV_machine_pn-linux-yocto_crownbay ?= \ | 325 | SRCREV_machine_pn-linux-yocto_crownbay ?= \ |
| 324 | "372c0ab135978bd8ca3a77c88816a25c5ed8f303" | 326 | "2247da9131ea7e46ed4766a69bb1353dba22f873" |
| 325 | SRCREV_meta_pn-linux-yocto_crownbay ?= \ | 327 | SRCREV_meta_pn-linux-yocto_crownbay ?= \ |
| 326 | "d5d3c6480d61f83503ccef7fbcd765f7aca8b71b" | 328 | "67a46a608f47c19f16995be7de7b272025864b1b" |
| 327 | 329 | ||
| 328 | SRCREV_machine_pn-linux-yocto_crownbay-noemgd ?= \ | 330 | SRCREV_machine_pn-linux-yocto_crownbay-noemgd ?= \ |
| 329 | "372c0ab135978bd8ca3a77c88816a25c5ed8f303" | 331 | "2247da9131ea7e46ed4766a69bb1353dba22f873" |
| 330 | SRCREV_meta_pn-linux-yocto_crownbay-noemgd ?= \ | 332 | SRCREV_meta_pn-linux-yocto_crownbay-noemgd ?= \ |
| 331 | "d5d3c6480d61f83503ccef7fbcd765f7aca8b71b" | 333 | "67a46a608f47c19f16995be7de7b272025864b1b" |
| 332 | </literallayout> | 334 | </literallayout> |
| 333 | </para> | 335 | </para> |
| 334 | 336 | ||
| @@ -345,7 +347,7 @@ | |||
| 345 | <para> | 347 | <para> |
| 346 | To fix this situation in <filename>linux-yocto_3.0.bbappend</filename> | 348 | To fix this situation in <filename>linux-yocto_3.0.bbappend</filename> |
| 347 | we delete the two <filename>SRCREV</filename> statements that support | 349 | we delete the two <filename>SRCREV</filename> statements that support |
| 348 | EMGD (the top pair). | 350 | EMGD (the top pair). |
| 349 | We also change the remaining pair to specify <filename>mymachine</filename> | 351 | We also change the remaining pair to specify <filename>mymachine</filename> |
| 350 | and insert the commit identifiers to identify the kernel in which we | 352 | and insert the commit identifiers to identify the kernel in which we |
| 351 | are interested, which will be based on the <filename>atom-pc-standard</filename> | 353 | are interested, which will be based on the <filename>atom-pc-standard</filename> |
| @@ -353,9 +355,9 @@ | |||
| 353 | Here are the final <filename>SRCREV</filename> statements: | 355 | Here are the final <filename>SRCREV</filename> statements: |
| 354 | <literallayout class='monospaced'> | 356 | <literallayout class='monospaced'> |
| 355 | SRCREV_machine_pn-linux-yocto_mymachine ?= \ | 357 | SRCREV_machine_pn-linux-yocto_mymachine ?= \ |
| 356 | "fce17f046d3756045e4dfb49221d1cf60fcae329" | 358 | "06c798f25a19281d7fa944b14366dd75820ba009" |
| 357 | SRCREV_meta_pn-linux-yocto_mymachine ?= \ | 359 | SRCREV_meta_pn-linux-yocto_mymachine ?= \ |
| 358 | "84f1a422d7e21fbc23a687035bdf9d42471f19e0" | 360 | "67a46a608f47c19f16995be7de7b272025864b1b" |
| 359 | </literallayout> | 361 | </literallayout> |
| 360 | </para> | 362 | </para> |
| 361 | 363 | ||
| @@ -364,9 +366,8 @@ | |||
| 364 | exact commit strings in the Yocto Project source repositories you need to change | 366 | exact commit strings in the Yocto Project source repositories you need to change |
| 365 | the <filename>SRCREV</filename> statements. | 367 | the <filename>SRCREV</filename> statements. |
| 366 | You can find all the <filename>machine</filename> and <filename>meta</filename> | 368 | You can find all the <filename>machine</filename> and <filename>meta</filename> |
| 367 | branch points (commits) for the <filename>linux-yocto-3.0</filename> kernel | 369 | branch points (commits) for the <filename>linux-yocto-3.0</filename> kernel at |
| 368 | <ulink url='http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-2.6.37'>here</ulink> | 370 | <ulink url='http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-3.0'></ulink>. |
| 369 | [WRITER's NOTE: Need new link to the 3.0 source repo area when it is available]. | ||
| 370 | </para> | 371 | </para> |
| 371 | 372 | ||
| 372 | <para> | 373 | <para> |
| @@ -405,9 +406,9 @@ | |||
| 405 | KERNEL_FEATURES_append_mymachine += " cfg/smp.scc" | 406 | KERNEL_FEATURES_append_mymachine += " cfg/smp.scc" |
| 406 | 407 | ||
| 407 | SRCREV_machine_pn-linux-yocto_mymachine ?= \ | 408 | SRCREV_machine_pn-linux-yocto_mymachine ?= \ |
| 408 | "fce17f046d3756045e4dfb49221d1cf60fcae329" | 409 | "06c798f25a19281d7fa944b14366dd75820ba009" |
| 409 | SRCREV_meta_pn-linux-yocto_mymachine ?= \ | 410 | SRCREV_meta_pn-linux-yocto_mymachine ?= \ |
| 410 | "84f1a422d7e21fbc23a687035bdf9d42471f19e0" | 411 | "67a46a608f47c19f16995be7de7b272025864b1b" |
| 411 | </literallayout> | 412 | </literallayout> |
| 412 | </para> | 413 | </para> |
| 413 | </section> | 414 | </section> |
| @@ -502,7 +503,7 @@ | |||
| 502 | For example, moving your working directory around could cause problems. | 503 | For example, moving your working directory around could cause problems. |
| 503 | Here is the command for this example: | 504 | Here is the command for this example: |
| 504 | <literallayout class='monospaced'> | 505 | <literallayout class='monospaced'> |
| 505 | $ bitbake –k core-image-sato-live | 506 | $ bitbake -k core-image-sato |
| 506 | </literallayout> | 507 | </literallayout> |
| 507 | </para> | 508 | </para> |
| 508 | 509 | ||
