summaryrefslogtreecommitdiffstats
path: root/documentation/dev-manual
diff options
context:
space:
mode:
authorScott Rifenbark <scott.m.rifenbark@intel.com>2011-10-04 06:54:04 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-10-04 23:12:07 +0100
commitb9a732d4c7d20d218db22e6c66ecc38efe193f77 (patch)
tree7dd935d68d2a9c0f7c42ed4303ae8299e9015a28 /documentation/dev-manual
parentbbd9bbe5fe4c76a8adeb5ab01538f0fef3c2f3bd (diff)
downloadpoky-b9a732d4c7d20d218db22e6c66ecc38efe193f77.tar.gz
documentation/dev-manual/dev-manual-kernel-appendix.xml: general updates
I made a pass through the book to clean up all areas in preparation to running the examples again. Most changes were punctuation, manual section reference formats, and wordings. (From yocto-docs rev: 0d054f79c82ddc204938dea187312d1a80d0a2e1) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/dev-manual')
-rw-r--r--documentation/dev-manual/dev-manual-kernel-appendix.xml148
1 files changed, 71 insertions, 77 deletions
diff --git a/documentation/dev-manual/dev-manual-kernel-appendix.xml b/documentation/dev-manual/dev-manual-kernel-appendix.xml
index 2fb761a7fb..b6f8e39fe6 100644
--- a/documentation/dev-manual/dev-manual-kernel-appendix.xml
+++ b/documentation/dev-manual/dev-manual-kernel-appendix.xml
@@ -47,7 +47,7 @@
47 <listitem><para>The <filename>poky-extras</filename> Git repository placed 47 <listitem><para>The <filename>poky-extras</filename> Git repository placed
48 within the local Yocto Project files Git repository</para></listitem> 48 within the local Yocto Project files Git repository</para></listitem>
49 <listitem><para>A bare clone of the Linux Yocto kernel upstream Git 49 <listitem><para>A bare clone of the Linux Yocto kernel upstream Git
50 repository that you want to modify 50 repository to which you want to push your modifications.
51 </para></listitem> 51 </para></listitem>
52 <listitem><para>A copy of that bare clone in which you make your source 52 <listitem><para>A copy of that bare clone in which you make your source
53 modifcations</para></listitem> 53 modifcations</para></listitem>
@@ -56,9 +56,10 @@
56 56
57 <para> 57 <para>
58 The following figure summarizes these four areas. 58 The following figure summarizes these four areas.
59 Within each rectangular that represents a data structure an URL appears at the 59 Within each rectangular that represents a data structure, a
60 host development directory pathname appears at the
60 lower left-hand corner of the box. 61 lower left-hand corner of the box.
61 These URLs are the locations used in this example. 62 These pathnames are the locations used in this example.
62 The figure also provides key statements and commands used during the kernel 63 The figure also provides key statements and commands used during the kernel
63 modification process: 64 modification process:
64 </para> 65 </para>
@@ -74,13 +75,12 @@
74 <listitem><para><emphasis>Local Yocto Project Files Git Repository:</emphasis> 75 <listitem><para><emphasis>Local Yocto Project Files Git Repository:</emphasis>
75 This area contains all the metadata that supports building images in the 76 This area contains all the metadata that supports building images in the
76 Yocto Project build environment - the local Yocto Project files. 77 Yocto Project build environment - the local Yocto Project files.
77 The Local Yocto Project files Git repository also contains the build directory 78 The local Yocto Project files Git repository also contains the build directory
78 and a configuration directory that let you control the build. 79 and a configuration directory that let you control the build.
79 Note also that in this example the repository also contains the 80 Note also that in this example, the repository also contains the
80 <filename>poky-extras</filename> Git repository.</para> 81 <filename>poky-extras</filename> Git repository.</para>
81 <para>See the bulleted item 82 <para>See the bulleted item
82 <link linkend='local-yp-release'>Yocto Project Release</link> in 83 "<link linkend='local-yp-release'>Yocto Project Release</link>"
83 <xref linkend='getting-setup'>Getting Setup</xref> earlier in this manual
84 for information on how to get these files.</para></listitem> 84 for information on how to get these files.</para></listitem>
85 <listitem><para><emphasis><filename>poky-extras</filename> Git Repository:</emphasis> 85 <listitem><para><emphasis><filename>poky-extras</filename> Git Repository:</emphasis>
86 This area contains the <filename>meta-kernel-dev</filename> layer, 86 This area contains the <filename>meta-kernel-dev</filename> layer,
@@ -91,9 +91,8 @@
91 (or really any) kernel recipes that faciliate the creation and development 91 (or really any) kernel recipes that faciliate the creation and development
92 of kernel features, BSPs or configurations.</para> 92 of kernel features, BSPs or configurations.</para>
93 <para>See the bulleted item 93 <para>See the bulleted item
94 <link linkend='poky-extras-repo'>The 94 "<link linkend='poky-extras-repo'>The
95 <filename>poky-extras</filename> Git Repository</link> in 95 <filename>poky-extras</filename> Git Repository</link>"
96 <xref linkend='getting-setup'>Getting Setup</xref> earlier in this manual
97 for information on how to get these files.</para></listitem> 96 for information on how to get these files.</para></listitem>
98 <listitem><para><emphasis>Bare Clone of the Linux Yocto kernel:</emphasis> 97 <listitem><para><emphasis>Bare Clone of the Linux Yocto kernel:</emphasis>
99 This bare Git repository tracks the upstream Git repository of the Linux 98 This bare Git repository tracks the upstream Git repository of the Linux
@@ -105,8 +104,7 @@
105 <filename>poky-extras</filename> repository points to the bare clone 104 <filename>poky-extras</filename> repository points to the bare clone
106 so that the build process can locate the locally changed source files.</para> 105 so that the build process can locate the locally changed source files.</para>
107 <para>See the bulleted item 106 <para>See the bulleted item
108 <link linkend='local-kernel-files'>Linux Yocto Kernel</link> in 107 "<link linkend='local-kernel-files'>Linux Yocto Kernel</link>"
109 <xref linkend='getting-setup'>Getting Setup</xref> earlier in this manual
110 for information on how to set up the bare clone. 108 for information on how to set up the bare clone.
111 </para></listitem> 109 </para></listitem>
112 <listitem><para><emphasis>Copy of the Linux Yocto Kernel Bare Clone:</emphasis> 110 <listitem><para><emphasis>Copy of the Linux Yocto Kernel Bare Clone:</emphasis>
@@ -114,13 +112,13 @@
114 Any changes you make to files in this location need to ultimately be pushed 112 Any changes you make to files in this location need to ultimately be pushed
115 to the bare clone using the <filename>git push</filename> command.</para> 113 to the bare clone using the <filename>git push</filename> command.</para>
116 <para>See the bulleted item 114 <para>See the bulleted item
117 "<link linkend='local-kernel-files'>Linux Yocto Kernel</link>" earlier in this manual 115 "<link linkend='local-kernel-files'>Linux Yocto Kernel</link>"
118 for information on how to set up the bare clone. 116 for information on how to set up the bare clone.
119 <note>Typically, Git workflows follow a scheme where changes made to a local area 117 <note>Typically, Git workflows follow a scheme where changes made to a local area
120 are pulled into a Git repository. 118 are pulled into a Git repository.
121 However, because the <filename>git pull</filename> command does not work 119 However, because the <filename>git pull</filename> command does not work
122 with bare clones, this workflow pushes changes to the 120 with bare clones, this workflow pushes changes to the
123 repository even though other more complicated methods do exist that 121 repository even though you could use other more complicated methods to
124 get changes into the bare clone.</note> 122 get changes into the bare clone.</note>
125 </para></listitem> 123 </para></listitem>
126 </itemizedlist> 124 </itemizedlist>
@@ -136,8 +134,7 @@
136 This example uses <filename>poky</filename> as the root directory of the 134 This example uses <filename>poky</filename> as the root directory of the
137 local Yocto Project files Git repository. 135 local Yocto Project files Git repository.
138 See the bulleted item 136 See the bulleted item
139 <link linkend='local-yp-release'>Yocto Project Release</link> in 137 "<link linkend='local-yp-release'>Yocto Project Release</link>"
140 <xref linkend='getting-setup'>Getting Setup</xref> earlier in this manual
141 for information on how to get these files. 138 for information on how to get these files.
142 </para> 139 </para>
143 140
@@ -151,14 +148,14 @@
151 $ git branch -a 148 $ git branch -a
152 $ git tag -l 149 $ git tag -l
153 </literallayout> 150 </literallayout>
154 This example uses the Yocto Project 1.1_M3 Release, 151 This example uses the Yocto Project 1.1 Release code named "edison",
155 which maps to the <filename>1.1_M3</filename> branch in the repository. 152 which maps to the <filename>edison</filename> branch in the repository.
156 The following commands create and checkout the local <filename>1.1_M3</filename> 153 The following commands create and checkout the local <filename>edison</filename>
157 branch: 154 branch:
158 <literallayout class='monospaced'> 155 <literallayout class='monospaced'>
159 $ git checkout -b 1.1_M3 origin/1.1_M3 156 $ git checkout -b edison origin/edison
160 Branch 1.1_M3 set up to track remote branch 1.1_M3 from origin. 157 Branch edison set up to track remote branch edison from origin.
161 Switched to a new branch '1.1_M3' 158 Switched to a new branch 'edison'
162 </literallayout> 159 </literallayout>
163 </para> 160 </para>
164 </section> 161 </section>
@@ -170,9 +167,8 @@
170 This example places the <filename>poky-extras</filename> Git repository inside 167 This example places the <filename>poky-extras</filename> Git repository inside
171 of <filename>poky</filename>. 168 of <filename>poky</filename>.
172 See the bulleted item 169 See the bulleted item
173 <link linkend='poky-extras-repo'>The 170 "<link linkend='poky-extras-repo'>The
174 <filename>poky-extras</filename> Git Repository</link> in 171 <filename>poky-extras</filename> Git Repository</link>"
175 <xref linkend='getting-setup'>Getting Setup</xref> earlier in this manual
176 for information on how to get the <filename>poky-extras</filename> repository. 172 for information on how to get the <filename>poky-extras</filename> repository.
177 </para> 173 </para>
178 </section> 174 </section>
@@ -185,8 +181,7 @@
185 Thus, you need to create a bare clone of that kernel and then make a copy of the 181 Thus, you need to create a bare clone of that kernel and then make a copy of the
186 bare clone. 182 bare clone.
187 See the bulleted item 183 See the bulleted item
188 <link linkend='local-kernel-files'>Linux Yocto Kernel</link> in 184 "<link linkend='local-kernel-files'>Linux Yocto Kernel</link>"
189 <xref linkend='getting-setup'>Getting Setup</xref> earlier in this manual
190 for information on how to do that. 185 for information on how to do that.
191 </para> 186 </para>
192 187
@@ -230,7 +225,9 @@
230 of cores your machine supports and set <filename>PARALLEL_MAKE</filename> to one and 225 of cores your machine supports and set <filename>PARALLEL_MAKE</filename> to one and
231 a half times the number of cores your machine supports. 226 a half times the number of cores your machine supports.
232 </note> 227 </note>
233 The following commands build the default <filename>qemux86</filename> image: 228 The following two commands build the default <filename>qemux86</filename> image and
229 <filename>source</filename> build environment setup script.
230 If necessary, the script creates the build directory:
234 <literallayout class='monospaced'> 231 <literallayout class='monospaced'>
235 $ cd ~/poky 232 $ cd ~/poky
236 $ source oe-init-build-env 233 $ source oe-init-build-env
@@ -248,15 +245,14 @@
248 meta-ide-support 245 meta-ide-support
249 246
250 You can also run generated qemu images with a command like 'runqemu qemux86' 247 You can also run generated qemu images with a command like 'runqemu qemux86'
251
252 $ bitbake -k core-image-minimal
253 </literallayout> 248 </literallayout>
254 </para> 249 </para>
255 250
256 <para> 251 <para>
257 The <filename>source</filename> command sets up the build environment and, 252 The following <filename>bitbake</filename> command starts the build:
258 if necessary, creates the build directory. 253 <literallayout class='monospaced'>
259 The following <filename>bitbake</filename> command starts the build. 254 $ bitbake -k core-image-minimal
255 </literallayout>
260 <note>Be sure to check the settings in the <filename>local.conf</filename> 256 <note>Be sure to check the settings in the <filename>local.conf</filename>
261 before starting the build.</note> 257 before starting the build.</note>
262 </para> 258 </para>
@@ -380,15 +376,16 @@
380 change the target architecture of the machine you are building or you move 376 change the target architecture of the machine you are building or you move
381 the bare clone, copy of the clone, or the <filename>poky-extras</filename> repository: 377 the bare clone, copy of the clone, or the <filename>poky-extras</filename> repository:
382 <itemizedlist> 378 <itemizedlist>
383 <listitem><para><emphasis>Build for the Correct Target Architecture</emphasis> - The 379 <listitem><para><emphasis>Build for the Correct Target Architecture:</emphasis> The
384 <filename>local.conf</filename> file in the build directory defines the build's 380 <filename>local.conf</filename> file in the build directory defines the build's
385 target architecture. 381 target architecture.
386 By default, <filename>MACHINE</filename> is set to 382 By default, <filename>MACHINE</filename> is set to
387 <filename>qemux86</filename>, which specifies a 32-bit Intel Architecture 383 <filename>qemux86</filename>, which specifies a 32-bit
384 <trademark class='registered'>Intel</trademark> Architecture
388 target machine suitable for the QEMU emulator. 385 target machine suitable for the QEMU emulator.
389 In this example, <filename>MACHINE</filename> is correctly configured. 386 In this example, <filename>MACHINE</filename> is correctly configured.
390 </para></listitem> 387 </para></listitem>
391 <listitem><para><emphasis>Optimize Build Time</emphasis> - Also in the 388 <listitem><para><emphasis>Optimize Build Time:</emphasis> Also in the
392 <filename>local.conf</filename> file are two variables that can speed your 389 <filename>local.conf</filename> file are two variables that can speed your
393 build time if your host supports multi-core and multi-thread capabilities: 390 build time if your host supports multi-core and multi-thread capabilities:
394 <filename>BB_NUMBER_THREADS</filename> and <filename>PARALLEL_MAKE</filename>. 391 <filename>BB_NUMBER_THREADS</filename> and <filename>PARALLEL_MAKE</filename>.
@@ -397,7 +394,7 @@
397 cores and setting <filename>PARALLEL_MAKE</filename> to one and a half times the 394 cores and setting <filename>PARALLEL_MAKE</filename> to one and a half times the
398 number of cores.</para></listitem> 395 number of cores.</para></listitem>
399 <listitem><para><emphasis>Identify Your <filename>meta-kernel-dev</filename> 396 <listitem><para><emphasis>Identify Your <filename>meta-kernel-dev</filename>
400 Layer</emphasis> - The <filename>BBLAYERS</filename> variable in the 397 Layer:</emphasis> The <filename>BBLAYERS</filename> variable in the
401 <filename>bblayers.conf</filename> file found in the 398 <filename>bblayers.conf</filename> file found in the
402 <filename>poky/build/conf</filename> directory needs to have the path to your local 399 <filename>poky/build/conf</filename> directory needs to have the path to your local
403 <filename>meta-kernel-dev</filename> layer. 400 <filename>meta-kernel-dev</filename> layer.
@@ -414,7 +411,7 @@
414 /home/scottrif/poky/poky-extras/meta-kernel-dev \ 411 /home/scottrif/poky/poky-extras/meta-kernel-dev \
415 " 412 "
416 </literallayout></para></listitem> 413 </literallayout></para></listitem>
417 <listitem><para><emphasis>Identify Your Source Files</emphasis> - In the 414 <listitem><para><emphasis>Identify Your Source Files:</emphasis> In the
418 <filename>linux-yocto_3.0.bbappend</filename> file located in the 415 <filename>linux-yocto_3.0.bbappend</filename> file located in the
419 <filename>poky-extras/meta-kernel-dev/recipes-kernel/linux</filename> 416 <filename>poky-extras/meta-kernel-dev/recipes-kernel/linux</filename>
420 directory, you need to identify the location of the 417 directory, you need to identify the location of the
@@ -427,7 +424,7 @@
427 <literallayout class='monospaced'> 424 <literallayout class='monospaced'>
428 KSRC_linux_yocto ?= /home/scottrif/linux-yocto-3.0.git 425 KSRC_linux_yocto ?= /home/scottrif/linux-yocto-3.0.git
429 </literallayout></para></listitem> 426 </literallayout></para></listitem>
430 <listitem><para><emphasis>Specify the Kernel Machine</emphasis> - Also in the 427 <listitem><para><emphasis>Specify the Kernel Machine:</emphasis> Also in the
431 <filename>linux-yocto_3.0.bbappend</filename> file, you need to specify 428 <filename>linux-yocto_3.0.bbappend</filename> file, you need to specify
432 the kernel machine with the following statement: 429 the kernel machine with the following statement:
433 <literallayout class='monospaced'> 430 <literallayout class='monospaced'>
@@ -457,14 +454,14 @@
457 <orderedlist> 454 <orderedlist>
458 <listitem><para>Your environment should be set up since you previously sourced 455 <listitem><para>Your environment should be set up since you previously sourced
459 the <filename>oe-init-build-env</filename> script. 456 the <filename>oe-init-build-env</filename> script.
460 If it isn't, source the script again from <filename>poky</filename> 457 If it isn't, source the script again from <filename>poky</filename>.
461 </para></listitem> 458 </para></listitem>
462 <listitem><para>Be sure old images are cleaned out by running the 459 <listitem><para>Be sure old images are cleaned out by running the
463 <filename>cleanall</filename> BitBake task as follows: 460 <filename>cleanall</filename> BitBake task as follows:
464 <literallayout class='monospaced'> 461 <literallayout class='monospaced'>
465 $ bitbake -c cleanall linux-yocto 462 $ bitbake -c cleanall linux-yocto
466 </literallayout></para> 463 </literallayout></para>
467 <para><note>Never remove by hand any files from the <filename>tmp/deploy</filename> 464 <para><note>Never remove any files by hand from the <filename>tmp/deploy</filename>
468 directory insided the local Yocto Project files build directory. 465 directory insided the local Yocto Project files build directory.
469 Always use the BitBake <filename>cleanall</filename> task to clear 466 Always use the BitBake <filename>cleanall</filename> task to clear
470 out previous builds.</note></para></listitem> 467 out previous builds.</note></para></listitem>
@@ -472,14 +469,12 @@
472 <literallayout class='monospaced'> 469 <literallayout class='monospaced'>
473 $ bitbake -k core-image-minimal 470 $ bitbake -k core-image-minimal
474 </literallayout></para></listitem> 471 </literallayout></para></listitem>
475 </orderedlist> 472 <listitem><para>Finally, boot the modified image in the QEMU emulator
476 </para> 473 using this command:
477 474 <literallayout class='monospaced'>
478 <para>
479 Finally, boot the modified image in the QEMU emulator using this command:
480 <literallayout class='monospaced'>
481 $ runqemu qemux86 475 $ runqemu qemux86
482 </literallayout> 476 </literallayout></para></listitem>
477 </orderedlist>
483 </para> 478 </para>
484 479
485 <para> 480 <para>
@@ -501,8 +496,8 @@
501 <title>Changing the Kernel Configuration</title> 496 <title>Changing the Kernel Configuration</title>
502 497
503 <para> 498 <para>
504 This example changes the default behavior (off) of the Symmetric Multi-processing Support 499 This example changes the default behavior, which is "off", of the Symmetric
505 (<filename>CONFIG_SMP</filename>) to on. 500 Multi-processing Support (<filename>CONFIG_SMP</filename>) to "on".
506 It is a simple example that demonstrates how to reconfigure the kernel. 501 It is a simple example that demonstrates how to reconfigure the kernel.
507 </para> 502 </para>
508 503
@@ -511,31 +506,29 @@
511 506
512 <para> 507 <para>
513 If you took the time to work through the example that modifies the kernel source code 508 If you took the time to work through the example that modifies the kernel source code
514 in <xref linkend='modifying-the-kernel-source-code'>Modifying the Kernel Source 509 in "<link linkend='modifying-the-kernel-source-code'>Modifying the Kernel Source
515 Code</xref> you are set up to quickly work through this example. 510 Code</link>" you are already set up to quickly work through this example.
516 If not, then work through the following list to prepare: 511 If not, then work through the following list to prepare:
517 <itemizedlist> 512 <itemizedlist>
518 <listitem><para><emphasis>Understand the development environment:</emphasis> 513 <listitem><para><emphasis>Understand the development environment:</emphasis>
519 See <xref linkend='understanding-the-files-you-need'> 514 See "<link linkend='understanding-the-files-you-need'>Understanding
520 Understanding the Files You Need</xref> for information.</para></listitem> 515 the Files You Need</link>" for information.</para></listitem>
521 <listitem><para><emphasis>Set up the local Yocto Project files Git 516 <listitem><para><emphasis>Set up the local Yocto Project files Git
522 repository:</emphasis> 517 repository:</emphasis>
523 See <xref linkend='setting-up-the-local-yocto-project-files-git-repository'> 518 See "<link linkend='setting-up-the-local-yocto-project-files-git-repository'>Setting
524 Setting Up the Local Yocto Project Files Git Repository</xref> for 519 Up the Local Yocto Project Files Git Repository</link>" for
525 information.</para></listitem> 520 information.</para></listitem>
526 <listitem><para><emphasis>Set up the <filename>poky-extras</filename> Git 521 <listitem><para><emphasis>Set up the <filename>poky-extras</filename> Git
527 repository:</emphasis> 522 repository:</emphasis>
528 See <xref linkend='setting-up-the-poky-extras-git-repository'> 523 See "<link linkend='setting-up-the-poky-extras-git-repository'>Setting
529 Setting Up <filename>poky-extras</filename> Git repository</xref> for 524 Up <filename>poky-extras</filename> Git repository</link>" for
530 information.</para></listitem> 525 information.</para></listitem>
531 <listitem><para><emphasis>Set up the the bare clone and its copy:</emphasis> 526 <listitem><para><emphasis>Set up the the bare clone and its copy:</emphasis>
532 See <xref linkend='setting-up-the-bare-clone-and-its-copy'> 527 See "<link linkend='setting-up-the-bare-clone-and-its-copy'>Setting Up the
533 Setting Up the Bare Clone and its Copy</xref> for information. 528 Bare Clone and its Copy</link>" for information.</para></listitem>
534 </para></listitem>
535 <listitem><para><emphasis>Build the default QEMU kernel image:</emphasis> 529 <listitem><para><emphasis>Build the default QEMU kernel image:</emphasis>
536 See <xref linkend='building-and-booting-the-default-qemu-kernel-image'> 530 See "<link linkend='building-and-booting-the-default-qemu-kernel-image'>Building
537 Building and Booting the Default QEMU Kernel image</xref> 531 and Booting the Default QEMU Kernel image</link>" for information.
538 for information.
539 Do not boot the image in the QEMU emulator at this point.</para></listitem> 532 Do not boot the image in the QEMU emulator at this point.</para></listitem>
540 </itemizedlist> 533 </itemizedlist>
541 </para> 534 </para>
@@ -546,7 +539,7 @@
546 539
547 <para> 540 <para>
548 By default, <filename>CONFIG_SMP</filename> supports single processor machines. 541 By default, <filename>CONFIG_SMP</filename> supports single processor machines.
549 To see this default setting from within the QEMU emulator boot your image using 542 To see this default setting from within the QEMU emulator, boot your image using
550 the emulator as follows: 543 the emulator as follows:
551 <literallayout class='monospaced'> 544 <literallayout class='monospaced'>
552 $ runqemu qemux86 545 $ runqemu qemux86
@@ -572,7 +565,7 @@
572 <para> 565 <para>
573 The <filename>menuconfig</filename> tool provides an interactive method with which 566 The <filename>menuconfig</filename> tool provides an interactive method with which
574 to set kernel configurations. 567 to set kernel configurations.
575 You need to run <filename>menuconfig</filename> inside the BitBake environment. 568 You need to run <filename>menuconfig</filename> inside the Yocto BitBake environment.
576 Thus, the environment must be set up using the <filename>oe-init-build-env</filename> 569 Thus, the environment must be set up using the <filename>oe-init-build-env</filename>
577 script found in the Yocto Project files Git repository build directory. 570 script found in the Yocto Project files Git repository build directory.
578 If you have not sourced this script do so with the following commands: 571 If you have not sourced this script do so with the following commands:
@@ -585,7 +578,7 @@
585 <para> 578 <para>
586 After setting up the environment to run <filename>menuconfig</filename>, you are ready 579 After setting up the environment to run <filename>menuconfig</filename>, you are ready
587 to use the tool to interactively change the kernel configuration. 580 to use the tool to interactively change the kernel configuration.
588 In this example we are basing our changes on the <filename>linux-yocto-3.0</filename> 581 In this example, we are basing our changes on the <filename>linux-yocto-3.0</filename>
589 kernel. 582 kernel.
590 The Yocto Project build environment recognizes this kernel as 583 The Yocto Project build environment recognizes this kernel as
591 <filename>linux-yocto</filename>. 584 <filename>linux-yocto</filename>.
@@ -605,14 +598,15 @@
605 </para> 598 </para>
606 599
607 <para> 600 <para>
608 Once you save the selection the <filename>.config</filename> configuration file 601 Once you save the selection, the <filename>.config</filename> configuration file
609 is updated. 602 is updated.
610 This is the file that the build system uses to configure the Linux Yocto kernel 603 This is the file that the build system uses to configure the Linux Yocto kernel
611 when it is built. 604 when it is built.
612 You can find and examine this file in the Yocto Project files Git repository in 605 You can find and examine this file in the Yocto Project files Git repository in
613 the build directory. 606 the build directory.
614 This example uses the following. 607 This example uses the following.
615 Note that this example directory is arificially split in order to make it more 608 Note that this example directory is artificially split and many of the characters
609 in the actually filename are omitted in order to make it more
616 readable: 610 readable:
617 <literallayout class='monospaced'> 611 <literallayout class='monospaced'>
618 ~/poky/build/tmp/work/qemux86-poky-linux/linux-yocto-2.6.37+git1+84f... 612 ~/poky/build/tmp/work/qemux86-poky-linux/linux-yocto-2.6.37+git1+84f...
@@ -621,7 +615,7 @@
621 </para> 615 </para>
622 616
623 <para> 617 <para>
624 Within the <filename>.config</filename> you can see the following setting: 618 Within the <filename>.config</filename> file, you can see the following setting:
625 <literallayout class='monospaced'> 619 <literallayout class='monospaced'>
626 CONFIG_SMP=y 620 CONFIG_SMP=y
627 </literallayout> 621 </literallayout>
@@ -630,13 +624,12 @@
630 <para> 624 <para>
631 A good method to isolate changed configurations is to use a combination of the 625 A good method to isolate changed configurations is to use a combination of the
632 <filename>menuconfig</filename> tool and simple shell commands. 626 <filename>menuconfig</filename> tool and simple shell commands.
633 Before changing configurations with <filename>menuconfig</filename> simply rename 627 Before changing configurations with <filename>menuconfig</filename>, simply rename
634 the default <filename>.config</filename>, use <filename>menuconfig</filename> to make 628 the default <filename>.config</filename>, use <filename>menuconfig</filename> to make
635 as many changes an you want and save them, then compare the renamed configuration 629 as many changes an you want and save them, then compare the renamed configuration
636 file against the newly created file. 630 file against the newly created file.
637 You can use the resulting differences as your base to create configuration fragments 631 You can use the resulting differences as your base to create configuration fragments
638 to permanently save in your kernel layer. 632 to permanently save in your kernel layer.
639 For an example of this procedure, see [WRITER'S NOTE: need forwarding link to section].
640 </para> 633 </para>
641 </section> 634 </section>
642 635
@@ -644,7 +637,7 @@
644 <title>Recompiling the Kernel and Testing the New Configuration</title> 637 <title>Recompiling the Kernel and Testing the New Configuration</title>
645 638
646 <para> 639 <para>
647 At this point you are ready to recompile your kernel image with 640 At this point, you are ready to recompile your kernel image with
648 the new setting in effect using the BitBake commands below: 641 the new setting in effect using the BitBake commands below:
649 <literallayout class='monospaced'> 642 <literallayout class='monospaced'>
650 $ bitbake linux-yocto -c compile -f 643 $ bitbake linux-yocto -c compile -f
@@ -671,7 +664,7 @@
671 </para> 664 </para>
672 665
673 <para> 666 <para>
674 From the output you can see that you have successfully reconfigured the kernel. 667 From the output, you can see that you have successfully reconfigured the kernel.
675 </para> 668 </para>
676 </section> 669 </section>
677 </section> 670 </section>
@@ -680,13 +673,14 @@
680 <title>Adding Kernel Recipes</title> 673 <title>Adding Kernel Recipes</title>
681 674
682 <para> 675 <para>
683 This section presents an example that adds kernel recipes, which provide 676 A future release of this manual will present an example that adds kernel recipes, which provide
684 new functionality to the kernel. 677 new functionality to the kernel.
685 </para> 678 </para>
686 679
687 <para> 680 <para>
688 [Example to be supplied] 681 <imagedata fileref="figures/wip.png"
689 </para> 682 width="2in" depth="3in" align="center" scalefit="1" />
683 </para>
690 </section> 684 </section>
691 685
692 686