mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00

I did some rewriting for clarity in the "Using .bbappend Files in Your Layer" section. The section needed to be retitled so focus on the layer aspect of .bbappend files. Also, while I was in there, I did more work on the prose in general. Also had to fix some links in the bsp, kernel, and ref manuals that linked into the section whose name I changes. (From yocto-docs rev: a82bcc9fe0f909135434ee1bd36b4414f6c046c9) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
141 lines
6.0 KiB
XML
141 lines
6.0 KiB
XML
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
|
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
|
|
|
|
<appendix id='kernel-dev-faq'>
|
|
<title>Kernel Development FAQ</title>
|
|
|
|
<section id='kernel-dev-faq-section'>
|
|
<title>Common Questions and Solutions</title>
|
|
|
|
<para>
|
|
The following lists some solutions for common questions.
|
|
|
|
|
|
<qandaset>
|
|
<qandaentry>
|
|
<question>
|
|
<para>
|
|
How do I use my own Linux kernel <filename>.config</filename>
|
|
file?
|
|
</para>
|
|
</question>
|
|
<answer>
|
|
<para>
|
|
Refer to the "<link linkend='changing-the-configuration'>Changing the Configuration</link>"
|
|
section for information.
|
|
</para>
|
|
</answer>
|
|
</qandaentry>
|
|
|
|
<qandaentry>
|
|
<question>
|
|
<para>
|
|
How do I create configuration fragments?
|
|
</para>
|
|
</question>
|
|
<answer>
|
|
<para>
|
|
Refer to the "<link linkend='generating-configuration-files'>Generating Configuration Files</link>"
|
|
section for information.
|
|
</para>
|
|
</answer>
|
|
</qandaentry>
|
|
|
|
<qandaentry>
|
|
<question>
|
|
<para>
|
|
How do I use my own Linux kernel sources?
|
|
</para>
|
|
</question>
|
|
<answer>
|
|
<para>
|
|
Refer to the "<link linkend='working-with-your-own-sources'>Working With Your Own Sources</link>"
|
|
section for information.
|
|
</para>
|
|
</answer>
|
|
</qandaentry>
|
|
|
|
<qandaentry>
|
|
<question>
|
|
<para>
|
|
How do I install/not-install the kernel image on the rootfs?
|
|
</para>
|
|
</question>
|
|
<answer>
|
|
<para>
|
|
The kernel image (e.g. <filename>vmlinuz</filename>) is provided
|
|
by the <filename>kernel-image</filename> package.
|
|
Image recipes depend on <filename>kernel-base</filename>.
|
|
To specify whether or not the kernel
|
|
image is installed in the generated root filesystem, override
|
|
<filename>RDEPENDS_kernel-base</filename> to include or not
|
|
include "kernel-image".</para>
|
|
<para>See the
|
|
"<ulink url='&YOCTO_DOCS_DEV_URL;#using-bbappend-files'>Using .bbappend Files in Your Layer</ulink>"
|
|
section in the Yocto Project Development Manual for information on
|
|
how to use an append file to override metadata.
|
|
</para>
|
|
</answer>
|
|
</qandaentry>
|
|
|
|
<qandaentry>
|
|
<question>
|
|
<para>
|
|
How do I install a specific kernel module?
|
|
</para>
|
|
</question>
|
|
<answer>
|
|
<para>
|
|
Linux kernel modules are packaged individually.
|
|
To ensure a specific kernel module is included in an image,
|
|
include it in the appropriate machine
|
|
<ulink url='&YOCTO_DOCS_REF_URL;#var-RRECOMMENDS'><filename>RRECOMMENDS</filename></ulink>
|
|
variable.</para>
|
|
<para>These other variables are useful for installing specific
|
|
modules:
|
|
<literallayout class='monospaced'>
|
|
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_ESSENTIAL_EXTRA_RDEPENDS'><filename>MACHINE_ESSENTIAL_EXTRA_RDEPENDS</filename></ulink>
|
|
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS'><filename>MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS</filename></ulink>
|
|
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_EXTRA_RDEPENDS'><filename>MACHINE_EXTRA_RDEPENDS</filename></ulink>
|
|
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_EXTRA_RRECOMMENDS'><filename>MACHINE_EXTRA_RRECOMMENDS</filename></ulink>
|
|
</literallayout>
|
|
For example, set the following in the <filename>qemux86.conf</filename>
|
|
file to include the <filename>ab123</filename> kernel modules
|
|
with images built for the <filename>qemux86</filename> machine:
|
|
<literallayout class='monospaced'>
|
|
MACHINE_EXTRA_RRECOMMENDS += "kernel-module-ab123"
|
|
</literallayout>
|
|
For more information, see the
|
|
"<link linkend='incorporating-out-of-tree-modules'>Incorporating Out-of-Tree Modules</link>"
|
|
section.
|
|
</para>
|
|
</answer>
|
|
</qandaentry>
|
|
|
|
<qandaentry>
|
|
<question>
|
|
<para>
|
|
How do I change the Linux kernel command line?
|
|
</para>
|
|
</question>
|
|
<answer>
|
|
<para>
|
|
The Linux kernel command line is typically specified in
|
|
the machine config using the <filename>APPEND</filename> variable.
|
|
For example, you can add some helpful debug information doing
|
|
the following:
|
|
<literallayout class='monospaced'>
|
|
APPEND += "printk.time=y initcall_debug debug"
|
|
</literallayout>
|
|
</para>
|
|
</answer>
|
|
</qandaentry>
|
|
</qandaset>
|
|
</para>
|
|
</section>
|
|
</appendix>
|
|
<!--
|
|
vim: expandtab tw=80 ts=4
|
|
-->
|