summaryrefslogtreecommitdiffstats
path: root/documentation/kernel-dev
diff options
context:
space:
mode:
authorQuentin Schulz <foss@0leil.net>2021-05-27 20:41:17 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-06-19 16:54:01 +0100
commit7d3f57cfd2e4322bcd96d67d330124f221a9aedd (patch)
tree5d07321b7c8bc59bb7fcc0372fab8b7a1966cf06 /documentation/kernel-dev
parent7a9b74e9d2a5cf3b1fb3ac7565c50eae6e0d4632 (diff)
downloadpoky-7d3f57cfd2e4322bcd96d67d330124f221a9aedd.tar.gz
docs: replace ``FOO`` by :term:`FOO` where possible
If a variable has a glossary entry and some rST files write about those variables, it's better to point to the glossary entry instead of just highlighting it by surrounding it with two tick quotes. This was automated by the following python script: """ import re from pathlib import Path with open('objects.inv.txt', 'r') as f: objects = f.readlines() with open('bitbake-objects.inv.txt', 'r') as f: objects = objects + f.readlines() re_term = re.compile(r'variables.html#term-([A-Z_0-9]*)') terms = [] for obj in objects: match = re_term.search(obj) if match and match.group(1): terms.append(match.group(1)) for rst in Path('.').rglob('*.rst'): with open(rst, 'r') as f: content = "".joing(f.readlines()) for term in terms: content = re.sub(r'``({})``(?!.*\s*[~-]+)'.format(term), r':term:`\1`', content) with open(rst, 'w') as f: f.write(content) """ (From yocto-docs rev: ba49d9babfcb84bc5c26a68c8c3880a1d9c236d3) Signed-off-by: Quentin Schulz <foss@0leil.net> Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com> Reviewed-by: Nicolas Dechesne <nicolas.dechesne@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/kernel-dev')
-rw-r--r--documentation/kernel-dev/advanced.rst56
-rw-r--r--documentation/kernel-dev/common.rst52
-rw-r--r--documentation/kernel-dev/faq.rst2
-rw-r--r--documentation/kernel-dev/maint-appx.rst2
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
47Every linux-yocto style recipe must define the 47Every linux-yocto style recipe must define the
48:term:`KMACHINE` variable. This 48:term:`KMACHINE` variable. This
49variable is typically set to the same value as the ``MACHINE`` variable, 49variable is typically set to the same value as the :term:`MACHINE` variable,
50which is used by :term:`BitBake`. 50which is used by :term:`BitBake`.
51However, in some cases, the variable might instead refer to the 51However, in some cases, the variable might instead refer to the
52underlying platform of the ``MACHINE``. 52underlying platform of the :term:`MACHINE`.
53 53
54Multiple BSPs can reuse the same ``KMACHINE`` name if they are built 54Multiple BSPs can reuse the same :term:`KMACHINE` name if they are built
55using the same BSP description. Multiple Corei7-based BSPs could share 55using the same BSP description. Multiple Corei7-based BSPs could share
56the same "intel-corei7-64" value for ``KMACHINE``. It is important to 56the same "intel-corei7-64" value for :term:`KMACHINE`. It is important to
57realize that ``KMACHINE`` is just for kernel mapping, while ``MACHINE`` 57realize that :term:`KMACHINE` is just for kernel mapping, while :term:`MACHINE`
58is the machine type within a BSP Layer. Even with this distinction, 58is the machine type within a BSP Layer. Even with this distinction,
59however, these two variables can hold the same value. See the 59however, 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`
83defines the kernel type to be used in assembling the configuration. If 83defines the kernel type to be used in assembling the configuration. If
84you do not specify a ``LINUX_KERNEL_TYPE``, it defaults to "standard". 84you do not specify a :term:`LINUX_KERNEL_TYPE`, it defaults to "standard".
85Together with ``KMACHINE``, ``LINUX_KERNEL_TYPE`` defines the search 85Together with :term:`KMACHINE`, :term:`LINUX_KERNEL_TYPE` defines the search
86arguments used by the kernel tools to find the appropriate description 86arguments used by the kernel tools to find the appropriate description
87within the kernel Metadata with which to build out the sources and 87within the kernel Metadata with which to build out the sources and
88configuration. The linux-yocto recipes define "standard", "tiny", and 88configuration. The linux-yocto recipes define "standard", "tiny", and
@@ -90,21 +90,21 @@ configuration. The linux-yocto recipes define "standard", "tiny", and
90section for more information on kernel types. 90section for more information on kernel types.
91 91
92During the build, the kern-tools search for the BSP description file 92During the build, the kern-tools search for the BSP description file
93that most closely matches the ``KMACHINE`` and ``LINUX_KERNEL_TYPE`` 93that most closely matches the :term:`KMACHINE` and :term:`LINUX_KERNEL_TYPE`
94variables passed in from the recipe. The tools use the first BSP 94variables passed in from the recipe. The tools use the first BSP
95description they find that matches both variables. If the tools cannot find 95description they find that matches both variables. If the tools cannot find
96a match, they issue a warning. 96a match, they issue a warning.
97 97
98The tools first search for the ``KMACHINE`` and then for the 98The 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
100will use the sources from the ``KBRANCH`` and any configuration 100will use the sources from the :term:`KBRANCH` and any configuration
101specified in the :term:`SRC_URI`. 101specified in the :term:`SRC_URI`.
102 102
103You can use the 103You can use the
104:term:`KERNEL_FEATURES` 104:term:`KERNEL_FEATURES`
105variable to include features (configuration fragments, patches, or both) 105variable to include features (configuration fragments, patches, or both)
106that are not already included by the ``KMACHINE`` and 106that 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
108feature specified as "features/netfilter/netfilter.scc", specify:: 108feature 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
118The value of 118The value of
119the entries in ``KERNEL_FEATURES`` are dependent on their location 119the entries in :term:`KERNEL_FEATURES` are dependent on their location
120within the kernel Metadata itself. The examples here are taken from the 120within 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
122contains "features" and "cfg" subdirectories at the top-level. For more 122contains "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
345Typically, features are less granular than configuration fragments and 345Typically, features are less granular than configuration fragments and
346are more likely than configuration fragments and patches to be the types 346are more likely than configuration fragments and patches to be the types
347of things you want to specify in the ``KERNEL_FEATURES`` variable of the 347of things you want to specify in the :term:`KERNEL_FEATURES` variable of the
348Linux kernel recipe. See the 348Linux 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
350in the manual. 350in the manual.
@@ -509,12 +509,12 @@ description as meeting the criteria set by the recipe being built. This
509example supports the "beaglebone" machine for the "standard" kernel and 509example supports the "beaglebone" machine for the "standard" kernel and
510the "arm" architecture. 510the "arm" architecture.
511 511
512Be aware that there is no hard link between the ``KTYPE`` variable and a kernel 512Be aware that there is no hard link between the :term:`KTYPE` variable and a kernel
513type description file. Thus, if you do not have the 513type description file. Thus, if you do not have the
514kernel type defined in your kernel Metadata as it is here, you only need 514kernel type defined in your kernel Metadata as it is here, you only need
515to ensure that the 515to ensure that the
516:term:`LINUX_KERNEL_TYPE` 516:term:`LINUX_KERNEL_TYPE`
517variable in the kernel recipe and the ``KTYPE`` variable in the BSP 517variable in the kernel recipe and the :term:`KTYPE` variable in the BSP
518description file match. 518description file match.
519 519
520To separate your kernel policy from your hardware configuration, you 520To 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
662Kernel Metadata Location 662Kernel Metadata Location
663======================== 663========================
@@ -693,7 +693,7 @@ directory hierarchy below
693a linux-yocto recipe or for a Linux kernel recipe derived by copying and 693a linux-yocto recipe or for a Linux kernel recipe derived by copying and
694modifying 694modifying
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
696a recipe in your layer, ``FILESEXTRAPATHS`` is typically set to 696a recipe in your layer, :term:`FILESEXTRAPATHS` is typically set to
697``${``\ :term:`THISDIR`\ ``}/${``\ :term:`PN`\ ``}``. 697``${``\ :term:`THISDIR`\ ``}/${``\ :term:`PN`\ ``}``.
698See the ":ref:`kernel-dev/common:modifying an existing recipe`" 698See the ":ref:`kernel-dev/common:modifying an existing recipe`"
699section for more information. 699section 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
719necessary to bump the recipe :term:`PR` 719necessary to bump the recipe :term:`PR`
720value when changing the content of files not explicitly listed in the 720value when changing the content of files not explicitly listed in the
721``SRC_URI``. 721:term:`SRC_URI`.
722 722
723If the BSP description is in recipe space, you cannot simply list the 723If 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
725form from your kernel append file:: 725form 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
735reside in a separate repository. The OpenEmbedded build system adds the 735reside in a separate repository. The OpenEmbedded build system adds the
736Metadata to the build as a "type=kmeta" repository through the 736Metadata to the build as a "type=kmeta" repository through the
737:term:`SRC_URI` variable. As an 737:term:`SRC_URI` variable. As an
738example, consider the following ``SRC_URI`` statement from the 738example, 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
746which the Git fetcher places the Metadata. This behavior is no different 746which the Git fetcher places the Metadata. This behavior is no different
747than any multi-repository ``SRC_URI`` statement used in a recipe (e.g. 747than any multi-repository :term:`SRC_URI` statement used in a recipe (e.g.
748see the previous section). 748see the previous section).
749 749
750You can keep kernel Metadata in a "kernel-cache", which is a directory 750You can keep kernel Metadata in a "kernel-cache", which is a directory
751containing configuration fragments. As with any Metadata kept outside 751containing configuration fragments. As with any Metadata kept outside
752the recipe-space, you simply need to use the ``SRC_URI`` statement with 752the recipe-space, you simply need to use the :term:`SRC_URI` statement with
753the "type=kmeta" attribute. Doing so makes the kernel Metadata available 753the "type=kmeta" attribute. Doing so makes the kernel Metadata available
754during the configuration phase. 754during the configuration phase.
755 755
756If you modify the Metadata, you must not forget to update the ``SRCREV`` 756If you modify the Metadata, you must not forget to update the :term:`SRCREV`
757statements in the kernel's recipe. In particular, you need to update the 757statements 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
759wish to use. Changing the data in these branches and not updating the 759wish 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
761commit. 761commit.
762 762
763Organizing Your Source 763Organizing Your Source
@@ -820,7 +820,7 @@ patches into a feature.
820 820
821Once you have a new branch, you can set up your kernel Metadata to use 821Once you have a new branch, you can set up your kernel Metadata to use
822the branch a couple different ways. In the recipe, you can specify the 822the branch a couple different ways. In the recipe, you can specify the
823new branch as the ``KBRANCH`` to use for the board as follows:: 823new 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::
474The path ``${``\ :term:`THISDIR`\ ``}/${``\ :term:`PN`\ ``}`` 474The path ``${``\ :term:`THISDIR`\ ``}/${``\ :term:`PN`\ ``}``
475expands to "linux-yocto" in the current directory for this example. If 475expands to "linux-yocto" in the current directory for this example. If
476you add any new files that modify the kernel recipe and you have 476you add any new files that modify the kernel recipe and you have
477extended ``FILESPATH`` as described above, you must place the files in 477extended :term:`FILESPATH` as described above, you must place the files in
478your layer in the following area:: 478your 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
554For example, suppose you had some configuration options in a file called 554For 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
556named ``linux-yocto`` and then add a ``SRC_URI`` statement such as the 556named ``linux-yocto`` and then add a :term:`SRC_URI` statement such as the
557following to the append file. When the OpenEmbedded build system builds 557following to the append file. When the OpenEmbedded build system builds
558the kernel, the configuration options are picked up and applied. 558the 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.
563To group related configurations into multiple files, you perform a 563To group related configurations into multiple files, you perform a
564similar procedure. Here is an example that groups separate 564similar procedure. Here is an example that groups separate
565configurations specifically for Ethernet and graphics into their own 565configurations specifically for Ethernet and graphics into their own
566files and adds the configurations by using a ``SRC_URI`` statement like 566files and adds the configurations by using a :term:`SRC_URI` statement like
567the following in your append file:: 567the 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
646The ``SRC_URI`` tells the build system how to search 646The :term:`SRC_URI` tells the build system how to search
647for the file, while the 647for the file, while the
648:term:`FILESEXTRAPATHS` 648:term:`FILESEXTRAPATHS`
649extends the :term:`FILESPATH` 649extends 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
686Next, include this 686Next, include this
687configuration fragment and extend the ``FILESPATH`` variable in your 687configuration 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
724Here is an example 724Here is an example
725that assigns the ``KBUILD_DEFCONFIG`` variable based on "raspberrypi2" 725that assigns the :term:`KBUILD_DEFCONFIG` variable based on "raspberrypi2"
726and provides the path to the "in-tree" ``defconfig`` file to be used for 726and provides the path to the "in-tree" ``defconfig`` file to be used for
727a Raspberry Pi 2, which is based on the Broadcom 2708/2709 chipset:: 727a 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
734a kernel's ``linux-``\ `machine`\ ``.inc`` file). In other words, if the 734a kernel's ``linux-``\ `machine`\ ``.inc`` file). In other words, if the
735build system detects a statement that identifies an "out-of-tree" 735build 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
739See the 739See 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
1351As mentioned earlier, you can group related configurations into multiple 1351As mentioned earlier, you can group related configurations into multiple
1352files and name them all in the ``SRC_URI`` statement as well. For 1352files and name them all in the :term:`SRC_URI` statement as well. For
1353example, you could group separate configurations specifically for 1353example, you could group separate configurations specifically for
1354Ethernet and graphics into their own files and add those by using a 1354Ethernet 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
1773different variable, you might want to override the 1773different variable, you might want to override the
1774:ref:`ref-tasks-compile` step, or 1774:ref:`ref-tasks-compile` step, or
1775create a patch to the ``Makefile`` to work with the more typical 1775create 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
1778After you have prepared your recipe, you will likely want to include the 1778After you have prepared your recipe, you will likely want to include the
1779module in your images. To do this, see the documentation for the 1779module 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
1886configuring and patching the kernel. Therefore, adding features in this 1886configuring and patching the kernel. Therefore, adding features in this
1887manner is a way to enforce specific features are present and enabled 1887manner is a way to enforce specific features are present and enabled
1888without needing to do a full audit of any other layer's additions to the 1888without 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
1891You add a kernel feature by providing the feature as part of the 1891You 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
1894OpenEmbedded build system searches all forms of kernel Metadata on the 1894OpenEmbedded 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.
1897part of the kernel recipe). See the 1897part 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
1899additional information. 1899additional information.
1900 1900
1901When you specify the feature's ``.scc`` file on the ``SRC_URI`` 1901When you specify the feature's ``.scc`` file on the :term:`SRC_URI`
1902statement, the OpenEmbedded build system adds the directory of that 1902statement, 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
1904search path. Because subdirectories are searched, you can reference a 1904search path. Because subdirectories are searched, you can reference a
1905single ``.scc`` file in the ``SRC_URI`` statement to reference multiple 1905single ``.scc`` file in the :term:`SRC_URI` statement to reference multiple
1906kernel features. 1906kernel features.
1907 1907
1908Consider the following example that adds the "test.scc" feature to the 1908Consider the following example that adds the "test.scc" feature to the
@@ -1910,7 +1910,7 @@ build.
1910 1910
19111. *Create the Feature File:* Create a ``.scc`` file and locate it just 19111. *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
19392. *Add the Feature File to SRC_URI:* Add the ``.scc`` file to the 19392. *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
19473. *Specify the Feature as a Kernel Feature:* Use the 19473. *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
70The Linux kernel command line is 70The Linux kernel command line is
71typically specified in the machine config using the ``APPEND`` variable. 71typically specified in the machine config using the :term:`APPEND` variable.
72For example, you can add some helpful debug information doing the 72For example, you can add some helpful debug information doing the
73following:: 73following::
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.