summaryrefslogtreecommitdiff
path: root/docs/customize-kernel-config.txt
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-03-16 22:14:34 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2014-03-16 22:14:34 +0100
commit732db5d2473cb5bf2c7d3e28b67e47cecf6008a8 (patch)
treef6df5d74b1f9ed8dbaa4742779f4ab2bf942622d /docs/customize-kernel-config.txt
parent1133719749afb61faf8974c87e41c14384b03444 (diff)
parentaaa312e56871e89b97704e5ac8c686fe7966c122 (diff)
Merge branch 'master' of git+ssh://openadk.org/git/openadk
Diffstat (limited to 'docs/customize-kernel-config.txt')
-rw-r--r--docs/customize-kernel-config.txt48
1 files changed, 48 insertions, 0 deletions
diff --git a/docs/customize-kernel-config.txt b/docs/customize-kernel-config.txt
new file mode 100644
index 000000000..9adeb7a9d
--- /dev/null
+++ b/docs/customize-kernel-config.txt
@@ -0,0 +1,48 @@
+// -*- mode:doc; -*-
+// vim: set syntax=asciidoc:
+
+[[kernel-custom]]
+Customizing the Linux kernel configuration
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The Linux kernel configuration can be customized using +make menuconfig+.
+OpenADK uses a combination of Linux miniconfig feature and user defined
+features to generate a valid Linux configuration for your target.
+Some features and drivers are not selectable via +make menuconfig+, either
+because your choosen target system does not have support for it or the
+option is not implemented, yet. OpenADK uses some kind of abstraction
+layer between the real full featured and complicated Linux kernel configuration
+and you. It is not perfect and does include a lot of manual work in
++target/linux/config+, but it works in a acceptable way.
+
+If you just want to view the Linux configuration, which is actually
+used for your target, you can execute following command:
+
+---------------
+ $ make kernelconfig
+---------------
+
+Any changes here will get lost and will not be used to generate a kernel for
+your target. If you want to change the existing kernel configuration you need
+to follow these steps.
+
+The basic kernel configuration used for your choosen target is concatenated from
+following two files:
++target/linux/kernel.config+ and +target/<arch>/kernel/<system>+.
+
+So if you would like to change any basic stuff, just edit the files and recreate your
+firmware via:
+
+---------------
+ $ make
+---------------
+
+OpenADK automatically recognizes any change and will rebuild the kernel.
+
+The base kernel configuration for your target generated by OpenADK is normally just enough to
+bootup the system with support for your board, serial console, network card and boot medium.
+(like a hard disk, sd card or flash partition)
+
+If you need to enable some new optional drivers or features, which are not available in
++make menuconfig+, you need to dig in +target/linux/config+. There is the abstraction layer
+for the real kernel configuration.