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/dev-manual-model.xml | |
| 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/dev-manual-model.xml')
| -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> |
