|
@@ -2,76 +2,79 @@
|
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
|
|
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
|
|
|
|
|
|
-<chapter id='kernel-doc-intro'>
|
|
|
+<chapter id='kernel-dev-intro'>
|
|
|
|
|
|
-<title>Yocto Project Kernel Architecture and Use Manual</title>
|
|
|
+<title>Yocto Project Kernel Development Manual</title>
|
|
|
|
|
|
-<section id='kernel-intro-section'>
|
|
|
+<section id='kernel-dev-introduction'>
|
|
|
<title>Introduction</title>
|
|
|
+
|
|
|
<para>
|
|
|
- The Yocto Project presents kernels as a fully patched, history-clean Git
|
|
|
- repositories.
|
|
|
- Each repository represents selected features, board support,
|
|
|
- and configurations extensively tested by the Yocto Project.
|
|
|
- Yocto Project kernels allow the end user to leverage community
|
|
|
- best practices to seamlessly manage the development, build and debug cycles.
|
|
|
+ Regardless of how you intend to make use of the Yocto Project, chances are you
|
|
|
+are going to need to work with the Linux kernel. The Yocto Project provides a
|
|
|
+powerful set of tools for managing Linux kernel sources and configuration data.
|
|
|
+If you want to make a single configuration change, apply a couple of patches, or
|
|
|
+work with your own sources, the Yocto Project has tooling in place to help you
|
|
|
+do it.
|
|
|
</para>
|
|
|
+
|
|
|
<para>
|
|
|
- This manual describes Yocto Project kernels by providing information
|
|
|
- on history, organization, benefits, and use.
|
|
|
- The manual consists of two sections:
|
|
|
- <itemizedlist>
|
|
|
- <listitem><para><emphasis>Concepts:</emphasis> Describes concepts behind a kernel.
|
|
|
- You will understand how a kernel is organized and why it is organized in
|
|
|
- the way it is. You will understand the benefits of a kernel's organization
|
|
|
- and the mechanisms used to work with the kernel and how to apply it in your
|
|
|
- design process.</para></listitem>
|
|
|
- <listitem><para><emphasis>Using a Kernel:</emphasis> Describes best practices
|
|
|
- and "how-to" information
|
|
|
- that lets you put a kernel to practical use.
|
|
|
- Some examples are how to examine changes in a branch and how to
|
|
|
- save kernel modifications.</para></listitem>
|
|
|
- </itemizedlist>
|
|
|
+ Each Yocto Project release introduces a new set of linux-yocto kernel recipes,
|
|
|
+tracking the latest upstream developments and introducing newly supported
|
|
|
+platforms. In addition to the new kernel recipes, the previous recipes are
|
|
|
+refreshed and supported for at least one additional release. As they align,
|
|
|
+these previous releases are updated to include the latest from the LTSI project.
|
|
|
+Besides these recipes, a linux-yocto-dev recipe is available for working with
|
|
|
+the very latest in upstream Linux kernel development as well as meta-data
|
|
|
+development.
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- For more information on the Linux kernel, see the following links:
|
|
|
- <itemizedlist>
|
|
|
- <listitem><para>The Linux Foundation's guide for kernel development
|
|
|
- process - <ulink url='http://www.linuxfoundation.org/content/1-guide-kernel-development-process'></ulink></para></listitem>
|
|
|
- <listitem><para>A fairly encompassing guide on Linux kernel development -
|
|
|
- <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>
|
|
|
- </itemizedlist>
|
|
|
+ If you do not maintain your own kernel sources and need to make only minimal
|
|
|
+changes to the sources, these recipes provide a vetted base upon which to layer
|
|
|
+your changes. Doing so allows you to benefit from the continual kernel
|
|
|
+integration and testing performed during development of the Yocto Project.
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- For more discussion on the Yocto Project kernel, you can see these sections
|
|
|
- in the Yocto Project Development Manual:
|
|
|
+ If, instead, you have a very specific Linux kernel source tree and are unable to
|
|
|
+align with one of the many official linux-yocto releases, an alternative
|
|
|
+exists by which you can use the Yocto Project Linux kernel tools with your own
|
|
|
+sources.
|
|
|
+ </para>
|
|
|
+
|
|
|
+ <para>
|
|
|
+ The sections that follow provide instructions for completing specific Linux
|
|
|
+kernel development tasks. They assume familiarity with working with bitbake
|
|
|
+recipes and basic open-source development tools. Understanding these concepts
|
|
|
+will facilitate the process of working with the kernel recipes. If you find you
|
|
|
+need some additional background, please be sure to review and understand the
|
|
|
+following documentation:
|
|
|
<itemizedlist>
|
|
|
- <listitem><para>
|
|
|
- "<ulink url='&YOCTO_DOCS_DEV_URL;#kernel-overview'>Kernel Overview</ulink>"</para></listitem>
|
|
|
- <listitem><para>
|
|
|
- "<ulink url='&YOCTO_DOCS_DEV_URL;#kernel-modification-workflow'>Kernel Modification Workflow</ulink>"
|
|
|
+ <listitem><para><emphasis>Yocto Project Quick Start</emphasis>
|
|
|
</para></listitem>
|
|
|
- <listitem><para>
|
|
|
- "<ulink url='&YOCTO_DOCS_DEV_URL;#patching-the-kernel'>Patching the Kernel</ulink>"</para></listitem>
|
|
|
- <listitem><para>
|
|
|
- "<ulink url='&YOCTO_DOCS_DEV_URL;#configuring-the-kernel'>Configuring the Kernel</ulink>"</para></listitem>
|
|
|
+ <listitem><para><emphasis>Yocto Project Development Manual</emphasis>
|
|
|
+ <itemizedlist>
|
|
|
+ <listitem><para><emphasis>4.3 Modifying Temporary Source Code</emphasis>
|
|
|
+ </para></listitem>
|
|
|
+ <listitem><para><emphasis>5.1 Understanding and Creating Layers</emphasis>
|
|
|
+ </para></listitem>
|
|
|
+ <listitem><para><emphasis>4.1.2 Modifying the Kernel</emphasis>
|
|
|
+ (This section should be retired, as well as 5.6, 5.7 - with this document
|
|
|
+ providing the necessary information)</para></listitem>
|
|
|
+ </itemizedlist></para></listitem>
|
|
|
</itemizedlist>
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- For general information on the Yocto Project, visit the website at
|
|
|
- <ulink url='&YOCTO_HOME_URL;'></ulink>.
|
|
|
+ Finally, while this document focuses on the manual creation of recipes, patches,
|
|
|
+and configuration files, the Yocto Project BSP tools are available to automate
|
|
|
+this process with existing content and work well to create the initial framework
|
|
|
+and boilerplate code. For details, refer to the Yocto Project BSP Developer's
|
|
|
+Guide.
|
|
|
</para>
|
|
|
</section>
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
</chapter>
|
|
|
<!--
|
|
|
vim: expandtab tw=80 ts=4
|