summaryrefslogtreecommitdiffstats
path: root/documentation/kernel-dev/kernel-dev-concepts-appx.rst
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2020-09-14 16:19:23 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-09-17 10:09:35 +0100
commitcb37a15cf5a150489ceaf55dc6cb014f0e787f6e (patch)
tree2df2f45981d11b46d34ca860a9582365f3efef10 /documentation/kernel-dev/kernel-dev-concepts-appx.rst
parentde89b5a0b6ecb9a5b6a3e5a862cf4cee32dc8a94 (diff)
downloadpoky-cb37a15cf5a150489ceaf55dc6cb014f0e787f6e.tar.gz
sphinx: kernel-dev: Various URL, code block and other fixes to imported data
(From yocto-docs rev: 4888b49ccc5d133b4096e5a9b808f14d1afc7deb) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/kernel-dev/kernel-dev-concepts-appx.rst')
-rw-r--r--documentation/kernel-dev/kernel-dev-concepts-appx.rst113
1 files changed, 61 insertions, 52 deletions
diff --git a/documentation/kernel-dev/kernel-dev-concepts-appx.rst b/documentation/kernel-dev/kernel-dev-concepts-appx.rst
index a4611d1ae4..4ddb7ddb60 100644
--- a/documentation/kernel-dev/kernel-dev-concepts-appx.rst
+++ b/documentation/kernel-dev/kernel-dev-concepts-appx.rst
@@ -36,47 +36,46 @@ and custom features. These additions result in a commercially released
36Yocto Project Linux kernel that caters to specific embedded designer 36Yocto Project Linux kernel that caters to specific embedded designer
37needs for targeted hardware. 37needs for targeted hardware.
38 38
39You can find a web interface to the Yocto Linux kernels in the `Source 39You can find a web interface to the Yocto Linux kernels in the
40Repositories <&YOCTO_DOCS_OM_URL;#source-repositories>`__ at 40:ref:`overview-manual/overview-manual-development-environment:yocto project source repositories`
41:yocto_git:`/`. If you look at the interface, you will see to 41at :yocto_git:`/`. If you look at the interface, you will see to
42the left a grouping of Git repositories titled "Yocto Linux Kernel". 42the left a grouping of Git repositories titled "Yocto Linux Kernel".
43Within this group, you will find several Linux Yocto kernels developed 43Within this group, you will find several Linux Yocto kernels developed
44and included with Yocto Project releases: 44and included with Yocto Project releases:
45 45
46- *``linux-yocto-4.1``:* The stable Yocto Project kernel to use with 46- *linux-yocto-4.1:* The stable Yocto Project kernel to use with
47 the Yocto Project Release 2.0. This kernel is based on the Linux 4.1 47 the Yocto Project Release 2.0. This kernel is based on the Linux 4.1
48 released kernel. 48 released kernel.
49 49
50- *``linux-yocto-4.4``:* The stable Yocto Project kernel to use with 50- *linux-yocto-4.4:* The stable Yocto Project kernel to use with
51 the Yocto Project Release 2.1. This kernel is based on the Linux 4.4 51 the Yocto Project Release 2.1. This kernel is based on the Linux 4.4
52 released kernel. 52 released kernel.
53 53
54- *``linux-yocto-4.6``:* A temporary kernel that is not tied to any 54- *linux-yocto-4.6:* A temporary kernel that is not tied to any
55 Yocto Project release. 55 Yocto Project release.
56 56
57- *``linux-yocto-4.8``:* The stable yocto Project kernel to use with 57- *linux-yocto-4.8:* The stable yocto Project kernel to use with
58 the Yocto Project Release 2.2. 58 the Yocto Project Release 2.2.
59 59
60- *``linux-yocto-4.9``:* The stable Yocto Project kernel to use with 60- *linux-yocto-4.9:* The stable Yocto Project kernel to use with
61 the Yocto Project Release 2.3. This kernel is based on the Linux 4.9 61 the Yocto Project Release 2.3. This kernel is based on the Linux 4.9
62 released kernel. 62 released kernel.
63 63
64- *``linux-yocto-4.10``:* The default stable Yocto Project kernel to 64- *linux-yocto-4.10:* The default stable Yocto Project kernel to
65 use with the Yocto Project Release 2.3. This kernel is based on the 65 use with the Yocto Project Release 2.3. This kernel is based on the
66 Linux 4.10 released kernel. 66 Linux 4.10 released kernel.
67 67
68- *``linux-yocto-4.12``:* The default stable Yocto Project kernel to 68- *linux-yocto-4.12:* The default stable Yocto Project kernel to
69 use with the Yocto Project Release 2.4. This kernel is based on the 69 use with the Yocto Project Release 2.4. This kernel is based on the
70 Linux 4.12 released kernel. 70 Linux 4.12 released kernel.
71 71
72- *``yocto-kernel-cache``:* The ``linux-yocto-cache`` contains patches 72- *yocto-kernel-cache:* The ``linux-yocto-cache`` contains patches
73 and configurations for the linux-yocto kernel tree. This repository 73 and configurations for the linux-yocto kernel tree. This repository
74 is useful when working on the linux-yocto kernel. For more 74 is useful when working on the linux-yocto kernel. For more
75 information on this "Advanced Kernel Metadata", see the "`Working 75 information on this "Advanced Kernel Metadata", see the
76 With Advanced Metadata 76 ":doc:`kernel-dev-advanced`" Chapter.
77 (``yocto-kernel-cache``) <#kernel-dev-advanced>`__" Chapter.
78 77
79- *``linux-yocto-dev``:* A development kernel based on the latest 78- *linux-yocto-dev:* A development kernel based on the latest
80 upstream release candidate available. 79 upstream release candidate available.
81 80
82.. note:: 81.. note::
@@ -164,7 +163,7 @@ implemented by the Yocto Project team using the Source Code Manager
164 - You can find documentation on Git at 163 - You can find documentation on Git at
165 http://git-scm.com/documentation. You can also get an 164 http://git-scm.com/documentation. You can also get an
166 introduction to Git as it applies to the Yocto Project in the 165 introduction to Git as it applies to the Yocto Project in the
167 "`Git <&YOCTO_DOCS_OM_URL;#git>`__" section in the Yocto Project 166 ":ref:`overview-manual/overview-manual-development-environment:git`" section in the Yocto Project
168 Overview and Concepts Manual. The latter reference provides an 167 Overview and Concepts Manual. The latter reference provides an
169 overview of Git and presents a minimal set of Git commands that 168 overview of Git and presents a minimal set of Git commands that
170 allows you to be functional using Git. You can use as much, or as 169 allows you to be functional using Git. You can use as much, or as
@@ -295,17 +294,16 @@ available on your host system.
295Kernel source code is available on your host system several different 294Kernel source code is available on your host system several different
296ways: 295ways:
297 296
298- *Files Accessed While using ``devtool``:* ``devtool``, which is 297- *Files Accessed While using devtool:* ``devtool``, which is
299 available with the Yocto Project, is the preferred method by which to 298 available with the Yocto Project, is the preferred method by which to
300 modify the kernel. See the "`Kernel Modification 299 modify the kernel. See the ":ref:`kernel-dev/kernel-dev-intro:kernel modification workflow`" section.
301 Workflow <#kernel-modification-workflow>`__" section.
302 300
303- *Cloned Repository:* If you are working in the kernel all the time, 301- *Cloned Repository:* If you are working in the kernel all the time,
304 you probably would want to set up your own local Git repository of 302 you probably would want to set up your own local Git repository of
305 the Yocto Linux kernel tree. For information on how to clone a Yocto 303 the Yocto Linux kernel tree. For information on how to clone a Yocto
306 Linux kernel Git repository, see the "`Preparing the Build Host to 304 Linux kernel Git repository, see the
307 Work on the 305 ":ref:`kernel-dev/kernel-dev-common:preparing the build host to work on the kernel`"
308 Kernel <#preparing-the-build-host-to-work-on-the-kernel>`__" section. 306 section.
309 307
310- *Temporary Source Files from a Build:* If you just need to make some 308- *Temporary Source Files from a Build:* If you just need to make some
311 patches to the kernel using a traditional BitBake workflow (i.e. not 309 patches to the kernel using a traditional BitBake workflow (i.e. not
@@ -331,13 +329,12 @@ source files used during the build.
331 :align: center 329 :align: center
332 330
333Again, for additional information on the Yocto Project kernel's 331Again, for additional information on the Yocto Project kernel's
334architecture and its branching strategy, see the "`Yocto Linux Kernel 332architecture and its branching strategy, see the
335Architecture and Branching 333":ref:`kernel-dev/kernel-dev-concepts-appx:yocto linux kernel architecture and branching strategies`"
336Strategies <#yocto-linux-kernel-architecture-and-branching-strategies>`__" 334section. You can also reference the
337section. You can also reference the "`Using ``devtool`` to Patch the 335":ref:`kernel-dev/kernel-dev-common:using \`\`devtool\`\` to patch the kernel`"
338Kernel <#using-devtool-to-patch-the-kernel>`__" and "`Using Traditional 336and
339Kernel Development to Patch the 337":ref:`kernel-dev/kernel-dev-common:using traditional kernel development to patch the kernel`"
340Kernel <#using-traditional-kernel-development-to-patch-the-kernel>`__"
341sections for detailed example that modifies the kernel. 338sections for detailed example that modifies the kernel.
342 339
343Determining Hardware and Non-Hardware Features for the Kernel Configuration Audit Phase 340Determining Hardware and Non-Hardware Features for the Kernel Configuration Audit Phase
@@ -346,8 +343,8 @@ Determining Hardware and Non-Hardware Features for the Kernel Configuration Audi
346This section describes part of the kernel configuration audit phase that 343This section describes part of the kernel configuration audit phase that
347most developers can ignore. For general information on kernel 344most developers can ignore. For general information on kernel
348configuration including ``menuconfig``, ``defconfig`` files, and 345configuration including ``menuconfig``, ``defconfig`` files, and
349configuration fragments, see the "`Configuring the 346configuration fragments, see the
350Kernel <#configuring-the-kernel>`__" section. 347":ref:`kernel-dev/kernel-dev-common:configuring the kernel`" section.
351 348
352During this part of the audit phase, the contents of the final 349During this part of the audit phase, the contents of the final
353``.config`` file are compared against the fragments specified by the 350``.config`` file are compared against the fragments specified by the
@@ -366,23 +363,27 @@ To determine whether or not a given option is "hardware" or
366files that classify individual or groups of options as either hardware 363files that classify individual or groups of options as either hardware
367or non-hardware. To better show this, consider a situation where the 364or non-hardware. To better show this, consider a situation where the
368``yocto-kernel-cache`` contains the following files: 365``yocto-kernel-cache`` contains the following files:
369yocto-kernel-cache/features/drm-psb/hardware.cfg 366::
370yocto-kernel-cache/features/kgdb/hardware.cfg 367
371yocto-kernel-cache/ktypes/base/hardware.cfg 368 yocto-kernel-cache/features/drm-psb/hardware.cfg
372yocto-kernel-cache/bsp/mti-malta32/hardware.cfg 369 yocto-kernel-cache/features/kgdb/hardware.cfg
373yocto-kernel-cache/bsp/qemu-ppc32/hardware.cfg 370 yocto-kernel-cache/ktypes/base/hardware.cfg
374yocto-kernel-cache/bsp/qemuarma9/hardware.cfg 371 yocto-kernel-cache/bsp/mti-malta32/hardware.cfg
375yocto-kernel-cache/bsp/mti-malta64/hardware.cfg 372 yocto-kernel-cache/bsp/qemu-ppc32/hardware.cfg
376yocto-kernel-cache/bsp/arm-versatile-926ejs/hardware.cfg 373 yocto-kernel-cache/bsp/qemuarma9/hardware.cfg
377yocto-kernel-cache/bsp/common-pc/hardware.cfg 374 yocto-kernel-cache/bsp/mti-malta64/hardware.cfg
378yocto-kernel-cache/bsp/common-pc-64/hardware.cfg 375 yocto-kernel-cache/bsp/arm-versatile-926ejs/hardware.cfg
379yocto-kernel-cache/features/rfkill/non-hardware.cfg 376 yocto-kernel-cache/bsp/common-pc/hardware.cfg
380yocto-kernel-cache/ktypes/base/non-hardware.cfg 377 yocto-kernel-cache/bsp/common-pc-64/hardware.cfg
381yocto-kernel-cache/features/aufs/non-hardware.kcf 378 yocto-kernel-cache/features/rfkill/non-hardware.cfg
382yocto-kernel-cache/features/ocf/non-hardware.kcf 379 yocto-kernel-cache/ktypes/base/non-hardware.cfg
383yocto-kernel-cache/ktypes/base/non-hardware.kcf 380 yocto-kernel-cache/features/aufs/non-hardware.kcf
384yocto-kernel-cache/ktypes/base/hardware.kcf 381 yocto-kernel-cache/features/ocf/non-hardware.kcf
385yocto-kernel-cache/bsp/qemu-ppc32/hardware.kcf The following list 382 yocto-kernel-cache/ktypes/base/non-hardware.kcf
383 yocto-kernel-cache/ktypes/base/hardware.kcf
384 yocto-kernel-cache/bsp/qemu-ppc32/hardware.kcf
385
386The following list
386provides explanations for the various files: 387provides explanations for the various files:
387 388
388- ``hardware.kcf``: Specifies a list of kernel Kconfig files that 389- ``hardware.kcf``: Specifies a list of kernel Kconfig files that
@@ -402,10 +403,18 @@ provides explanations for the various files:
402 (i.e. ``hardware.kcf`` or ``non-hardware.kcf``). 403 (i.e. ``hardware.kcf`` or ``non-hardware.kcf``).
403 404
404Here is a specific example using the 405Here is a specific example using the
405``kernel-cache/bsp/mti-malta32/hardware.cfg``: CONFIG_SERIAL_8250 406``kernel-cache/bsp/mti-malta32/hardware.cfg``:
406CONFIG_SERIAL_8250_CONSOLE CONFIG_SERIAL_8250_NR_UARTS 407::
407CONFIG_SERIAL_8250_PCI CONFIG_SERIAL_CORE CONFIG_SERIAL_CORE_CONSOLE 408
408CONFIG_VGA_ARB The kernel configuration audit automatically detects 409 CONFIG_SERIAL_8250
410 CONFIG_SERIAL_8250_CONSOLE
411 CONFIG_SERIAL_8250_NR_UARTS
412 CONFIG_SERIAL_8250_PCI
413 CONFIG_SERIAL_CORE
414 CONFIG_SERIAL_CORE_CONSOLE
415 CONFIG_VGA_ARB
416
417The kernel configuration audit automatically detects
409these files (hence the names must be exactly the ones discussed here), 418these files (hence the names must be exactly the ones discussed here),
410and uses them as inputs when generating warnings about the final 419and uses them as inputs when generating warnings about the final
411``.config`` file. 420``.config`` file.