diff options
-rw-r--r-- | documentation/bsp-guide/bsp.xml | 91 | ||||
-rw-r--r-- | documentation/ref-manual/faq.xml | 4 |
2 files changed, 52 insertions, 43 deletions
diff --git a/documentation/bsp-guide/bsp.xml b/documentation/bsp-guide/bsp.xml index 363ab77340..a14dd3b888 100644 --- a/documentation/bsp-guide/bsp.xml +++ b/documentation/bsp-guide/bsp.xml | |||
@@ -34,11 +34,13 @@ | |||
34 | The BSP consists of a file structure inside a base directory. | 34 | The BSP consists of a file structure inside a base directory. |
35 | Collectively, you can think of the base directory and the file structure | 35 | Collectively, you can think of the base directory and the file structure |
36 | as a BSP Layer. | 36 | as a BSP Layer. |
37 | BSP Layers use the following naming convention: | 37 | Although not a strict requirement, layers in the Yocto Project use the |
38 | following well established naming convention: | ||
38 | <literallayout class='monospaced'> | 39 | <literallayout class='monospaced'> |
39 | meta-<bsp_name> | 40 | meta-<bsp_name> |
40 | </literallayout> | 41 | </literallayout> |
41 | "bsp_name" is a placeholder for the machine or platform name. | 42 | The string "meta-" is prepended to the machine or platform name, which is |
43 | "bsp_name" in the above form. | ||
42 | </para> | 44 | </para> |
43 | 45 | ||
44 | <para> | 46 | <para> |
@@ -318,9 +320,9 @@ | |||
318 | # We have a conf and classes directory, add to BBPATH | 320 | # We have a conf and classes directory, add to BBPATH |
319 | BBPATH .= ":${LAYERDIR}" | 321 | BBPATH .= ":${LAYERDIR}" |
320 | 322 | ||
321 | # We have recipes-* directories, add to BBFILES | 323 | # We have a recipes directory, add to BBFILES |
322 | BBFILES += "${LAYERDIR}/recipes-*/*.bb \ | 324 | BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ |
323 | ${LAYERDIR}/recipes-*/*.bbappend" | 325 | ${LAYERDIR}/recipes-*/*/*.bbappend" |
324 | 326 | ||
325 | BBFILE_COLLECTIONS += "bsp" | 327 | BBFILE_COLLECTIONS += "bsp" |
326 | BBFILE_PATTERN_bsp = "^${LAYERDIR}/" | 328 | BBFILE_PATTERN_bsp = "^${LAYERDIR}/" |
@@ -329,8 +331,8 @@ | |||
329 | </para> | 331 | </para> |
330 | 332 | ||
331 | <para> | 333 | <para> |
332 | To illustrate the string substitutions, here are the last three statements from the Crown | 334 | To illustrate the string substitutions, here are the corresponding statements |
333 | Bay <filename>conf/layer.conf</filename> file: | 335 | from the Crown Bay <filename>conf/layer.conf</filename> file: |
334 | <literallayout class='monospaced'> | 336 | <literallayout class='monospaced'> |
335 | BBFILE_COLLECTIONS += "crownbay" | 337 | BBFILE_COLLECTIONS += "crownbay" |
336 | BBFILE_PATTERN_crownbay = "^${LAYERDIR}/" | 338 | BBFILE_PATTERN_crownbay = "^${LAYERDIR}/" |
@@ -397,9 +399,8 @@ | |||
397 | Tuning files are found in the <filename>meta/conf/machine/include</filename> | 399 | Tuning files are found in the <filename>meta/conf/machine/include</filename> |
398 | directory within the | 400 | directory within the |
399 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>. | 401 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>. |
400 | Tuning files can also reside in the BSP Layer itself. | ||
401 | For example, the <filename>ia32-base.inc</filename> file resides in the | 402 | For example, the <filename>ia32-base.inc</filename> file resides in the |
402 | <filename>meta-intel</filename> BSP Layer in <filename>conf/machine/include</filename>. | 403 | <filename>meta/conf/machine/include</filename> directory. |
403 | </para> | 404 | </para> |
404 | 405 | ||
405 | <para> | 406 | <para> |
@@ -409,12 +410,13 @@ | |||
409 | <literallayout class='monospaced'> | 410 | <literallayout class='monospaced'> |
410 | require conf/machine/include/tune-atom.inc | 411 | require conf/machine/include/tune-atom.inc |
411 | require conf/machine/include/ia32-base.inc | 412 | require conf/machine/include/ia32-base.inc |
413 | require conf/machine/include/meta-intel.inc | ||
412 | </literallayout> | 414 | </literallayout> |
413 | </para> | 415 | </para> |
414 | </section> | 416 | </section> |
415 | 417 | ||
416 | <section id='bsp-filelayout-misc-recipes'> | 418 | <section id='bsp-filelayout-misc-recipes'> |
417 | <title>Miscellaneous Recipe Files</title> | 419 | <title>Miscellaneous BSP-Specific Recipe Files</title> |
418 | <para> | 420 | <para> |
419 | You can find these files in the BSP Layer at: | 421 | You can find these files in the BSP Layer at: |
420 | <literallayout class='monospaced'> | 422 | <literallayout class='monospaced'> |
@@ -500,28 +502,28 @@ | |||
500 | the <filename>meta-<bsp_name>/recipes-kernel/linux</filename> directory). | 502 | the <filename>meta-<bsp_name>/recipes-kernel/linux</filename> directory). |
501 | </para> | 503 | </para> |
502 | <para> | 504 | <para> |
503 | Suppose you are using the <filename>linux-yocto_3.4.bb</filename> recipe to build | 505 | Suppose you are using the <filename>linux-yocto_3.8.bb</filename> recipe to build |
504 | the kernel. | 506 | the kernel. |
505 | In other words, you have selected the kernel in your | 507 | In other words, you have selected the kernel in your |
506 | <filename><bsp_name>.conf</filename> file by adding these types | 508 | <filename><bsp_name>.conf</filename> file by adding these types |
507 | of statements: | 509 | of statements: |
508 | <literallayout class='monospaced'> | 510 | <literallayout class='monospaced'> |
509 | PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto" | 511 | PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto" |
510 | PREFERRED_VERSION_linux-yocto = "3.4%" | 512 | PREFERRED_VERSION_linux-yocto ?= "3.8%" |
511 | </literallayout> | 513 | </literallayout> |
512 | <note> | 514 | <note> |
513 | When the preferred provider is assumed by default, the | 515 | When the preferred provider is assumed by default, the |
514 | <filename>PREFERRED_PROVIDER</filename> statement does not appear in the | 516 | <filename>PREFERRED_PROVIDER</filename> statement does not appear in the |
515 | <filename><bsp_name>.conf</filename> file. | 517 | <filename><bsp_name>.conf</filename> file. |
516 | </note> | 518 | </note> |
517 | You would use the <filename>linux-yocto_3.4.bbappend</filename> file to append | 519 | You would use the <filename>linux-yocto_3.8.bbappend</filename> file to append |
518 | specific BSP settings to the kernel, thus configuring the kernel for your particular BSP. | 520 | specific BSP settings to the kernel, thus configuring the kernel for your particular BSP. |
519 | </para> | 521 | </para> |
520 | <para> | 522 | <para> |
521 | As an example, look at the existing Crown Bay BSP. | 523 | As an example, look at the existing Crown Bay BSP. |
522 | The append file used is: | 524 | The append file used is: |
523 | <literallayout class='monospaced'> | 525 | <literallayout class='monospaced'> |
524 | meta-crownbay/recipes-kernel/linux/linux-yocto_3.4.bbappend | 526 | meta-crownbay/recipes-kernel/linux/linux-yocto_3.8.bbappend |
525 | </literallayout> | 527 | </literallayout> |
526 | The following listing shows the file. | 528 | The following listing shows the file. |
527 | Be aware that the actual commit ID strings in this example listing might be different | 529 | Be aware that the actual commit ID strings in this example listing might be different |
@@ -531,40 +533,43 @@ | |||
531 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" | 533 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" |
532 | 534 | ||
533 | COMPATIBLE_MACHINE_crownbay = "crownbay" | 535 | COMPATIBLE_MACHINE_crownbay = "crownbay" |
534 | KMACHINE_crownbay = "crownbay" | 536 | KMACHINE_crownbay = "crownbay" |
535 | KBRANCH_crownbay = "standard/crownbay" | 537 | KBRANCH_crownbay = "standard/crownbay" |
538 | KERNEL_FEATURES_crownbay_append = " features/drm-emgd/drm-emgd-1.16 cfg/vesafb" | ||
536 | 539 | ||
537 | COMPATIBLE_MACHINE_crownbay-noemgd = "crownbay-noemgd" | 540 | COMPATIBLE_MACHINE_crownbay-noemgd = "crownbay-noemgd" |
538 | KMACHINE_crownbay-noemgd = "crownbay" | 541 | KMACHINE_crownbay-noemgd = "crownbay" |
539 | KBRANCH_crownbay-noemgd = "standard/crownbay" | 542 | KBRANCH_crownbay-noemgd = "standard/crownbay" |
543 | KERNEL_FEATURES_crownbay-noemgd_append = " cfg/vesafb" | ||
540 | 544 | ||
541 | SRCREV_machine_pn-linux-yocto_crownbay ?= "449f7f520350700858f21a5554b81cc8ad23267d" | 545 | LINUX_VERSION = "3.8.4" |
542 | SRCREV_meta_pn-linux-yocto_crownbay ?= "9e3bdb7344054264b750e53fbbb6394cc1c942ac" | ||
543 | SRCREV_emgd_pn-linux-yocto_crownbay ?= "86643bdd8cbad616a161ab91f51108cf0da827bc" | ||
544 | 546 | ||
545 | SRCREV_machine_pn-linux-yocto_crownbay-noemgd ?= "449f7f520350700858f21a5554b81cc8ad23267d" | 547 | SRCREV_meta_crownbay = "2a6d36e75ca0a121570a389d7bab76ec240cbfda" |
546 | SRCREV_meta_pn-linux-yocto_crownbay-noemgd ?= "9e3bdb7344054264b750e53fbbb6394cc1c942ac" | 548 | SRCREV_machine_crownbay = "47aed0c17c1c55988198ad39f86ae88894c8e0a4" |
549 | SRCREV_emgd_crownbay = "c780732f175ff0ec866fac2130175876b519b576" | ||
547 | 550 | ||
548 | KSRC_linux_yocto_3_4 ?= "git.yoctoproject.org/linux-yocto-3.4.git" | 551 | SRCREV_meta_crownbay-noemgd = "2a6d36e75ca0a121570a389d7bab76ec240cbfda" |
549 | SRC_URI_crownbay = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckout=1;branch=${KBRANCH},meta,emgd-1.14;name=machine,meta,emgd" | 552 | SRCREV_machine_crownbay-noemgd = "47aed0c17c1c55988198ad39f86ae88894c8e0a4" |
550 | SRC_URI_crownbay-noemgd = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta" | 553 | |
554 | SRC_URI_crownbay = "git://git.yoctoproject.org/linux-yocto-3.8.git;protocol=git;nocheckout=1;branch=${KBRANCH},${KMETA},emgd-1.16;name=machine,meta,emgd" | ||
551 | </literallayout> | 555 | </literallayout> |
552 | This append file contains statements used to support the Crown Bay BSP for both | 556 | This append file contains statements used to support the Crown Bay BSP for both |
553 | <trademark class='registered'>Intel</trademark> EMGD and the VESA graphics. | 557 | <trademark class='registered'>Intel</trademark> EMGD and the VESA graphics. |
554 | The build process, in this case, recognizes and uses only the statements that | 558 | The build process, in this case, recognizes and uses only the statements that |
555 | apply to the defined machine name - <filename>crownbay</filename> in this case. | 559 | apply to the defined machine name - <filename>crownbay</filename> in this case. |
556 | So, the applicable statements in the <filename>linux-yocto_3.4.bbappend</filename> | 560 | So, the applicable statements in the <filename>linux-yocto_3.8.bbappend</filename> |
557 | file are follows: | 561 | file are follows: |
558 | <literallayout class='monospaced'> | 562 | <literallayout class='monospaced'> |
559 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" | 563 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" |
560 | 564 | ||
561 | COMPATIBLE_MACHINE_crownbay = "crownbay" | 565 | COMPATIBLE_MACHINE_crownbay = "crownbay" |
562 | KMACHINE_crownbay = "crownbay" | 566 | KMACHINE_crownbay = "crownbay" |
563 | KBRANCH_crownbay = "standard/crownbay" | 567 | KBRANCH_crownbay = "standard/crownbay" |
568 | KERNEL_FEATURES_crownbay_append = " features/drm-emgd/drm-emgd-1.16 cfg/vesafb" | ||
564 | 569 | ||
565 | SRCREV_machine_pn-linux-yocto_crownbay ?= "449f7f520350700858f21a5554b81cc8ad23267d" | 570 | SRCREV_meta_crownbay = "2a6d36e75ca0a121570a389d7bab76ec240cbfda" |
566 | SRCREV_meta_pn-linux-yocto_crownbay ?= "9e3bdb7344054264b750e53fbbb6394cc1c942ac" | 571 | SRCREV_machine_crownbay = "47aed0c17c1c55988198ad39f86ae88894c8e0a4" |
567 | SRCREV_emgd_pn-linux-yocto_crownbay ?= "86643bdd8cbad616a161ab91f51108cf0da827bc" | 572 | SRCREV_emgd_crownbay = "c780732f175ff0ec866fac2130175876b519b576" |
568 | </literallayout> | 573 | </literallayout> |
569 | The append file defines <filename>crownbay</filename> as the | 574 | The append file defines <filename>crownbay</filename> as the |
570 | <ulink url='&YOCTO_DOCS_REF_URL;#var-COMPATIBLE_MACHINE'><filename>COMPATIBLE_MACHINE</filename></ulink> | 575 | <ulink url='&YOCTO_DOCS_REF_URL;#var-COMPATIBLE_MACHINE'><filename>COMPATIBLE_MACHINE</filename></ulink> |
@@ -574,8 +579,11 @@ | |||
574 | machine name used by the Linux Yocto kernel. | 579 | machine name used by the Linux Yocto kernel. |
575 | The file also uses the optional | 580 | The file also uses the optional |
576 | <ulink url='&YOCTO_DOCS_REF_URL;#var-KBRANCH'><filename>KBRANCH</filename></ulink> variable | 581 | <ulink url='&YOCTO_DOCS_REF_URL;#var-KBRANCH'><filename>KBRANCH</filename></ulink> variable |
577 | to ensure the build process uses the <filename>standard/default/crownbay</filename> | 582 | to ensure the build process uses the <filename>standard/crownbay</filename> |
578 | kernel branch. | 583 | kernel branch. |
584 | The | ||
585 | <ulink url='&YOCTO_DOCS_REF_URL;#var-KERNEL_FEATURES'><filename>KERNEL_FEATURES</filename></ulink> | ||
586 | variable enables features specific to the kernel. | ||
579 | Finally, the append file points to specific commits in the | 587 | Finally, the append file points to specific commits in the |
580 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink> Git | 588 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink> Git |
581 | repository and the <filename>meta</filename> Git repository branches to identify the | 589 | repository and the <filename>meta</filename> Git repository branches to identify the |
@@ -601,7 +609,7 @@ | |||
601 | </para> | 609 | </para> |
602 | 610 | ||
603 | <para> | 611 | <para> |
604 | For example, suppose you had a some configuration options in a file called | 612 | For example, suppose you had some configuration options in a file called |
605 | <filename>network_configs.cfg</filename>. | 613 | <filename>network_configs.cfg</filename>. |
606 | You can place that file inside a directory named <filename>/linux-yocto</filename> and then add | 614 | You can place that file inside a directory named <filename>/linux-yocto</filename> and then add |
607 | a <filename>SRC_URI</filename> statement such as the following to the append file. | 615 | a <filename>SRC_URI</filename> statement such as the following to the append file. |
@@ -723,7 +731,7 @@ | |||
723 | as outlined in <filename>recipes.txt</filename>. | 731 | as outlined in <filename>recipes.txt</filename>. |
724 | If you cannot find a category in <filename>recipes.txt</filename> | 732 | If you cannot find a category in <filename>recipes.txt</filename> |
725 | to fit a particular recipe, you can make up your own | 733 | to fit a particular recipe, you can make up your own |
726 | <filename>recipe-*</filename> subdirectory. | 734 | <filename>recipes-*</filename> subdirectory. |
727 | You can find <filename>recipes.txt</filename> in the | 735 | You can find <filename>recipes.txt</filename> in the |
728 | <filename>meta</filename> directory of the | 736 | <filename>meta</filename> directory of the |
729 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>, | 737 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>, |
@@ -811,9 +819,9 @@ | |||
811 | This file identifies the <filename>meta-<bsp_name></filename> | 819 | This file identifies the <filename>meta-<bsp_name></filename> |
812 | BSP layer as a layer to the build system.</para></listitem> | 820 | BSP layer as a layer to the build system.</para></listitem> |
813 | <listitem><para><emphasis>Machine Configuration File:</emphasis> | 821 | <listitem><para><emphasis>Machine Configuration File:</emphasis> |
814 | You must include a <filename>conf/machine/<bsp_name>.conf</filename> | 822 | You must include one or more <filename>conf/machine/<bsp_name>.conf</filename> |
815 | in the <filename>meta-<bsp_name></filename> directory. | 823 | files in the <filename>meta-<bsp_name></filename> directory. |
816 | This configuration file defines a machine target that can be built | 824 | These configuration files define machine targets that can be built |
817 | using the BSP layer. | 825 | using the BSP layer. |
818 | Multiple machine configuration files define variations of machine | 826 | Multiple machine configuration files define variations of machine |
819 | configurations that are supported by the BSP. | 827 | configurations that are supported by the BSP. |
@@ -827,7 +835,8 @@ | |||
827 | <note>It is completely possible for a developer to structure the | 835 | <note>It is completely possible for a developer to structure the |
828 | working repository as a conglomeration of unrelated BSP | 836 | working repository as a conglomeration of unrelated BSP |
829 | files, and to possibly generate BSPs targeted for release | 837 | files, and to possibly generate BSPs targeted for release |
830 | from that directory using scripts or some other mechanism. | 838 | from that directory using scripts or some other mechanism |
839 | (e.g. <filename>meta-yocto-bsp</filename> layer). | ||
831 | Such considerations are outside the scope of this document.</note> | 840 | Such considerations are outside the scope of this document.</note> |
832 | </para></listitem> | 841 | </para></listitem> |
833 | </itemizedlist> | 842 | </itemizedlist> |
@@ -1259,7 +1268,7 @@ | |||
1259 | As the <filename>yocto-bsp create</filename> command runs, default values for | 1268 | As the <filename>yocto-bsp create</filename> command runs, default values for |
1260 | the prompts appear in brackets. | 1269 | the prompts appear in brackets. |
1261 | Pressing enter without supplying anything on the command line or pressing enter | 1270 | Pressing enter without supplying anything on the command line or pressing enter |
1262 | and providing an invalid response causes the script to accept the default value. | 1271 | with an invalid response causes the script to accept the default value. |
1263 | Once the script completes, the new <filename>meta-myarm</filename> BSP layer | 1272 | Once the script completes, the new <filename>meta-myarm</filename> BSP layer |
1264 | is created in the current working directory. | 1273 | is created in the current working directory. |
1265 | This example assumes you have sourced the | 1274 | This example assumes you have sourced the |
@@ -1350,7 +1359,7 @@ | |||
1350 | <filename>bblayers.conf</filename> file. | 1359 | <filename>bblayers.conf</filename> file. |
1351 | Here is an example: | 1360 | Here is an example: |
1352 | <literallayout class='monospaced'> | 1361 | <literallayout class='monospaced'> |
1353 | BBLAYERS = ?" \ | 1362 | BBLAYERS = ? " \ |
1354 | /usr/local/src/yocto/meta \ | 1363 | /usr/local/src/yocto/meta \ |
1355 | /usr/local/src/yocto/meta-yocto \ | 1364 | /usr/local/src/yocto/meta-yocto \ |
1356 | /usr/local/src/yocto/meta-yocto-bsp \ | 1365 | /usr/local/src/yocto/meta-yocto-bsp \ |
diff --git a/documentation/ref-manual/faq.xml b/documentation/ref-manual/faq.xml index df9f7fadc3..f96b64c1a5 100644 --- a/documentation/ref-manual/faq.xml +++ b/documentation/ref-manual/faq.xml | |||
@@ -407,7 +407,7 @@ | |||
407 | <answer> | 407 | <answer> |
408 | <para> | 408 | <para> |
409 | You need to create a form factor file as described in the | 409 | You need to create a form factor file as described in the |
410 | "<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-filelayout-misc-recipes'>Miscellaneous Recipe Files</ulink>" | 410 | "<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-filelayout-misc-recipes'>Miscellaneous BSP-Specific Recipe Files</ulink>" |
411 | section in the Yocto Project Board Support Packages (BSP) | 411 | section in the Yocto Project Board Support Packages (BSP) |
412 | Developer's Guide. | 412 | Developer's Guide. |
413 | Set the <filename>HAVE_TOUCHSCREEN</filename> variable equal to | 413 | Set the <filename>HAVE_TOUCHSCREEN</filename> variable equal to |
@@ -431,7 +431,7 @@ | |||
431 | automatically bring up network interfaces. | 431 | automatically bring up network interfaces. |
432 | Therefore, you will need to add a BSP-specific netbase that includes an interfaces | 432 | Therefore, you will need to add a BSP-specific netbase that includes an interfaces |
433 | file. | 433 | file. |
434 | See the "<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-filelayout-misc-recipes'>Miscellaneous Recipe Files</ulink>" | 434 | See the "<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-filelayout-misc-recipes'>Miscellaneous BSP-Specific Recipe Files</ulink>" |
435 | section in the Yocto Project Board Support Packages (BSP) | 435 | section in the Yocto Project Board Support Packages (BSP) |
436 | Developer's Guide for information on creating these types of | 436 | Developer's Guide for information on creating these types of |
437 | miscellaneous recipe files. | 437 | miscellaneous recipe files. |