diff options
Diffstat (limited to 'documentation/kernel-dev/kernel-dev-intro.xml')
| -rw-r--r-- | documentation/kernel-dev/kernel-dev-intro.xml | 101 |
1 files changed, 52 insertions, 49 deletions
diff --git a/documentation/kernel-dev/kernel-dev-intro.xml b/documentation/kernel-dev/kernel-dev-intro.xml index c1cc22bb7a..68fac80ac7 100644 --- a/documentation/kernel-dev/kernel-dev-intro.xml +++ b/documentation/kernel-dev/kernel-dev-intro.xml | |||
| @@ -2,76 +2,79 @@ | |||
| 2 | "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" | 2 | "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" |
| 3 | [<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] > | 3 | [<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] > |
| 4 | 4 | ||
| 5 | <chapter id='kernel-doc-intro'> | 5 | <chapter id='kernel-dev-intro'> |
| 6 | 6 | ||
| 7 | <title>Yocto Project Kernel Architecture and Use Manual</title> | 7 | <title>Yocto Project Kernel Development Manual</title> |
| 8 | 8 | ||
| 9 | <section id='kernel-intro-section'> | 9 | <section id='kernel-dev-introduction'> |
| 10 | <title>Introduction</title> | 10 | <title>Introduction</title> |
| 11 | |||
| 11 | <para> | 12 | <para> |
| 12 | The Yocto Project presents kernels as a fully patched, history-clean Git | 13 | Regardless of how you intend to make use of the Yocto Project, chances are you |
| 13 | repositories. | 14 | are going to need to work with the Linux kernel. The Yocto Project provides a |
| 14 | Each repository represents selected features, board support, | 15 | powerful set of tools for managing Linux kernel sources and configuration data. |
| 15 | and configurations extensively tested by the Yocto Project. | 16 | If you want to make a single configuration change, apply a couple of patches, or |
| 16 | Yocto Project kernels allow the end user to leverage community | 17 | work with your own sources, the Yocto Project has tooling in place to help you |
| 17 | best practices to seamlessly manage the development, build and debug cycles. | 18 | do it. |
| 18 | </para> | 19 | </para> |
| 20 | |||
| 19 | <para> | 21 | <para> |
| 20 | This manual describes Yocto Project kernels by providing information | 22 | Each Yocto Project release introduces a new set of linux-yocto kernel recipes, |
| 21 | on history, organization, benefits, and use. | 23 | tracking the latest upstream developments and introducing newly supported |
| 22 | The manual consists of two sections: | 24 | platforms. In addition to the new kernel recipes, the previous recipes are |
| 23 | <itemizedlist> | 25 | refreshed and supported for at least one additional release. As they align, |
| 24 | <listitem><para><emphasis>Concepts:</emphasis> Describes concepts behind a kernel. | 26 | these previous releases are updated to include the latest from the LTSI project. |
| 25 | You will understand how a kernel is organized and why it is organized in | 27 | Besides these recipes, a linux-yocto-dev recipe is available for working with |
| 26 | the way it is. You will understand the benefits of a kernel's organization | 28 | the very latest in upstream Linux kernel development as well as meta-data |
| 27 | and the mechanisms used to work with the kernel and how to apply it in your | 29 | development. |
| 28 | design process.</para></listitem> | ||
| 29 | <listitem><para><emphasis>Using a Kernel:</emphasis> Describes best practices | ||
| 30 | and "how-to" information | ||
| 31 | that lets you put a kernel to practical use. | ||
| 32 | Some examples are how to examine changes in a branch and how to | ||
| 33 | save kernel modifications.</para></listitem> | ||
| 34 | </itemizedlist> | ||
| 35 | </para> | 30 | </para> |
| 36 | 31 | ||
| 37 | <para> | 32 | <para> |
| 38 | For more information on the Linux kernel, see the following links: | 33 | If you do not maintain your own kernel sources and need to make only minimal |
| 39 | <itemizedlist> | 34 | changes to the sources, these recipes provide a vetted base upon which to layer |
| 40 | <listitem><para>The Linux Foundation's guide for kernel development | 35 | your changes. Doing so allows you to benefit from the continual kernel |
| 41 | process - <ulink url='http://www.linuxfoundation.org/content/1-guide-kernel-development-process'></ulink></para></listitem> | 36 | integration and testing performed during development of the Yocto Project. |
| 42 | <listitem><para>A fairly encompassing guide on Linux kernel development - | ||
| 43 | <ulink url='http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/HOWTO;hb=HEAD'></ulink></para></listitem> | ||
| 44 | </itemizedlist> | ||
| 45 | </para> | 37 | </para> |
| 46 | 38 | ||
| 47 | <para> | 39 | <para> |
| 48 | For more discussion on the Yocto Project kernel, you can see these sections | 40 | If, instead, you have a very specific Linux kernel source tree and are unable to |
| 49 | in the Yocto Project Development Manual: | 41 | align with one of the many official linux-yocto releases, an alternative |
| 42 | exists by which you can use the Yocto Project Linux kernel tools with your own | ||
| 43 | sources. | ||
| 44 | </para> | ||
| 45 | |||
| 46 | <para> | ||
| 47 | The sections that follow provide instructions for completing specific Linux | ||
| 48 | kernel development tasks. They assume familiarity with working with bitbake | ||
| 49 | recipes and basic open-source development tools. Understanding these concepts | ||
| 50 | will facilitate the process of working with the kernel recipes. If you find you | ||
| 51 | need some additional background, please be sure to review and understand the | ||
| 52 | following documentation: | ||
| 50 | <itemizedlist> | 53 | <itemizedlist> |
| 51 | <listitem><para> | 54 | <listitem><para><emphasis>Yocto Project Quick Start</emphasis> |
| 52 | "<ulink url='&YOCTO_DOCS_DEV_URL;#kernel-overview'>Kernel Overview</ulink>"</para></listitem> | ||
| 53 | <listitem><para> | ||
| 54 | "<ulink url='&YOCTO_DOCS_DEV_URL;#kernel-modification-workflow'>Kernel Modification Workflow</ulink>" | ||
| 55 | </para></listitem> | 55 | </para></listitem> |
| 56 | <listitem><para> | 56 | <listitem><para><emphasis>Yocto Project Development Manual</emphasis> |
| 57 | "<ulink url='&YOCTO_DOCS_DEV_URL;#patching-the-kernel'>Patching the Kernel</ulink>"</para></listitem> | 57 | <itemizedlist> |
| 58 | <listitem><para> | 58 | <listitem><para><emphasis>4.3 Modifying Temporary Source Code</emphasis> |
| 59 | "<ulink url='&YOCTO_DOCS_DEV_URL;#configuring-the-kernel'>Configuring the Kernel</ulink>"</para></listitem> | 59 | </para></listitem> |
| 60 | <listitem><para><emphasis>5.1 Understanding and Creating Layers</emphasis> | ||
| 61 | </para></listitem> | ||
| 62 | <listitem><para><emphasis>4.1.2 Modifying the Kernel</emphasis> | ||
| 63 | (This section should be retired, as well as 5.6, 5.7 - with this document | ||
| 64 | providing the necessary information)</para></listitem> | ||
| 65 | </itemizedlist></para></listitem> | ||
| 60 | </itemizedlist> | 66 | </itemizedlist> |
| 61 | </para> | 67 | </para> |
| 62 | 68 | ||
| 63 | <para> | 69 | <para> |
| 64 | For general information on the Yocto Project, visit the website at | 70 | Finally, while this document focuses on the manual creation of recipes, patches, |
| 65 | <ulink url='&YOCTO_HOME_URL;'></ulink>. | 71 | and configuration files, the Yocto Project BSP tools are available to automate |
| 72 | this process with existing content and work well to create the initial framework | ||
| 73 | and boilerplate code. For details, refer to the Yocto Project BSP Developer's | ||
| 74 | Guide. | ||
| 66 | </para> | 75 | </para> |
| 67 | </section> | 76 | </section> |
| 68 | 77 | ||
| 69 | |||
| 70 | |||
| 71 | |||
| 72 | |||
| 73 | |||
| 74 | |||
| 75 | </chapter> | 78 | </chapter> |
| 76 | <!-- | 79 | <!-- |
| 77 | vim: expandtab tw=80 ts=4 | 80 | vim: expandtab tw=80 ts=4 |
