diff options
Diffstat (limited to 'documentation/kernel-dev')
-rw-r--r-- | documentation/kernel-dev/advanced.rst | 56 | ||||
-rw-r--r-- | documentation/kernel-dev/common.rst | 52 | ||||
-rw-r--r-- | documentation/kernel-dev/faq.rst | 2 | ||||
-rw-r--r-- | documentation/kernel-dev/maint-appx.rst | 2 |
4 files changed, 56 insertions, 56 deletions
diff --git a/documentation/kernel-dev/advanced.rst b/documentation/kernel-dev/advanced.rst index 0e745c375d..871ec8ae7b 100644 --- a/documentation/kernel-dev/advanced.rst +++ b/documentation/kernel-dev/advanced.rst | |||
@@ -46,15 +46,15 @@ linux-yocto recipe. | |||
46 | 46 | ||
47 | Every linux-yocto style recipe must define the | 47 | Every linux-yocto style recipe must define the |
48 | :term:`KMACHINE` variable. This | 48 | :term:`KMACHINE` variable. This |
49 | variable is typically set to the same value as the ``MACHINE`` variable, | 49 | variable is typically set to the same value as the :term:`MACHINE` variable, |
50 | which is used by :term:`BitBake`. | 50 | which is used by :term:`BitBake`. |
51 | However, in some cases, the variable might instead refer to the | 51 | However, in some cases, the variable might instead refer to the |
52 | underlying platform of the ``MACHINE``. | 52 | underlying platform of the :term:`MACHINE`. |
53 | 53 | ||
54 | Multiple BSPs can reuse the same ``KMACHINE`` name if they are built | 54 | Multiple BSPs can reuse the same :term:`KMACHINE` name if they are built |
55 | using the same BSP description. Multiple Corei7-based BSPs could share | 55 | using the same BSP description. Multiple Corei7-based BSPs could share |
56 | the same "intel-corei7-64" value for ``KMACHINE``. It is important to | 56 | the same "intel-corei7-64" value for :term:`KMACHINE`. It is important to |
57 | realize that ``KMACHINE`` is just for kernel mapping, while ``MACHINE`` | 57 | realize that :term:`KMACHINE` is just for kernel mapping, while :term:`MACHINE` |
58 | is the machine type within a BSP Layer. Even with this distinction, | 58 | is the machine type within a BSP Layer. Even with this distinction, |
59 | however, these two variables can hold the same value. See the | 59 | however, these two variables can hold the same value. See the |
60 | ":ref:`kernel-dev/advanced:bsp descriptions`" section for more information. | 60 | ":ref:`kernel-dev/advanced:bsp descriptions`" section for more information. |
@@ -66,7 +66,7 @@ to indicate the branch. | |||
66 | 66 | ||
67 | .. note:: | 67 | .. note:: |
68 | 68 | ||
69 | You can use the ``KBRANCH`` value to define an alternate branch typically | 69 | You can use the :term:`KBRANCH` value to define an alternate branch typically |
70 | with a machine override as shown here from the ``meta-yocto-bsp`` layer:: | 70 | with a machine override as shown here from the ``meta-yocto-bsp`` layer:: |
71 | 71 | ||
72 | KBRANCH_edgerouter = "standard/edgerouter" | 72 | KBRANCH_edgerouter = "standard/edgerouter" |
@@ -81,8 +81,8 @@ variables: | |||
81 | 81 | ||
82 | :term:`LINUX_KERNEL_TYPE` | 82 | :term:`LINUX_KERNEL_TYPE` |
83 | defines the kernel type to be used in assembling the configuration. If | 83 | defines the kernel type to be used in assembling the configuration. If |
84 | you do not specify a ``LINUX_KERNEL_TYPE``, it defaults to "standard". | 84 | you do not specify a :term:`LINUX_KERNEL_TYPE`, it defaults to "standard". |
85 | Together with ``KMACHINE``, ``LINUX_KERNEL_TYPE`` defines the search | 85 | Together with :term:`KMACHINE`, :term:`LINUX_KERNEL_TYPE` defines the search |
86 | arguments used by the kernel tools to find the appropriate description | 86 | arguments used by the kernel tools to find the appropriate description |
87 | within the kernel Metadata with which to build out the sources and | 87 | within the kernel Metadata with which to build out the sources and |
88 | configuration. The linux-yocto recipes define "standard", "tiny", and | 88 | configuration. The linux-yocto recipes define "standard", "tiny", and |
@@ -90,21 +90,21 @@ configuration. The linux-yocto recipes define "standard", "tiny", and | |||
90 | section for more information on kernel types. | 90 | section for more information on kernel types. |
91 | 91 | ||
92 | During the build, the kern-tools search for the BSP description file | 92 | During the build, the kern-tools search for the BSP description file |
93 | that most closely matches the ``KMACHINE`` and ``LINUX_KERNEL_TYPE`` | 93 | that most closely matches the :term:`KMACHINE` and :term:`LINUX_KERNEL_TYPE` |
94 | variables passed in from the recipe. The tools use the first BSP | 94 | variables passed in from the recipe. The tools use the first BSP |
95 | description they find that matches both variables. If the tools cannot find | 95 | description they find that matches both variables. If the tools cannot find |
96 | a match, they issue a warning. | 96 | a match, they issue a warning. |
97 | 97 | ||
98 | The tools first search for the ``KMACHINE`` and then for the | 98 | The tools first search for the :term:`KMACHINE` and then for the |
99 | ``LINUX_KERNEL_TYPE``. If the tools cannot find a partial match, they | 99 | :term:`LINUX_KERNEL_TYPE`. If the tools cannot find a partial match, they |
100 | will use the sources from the ``KBRANCH`` and any configuration | 100 | will use the sources from the :term:`KBRANCH` and any configuration |
101 | specified in the :term:`SRC_URI`. | 101 | specified in the :term:`SRC_URI`. |
102 | 102 | ||
103 | You can use the | 103 | You can use the |
104 | :term:`KERNEL_FEATURES` | 104 | :term:`KERNEL_FEATURES` |
105 | variable to include features (configuration fragments, patches, or both) | 105 | variable to include features (configuration fragments, patches, or both) |
106 | that are not already included by the ``KMACHINE`` and | 106 | that are not already included by the :term:`KMACHINE` and |
107 | ``LINUX_KERNEL_TYPE`` variable combination. For example, to include a | 107 | :term:`LINUX_KERNEL_TYPE` variable combination. For example, to include a |
108 | feature specified as "features/netfilter/netfilter.scc", specify:: | 108 | feature specified as "features/netfilter/netfilter.scc", specify:: |
109 | 109 | ||
110 | KERNEL_FEATURES += "features/netfilter/netfilter.scc" | 110 | KERNEL_FEATURES += "features/netfilter/netfilter.scc" |
@@ -116,7 +116,7 @@ specify:: | |||
116 | KERNEL_FEATURES_append_qemux86 = " cfg/sound.scc" | 116 | KERNEL_FEATURES_append_qemux86 = " cfg/sound.scc" |
117 | 117 | ||
118 | The value of | 118 | The value of |
119 | the entries in ``KERNEL_FEATURES`` are dependent on their location | 119 | the entries in :term:`KERNEL_FEATURES` are dependent on their location |
120 | within the kernel Metadata itself. The examples here are taken from the | 120 | within the kernel Metadata itself. The examples here are taken from the |
121 | ``yocto-kernel-cache`` repository. Each branch of this repository | 121 | ``yocto-kernel-cache`` repository. Each branch of this repository |
122 | contains "features" and "cfg" subdirectories at the top-level. For more | 122 | contains "features" and "cfg" subdirectories at the top-level. For more |
@@ -344,7 +344,7 @@ as how an additional feature description file is included with the | |||
344 | 344 | ||
345 | Typically, features are less granular than configuration fragments and | 345 | Typically, features are less granular than configuration fragments and |
346 | are more likely than configuration fragments and patches to be the types | 346 | are more likely than configuration fragments and patches to be the types |
347 | of things you want to specify in the ``KERNEL_FEATURES`` variable of the | 347 | of things you want to specify in the :term:`KERNEL_FEATURES` variable of the |
348 | Linux kernel recipe. See the | 348 | Linux kernel recipe. See the |
349 | ":ref:`kernel-dev/advanced:using kernel metadata in a recipe`" section earlier | 349 | ":ref:`kernel-dev/advanced:using kernel metadata in a recipe`" section earlier |
350 | in the manual. | 350 | in the manual. |
@@ -509,12 +509,12 @@ description as meeting the criteria set by the recipe being built. This | |||
509 | example supports the "beaglebone" machine for the "standard" kernel and | 509 | example supports the "beaglebone" machine for the "standard" kernel and |
510 | the "arm" architecture. | 510 | the "arm" architecture. |
511 | 511 | ||
512 | Be aware that there is no hard link between the ``KTYPE`` variable and a kernel | 512 | Be aware that there is no hard link between the :term:`KTYPE` variable and a kernel |
513 | type description file. Thus, if you do not have the | 513 | type description file. Thus, if you do not have the |
514 | kernel type defined in your kernel Metadata as it is here, you only need | 514 | kernel type defined in your kernel Metadata as it is here, you only need |
515 | to ensure that the | 515 | to ensure that the |
516 | :term:`LINUX_KERNEL_TYPE` | 516 | :term:`LINUX_KERNEL_TYPE` |
517 | variable in the kernel recipe and the ``KTYPE`` variable in the BSP | 517 | variable in the kernel recipe and the :term:`KTYPE` variable in the BSP |
518 | description file match. | 518 | description file match. |
519 | 519 | ||
520 | To separate your kernel policy from your hardware configuration, you | 520 | To separate your kernel policy from your hardware configuration, you |
@@ -657,7 +657,7 @@ Notice again the three critical variables: | |||
657 | :term:`KMACHINE`, | 657 | :term:`KMACHINE`, |
658 | :term:`KTYPE`, and | 658 | :term:`KTYPE`, and |
659 | :term:`KARCH`. Of these variables, only | 659 | :term:`KARCH`. Of these variables, only |
660 | ``KTYPE`` has changed to specify the "tiny" kernel type. | 660 | :term:`KTYPE` has changed to specify the "tiny" kernel type. |
661 | 661 | ||
662 | Kernel Metadata Location | 662 | Kernel Metadata Location |
663 | ======================== | 663 | ======================== |
@@ -693,7 +693,7 @@ directory hierarchy below | |||
693 | a linux-yocto recipe or for a Linux kernel recipe derived by copying and | 693 | a linux-yocto recipe or for a Linux kernel recipe derived by copying and |
694 | modifying | 694 | modifying |
695 | ``oe-core/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb`` to | 695 | ``oe-core/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb`` to |
696 | a recipe in your layer, ``FILESEXTRAPATHS`` is typically set to | 696 | a recipe in your layer, :term:`FILESEXTRAPATHS` is typically set to |
697 | ``${``\ :term:`THISDIR`\ ``}/${``\ :term:`PN`\ ``}``. | 697 | ``${``\ :term:`THISDIR`\ ``}/${``\ :term:`PN`\ ``}``. |
698 | See the ":ref:`kernel-dev/common:modifying an existing recipe`" | 698 | See the ":ref:`kernel-dev/common:modifying an existing recipe`" |
699 | section for more information. | 699 | section for more information. |
@@ -718,10 +718,10 @@ and fetches any files referenced in the ``.scc`` files by the | |||
718 | ``include``, ``patch``, or ``kconf`` commands. Because of this, it is | 718 | ``include``, ``patch``, or ``kconf`` commands. Because of this, it is |
719 | necessary to bump the recipe :term:`PR` | 719 | necessary to bump the recipe :term:`PR` |
720 | value when changing the content of files not explicitly listed in the | 720 | value when changing the content of files not explicitly listed in the |
721 | ``SRC_URI``. | 721 | :term:`SRC_URI`. |
722 | 722 | ||
723 | If the BSP description is in recipe space, you cannot simply list the | 723 | If the BSP description is in recipe space, you cannot simply list the |
724 | ``*.scc`` in the ``SRC_URI`` statement. You need to use the following | 724 | ``*.scc`` in the :term:`SRC_URI` statement. You need to use the following |
725 | form from your kernel append file:: | 725 | form from your kernel append file:: |
726 | 726 | ||
727 | SRC_URI_append_myplatform = " \ | 727 | SRC_URI_append_myplatform = " \ |
@@ -735,7 +735,7 @@ When stored outside of the recipe-space, the kernel Metadata files | |||
735 | reside in a separate repository. The OpenEmbedded build system adds the | 735 | reside in a separate repository. The OpenEmbedded build system adds the |
736 | Metadata to the build as a "type=kmeta" repository through the | 736 | Metadata to the build as a "type=kmeta" repository through the |
737 | :term:`SRC_URI` variable. As an | 737 | :term:`SRC_URI` variable. As an |
738 | example, consider the following ``SRC_URI`` statement from the | 738 | example, consider the following :term:`SRC_URI` statement from the |
739 | ``linux-yocto_4.12.bb`` kernel recipe:: | 739 | ``linux-yocto_4.12.bb`` kernel recipe:: |
740 | 740 | ||
741 | SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.12.git;name=machine;branch=${KBRANCH}; \ | 741 | SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.12.git;name=machine;branch=${KBRANCH}; \ |
@@ -744,20 +744,20 @@ example, consider the following ``SRC_URI`` statement from the | |||
744 | 744 | ||
745 | ``${KMETA}``, in this context, is simply used to name the directory into | 745 | ``${KMETA}``, in this context, is simply used to name the directory into |
746 | which the Git fetcher places the Metadata. This behavior is no different | 746 | which the Git fetcher places the Metadata. This behavior is no different |
747 | than any multi-repository ``SRC_URI`` statement used in a recipe (e.g. | 747 | than any multi-repository :term:`SRC_URI` statement used in a recipe (e.g. |
748 | see the previous section). | 748 | see the previous section). |
749 | 749 | ||
750 | You can keep kernel Metadata in a "kernel-cache", which is a directory | 750 | You can keep kernel Metadata in a "kernel-cache", which is a directory |
751 | containing configuration fragments. As with any Metadata kept outside | 751 | containing configuration fragments. As with any Metadata kept outside |
752 | the recipe-space, you simply need to use the ``SRC_URI`` statement with | 752 | the recipe-space, you simply need to use the :term:`SRC_URI` statement with |
753 | the "type=kmeta" attribute. Doing so makes the kernel Metadata available | 753 | the "type=kmeta" attribute. Doing so makes the kernel Metadata available |
754 | during the configuration phase. | 754 | during the configuration phase. |
755 | 755 | ||
756 | If you modify the Metadata, you must not forget to update the ``SRCREV`` | 756 | If you modify the Metadata, you must not forget to update the :term:`SRCREV` |
757 | statements in the kernel's recipe. In particular, you need to update the | 757 | statements in the kernel's recipe. In particular, you need to update the |
758 | ``SRCREV_meta`` variable to match the commit in the ``KMETA`` branch you | 758 | ``SRCREV_meta`` variable to match the commit in the ``KMETA`` branch you |
759 | wish to use. Changing the data in these branches and not updating the | 759 | wish to use. Changing the data in these branches and not updating the |
760 | ``SRCREV`` statements to match will cause the build to fetch an older | 760 | :term:`SRCREV` statements to match will cause the build to fetch an older |
761 | commit. | 761 | commit. |
762 | 762 | ||
763 | Organizing Your Source | 763 | Organizing Your Source |
@@ -820,7 +820,7 @@ patches into a feature. | |||
820 | 820 | ||
821 | Once you have a new branch, you can set up your kernel Metadata to use | 821 | Once you have a new branch, you can set up your kernel Metadata to use |
822 | the branch a couple different ways. In the recipe, you can specify the | 822 | the branch a couple different ways. In the recipe, you can specify the |
823 | new branch as the ``KBRANCH`` to use for the board as follows:: | 823 | new branch as the :term:`KBRANCH` to use for the board as follows:: |
824 | 824 | ||
825 | KBRANCH = "mynewbranch" | 825 | KBRANCH = "mynewbranch" |
826 | 826 | ||
diff --git a/documentation/kernel-dev/common.rst b/documentation/kernel-dev/common.rst index f64cbab56c..de62df5b1f 100644 --- a/documentation/kernel-dev/common.rst +++ b/documentation/kernel-dev/common.rst | |||
@@ -70,7 +70,7 @@ section: | |||
70 | :term:`MACHINE` variable is set to | 70 | :term:`MACHINE` variable is set to |
71 | "qemux86-64", which is fine if you are building for the QEMU emulator | 71 | "qemux86-64", which is fine if you are building for the QEMU emulator |
72 | in 64-bit mode. However, if you are not, you need to set the | 72 | in 64-bit mode. However, if you are not, you need to set the |
73 | ``MACHINE`` variable appropriately in your ``conf/local.conf`` file | 73 | :term:`MACHINE` variable appropriately in your ``conf/local.conf`` file |
74 | found in the | 74 | found in the |
75 | :term:`Build Directory` (i.e. | 75 | :term:`Build Directory` (i.e. |
76 | ``poky/build`` in this example). | 76 | ``poky/build`` in this example). |
@@ -248,7 +248,7 @@ section: | |||
248 | :term:`MACHINE` variable is set to | 248 | :term:`MACHINE` variable is set to |
249 | "qemux86-64", which is fine if you are building for the QEMU emulator | 249 | "qemux86-64", which is fine if you are building for the QEMU emulator |
250 | in 64-bit mode. However, if you are not, you need to set the | 250 | in 64-bit mode. However, if you are not, you need to set the |
251 | ``MACHINE`` variable appropriately in your ``conf/local.conf`` file | 251 | :term:`MACHINE` variable appropriately in your ``conf/local.conf`` file |
252 | found in the | 252 | found in the |
253 | :term:`Build Directory` (i.e. | 253 | :term:`Build Directory` (i.e. |
254 | ``poky/build`` in this example). | 254 | ``poky/build`` in this example). |
@@ -474,7 +474,7 @@ variable as follows:: | |||
474 | The path ``${``\ :term:`THISDIR`\ ``}/${``\ :term:`PN`\ ``}`` | 474 | The path ``${``\ :term:`THISDIR`\ ``}/${``\ :term:`PN`\ ``}`` |
475 | expands to "linux-yocto" in the current directory for this example. If | 475 | expands to "linux-yocto" in the current directory for this example. If |
476 | you add any new files that modify the kernel recipe and you have | 476 | you add any new files that modify the kernel recipe and you have |
477 | extended ``FILESPATH`` as described above, you must place the files in | 477 | extended :term:`FILESPATH` as described above, you must place the files in |
478 | your layer in the following area:: | 478 | your layer in the following area:: |
479 | 479 | ||
480 | your-layer/recipes-kernel/linux/linux-yocto/ | 480 | your-layer/recipes-kernel/linux/linux-yocto/ |
@@ -553,7 +553,7 @@ the append file. | |||
553 | 553 | ||
554 | For example, suppose you had some configuration options in a file called | 554 | For example, suppose you had some configuration options in a file called |
555 | ``network_configs.cfg``. You can place that file inside a directory | 555 | ``network_configs.cfg``. You can place that file inside a directory |
556 | named ``linux-yocto`` and then add a ``SRC_URI`` statement such as the | 556 | named ``linux-yocto`` and then add a :term:`SRC_URI` statement such as the |
557 | following to the append file. When the OpenEmbedded build system builds | 557 | following to the append file. When the OpenEmbedded build system builds |
558 | the kernel, the configuration options are picked up and applied. | 558 | the kernel, the configuration options are picked up and applied. |
559 | :: | 559 | :: |
@@ -563,7 +563,7 @@ the kernel, the configuration options are picked up and applied. | |||
563 | To group related configurations into multiple files, you perform a | 563 | To group related configurations into multiple files, you perform a |
564 | similar procedure. Here is an example that groups separate | 564 | similar procedure. Here is an example that groups separate |
565 | configurations specifically for Ethernet and graphics into their own | 565 | configurations specifically for Ethernet and graphics into their own |
566 | files and adds the configurations by using a ``SRC_URI`` statement like | 566 | files and adds the configurations by using a :term:`SRC_URI` statement like |
567 | the following in your append file:: | 567 | the following in your append file:: |
568 | 568 | ||
569 | SRC_URI += "file://myconfig.cfg \ | 569 | SRC_URI += "file://myconfig.cfg \ |
@@ -643,7 +643,7 @@ following lines to the linux-yocto ``.bbappend`` file in your layer:: | |||
643 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" | 643 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" |
644 | SRC_URI += "file://defconfig" | 644 | SRC_URI += "file://defconfig" |
645 | 645 | ||
646 | The ``SRC_URI`` tells the build system how to search | 646 | The :term:`SRC_URI` tells the build system how to search |
647 | for the file, while the | 647 | for the file, while the |
648 | :term:`FILESEXTRAPATHS` | 648 | :term:`FILESEXTRAPATHS` |
649 | extends the :term:`FILESPATH` | 649 | extends the :term:`FILESPATH` |
@@ -684,7 +684,7 @@ with the following content (without indentation):: | |||
684 | CONFIG_SERIAL_CORE_CONSOLE=y | 684 | CONFIG_SERIAL_CORE_CONSOLE=y |
685 | 685 | ||
686 | Next, include this | 686 | Next, include this |
687 | configuration fragment and extend the ``FILESPATH`` variable in your | 687 | configuration fragment and extend the :term:`FILESPATH` variable in your |
688 | ``.bbappend`` file:: | 688 | ``.bbappend`` file:: |
689 | 689 | ||
690 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" | 690 | FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" |
@@ -722,7 +722,7 @@ form:: | |||
722 | KBUILD_DEFCONFIG_KMACHINE ?= "defconfig_file" | 722 | KBUILD_DEFCONFIG_KMACHINE ?= "defconfig_file" |
723 | 723 | ||
724 | Here is an example | 724 | Here is an example |
725 | that assigns the ``KBUILD_DEFCONFIG`` variable based on "raspberrypi2" | 725 | that assigns the :term:`KBUILD_DEFCONFIG` variable based on "raspberrypi2" |
726 | and provides the path to the "in-tree" ``defconfig`` file to be used for | 726 | and provides the path to the "in-tree" ``defconfig`` file to be used for |
727 | a Raspberry Pi 2, which is based on the Broadcom 2708/2709 chipset:: | 727 | a Raspberry Pi 2, which is based on the Broadcom 2708/2709 chipset:: |
728 | 728 | ||
@@ -734,7 +734,7 @@ Aside from modifying your kernel recipe and providing your own | |||
734 | a kernel's ``linux-``\ `machine`\ ``.inc`` file). In other words, if the | 734 | a kernel's ``linux-``\ `machine`\ ``.inc`` file). In other words, if the |
735 | build system detects a statement that identifies an "out-of-tree" | 735 | build system detects a statement that identifies an "out-of-tree" |
736 | ``defconfig`` file, that statement will override your | 736 | ``defconfig`` file, that statement will override your |
737 | ``KBUILD_DEFCONFIG`` variable. | 737 | :term:`KBUILD_DEFCONFIG` variable. |
738 | 738 | ||
739 | See the | 739 | See the |
740 | :term:`KBUILD_DEFCONFIG` | 740 | :term:`KBUILD_DEFCONFIG` |
@@ -1349,10 +1349,10 @@ be picked up and applied when the kernel is built:: | |||
1349 | SRC_URI += "file://myconfig.cfg" | 1349 | SRC_URI += "file://myconfig.cfg" |
1350 | 1350 | ||
1351 | As mentioned earlier, you can group related configurations into multiple | 1351 | As mentioned earlier, you can group related configurations into multiple |
1352 | files and name them all in the ``SRC_URI`` statement as well. For | 1352 | files and name them all in the :term:`SRC_URI` statement as well. For |
1353 | example, you could group separate configurations specifically for | 1353 | example, you could group separate configurations specifically for |
1354 | Ethernet and graphics into their own files and add those by using a | 1354 | Ethernet and graphics into their own files and add those by using a |
1355 | ``SRC_URI`` statement like the following in your append file:: | 1355 | :term:`SRC_URI` statement like the following in your append file:: |
1356 | 1356 | ||
1357 | SRC_URI += "file://myconfig.cfg \ | 1357 | SRC_URI += "file://myconfig.cfg \ |
1358 | file://eth.cfg \ | 1358 | file://eth.cfg \ |
@@ -1628,11 +1628,11 @@ Here are some basic steps you can use to work with your own sources: | |||
1628 | appropriate for your project: | 1628 | appropriate for your project: |
1629 | 1629 | ||
1630 | - :term:`SRC_URI`: The | 1630 | - :term:`SRC_URI`: The |
1631 | ``SRC_URI`` should specify a Git repository that uses one of the | 1631 | :term:`SRC_URI` should specify a Git repository that uses one of the |
1632 | supported Git fetcher protocols (i.e. ``file``, ``git``, ``http``, | 1632 | supported Git fetcher protocols (i.e. ``file``, ``git``, ``http``, |
1633 | and so forth). The ``SRC_URI`` variable should also specify either | 1633 | and so forth). The :term:`SRC_URI` variable should also specify either |
1634 | a ``defconfig`` file or some configuration fragment files. The | 1634 | a ``defconfig`` file or some configuration fragment files. The |
1635 | skeleton recipe provides an example ``SRC_URI`` as a syntax | 1635 | skeleton recipe provides an example :term:`SRC_URI` as a syntax |
1636 | reference. | 1636 | reference. |
1637 | 1637 | ||
1638 | - :term:`LINUX_VERSION`: | 1638 | - :term:`LINUX_VERSION`: |
@@ -1650,16 +1650,16 @@ Here are some basic steps you can use to work with your own sources: | |||
1650 | indicate to the OpenEmbedded build system that the recipe has | 1650 | indicate to the OpenEmbedded build system that the recipe has |
1651 | changed. | 1651 | changed. |
1652 | 1652 | ||
1653 | - :term:`PV`: The default ``PV`` | 1653 | - :term:`PV`: The default :term:`PV` |
1654 | assignment is typically adequate. It combines the | 1654 | assignment is typically adequate. It combines the |
1655 | ``LINUX_VERSION`` with the Source Control Manager (SCM) revision | 1655 | :term:`LINUX_VERSION` with the Source Control Manager (SCM) revision |
1656 | as derived from the :term:`SRCPV` | 1656 | as derived from the :term:`SRCPV` |
1657 | variable. The combined results are a string with the following | 1657 | variable. The combined results are a string with the following |
1658 | form:: | 1658 | form:: |
1659 | 1659 | ||
1660 | 3.19.11+git1+68a635bf8dfb64b02263c1ac80c948647cc76d5f_1+218bd8d2022b9852c60d32f0d770931e3cf343e2 | 1660 | 3.19.11+git1+68a635bf8dfb64b02263c1ac80c948647cc76d5f_1+218bd8d2022b9852c60d32f0d770931e3cf343e2 |
1661 | 1661 | ||
1662 | While lengthy, the extra verbosity in ``PV`` helps ensure you are | 1662 | While lengthy, the extra verbosity in :term:`PV` helps ensure you are |
1663 | using the exact sources from which you intend to build. | 1663 | using the exact sources from which you intend to build. |
1664 | 1664 | ||
1665 | - :term:`COMPATIBLE_MACHINE`: | 1665 | - :term:`COMPATIBLE_MACHINE`: |
@@ -1773,7 +1773,7 @@ information to build modules. If your module ``Makefile`` uses a | |||
1773 | different variable, you might want to override the | 1773 | different variable, you might want to override the |
1774 | :ref:`ref-tasks-compile` step, or | 1774 | :ref:`ref-tasks-compile` step, or |
1775 | create a patch to the ``Makefile`` to work with the more typical | 1775 | create a patch to the ``Makefile`` to work with the more typical |
1776 | ``KERNEL_SRC`` or ``KERNEL_PATH`` variables. | 1776 | :term:`KERNEL_SRC` or :term:`KERNEL_PATH` variables. |
1777 | 1777 | ||
1778 | After you have prepared your recipe, you will likely want to include the | 1778 | After you have prepared your recipe, you will likely want to include the |
1779 | module in your images. To do this, see the documentation for the | 1779 | module in your images. To do this, see the documentation for the |
@@ -1886,23 +1886,23 @@ build stops. Kernel features are the last elements processed for | |||
1886 | configuring and patching the kernel. Therefore, adding features in this | 1886 | configuring and patching the kernel. Therefore, adding features in this |
1887 | manner is a way to enforce specific features are present and enabled | 1887 | manner is a way to enforce specific features are present and enabled |
1888 | without needing to do a full audit of any other layer's additions to the | 1888 | without needing to do a full audit of any other layer's additions to the |
1889 | ``SRC_URI`` statement. | 1889 | :term:`SRC_URI` statement. |
1890 | 1890 | ||
1891 | You add a kernel feature by providing the feature as part of the | 1891 | You add a kernel feature by providing the feature as part of the |
1892 | ``KERNEL_FEATURES`` variable and by providing the path to the feature's | 1892 | :term:`KERNEL_FEATURES` variable and by providing the path to the feature's |
1893 | ``.scc`` file, which is relative to the root of the kernel Metadata. The | 1893 | ``.scc`` file, which is relative to the root of the kernel Metadata. The |
1894 | OpenEmbedded build system searches all forms of kernel Metadata on the | 1894 | OpenEmbedded build system searches all forms of kernel Metadata on the |
1895 | ``SRC_URI`` statement regardless of whether the Metadata is in the | 1895 | :term:`SRC_URI` statement regardless of whether the Metadata is in the |
1896 | "kernel-cache", system kernel Metadata, or a recipe-space Metadata (i.e. | 1896 | "kernel-cache", system kernel Metadata, or a recipe-space Metadata (i.e. |
1897 | part of the kernel recipe). See the | 1897 | part of the kernel recipe). See the |
1898 | ":ref:`kernel-dev/advanced:kernel metadata location`" section for | 1898 | ":ref:`kernel-dev/advanced:kernel metadata location`" section for |
1899 | additional information. | 1899 | additional information. |
1900 | 1900 | ||
1901 | When you specify the feature's ``.scc`` file on the ``SRC_URI`` | 1901 | When you specify the feature's ``.scc`` file on the :term:`SRC_URI` |
1902 | statement, the OpenEmbedded build system adds the directory of that | 1902 | statement, the OpenEmbedded build system adds the directory of that |
1903 | ``.scc`` file along with all its subdirectories to the kernel feature | 1903 | ``.scc`` file along with all its subdirectories to the kernel feature |
1904 | search path. Because subdirectories are searched, you can reference a | 1904 | search path. Because subdirectories are searched, you can reference a |
1905 | single ``.scc`` file in the ``SRC_URI`` statement to reference multiple | 1905 | single ``.scc`` file in the :term:`SRC_URI` statement to reference multiple |
1906 | kernel features. | 1906 | kernel features. |
1907 | 1907 | ||
1908 | Consider the following example that adds the "test.scc" feature to the | 1908 | Consider the following example that adds the "test.scc" feature to the |
@@ -1910,7 +1910,7 @@ build. | |||
1910 | 1910 | ||
1911 | 1. *Create the Feature File:* Create a ``.scc`` file and locate it just | 1911 | 1. *Create the Feature File:* Create a ``.scc`` file and locate it just |
1912 | as you would any other patch file, ``.cfg`` file, or fetcher item you | 1912 | as you would any other patch file, ``.cfg`` file, or fetcher item you |
1913 | specify in the ``SRC_URI`` statement. | 1913 | specify in the :term:`SRC_URI` statement. |
1914 | 1914 | ||
1915 | .. note:: | 1915 | .. note:: |
1916 | 1916 | ||
@@ -1937,7 +1937,7 @@ build. | |||
1937 | a similarly named configuration fragment file ``test.cfg``. | 1937 | a similarly named configuration fragment file ``test.cfg``. |
1938 | 1938 | ||
1939 | 2. *Add the Feature File to SRC_URI:* Add the ``.scc`` file to the | 1939 | 2. *Add the Feature File to SRC_URI:* Add the ``.scc`` file to the |
1940 | recipe's ``SRC_URI`` statement:: | 1940 | recipe's :term:`SRC_URI` statement:: |
1941 | 1941 | ||
1942 | SRC_URI_append = " file://test.scc" | 1942 | SRC_URI_append = " file://test.scc" |
1943 | 1943 | ||
@@ -1945,7 +1945,7 @@ build. | |||
1945 | appended to the existing path. | 1945 | appended to the existing path. |
1946 | 1946 | ||
1947 | 3. *Specify the Feature as a Kernel Feature:* Use the | 1947 | 3. *Specify the Feature as a Kernel Feature:* Use the |
1948 | ``KERNEL_FEATURES`` statement to specify the feature as a kernel | 1948 | :term:`KERNEL_FEATURES` statement to specify the feature as a kernel |
1949 | feature:: | 1949 | feature:: |
1950 | 1950 | ||
1951 | KERNEL_FEATURES_append = " test.scc" | 1951 | KERNEL_FEATURES_append = " test.scc" |
diff --git a/documentation/kernel-dev/faq.rst b/documentation/kernel-dev/faq.rst index cffd1c4330..f0a7af37bb 100644 --- a/documentation/kernel-dev/faq.rst +++ b/documentation/kernel-dev/faq.rst | |||
@@ -68,7 +68,7 @@ How do I change the Linux kernel command line? | |||
68 | ---------------------------------------------- | 68 | ---------------------------------------------- |
69 | 69 | ||
70 | The Linux kernel command line is | 70 | The Linux kernel command line is |
71 | typically specified in the machine config using the ``APPEND`` variable. | 71 | typically specified in the machine config using the :term:`APPEND` variable. |
72 | For example, you can add some helpful debug information doing the | 72 | For example, you can add some helpful debug information doing the |
73 | following:: | 73 | following:: |
74 | 74 | ||
diff --git a/documentation/kernel-dev/maint-appx.rst b/documentation/kernel-dev/maint-appx.rst index 3354de5f0c..d968c856f6 100644 --- a/documentation/kernel-dev/maint-appx.rst +++ b/documentation/kernel-dev/maint-appx.rst | |||
@@ -104,7 +104,7 @@ patch, or BSP: | |||
104 | repository organized under the "Yocto Linux Kernel" heading in the | 104 | repository organized under the "Yocto Linux Kernel" heading in the |
105 | :yocto_git:`Yocto Project Source Repositories <>`. | 105 | :yocto_git:`Yocto Project Source Repositories <>`. |
106 | 106 | ||
107 | - Areas pointed to by ``SRC_URI`` statements found in kernel recipes. | 107 | - Areas pointed to by :term:`SRC_URI` statements found in kernel recipes. |
108 | 108 | ||
109 | For a typical build, the target of the search is a feature | 109 | For a typical build, the target of the search is a feature |
110 | description in an ``.scc`` file whose name follows this format (e.g. | 110 | description in an ``.scc`` file whose name follows this format (e.g. |