summaryrefslogtreecommitdiffstats
path: root/documentation/kernel-dev/intro.rst
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/kernel-dev/intro.rst')
-rw-r--r--documentation/kernel-dev/intro.rst33
1 files changed, 16 insertions, 17 deletions
diff --git a/documentation/kernel-dev/intro.rst b/documentation/kernel-dev/intro.rst
index f6c9b97137..a663733a1d 100644
--- a/documentation/kernel-dev/intro.rst
+++ b/documentation/kernel-dev/intro.rst
@@ -66,9 +66,9 @@ from the continual kernel integration and testing performed during
66development of the Yocto Project. 66development of the Yocto Project.
67 67
68If, instead, you have a very specific Linux kernel source tree and are 68If, instead, you have a very specific Linux kernel source tree and are
69unable to align with one of the official Yocto Linux kernel recipes, an 69unable to align with one of the official Yocto Linux kernel recipes,
70alternative exists by which you can use the Yocto Project Linux kernel 70you have a way to use the Yocto Project Linux kernel tools with your
71tools with your own kernel sources. 71own kernel sources.
72 72
73The remainder of this manual provides instructions for completing 73The remainder of this manual provides instructions for completing
74specific Linux kernel development tasks. These instructions assume you 74specific Linux kernel development tasks. These instructions assume you
@@ -87,11 +87,10 @@ understand the following documentation:
87 as described in the Yocto Project Application Development and the 87 as described in the Yocto Project Application Development and the
88 Extensible Software Development Kit (eSDK) manual. 88 Extensible Software Development Kit (eSDK) manual.
89 89
90- The ":ref:`dev-manual/common-tasks:understanding and creating layers`" 90- The ":ref:`dev-manual/layers:understanding and creating layers`"
91 section in the Yocto Project Development Tasks Manual. 91 section in the Yocto Project Development Tasks Manual.
92 92
93- The "`Kernel Modification 93- The ":ref:`kernel-dev/intro:kernel modification workflow`" section.
94 Workflow <#kernel-modification-workflow>`__" section.
95 94
96Kernel Modification Workflow 95Kernel Modification Workflow
97============================ 96============================
@@ -107,21 +106,21 @@ modification workflow. The illustration and accompanying list provide
107general information and references for further information. 106general information and references for further information.
108 107
109.. image:: figures/kernel-dev-flow.png 108.. image:: figures/kernel-dev-flow.png
110 :align: center 109 :width: 100%
111 110
1121. *Set up Your Host Development System to Support Development Using the 111#. *Set up Your Host Development System to Support Development Using the
113 Yocto Project*: See the ":doc:`/dev-manual/start`" section in 112 Yocto Project*: See the ":doc:`/dev-manual/start`" section in
114 the Yocto Project Development Tasks Manual for options on how to get 113 the Yocto Project Development Tasks Manual for options on how to get
115 a build host ready to use the Yocto Project. 114 a build host ready to use the Yocto Project.
116 115
1172. *Set Up Your Host Development System for Kernel Development:* It is 116#. *Set Up Your Host Development System for Kernel Development:* It is
118 recommended that you use ``devtool`` and an extensible SDK for kernel 117 recommended that you use ``devtool`` for kernel
119 development. Alternatively, you can use traditional kernel 118 development. Alternatively, you can use traditional kernel
120 development methods with the Yocto Project. Either way, there are 119 development methods with the Yocto Project. Either way, there are
121 steps you need to take to get the development environment ready. 120 steps you need to take to get the development environment ready.
122 121
123 Using ``devtool`` and the eSDK requires that you have a clean build 122 Using ``devtool`` requires that you have a clean build
124 of the image and that you are set up with the appropriate eSDK. For 123 of the image. For
125 more information, see the 124 more information, see the
126 ":ref:`kernel-dev/common:getting ready to develop using \`\`devtool\`\``" 125 ":ref:`kernel-dev/common:getting ready to develop using \`\`devtool\`\``"
127 section. 126 section.
@@ -132,10 +131,10 @@ general information and references for further information.
132 ":ref:`kernel-dev/common:getting ready for traditional kernel development`" 131 ":ref:`kernel-dev/common:getting ready for traditional kernel development`"
133 section. 132 section.
134 133
1353. *Make Changes to the Kernel Source Code if applicable:* Modifying the 134#. *Make Changes to the Kernel Source Code if applicable:* Modifying the
136 kernel does not always mean directly changing source files. However, 135 kernel does not always mean directly changing source files. However,
137 if you have to do this, you make the changes to the files in the 136 if you have to do this, you make the changes to the files in the
138 eSDK's Build Directory if you are using ``devtool``. For more 137 Yocto's :term:`Build Directory` if you are using ``devtool``. For more
139 information, see the 138 information, see the
140 ":ref:`kernel-dev/common:using \`\`devtool\`\` to patch the kernel`" 139 ":ref:`kernel-dev/common:using \`\`devtool\`\` to patch the kernel`"
141 section. 140 section.
@@ -145,7 +144,7 @@ general information and references for further information.
145 ":ref:`kernel-dev/common:using traditional kernel development to patch the kernel`" 144 ":ref:`kernel-dev/common:using traditional kernel development to patch the kernel`"
146 section. 145 section.
147 146
1484. *Make Kernel Configuration Changes if Applicable:* If your situation 147#. *Make Kernel Configuration Changes if Applicable:* If your situation
149 calls for changing the kernel's configuration, you can use 148 calls for changing the kernel's configuration, you can use
150 :ref:`menuconfig <kernel-dev/common:using \`\`menuconfig\`\`>`, 149 :ref:`menuconfig <kernel-dev/common:using \`\`menuconfig\`\`>`,
151 which allows you to 150 which allows you to
@@ -156,7 +155,7 @@ general information and references for further information.
156 .. note:: 155 .. note::
157 156
158 Try to resist the temptation to directly edit an existing ``.config`` 157 Try to resist the temptation to directly edit an existing ``.config``
159 file, which is found in the Build Directory among the source code 158 file, which is found in the :term:`Build Directory` among the source code
160 used for the build. Doing so, can produce unexpected results when 159 used for the build. Doing so, can produce unexpected results when
161 the OpenEmbedded build system regenerates the configuration file. 160 the OpenEmbedded build system regenerates the configuration file.
162 161
@@ -170,7 +169,7 @@ general information and references for further information.
170 Additionally, if you are working in a BSP layer and need to modify 169 Additionally, if you are working in a BSP layer and need to modify
171 the BSP's kernel's configuration, you can use ``menuconfig``. 170 the BSP's kernel's configuration, you can use ``menuconfig``.
172 171
1735. *Rebuild the Kernel Image With Your Changes:* Rebuilding the kernel 172#. *Rebuild the Kernel Image With Your Changes:* Rebuilding the kernel
174 image applies your changes. Depending on your target hardware, you 173 image applies your changes. Depending on your target hardware, you
175 can verify your changes on actual hardware or perhaps QEMU. 174 can verify your changes on actual hardware or perhaps QEMU.
176 175