summaryrefslogtreecommitdiffstats
path: root/documentation/dev-manual
diff options
context:
space:
mode:
authorScott Rifenbark <scott.m.rifenbark@intel.com>2011-08-02 07:48:52 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-08-15 15:26:56 +0100
commit898e161009333cf12f05ae8c9739af210ba25577 (patch)
tree78cf79dfff93e1c31527d087b07645941a9998a0 /documentation/dev-manual
parent12afc638883f116ee923353d56ae12d72258681d (diff)
downloadpoky-898e161009333cf12f05ae8c9739af210ba25577.tar.gz
documentation/dev-manual/dev-manual-model.xml: Edit pass over the kernel flow.
I made another edit pass through the high-level kernel modification flow list. this is the list I will work from while trying to actually do the task. (From yocto-docs rev: ac9b2d8961abec9016c6c1e10222d0af36c4be4c) 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-model.xml81
1 files changed, 40 insertions, 41 deletions
diff --git a/documentation/dev-manual/dev-manual-model.xml b/documentation/dev-manual/dev-manual-model.xml
index 6324efa11f..016a0f104f 100644
--- a/documentation/dev-manual/dev-manual-model.xml
+++ b/documentation/dev-manual/dev-manual-model.xml
@@ -284,6 +284,26 @@
284 kernel to generate the new kernel image - a source generator if you will. 284 kernel to generate the new kernel image - a source generator if you will.
285 </para> 285 </para>
286 286
287 <para>
288 You can find a web interface to the Yocto Project source repository at
289 <ulink url='http://git.yoctoproject.org/'></ulink>.
290 Within the interface you will see groups of related source code, each of which can
291 be cloned using Git to result in a working Git repository on your local system
292 (referred to as the "local Yocto Project files" in this manual).
293 The Yocto Project supports four types of kernels in its source repositories at
294 <ulink url='http://git.yoctoproject.org/'></ulink>:
295 <itemizedlist>
296 <listitem><para><emphasis><filename>linux-yocto-2.6.34</filename></emphasis> - The
297 stable Linux Yocto kernel that is based on the Linux 2.6.34 release.</para></listitem>
298 <listitem><para><emphasis><filename>linux-yocto-2.6.37</filename></emphasis> - The current
299 Linux Yocto kernel that is based on the Linux 2.6.37 release.</para></listitem>
300 <listitem><para><emphasis><filename>linux-yocto-dev</filename></emphasis> - A development
301 kernel based on the Linux 2.6.39-rc1 release.</para></listitem>
302 <listitem><para><emphasis><filename>linux-2.6</filename></emphasis> - A kernel based on
303 minimal Linux mainline tracking.</para></listitem>
304 </itemizedlist>
305 </para>
306
287 <para> 307 <para>
288 For a complete discussion of the Yocto Project kernel's architcture and its branching strategy, 308 For a complete discussion of the Yocto Project kernel's architcture and its branching strategy,
289 see the <ulink url='http://www.yoctoproject.org/docs/1.1/kernel-manual/kernel-manual.html'> 309 see the <ulink url='http://www.yoctoproject.org/docs/1.1/kernel-manual/kernel-manual.html'>
@@ -303,10 +323,6 @@
303 </para> --> 323 </para> -->
304 324
305 <para> 325 <para>
306 [WRITER'S NOTE: Need new flow illustration here]
307 </para>
308
309 <para>
310 <orderedlist> 326 <orderedlist>
311 <listitem><para><emphasis>Set up your host development system to support 327 <listitem><para><emphasis>Set up your host development system to support
312 development using the Yocto Project</emphasis>: See 328 development using the Yocto Project</emphasis>: See
@@ -317,9 +333,8 @@
317 in the Yocto Project Quick Start for requirements. 333 in the Yocto Project Quick Start for requirements.
318 You will also need a release of Yocto Project installed on the host.</para></listitem> 334 You will also need a release of Yocto Project installed on the host.</para></listitem>
319 <listitem><para><emphasis>Establish a local copy of the Yocto Project files on your 335 <listitem><para><emphasis>Establish a local copy of the Yocto Project files on your
320 system</emphasis>: You need to have the Yocto Project files available on your host system. 336 system</emphasis>: Having the Yocto Project files on your system gives you access to
321 Having the Yocto Project files on your system gives you access to the build 337 the build process and tools you need.
322 process and tools you need.
323 For information on how to get these files, see the bulleted item 338 For information on how to get these files, see the bulleted item
324 <link linkend='local-yp-release'>Yocto Project Release</link> in 339 <link linkend='local-yp-release'>Yocto Project Release</link> in
325 <xref linkend='getting-setup'>Getting Setup</xref> earlier in this manual. 340 <xref linkend='getting-setup'>Getting Setup</xref> earlier in this manual.
@@ -339,30 +354,36 @@
339 all the relevant information for the project that the Yocto Project build 354 all the relevant information for the project that the Yocto Project build
340 system knows about.</para> 355 system knows about.</para>
341 <para></para></listitem> 356 <para></para></listitem>
342 <listitem><para><emphasis>Iteratively make kernel configuration changes 357 <listitem><para><emphasis>Prepare to use the <filename>menuconfig</filename> tool</emphasis>:
358 The tool <filename>menuconfig</filename> used within Bitbake provides an
359 interactive method with which you can configure the kernel.
360 In order to use <filename>menuconfig</filename> you need to first source an environment
361 setup script found in the local <filename>poky</filename> Git repository.
362 The script is named <filename>oe-init-build-env</filename>.</para></listitem>
363 <listitem><para><emphasis>Make kernel configuration changes
343 to your local kernel layer</emphasis>: Use <filename>menuconfig</filename> 364 to your local kernel layer</emphasis>: Use <filename>menuconfig</filename>
344 to enable and disable the configurations to the Linux Yocto kernel. 365 to enable and disable the configurations to the Linux Yocto kernel.
345 Using <filename>menuconfig</filename> allows you to develop and test the 366 Using <filename>menuconfig</filename> allows you to develop and test the
346 configuration changes you are making to the kernel.</para></listitem> 367 configuration changes you are making to the kernel.</para></listitem>
347 <listitem><para><emphasis>Iteratively make kernel recipe changes to your new kernel 368 <listitem><para><emphasis>Make kernel recipe changes to your new kernel
348 layer</emphasis>: The standard layer structure organizes the files you need to edit in 369 layer</emphasis>: The standard layer structure organizes recipe files you
349 <filename>conf</filename> and several <filename>recipes-*</filename> within the 370 need to edit in several <filename>recipes-*</filename> directories within the
350 layer. 371 kernel layer.
351 Recipe changes include altering recipes (<filename>.bb</filename> files), removing 372 Recipe changes include altering recipes (<filename>.bb</filename> files), removing
352 recipes you don't use, and adding new recipes that you need to support your hardware. 373 recipes you don't use, and adding new recipes that you need to support your hardware.
353 </para></listitem> 374 </para></listitem>
354 <listitem><para><emphasis>Prepare for the build</emphasis>: Once you have made all the 375 <listitem><para><emphasis>Prepare for the build</emphasis>: Once you have made all the
355 changes to your kernel layer there remains a few things 376 changes to your kernel layer there remains a few things
356 you need to do for the Yocto Project build system in order for it to create your image. 377 you need to do for the Yocto Project build system in order for it to create your image.
357 You need to get the build environment ready by sourcing an environment setup script 378 If you have not done so you need to get the build environment ready by sourcing
358 and you need to be sure two key configuration files are configured appropriately.</para> 379 the environment setup script described earlier.
380 You also need to be sure two key configuration files are configured appropriately.</para>
359 <para>The entire process for building an image is overviewed in the 381 <para>The entire process for building an image is overviewed in the
360 <ulink url='http://www.yoctoproject.org/docs/1.1/yocto-project-qs/yocto-project-qs.html#building-image'> 382 <ulink url='http://www.yoctoproject.org/docs/1.1/yocto-project-qs/yocto-project-qs.html#building-image'>
361 Building an Image</ulink> section of the Yocto Project Quick Start. 383 Building an Image</ulink> section of the Yocto Project Quick Start.
362 You might want to reference this information.</para></listitem> 384 You might want to reference this information.</para></listitem>
363 <listitem><para><emphasis>Build the image</emphasis>: The Yocto Project uses the BitBake 385 <listitem><para><emphasis>Build the image</emphasis>: The Yocto Project uses the BitBake
364 tool to build images based on the type of image 386 tool to build images based on the type of image you want to create.
365 you want to create.
366 You can find more information on BitBake 387 You can find more information on BitBake
367 <ulink url='http://bitbake.berlios.de/manual/'>here</ulink>.</para> 388 <ulink url='http://bitbake.berlios.de/manual/'>here</ulink>.</para>
368 <para>The build process supports several types of images to satisfy different needs. 389 <para>The build process supports several types of images to satisfy different needs.
@@ -411,40 +432,18 @@
411 image.</para></listitem> 432 image.</para></listitem>
412 </itemizedlist> 433 </itemizedlist>
413 </para></listitem> 434 </para></listitem>
414 <listitem><para><emphasis>Make your configuration and recipe changes available 435 <listitem><para><emphasis>Make your configuration changes available
415 in the kernel layer</emphasis>: Up to this point all the changes to the 436 in the kernel layer</emphasis>: Up to this point all the configuration changes to the
416 kernel have been done and tested iteratively. 437 kernel have been done and tested iteratively.
417 Once they are tested and ready to go you can move them into the kernel layer, 438 Once they are tested and ready to go you can move them into the kernel layer,
418 which allows you to distribute the layer.</para></listitem> 439 which allows you to distribute the layer.</para></listitem>
419 <listitem><para><emphasis>Make your configuration and recipe changes to the 440 <listitem><para><emphasis>Push your configuration and recipe changes upstream to the
420 linux Yocto Git repository (in-tree changes)</emphasis>: If the changes you made 441 linux Yocto Git repository (in-tree changes)</emphasis>: If the changes you made
421 are suited for all Linux Yocto users you might want to push the changes up into 442 are suited for all Linux Yocto users you might want to push the changes up into
422 the Linux Yocto Git repository so that they become part of the kernel tree 443 the Linux Yocto Git repository so that they become part of the kernel tree
423 and available to everyone using the kernel.</para></listitem> 444 and available to everyone using the kernel.</para></listitem>
424 </orderedlist> 445 </orderedlist>
425 </para> 446 </para>
426
427 <para>
428 You can find a web interface to the Yocto Project source repository at
429 <ulink url='http://git.yoctoproject.org/'></ulink>.
430 Within the interface you will see groups of related source code, each of which can
431 be cloned using Git to result in a working Git repository on your local system
432 (referred to as the "local Yocto Project files" in this manual).
433 The Yocto Project supports four types of kernels in its source repositories at
434 <ulink url='http://git.yoctoproject.org/'></ulink>:
435 <itemizedlist>
436 <listitem><para><emphasis><filename>linux-yocto-2.6.34</filename></emphasis> - The
437 stable Linux Yocto kernel that is based on the Linux 2.6.34 release.</para></listitem>
438 <listitem><para><emphasis><filename>linux-yocto-2.6.37</filename></emphasis> - The current
439 Linux Yocto kernel that is based on the Linux 2.6.37 release.</para></listitem>
440 <listitem><para><emphasis><filename>linux-yocto-dev</filename></emphasis> - A development
441 kernel based on the Linux 2.6.39-rc1 release.</para></listitem>
442 <listitem><para><emphasis><filename>linux-2.6</filename></emphasis> - A kernel based on
443 minimal Linux mainline tracking.
444 [WRITER'S NOTE: I don't know which Git repository the user needs to clone to get this
445 repository on their development system.]</para></listitem>
446 </itemizedlist>
447 </para>
448 </section> 447 </section>
449 </section> 448 </section>
450</section> 449</section>