diff options
author | Scott Rifenbark <scott.m.rifenbark@intel.com> | 2011-08-02 07:48:52 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-08-15 15:26:56 +0100 |
commit | 898e161009333cf12f05ae8c9739af210ba25577 (patch) | |
tree | 78cf79dfff93e1c31527d087b07645941a9998a0 /documentation/dev-manual | |
parent | 12afc638883f116ee923353d56ae12d72258681d (diff) | |
download | poky-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.xml | 81 |
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> |