All of lore.kernel.org
 help / color / mirror / Atom feed
* [docs][PATCH] kernel-dev: Add FAQ for how to use a vanilla kernel
@ 2020-10-20 17:03 Joshua Watt
  2020-10-20 18:14 ` Joshua Watt
  2020-10-20 18:45 ` Quentin Schulz
  0 siblings, 2 replies; 8+ messages in thread
From: Joshua Watt @ 2020-10-20 17:03 UTC (permalink / raw)
  To: docs; +Cc: bruce.ashfield, pbarker, Joshua Watt

Adds a FAQ with explicit directions about how to build a vanilla kernel
for a machine.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
---
 documentation/kernel-dev/kernel-dev-faq.rst | 49 +++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/documentation/kernel-dev/kernel-dev-faq.rst b/documentation/kernel-dev/kernel-dev-faq.rst
index 70bf4a2d4..929cc4aad 100644
--- a/documentation/kernel-dev/kernel-dev-faq.rst
+++ b/documentation/kernel-dev/kernel-dev-faq.rst
@@ -79,3 +79,52 @@ following:
 
    APPEND += "printk.time=y initcall_debug debug"
 
+How do I use a vanilla Linux kernel with my machine?
+----------------------------------------------------
+
+The simplest way to use a vanilla kernel is with the ``linux-yocto`` kernel
+maintained by openembedded-core. Using this kernel is as simple as adding the
+following to your machine.conf file:
+::
+
+   # Use a defconfig provided by the kernel. If you are going to provide your
+   # own defconfig in SRC_URI as show below, you'll need to omit this line
+   KBUILD_DEFCONFIG = "multi_v7_defconfig"
+
+   # Use default value for all symbols. This is usually what you want when
+   # providing a defconfig
+   KCONFIG_MODE = "alldefconfig"
+
+   # Make linux-yocto provide the kernel
+   PREFERRED_PROVIDER_virtual/kernel = "linux-yocto"
+
+   # If you want to use a specific version of the upstream kernel, uncomment
+   # and set this line, otherwise omit it to use the latest stable kernel
+   #PREFERRED_VERSION_linux-yocto = "5.8.%"
+
+You will also need to add a .bbappend in your BSP layer to amend the
+linux-yocto recipe (e.g. recipes-kernel/linux/linux-yocto_%.bbappend):
+::
+
+    FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+
+    # Uncomment this line to provide your own defconfig file in your BSP layer:
+    # SRC_URI_append_my-machine = " file://defconfig"
+
+    # Marks the recipe as compatible with your machine. Be sure to replace
+    # my-machine with the name of your machine
+    COMPATIBLE_MACHINE .= "|my-machine"
+
+You can also apply patches and config fragements in the bbappend if desired,
+see :ref:`kernel-dev/kernel-dev-common:applying patches` and
+:ref:`kernel-dev/kernel-dev-common:changing the configuration` in the Kernel
+dev manual. It is recommended that you use ``_append_my-machine`` to prevent
+these changes from inadverently leaking into other machine configurations
+
+.. note::
+    You will notice that this is will still pull the kernel source from `the
+    Yocto Kernel git repo
+    <https://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto/>`_, however it is
+    using the default value for :term:`KBRANCH` (e.g. ``"v5.8/standard/base"``)
+    which is an exact mirror of the upstream kernel.
+
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-10-20 22:09 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-20 17:03 [docs][PATCH] kernel-dev: Add FAQ for how to use a vanilla kernel Joshua Watt
2020-10-20 18:14 ` Joshua Watt
2020-10-20 21:05   ` Robert Berger
2020-10-20 21:14     ` Bruce Ashfield
2020-10-20 21:34       ` Joshua Watt
2020-10-20 22:09       ` akuster
2020-10-20 22:04   ` akuster
2020-10-20 18:45 ` Quentin Schulz

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.