diff options
author | Scott Rifenbark <scott.m.rifenbark@intel.com> | 2012-03-13 12:34:30 -0600 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-03-23 14:24:44 +0000 |
commit | 333f776d6cf163ae1f6a375db000dcdd2989532f (patch) | |
tree | 8da2f6b39b6125a331b36b38558e4c7b0e260d15 | |
parent | 6392dffcf830c3514820a0b68767a5b72984ace1 (diff) | |
download | poky-333f776d6cf163ae1f6a375db000dcdd2989532f.tar.gz |
documentation: Updates for [YOCTO #1717].
Minor edits to the BSP Guide, the Development Manual, and the
Kernel Manual to address [YOCTO #1717], which noted confusion
over the kernel manual when a user was trying to find kernel
configuration information.
The fix for this bug involved several areas. I had previously
created a new section called "Kernel Configuration" in the kernel
manual and "Configuring the Kernel" in the YP Development manual.
There were several rounds of feedback from Bruce Ashfield.
This commit represents the final touches on the three manuals to
address the bug.
Fixes [YOCTO #1717]
(From yocto-docs rev: de8f85753ad1d6dde66adb6bb4cb09e9528c7cd6)
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | documentation/bsp-guide/bsp.xml | 49 | ||||
-rw-r--r-- | documentation/dev-manual/dev-manual-common-tasks.xml | 12 | ||||
-rw-r--r-- | documentation/kernel-manual/kernel-concepts.xml | 6 |
3 files changed, 41 insertions, 26 deletions
diff --git a/documentation/bsp-guide/bsp.xml b/documentation/bsp-guide/bsp.xml index a49c0bef0b..a8d571c038 100644 --- a/documentation/bsp-guide/bsp.xml +++ b/documentation/bsp-guide/bsp.xml | |||
@@ -513,7 +513,7 @@ | |||
513 | <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-files'>Yocto | 513 | <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-files'>Yocto |
514 | Project Files</ulink> at <filename>meta/recipes-kernel/linux</filename>. | 514 | Project Files</ulink> at <filename>meta/recipes-kernel/linux</filename>. |
515 | You can append your specific changes to the kernel recipe by using a | 515 | You can append your specific changes to the kernel recipe by using a |
516 | similarly named append file, which is located in BSP Layer (e.g. | 516 | similarly named append file, which is located in the BSP Layer (e.g. |
517 | the <filename>meta-<bsp_name>/recipes-kernel/linux</filename> directory). | 517 | the <filename>meta-<bsp_name>/recipes-kernel/linux</filename> directory). |
518 | </para> | 518 | </para> |
519 | <para> | 519 | <para> |
@@ -571,12 +571,17 @@ | |||
571 | SRCREV_machine_pn-linux-yocto_crownbay ?= "63c65842a3a74e4bd3128004ac29b5639f16433f" | 571 | SRCREV_machine_pn-linux-yocto_crownbay ?= "63c65842a3a74e4bd3128004ac29b5639f16433f" |
572 | SRCREV_meta_pn-linux-yocto_crownbay ?= "59314a3523e360796419d76d78c6f7d8c5ef2593" | 572 | SRCREV_meta_pn-linux-yocto_crownbay ?= "59314a3523e360796419d76d78c6f7d8c5ef2593" |
573 | </literallayout> | 573 | </literallayout> |
574 | The append file defines <filename>crownbay</filename> as the compatible machine, | 574 | The append file defines <filename>crownbay</filename> as the compatible machine and |
575 | defines the <filename>KMACHINE</filename>, points to some configuration fragments | 575 | defines the <filename>KMACHINE</filename>. |
576 | to use by setting the <filename>KERNEL_FEATURES</filename> variable, and then points | 576 | The file also points to some configuration fragments to use by setting the |
577 | to the specific commits in the Yocto Project Files Git repository and the | 577 | <filename>KERNEL_FEATURES</filename> variable. |
578 | <filename>meta</filename> Git repository branches to identify the exact kernel needed | 578 | The location for the configuration fragments is the kernel tree itself in the |
579 | to build the Crown Bay BSP. | 579 | <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-build-directory'>Yocto Project Build |
580 | Directory</ulink> under <filename>linux/meta</filename>. | ||
581 | Finally, the append file points to the specific commits in the | ||
582 | <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-files'>Yocto Project Files</ulink> Git | ||
583 | repository and the <filename>meta</filename> Git repository branches to identify the | ||
584 | exact kernel needed to build the Crown Bay BSP. | ||
580 | </para> | 585 | </para> |
581 | <para> | 586 | <para> |
582 | One thing missing in this particular BSP, which you will typically need when | 587 | One thing missing in this particular BSP, which you will typically need when |
@@ -591,14 +596,14 @@ | |||
591 | </para> | 596 | </para> |
592 | <para> | 597 | <para> |
593 | For example, suppose you had a set of configuration options in a file called | 598 | For example, suppose you had a set of configuration options in a file called |
594 | <filename>defconfig</filename>. | 599 | <filename>myconfig</filename>. |
595 | If you put that file inside a directory named | 600 | If you put that file inside a directory named |
596 | <filename>/linux-yocto</filename> and then added | 601 | <filename>/linux-yocto</filename> and then added |
597 | a <filename>SRC_URI</filename> statement such as the following to the append file, | 602 | a <filename>SRC_URI</filename> statement such as the following to the append file, |
598 | those configuration | 603 | those configuration |
599 | options will be picked up and applied when the kernel is built. | 604 | options will be picked up and applied when the kernel is built. |
600 | <literallayout class='monospaced'> | 605 | <literallayout class='monospaced'> |
601 | SRC_URI += "file://defconfig" | 606 | SRC_URI += "file://myconfig" |
602 | </literallayout> | 607 | </literallayout> |
603 | </para> | 608 | </para> |
604 | <para> | 609 | <para> |
@@ -608,30 +613,40 @@ | |||
608 | into their own files and add those by using a <filename>SRC_URI</filename> statement like the | 613 | into their own files and add those by using a <filename>SRC_URI</filename> statement like the |
609 | following in your append file: | 614 | following in your append file: |
610 | <literallayout class='monospaced'> | 615 | <literallayout class='monospaced'> |
611 | SRC_URI += "file://defconfig \ | 616 | SRC_URI += "file://myconfig \ |
612 | file://eth.cfg \ | 617 | file://eth.cfg \ |
613 | file://gfx.cfg" | 618 | file://gfx.cfg" |
614 | </literallayout> | 619 | </literallayout> |
615 | </para> | 620 | </para> |
616 | <para> | 621 | <para> |
617 | The <filename>FILESEXTRAPATHS</filename> variable is in boilerplate form here | 622 | The <filename>FILESEXTRAPATHS</filename> variable is in boilerplate form in the |
618 | in order to make it easy to do that. | 623 | previous example in order to make it easy to do that. |
619 | It basically allows those configuration files to be found by the build process. | 624 | This variable must be in your layer or BitBake will not find the patches or |
625 | configurations even if you have them in your <filename>SRC_URI</filename>. | ||
626 | The <filename>FILESEXTRAPATHS</filename> variable enables the build process to | ||
627 | find those configuration files. | ||
620 | </para> | 628 | </para> |
621 | <note> | 629 | <note> |
622 | <para> | 630 | <para> |
623 | Other methods exist to accomplish grouping and defining configuration options. | 631 | Other methods exist to accomplish grouping and defining configuration options. |
624 | For example, you could directly add configuration options to the Yocto kernel | 632 | For example, if you are working with a local clone of the kernel repository, |
633 | you could checkout the kernel's <filename>meta</filename> branch, make your changes, | ||
634 | and then push the changes to the local bare clone of the kernel. | ||
635 | The result is that you directly add configuration options to the Yocto kernel | ||
625 | <filename>meta</filename> branch for your BSP. | 636 | <filename>meta</filename> branch for your BSP. |
626 | The configuration options will likely end up in that location anyway if the BSP gets | 637 | The configuration options will likely end up in that location anyway if the BSP gets |
627 | added to the Yocto Project. | 638 | added to the Yocto Project. |
628 | For an example showing how to change the BSP configuration, see the | 639 | For an example showing how to change the BSP configuration, see the |
629 | "<ulink url='&YOCTO_DOCS_DEV_URL;#changing-the-bsp-configuration'>Changing the BSP Configuration</ulink>" section | 640 | "<ulink url='&YOCTO_DOCS_DEV_URL;#changing-the-bsp-configuration'>Changing the BSP Configuration</ulink>" |
630 | in the Yocto Project Development Manual.</para> | 641 | section in the Yocto Project Development Manual. |
642 | For a better understanding of working with a local clone of the kernel repository | ||
643 | and a local bare clone of the kernel, see the | ||
644 | "<ulink url='&YOCTO_DOCS_DEV_URL;#modifying-the-kernel-source-code'>Modifying the Kernel | ||
645 | Source Code</ulink>" section also in the Yocto Project Development Manual.</para> | ||
631 | <para> | 646 | <para> |
632 | In general, however, the Yocto Project maintainers take care of moving the | 647 | In general, however, the Yocto Project maintainers take care of moving the |
633 | <filename>SRC_URI</filename>-specified | 648 | <filename>SRC_URI</filename>-specified |
634 | configuration options to the <filename>meta</filename> branch. | 649 | configuration options to the kernel's <filename>meta</filename> branch. |
635 | Not only is it easier for BSP developers to not have to worry about putting those | 650 | Not only is it easier for BSP developers to not have to worry about putting those |
636 | configurations in the branch, but having the maintainers do it allows them to apply | 651 | configurations in the branch, but having the maintainers do it allows them to apply |
637 | 'global' knowledge about the kinds of common configuration options multiple BSPs in | 652 | 'global' knowledge about the kinds of common configuration options multiple BSPs in |
diff --git a/documentation/dev-manual/dev-manual-common-tasks.xml b/documentation/dev-manual/dev-manual-common-tasks.xml index 90d9b54726..088c529b97 100644 --- a/documentation/dev-manual/dev-manual-common-tasks.xml +++ b/documentation/dev-manual/dev-manual-common-tasks.xml | |||
@@ -1722,8 +1722,8 @@ so that there are some definite steps on how to do this. I need more detail her | |||
1722 | 1722 | ||
1723 | <para> | 1723 | <para> |
1724 | Where do you put your configuration files? | 1724 | Where do you put your configuration files? |
1725 | You can place these configuration files in the same area to which the | 1725 | You can place these configuration files in the same area pointed to by |
1726 | <filename>SRC_URI</filename> points. | 1726 | <filename>SRC_URI</filename>. |
1727 | The Yocto Project build process will pick up the configuration and add it to the | 1727 | The Yocto Project build process will pick up the configuration and add it to the |
1728 | kernel's configuration. | 1728 | kernel's configuration. |
1729 | For example, assume you add the following to your | 1729 | For example, assume you add the following to your |
@@ -1731,10 +1731,10 @@ so that there are some definite steps on how to do this. I need more detail her | |||
1731 | <literallayout class='monospaced'> | 1731 | <literallayout class='monospaced'> |
1732 | file://my_smp.cfg | 1732 | file://my_smp.cfg |
1733 | </literallayout> | 1733 | </literallayout> |
1734 | You would put the config fragment file <filename>my_smp.cfg</filename> in your | 1734 | You would put the config fragment file <filename>my_smp.cfg</filename> in a |
1735 | layer right beneath the directory containing the | 1735 | sub-directory with the same root name (<filename>linux-yocto</filename>) |
1736 | <filename>linux-yocto_3.0.bbappend</filename> file and the build system | 1736 | beneath the directory that contains your <filename>linux-yocto_3.0.bbappend</filename> |
1737 | will pick up and apply the fragment. | 1737 | file and the build system will pick up and apply the fragment. |
1738 | </para> | 1738 | </para> |
1739 | </section> | 1739 | </section> |
1740 | 1740 | ||
diff --git a/documentation/kernel-manual/kernel-concepts.xml b/documentation/kernel-manual/kernel-concepts.xml index a82977dc49..54d75f6c16 100644 --- a/documentation/kernel-manual/kernel-concepts.xml +++ b/documentation/kernel-manual/kernel-concepts.xml | |||
@@ -318,16 +318,16 @@ | |||
318 | <para> | 318 | <para> |
319 | Conceptually, Linux Yocto kernel configuration occurs similarly to that needed for any | 319 | Conceptually, Linux Yocto kernel configuration occurs similarly to that needed for any |
320 | Linux kernel. | 320 | Linux kernel. |
321 | The Linux Yocto kernel build process uses a <filename>.config</filename>, which | 321 | The Linux Yocto kernel build process uses a <filename>.config</filename> file, which |
322 | is created through the Linux Kernel Coinfiguration (LKC) tool. | 322 | is created through the Linux Kernel Coinfiguration (LKC) tool. |
323 | You can directly set various configurations in the | 323 | You can directly set various configurations in the |
324 | <filename>.config</filename> file by using the <filename>menuconfig</filename> | 324 | <filename>.config</filename> file by using the <filename>menuconfig</filename> |
325 | tool as built by BitBake. | 325 | tool as built by BitBake. |
326 | You can also affect the configurations in the file by using configuration fragments. | 326 | You can also define configurations in the file by using configuration fragments. |
327 | <note> | 327 | <note> |
328 | It is not recommended that you edit the <filename>.config</filename> file directly. | 328 | It is not recommended that you edit the <filename>.config</filename> file directly. |
329 | </note> | 329 | </note> |
330 | Here is are some brief descriptions of the ways you can affect the | 330 | Here are some brief descriptions of the ways you can affect the |
331 | <filename>.config</filename> file: | 331 | <filename>.config</filename> file: |
332 | <itemizedlist> | 332 | <itemizedlist> |
333 | <listitem><para><emphasis>The <filename>menuconfig</filename> Tool:</emphasis> | 333 | <listitem><para><emphasis>The <filename>menuconfig</filename> Tool:</emphasis> |