diff options
| -rw-r--r-- | documentation/dev-manual/dev-manual-bsp-appendix.xml | 468 |
1 files changed, 250 insertions, 218 deletions
diff --git a/documentation/dev-manual/dev-manual-bsp-appendix.xml b/documentation/dev-manual/dev-manual-bsp-appendix.xml index e9f4cb022a..9ccad105b7 100644 --- a/documentation/dev-manual/dev-manual-bsp-appendix.xml +++ b/documentation/dev-manual/dev-manual-bsp-appendix.xml | |||
| @@ -184,165 +184,191 @@ | |||
| 184 | Right now you have two identical BSP layers with different names: | 184 | Right now you have two identical BSP layers with different names: |
| 185 | <filename>meta-crownbay</filename> and <filename>meta-mymachine</filename>. | 185 | <filename>meta-crownbay</filename> and <filename>meta-mymachine</filename>. |
| 186 | You need to change your configurations so that they work for your new BSP and | 186 | You need to change your configurations so that they work for your new BSP and |
| 187 | your particular hardware. | 187 | your particular hardware. |
| 188 | We will look first at the configurations, which are all done in the layer’s | 188 | The following sections look at each of these areas of the BSP. |
| 189 | <filename>conf</filename> directory. | 189 | </para> |
| 190 | </para> | 190 | |
| 191 | 191 | <section id='changing-the-bsp-configuration'> | |
| 192 | <para> | 192 | <title>Changing the BSP Configuration</title> |
| 193 | First, since in this example the new BSP will not support EMGD we will get rid of the | 193 | |
| 194 | <filename>crownbay.conf</filename> file and then rename the | 194 | <para> |
| 195 | <filename>crownbay-noemgd.conf</filename> file to <filename>mymachine.conf</filename>. | 195 | We will look first at the configurations, which are all done in the layer’s |
| 196 | Much of what we do in the configuration directory is designed to help the Yocto Project | 196 | <filename>conf</filename> directory. |
| 197 | build system work with the new layer and to be able to find and use the right software. | 197 | </para> |
| 198 | The following two commands result in a single machine configuration file named | 198 | |
| 199 | <filename>mymachine.conf</filename>. | 199 | <para> |
| 200 | <literallayout class='monospaced'> | 200 | First, since in this example the new BSP will not support EMGD we will get rid of the |
| 201 | <filename>crownbay.conf</filename> file and then rename the | ||
| 202 | <filename>crownbay-noemgd.conf</filename> file to <filename>mymachine.conf</filename>. | ||
| 203 | Much of what we do in the configuration directory is designed to help the Yocto Project | ||
| 204 | build system work with the new layer and to be able to find and use the right software. | ||
| 205 | The following two commands result in a single machine configuration file named | ||
| 206 | <filename>mymachine.conf</filename>. | ||
| 207 | <literallayout class='monospaced'> | ||
| 201 | $ rm meta-mymachine/conf/machine/crownbay.conf | 208 | $ rm meta-mymachine/conf/machine/crownbay.conf |
| 202 | $ mv meta-mymachine/conf/machine/crownbay-noemgd.conf \ | 209 | $ mv meta-mymachine/conf/machine/crownbay-noemgd.conf \ |
| 203 | meta-mymachine/conf/machine/mymachine.conf | 210 | meta-mymachine/conf/machine/mymachine.conf |
| 204 | </literallayout> | 211 | </literallayout> |
| 205 | </para> | 212 | </para> |
| 206 | 213 | ||
| 207 | <para> | 214 | <para> |
| 208 | The next step makes changes to <filename>mymachine.conf</filename> itself. | 215 | The next step makes changes to <filename>mymachine.conf</filename> itself. |
| 209 | The only changes needed for this example are changes to the comment lines. | 216 | The only changes needed for this example are changes to the comment lines. |
| 210 | Here we simply substitute the Crown Bay name with an appropriate name. | 217 | Here we simply substitute the Crown Bay name with an appropriate name. |
| 211 | </para> | 218 | </para> |
| 212 | 219 | ||
| 213 | <para> | 220 | <para> |
| 214 | Note that inside the <filename>mymachine.conf</filename> is the | 221 | Note that inside the <filename>mymachine.conf</filename> is the |
| 215 | <filename>PREFERRED_PROVIDER_virtual/kernel</filename> statement. | 222 | <filename>PREFERRED_PROVIDER_virtual/kernel</filename> statement. |
| 216 | This statement identifies the kernel that the BSP is going to use. | 223 | This statement identifies the kernel that the BSP is going to use. |
| 217 | In this case the BSP is using <filename>linux-yocto</filename>, which is the | 224 | In this case the BSP is using <filename>linux-yocto</filename>, which is the |
| 218 | current Linux Yocto kernel based on the Linux 2.6.37 release. | 225 | current Linux Yocto kernel based on the Linux 2.6.37 release. |
| 219 | </para> | 226 | </para> |
| 220 | 227 | ||
| 221 | <para> | 228 | <para> |
| 222 | The next configuration file in the new BSP layer we need to edit is <filename>layer.conf</filename>. | 229 | The next configuration file in the new BSP layer we need to edit is <filename>layer.conf</filename>. |
| 223 | This file identifies build information needed for the new layer. | 230 | This file identifies build information needed for the new layer. |
| 224 | You can see the | 231 | You can see the |
| 225 | <ulink url='http://www.yoctoproject.org/docs/1.1/bsp-guide/bsp-guide.html#bsp-filelayout-layer'> | 232 | <ulink url='http://www.yoctoproject.org/docs/1.1/bsp-guide/bsp-guide.html#bsp-filelayout-layer'> |
| 226 | Layer Configuration File</ulink> section in the Board Support Packages (BSP) Development Guide | 233 | Layer Configuration File</ulink> section in the Board Support Packages (BSP) Development Guide |
| 227 | for more information on this configuration file. | 234 | for more information on this configuration file. |
| 228 | Basically, we are changing the existing statements to work with our BSP. | 235 | Basically, we are changing the existing statements to work with our BSP. |
| 229 | </para> | 236 | </para> |
| 230 | 237 | ||
| 231 | <para> | 238 | <para> |
| 232 | The file contains these statements that reference the Crown Bay BSP: | 239 | The file contains these statements that reference the Crown Bay BSP: |
| 233 | <literallayout class='monospaced'> | 240 | <literallayout class='monospaced'> |
| 234 | BBFILE_COLLECTIONS += "crownbay" | 241 | BBFILE_COLLECTIONS += "crownbay" |
| 235 | BBFILE_PATTERN_crownbay := "^${LAYERDIR}/" | 242 | BBFILE_PATTERN_crownbay := "^${LAYERDIR}/" |
| 236 | BBFILE_PRIORITY_crownbay = "6" | 243 | BBFILE_PRIORITY_crownbay = "6" |
| 237 | </literallayout> | 244 | </literallayout> |
| 238 | </para> | 245 | </para> |
| 239 | 246 | ||
| 240 | <para> | 247 | <para> |
| 241 | Simply substitute the machine string name <filename>crownbay</filename> | 248 | Simply substitute the machine string name <filename>crownbay</filename> |
| 242 | with the new machine name <filename>mymachine</filename> to get the following: | 249 | with the new machine name <filename>mymachine</filename> to get the following: |
| 243 | <literallayout class='monospaced'> | 250 | <literallayout class='monospaced'> |
| 244 | BBFILE_COLLECTIONS_mymachine += "mymachine" | 251 | BBFILE_COLLECTIONS_mymachine += "mymachine" |
| 245 | BBFILE_PATTERN_mymachine := "^${LAYERDIR}/" | 252 | BBFILE_PATTERN_mymachine := "^${LAYERDIR}/" |
| 246 | BBFILE_PRIORITY_mymachine = "6" | 253 | BBFILE_PRIORITY_mymachine = "6" |
| 247 | </literallayout> | 254 | </literallayout> |
| 248 | </para> | 255 | </para> |
| 249 | 256 | </section> | |
| 250 | <para> | 257 | |
| 251 | Now we will take a look at the recipes in your new layer. | 258 | <section id='changing-the-recipes-in-your-bsp'> |
| 252 | The standard BSP structure has areas for BSP, graphics, core, and kernel recipes. | 259 | <title>Changing the Recipes in Your BSP</title> |
| 253 | When you create a BSP you use these areas for appropriate recipes and append files. | 260 | |
| 254 | Recipes take the form of <filename>.bb</filename> files. | 261 | <para> |
| 255 | If you want to leverage the existing recipes the Yocto Project build system uses | 262 | Now we will take a look at the recipes in your new layer. |
| 256 | but change those recipes you can use <filename>.bbappend</filename> files. | 263 | The standard BSP structure has areas for BSP, graphics, core, and kernel recipes. |
| 257 | All new recipes and append files for your layer must go in the layer’s | 264 | When you create a BSP you use these areas for appropriate recipes and append files. |
| 258 | <filename>recipes-bsp</filename>, <filename>recipes-kernel</filename>, | 265 | Recipes take the form of <filename>.bb</filename> files. |
| 259 | <filename>recipes-core</filename>, and | 266 | If you want to leverage the existing recipes the Yocto Project build system uses |
| 260 | <filename>recipes-graphics</filename> directories. | 267 | but change those recipes you can use <filename>.bbappend</filename> files. |
| 261 | </para> | 268 | All new recipes and append files for your layer must go in the layer’s |
| 262 | 269 | <filename>recipes-bsp</filename>, <filename>recipes-kernel</filename>, | |
| 263 | <para> | 270 | <filename>recipes-core</filename>, and |
| 264 | First, let's look at <filename>recipes-bsp</filename>. | 271 | <filename>recipes-graphics</filename> directories. |
| 265 | For this example we are not adding any new BSP recipes. | 272 | </para> |
| 266 | And, we only need to remove the formfactor we do not want and change the name of | 273 | |
| 267 | the remaining one that doesn't support EMGD. | 274 | <section id='changing-recipes-bsp'> |
| 268 | These commands take care of the <filename>recipes-bsp</filename> recipes: | 275 | <title>Changing <filename>recipes-bsp</filename></title> |
| 269 | <literallayout class='monospaced'> | 276 | |
| 277 | <para> | ||
| 278 | First, let's look at <filename>recipes-bsp</filename>. | ||
| 279 | For this example we are not adding any new BSP recipes. | ||
| 280 | And, we only need to remove the formfactor we do not want and change the name of | ||
| 281 | the remaining one that doesn't support EMGD. | ||
| 282 | These commands take care of the <filename>recipes-bsp</filename> recipes: | ||
| 283 | <literallayout class='monospaced'> | ||
| 270 | $ rm ‐rf meta-mymachine/recipes-graphics/xorg-xserver/*emgd* | 284 | $ rm ‐rf meta-mymachine/recipes-graphics/xorg-xserver/*emgd* |
| 271 | $ mv meta-mymachine/recipes-bsp/formfactor/formfactor/crownbay-noemgd/ \ | 285 | $ mv meta-mymachine/recipes-bsp/formfactor/formfactor/crownbay-noemgd/ \ |
| 272 | meta-mymachine/recipes-bsp/formfactor/formfactor/mymachine | 286 | meta-mymachine/recipes-bsp/formfactor/formfactor/mymachine |
| 273 | </literallayout> | 287 | </literallayout> |
| 274 | </para> | 288 | </para> |
| 289 | </section> | ||
| 275 | 290 | ||
| 276 | <para> | 291 | <section id='changing-recipes-graphics'> |
| 277 | Now let's look at <filename>recipes-graphics</filename>. | 292 | <title>Changing <filename>recipes-graphics</filename></title> |
| 278 | For this example we want to remove anything that supports EMGD and | 293 | |
| 279 | be sure to rename remaining directories appropriately. | 294 | <para> |
| 280 | The following commands clean up the <filename>recipes-graphics</filename> directory: | 295 | Now let's look at <filename>recipes-graphics</filename>. |
| 281 | <literallayout class='monospaced'> | 296 | For this example we want to remove anything that supports EMGD and |
| 297 | be sure to rename remaining directories appropriately. | ||
| 298 | The following commands clean up the <filename>recipes-graphics</filename> directory: | ||
| 299 | <literallayout class='monospaced'> | ||
| 282 | $ rm ‐rf meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-emgd* | 300 | $ rm ‐rf meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-emgd* |
| 283 | $ rm ‐rf meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay | 301 | $ rm ‐rf meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay |
| 284 | $ mv meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay-noemgd \ | 302 | $ mv meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay-noemgd \ |
| 285 | meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-config/mymachine | 303 | meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-config/mymachine |
| 286 | </literallayout> | 304 | </literallayout> |
| 287 | </para> | 305 | </para> |
| 288 | 306 | ||
| 289 | <para> | 307 | <para> |
| 290 | At this point the <filename>recipes-graphics</filename> directory just has files that | 308 | At this point the <filename>recipes-graphics</filename> directory just has files that |
| 291 | support Video Electronics Standards Association (VESA) graphics modes and not EMGD. | 309 | support Video Electronics Standards Association (VESA) graphics modes and not EMGD. |
| 292 | </para> | 310 | </para> |
| 293 | 311 | </section> | |
| 294 | <para> | 312 | |
| 295 | Now let's look at changes in <filename>recipes-core</filename>. | 313 | <section id='changing-recipes-core'> |
| 296 | The file <filename>task-core-tools.bbappend</filename> in | 314 | <title>Changing <filename>recipes-core</filename></title> |
| 297 | <filename>recipes-core/tasks</filename> appends the similarly named recipe | 315 | |
| 298 | located in the local Yocto Project files at | 316 | <para> |
| 299 | <filename>meta/recipes-core/tasks</filename>. | 317 | Now let's look at changes in <filename>recipes-core</filename>. |
| 300 | The "append" file in our layer right now is Crown Bay-specific and supports | 318 | The file <filename>task-core-tools.bbappend</filename> in |
| 301 | EMGD and non-EMGD. | 319 | <filename>recipes-core/tasks</filename> appends the similarly named recipe |
| 302 | Here are the contents of the file: | 320 | located in the local Yocto Project files at |
| 303 | <literallayout class='monospaced'> | 321 | <filename>meta/recipes-core/tasks</filename>. |
| 322 | The "append" file in our layer right now is Crown Bay-specific and supports | ||
| 323 | EMGD and non-EMGD. | ||
| 324 | Here are the contents of the file: | ||
| 325 | <literallayout class='monospaced'> | ||
| 304 | RRECOMMENDS_task-core-tools-profile_append_crownbay = " systemtap" | 326 | RRECOMMENDS_task-core-tools-profile_append_crownbay = " systemtap" |
| 305 | RRECOMMENDS_task-core-tools-profile_append_crownbay-noemgd = " systemtap" | 327 | RRECOMMENDS_task-core-tools-profile_append_crownbay-noemgd = " systemtap" |
| 306 | </literallayout> | 328 | </literallayout> |
| 307 | </para> | 329 | </para> |
| 308 | 330 | ||
| 309 | <para> | 331 | <para> |
| 310 | The <filename>RRECOMMENDS</filename> statements list packages that | 332 | The <filename>RRECOMMENDS</filename> statements list packages that |
| 311 | extend usability. | 333 | extend usability. |
| 312 | The first <filename>RRECOMMENDS</filename> statement can be removed, while the | 334 | The first <filename>RRECOMMENDS</filename> statement can be removed, while the |
| 313 | second one can be changed to reflect <filename>meta-mymachine</filename>: | 335 | second one can be changed to reflect <filename>meta-mymachine</filename>: |
| 314 | <literallayout class='monospaced'> | 336 | <literallayout class='monospaced'> |
| 315 | RRECOMMENDS_task-core-tools-profile_append_mymachine = " systemtap" | 337 | RRECOMMENDS_task-core-tools-profile_append_mymachine = " systemtap" |
| 316 | </literallayout> | 338 | </literallayout> |
| 317 | </para> | 339 | </para> |
| 318 | 340 | </section> | |
| 319 | <para> | 341 | |
| 320 | Finally, let's look at <filename>recipes-kernel</filename> changes. | 342 | <section id='changing-recipes-kernel'> |
| 321 | Recall that the BSP uses the <filename>linux-yocto</filename> kernel as determined | 343 | <title>Changing <filename>recipes-kernel</filename></title> |
| 322 | earlier in the <filename>mymachine.conf</filename>. | 344 | |
| 323 | The recipe for that kernel is not located in the | 345 | <para> |
| 324 | BSP layer but rather in the local Yocto Project files at | 346 | Finally, let's look at <filename>recipes-kernel</filename> changes. |
| 325 | <filename>meta/recipes-kernel/linux</filename> and is | 347 | Recall that the BSP uses the <filename>linux-yocto</filename> kernel as determined |
| 326 | named <filename>linux-yocto-2.6.37.bb</filename>. | 348 | earlier in the <filename>mymachine.conf</filename>. |
| 327 | The <filename>SRCREV_machine</filename> and <filename>SRCREV_meta</filename> | 349 | The recipe for that kernel is not located in the |
| 328 | statements point to the exact commits used by the Yocto Project development team | 350 | BSP layer but rather in the local Yocto Project files at |
| 329 | in their source repositories that identify the right kernel for our hardware. | 351 | <filename>meta/recipes-kernel/linux</filename> and is |
| 330 | </para> | 352 | named <filename>linux-yocto-2.6.37.bb</filename>. |
| 353 | The <filename>SRCREV_machine</filename> and <filename>SRCREV_meta</filename> | ||
| 354 | statements point to the exact commits used by the Yocto Project development team | ||
| 355 | in their source repositories that identify the right kernel for our hardware. | ||
| 356 | </para> | ||
| 331 | 357 | ||
| 332 | <para> | 358 | <para> |
| 333 | However, in the <filename>meta-mymachine</filename> layer in | 359 | However, in the <filename>meta-mymachine</filename> layer in |
| 334 | <filename>recipes-kernel/linux</filename> resides a <filename>.bbappend</filename> | 360 | <filename>recipes-kernel/linux</filename> resides a <filename>.bbappend</filename> |
| 335 | file named <filename>linux-yocto-2.6.37.bbappend</filename> that | 361 | file named <filename>linux-yocto-2.6.37.bbappend</filename> that |
| 336 | is appended to the recipe of the same name in <filename>meta/recipes-kernel/link</filename>. | 362 | is appended to the recipe of the same name in <filename>meta/recipes-kernel/link</filename>. |
| 337 | Thus, the <filename>SRCREV</filename> statements in the "append" file override | 363 | Thus, the <filename>SRCREV</filename> statements in the "append" file override |
| 338 | the more general statements found in <filename>meta</filename>. | 364 | the more general statements found in <filename>meta</filename>. |
| 339 | </para> | 365 | </para> |
| 340 | 366 | ||
| 341 | <para> | 367 | <para> |
| 342 | The <filename>SRCREV</filename> statements in the "append" file currently identify | 368 | The <filename>SRCREV</filename> statements in the "append" file currently identify |
| 343 | the kernel that supports the Crown Bay BSP with and without EMGD support. | 369 | the kernel that supports the Crown Bay BSP with and without EMGD support. |
| 344 | Here are the statements: | 370 | Here are the statements: |
| 345 | <literallayout class='monospaced'> | 371 | <literallayout class='monospaced'> |
| 346 | SRCREV_machine_pn-linux-yocto_crownbay ?= \ | 372 | SRCREV_machine_pn-linux-yocto_crownbay ?= \ |
| 347 | "372c0ab135978bd8ca3a77c88816a25c5ed8f303" | 373 | "372c0ab135978bd8ca3a77c88816a25c5ed8f303" |
| 348 | SRCREV_meta_pn-linux-yocto_crownbay ?= \ | 374 | SRCREV_meta_pn-linux-yocto_crownbay ?= \ |
| @@ -352,74 +378,74 @@ | |||
| 352 | "372c0ab135978bd8ca3a77c88816a25c5ed8f303" | 378 | "372c0ab135978bd8ca3a77c88816a25c5ed8f303" |
| 353 | SRCREV_meta_pn-linux-yocto_crownbay-noemgd ?= \ | 379 | SRCREV_meta_pn-linux-yocto_crownbay-noemgd ?= \ |
| 354 | "d5d3c6480d61f83503ccef7fbcd765f7aca8b71b" | 380 | "d5d3c6480d61f83503ccef7fbcd765f7aca8b71b" |
| 355 | </literallayout> | 381 | </literallayout> |
| 356 | </para> | 382 | </para> |
| 357 | 383 | ||
| 358 | <para> | 384 | <para> |
| 359 | You will notice that there are two pairs of <filename>SRCREV</filename> statements. | 385 | You will notice that there are two pairs of <filename>SRCREV</filename> statements. |
| 360 | The top pair identifies the kernel that supports | 386 | The top pair identifies the kernel that supports |
| 361 | EMGD, which we don’t care about in this example. | 387 | EMGD, which we don’t care about in this example. |
| 362 | The bottom pair identifies the kernel that we will use: | 388 | The bottom pair identifies the kernel that we will use: |
| 363 | <filename>linux-yocto</filename>. | 389 | <filename>linux-yocto</filename>. |
| 364 | At this point though, the unique commit strings all are still associated with | 390 | At this point though, the unique commit strings all are still associated with |
| 365 | Crown Bay and not <filename>meta-mymachine</filename>. | 391 | Crown Bay and not <filename>meta-mymachine</filename>. |
| 366 | </para> | 392 | </para> |
| 367 | 393 | ||
| 368 | <para> | 394 | <para> |
| 369 | To fix this situation in <filename>linux-yocto-2.6.37.bbappend</filename> | 395 | To fix this situation in <filename>linux-yocto-2.6.37.bbappend</filename> |
| 370 | we delete the two <filename>SRCREV</filename> statements that support | 396 | we delete the two <filename>SRCREV</filename> statements that support |
| 371 | EMGD (the top pair). | 397 | EMGD (the top pair). |
| 372 | We also change the remaining pair to specify <filename>mymachine</filename> | 398 | We also change the remaining pair to specify <filename>mymachine</filename> |
| 373 | and insert the commit identifiers to identify the kernel in which we | 399 | and insert the commit identifiers to identify the kernel in which we |
| 374 | are interested, which will be based on the <filename>atom-pc-standard</filename> | 400 | are interested, which will be based on the <filename>atom-pc-standard</filename> |
| 375 | kernel. | 401 | kernel. |
| 376 | Here are the final <filename>SRCREV</filename> statements: | 402 | Here are the final <filename>SRCREV</filename> statements: |
| 377 | <literallayout class='monospaced'> | 403 | <literallayout class='monospaced'> |
| 378 | SRCREV_machine_pn-linux-yocto-_mymachine ?= \ | 404 | SRCREV_machine_pn-linux-yocto-_mymachine ?= \ |
| 379 | "fce17f046d3756045e4dfb49221d1cf60fcae329" | 405 | "fce17f046d3756045e4dfb49221d1cf60fcae329" |
| 380 | SRCREV_meta_pn-linux-yocto-stable_mymachine ?= \ | 406 | SRCREV_meta_pn-linux-yocto-stable_mymachine ?= \ |
| 381 | "84f1a422d7e21fbc23a687035bdf9d42471f19e0" | 407 | "84f1a422d7e21fbc23a687035bdf9d42471f19e0" |
| 382 | </literallayout> | 408 | </literallayout> |
| 383 | </para> | 409 | </para> |
| 384 | 410 | ||
| 385 | <para> | 411 | <para> |
| 386 | If you are familiar with Git repositories you probably won’t have trouble locating the | 412 | If you are familiar with Git repositories you probably won’t have trouble locating the |
| 387 | exact commit strings in the Yocto Project source repositories you need to change | 413 | exact commit strings in the Yocto Project source repositories you need to change |
| 388 | the <filename>SRCREV</filename> statements. | 414 | the <filename>SRCREV</filename> statements. |
| 389 | You can find all the <filename>machine</filename> and <filename>meta</filename> | 415 | You can find all the <filename>machine</filename> and <filename>meta</filename> |
| 390 | branch points (commits) for the <filename>linux-yocto-2.6.37</filename> kernel | 416 | branch points (commits) for the <filename>linux-yocto-2.6.37</filename> kernel |
| 391 | <ulink url='http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-2.6.37'>here</ulink>. | 417 | <ulink url='http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-2.6.37'>here</ulink>. |
| 392 | </para> | 418 | </para> |
| 393 | 419 | ||
| 394 | <para> | 420 | <para> |
| 395 | If you need a little more assistance after going to the link then do the following: | 421 | If you need a little more assistance after going to the link then do the following: |
| 396 | <orderedlist> | 422 | <orderedlist> |
| 397 | <listitem><para>Expand the list of branches by clicking <filename>[…]</filename></para></listitem> | 423 | <listitem><para>Expand the list of branches by clicking <filename>[…]</filename></para></listitem> |
| 398 | <listitem><para>Click on the <filename>yocto/standard/common-pc/atom-pc</filename> | 424 | <listitem><para>Click on the <filename>yocto/standard/common-pc/atom-pc</filename> |
| 399 | branch</para></listitem> | 425 | branch</para></listitem> |
| 400 | <listitem><para>Click on the commit column header to view the top commit</para></listitem> | 426 | <listitem><para>Click on the commit column header to view the top commit</para></listitem> |
| 401 | <listitem><para>Copy the commit string for use in the | 427 | <listitem><para>Copy the commit string for use in the |
| 402 | <filename>linux-yocto-2.6.37.bbappend</filename> file</para></listitem> | 428 | <filename>linux-yocto-2.6.37.bbappend</filename> file</para></listitem> |
| 403 | </orderedlist> | 429 | </orderedlist> |
| 404 | </para> | 430 | </para> |
| 405 | 431 | ||
| 406 | <para> | 432 | <para> |
| 407 | For the <filename>SRCREV</filename> statement that points to the <filename>meta</filename> | 433 | For the <filename>SRCREV</filename> statement that points to the <filename>meta</filename> |
| 408 | branch use the same procedure except expand the <filename>meta</filename> | 434 | branch use the same procedure except expand the <filename>meta</filename> |
| 409 | branch in step 2 above. | 435 | branch in step 2 above. |
| 410 | </para> | 436 | </para> |
| 411 | 437 | ||
| 412 | <para> | 438 | <para> |
| 413 | Also in the <filename>linux-yocto-2.6.37.bbappend</filename> file are | 439 | Also in the <filename>linux-yocto-2.6.37.bbappend</filename> file are |
| 414 | <filename>COMPATIBLE_MACHINE</filename>, <filename>KMACHINE</filename>, | 440 | <filename>COMPATIBLE_MACHINE</filename>, <filename>KMACHINE</filename>, |
| 415 | and <filename>KERNEL_FEATURES</filename> statements. | 441 | and <filename>KERNEL_FEATURES</filename> statements. |
| 416 | Two sets of these exist: one set supports EMGD and one set does not. | 442 | Two sets of these exist: one set supports EMGD and one set does not. |
| 417 | Because we are not interested in supporting EMGD those three can be deleted. | 443 | Because we are not interested in supporting EMGD those three can be deleted. |
| 418 | The remaining three must be changed so that <filename>mymachine</filename> replaces | 444 | The remaining three must be changed so that <filename>mymachine</filename> replaces |
| 419 | <filename>crownbay-noemgd</filename> and <filename>crownbay</filename>. | 445 | <filename>crownbay-noemgd</filename> and <filename>crownbay</filename>. |
| 420 | Here is the final <filename>linux-yocto-2.6.37.bbappend</filename> file after all | 446 | Here is the final <filename>linux-yocto-2.6.37.bbappend</filename> file after all |
| 421 | the edits: | 447 | the edits: |
| 422 | <literallayout class='monospaced'> | 448 | <literallayout class='monospaced'> |
| 423 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" | 449 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" |
| 424 | 450 | ||
| 425 | COMPATIBLE_MACHINE_mymachine = "mymachine" | 451 | COMPATIBLE_MACHINE_mymachine = "mymachine" |
| @@ -430,24 +456,30 @@ | |||
| 430 | "fce17f046d3756045e4dfb49221d1cf60fcae329" | 456 | "fce17f046d3756045e4dfb49221d1cf60fcae329" |
| 431 | SRCREV_meta_pn-linux-yocto_mymachine ?= \ | 457 | SRCREV_meta_pn-linux-yocto_mymachine ?= \ |
| 432 | "84f1a422d7e21fbc23a687035bdf9d42471f19e0" | 458 | "84f1a422d7e21fbc23a687035bdf9d42471f19e0" |
| 433 | </literallayout> | 459 | </literallayout> |
| 434 | </para> | 460 | </para> |
| 435 | 461 | </section> | |
| 436 | <para> | 462 | </section> |
| 437 | In summary, the edits to the layer’s recipe files result in removal of any files and | 463 | |
| 438 | statements that do not support your targeted hardware in addition to the inclusion | 464 | <section id='bsp-recipe-change-summary'> |
| 439 | of any new recipes you might need. | 465 | <title>BSP Recipe Change Summary</title> |
| 440 | In this example, it was simply a matter of ridding the new layer | 466 | |
| 441 | <filename>meta-machine</filename> of any code that supported the EMGD features | 467 | <para> |
| 442 | and making sure we were identifying the kernel that supports our example, which | 468 | In summary, the edits to the layer’s recipe files result in removal of any files and |
| 443 | is the <filename>atom-pc-standard</filename> kernel. | 469 | statements that do not support your targeted hardware in addition to the inclusion |
| 444 | We did not introduce any new recipes to the layer. | 470 | of any new recipes you might need. |
| 445 | </para> | 471 | In this example, it was simply a matter of ridding the new layer |
| 446 | 472 | <filename>meta-machine</filename> of any code that supported the EMGD features | |
| 447 | <para> | 473 | and making sure we were identifying the kernel that supports our example, which |
| 448 | Finally, it is also important to update the layer’s <filename>README</filename> | 474 | is the <filename>atom-pc-standard</filename> kernel. |
| 449 | file so that the information in it reflects your BSP. | 475 | We did not introduce any new recipes to the layer. |
| 450 | </para> | 476 | </para> |
| 477 | |||
| 478 | <para> | ||
| 479 | Finally, it is also important to update the layer’s <filename>README</filename> | ||
| 480 | file so that the information in it reflects your BSP. | ||
| 481 | </para> | ||
| 482 | </section> | ||
| 451 | </section> | 483 | </section> |
| 452 | 484 | ||
| 453 | <section id='preparing-for-the-build-app'> | 485 | <section id='preparing-for-the-build-app'> |
