summaryrefslogtreecommitdiffstats
path: root/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/lib/bsp/substrate/target/arch/common/recipes-kernel')
-rw-r--r--scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/kernel-list.noinstall26
-rw-r--r--scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom.bb58
-rw-r--r--scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom.noinstall1
-rw-r--r--scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/defconfig5
-rw-r--r--scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine-user-config.cfg9
-rw-r--r--scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine-user-patches.scc9
-rw-r--r--scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine.cfg4
-rw-r--r--scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine.scc18
8 files changed, 130 insertions, 0 deletions
diff --git a/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/kernel-list.noinstall b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/kernel-list.noinstall
new file mode 100644
index 0000000000..03b7d84ec2
--- /dev/null
+++ b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/kernel-list.noinstall
@@ -0,0 +1,26 @@
1{{ if kernel_choice == "custom": }}
2{{ input type:"boolean" name:"custom_kernel_remote" prio:"20" msg:"Is the custom kernel you'd like to use in a remote git repo? (y/n)" default:"y"}}
3
4{{ if kernel_choice == "custom" and custom_kernel_remote == "y": }}
5{{ input type:"edit-git-repo" name:"custom_kernel_remote_path" prio:"20" msg:"Please enter the full URI to the remote git repo (the default corresponds to linux-stable v3.13.9)" default:"git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"}}
6
7{{ if kernel_choice == "custom" and custom_kernel_remote == "n": }}
8{{ input type:"edit-git-repo" name:"custom_kernel_local_path" prio:"20" msg:"You've indicated that you're not using a remote git repo. Please enter the full path to the local git repo you want to use (the default assumes a local linux-stable v3.13.9)" default:"/home/trz/yocto/kernels/linux-stable.git"}}
9
10{{ if kernel_choice == "custom": }}
11{{ input type:"boolean" name:"custom_kernel_need_kbranch" prio:"20" msg:"Do you need to use a specific (non-master) branch? (y/n)" default:"n"}}
12
13{{ if kernel_choice == "custom" and custom_kernel_need_kbranch == "y": }}
14{{ input type:"edit" name:"custom_kernel_kbranch" prio:"20" msg:"Please enter the branch you want to use (the default branch corresponds to the linux-stable 'linux-3.13.y' branch):" default:"linux-3.13.y"}}
15
16{{ if kernel_choice == "custom": }}
17{{ input type:"edit" name:"custom_kernel_srcrev" prio:"20" msg:"Please enter the SRCREV (commit id) you'd like to use (use '${AUTOREV}' to track the current HEAD):" default:"${AUTOREV}"}}
18
19{{ if kernel_choice == "custom": }}
20{{ input type:"edit" name:"custom_kernel_linux_version" prio:"20" msg:"Please enter the Linux version of the kernel you've specified:" default:"3.13.9"}}
21
22{{ if kernel_choice == "custom": }}
23{{ input type:"edit" name:"custom_kernel_linux_version_extension" prio:"20" msg:"Please enter a Linux version extension if you want (it will show up at the end of the kernel name shown by uname):" default:"-custom"}}
24
25{{ if kernel_choice == "custom": }}
26{{ input type:"edit-file" name:"custom_kernel_defconfig" prio:"20" msg:"It's recommended (but not required) that custom kernels be built using a defconfig. Please enter the full path to the defconfig for your kernel (NOTE: if you don't specify a defconfig the kernel probably won't build or boot):" default:""}}
diff --git a/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom.bb b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom.bb
new file mode 100644
index 0000000000..80a52e7cae
--- /dev/null
+++ b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom.bb
@@ -0,0 +1,58 @@
1# yocto-bsp-filename {{ if kernel_choice == "custom": }} this
2# This file was derived from the linux-yocto-custom.bb recipe in
3# oe-core.
4#
5# linux-yocto-custom.bb:
6#
7# A yocto-bsp-generated kernel recipe that uses the linux-yocto and
8# oe-core kernel classes to apply a subset of yocto kernel
9# management to git managed kernel repositories.
10#
11# Warning:
12#
13# Building this kernel without providing a defconfig or BSP
14# configuration will result in build or boot errors. This is not a
15# bug.
16#
17# Notes:
18#
19# patches: patches can be merged into to the source git tree itself,
20# added via the SRC_URI, or controlled via a BSP
21# configuration.
22#
23# example configuration addition:
24# SRC_URI += "file://smp.cfg"
25# example patch addition:
26# SRC_URI += "file://0001-linux-version-tweak.patch
27# example feature addition:
28# SRC_URI += "file://feature.scc"
29#
30
31inherit kernel
32require recipes-kernel/linux/linux-yocto.inc
33
34{{ if kernel_choice == "custom" and custom_kernel_remote == "y": }}
35SRC_URI = "{{=custom_kernel_remote_path}};protocol=git;bareclone=1;branch=${KBRANCH}"
36{{ if kernel_choice == "custom" and custom_kernel_remote == "n": }}
37SRC_URI = "git://{{=custom_kernel_local_path}};protocol=file;bareclone=1;branch=${KBRANCH}"
38
39SRC_URI += "file://defconfig"
40
41SRC_URI += "file://{{=machine}}.scc \
42 file://{{=machine}}.cfg \
43 file://{{=machine}}-user-config.cfg \
44 file://{{=machine}}-user-patches.scc \
45 "
46
47{{ if kernel_choice == "custom" and custom_kernel_need_kbranch == "y" and custom_kernel_kbranch and custom_kernel_kbranch != "master": }}
48KBRANCH = "{{=custom_kernel_kbranch}}"
49
50LINUX_VERSION ?= "{{=custom_kernel_linux_version}}"
51LINUX_VERSION_EXTENSION ?= "{{=custom_kernel_linux_version_extension}}"
52
53SRCREV="{{=custom_kernel_srcrev}}"
54
55PR = "r0"
56PV = "${LINUX_VERSION}+git${SRCPV}"
57
58COMPATIBLE_MACHINE_{{=machine}} = "{{=machine}}"
diff --git a/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom.noinstall b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom.noinstall
new file mode 100644
index 0000000000..017d206c24
--- /dev/null
+++ b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom.noinstall
@@ -0,0 +1 @@
# yocto-bsp-dirname {{ if kernel_choice == "custom": }} linux-yocto-custom
diff --git a/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/defconfig b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/defconfig
new file mode 100644
index 0000000000..ceb0ffa30c
--- /dev/null
+++ b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/defconfig
@@ -0,0 +1,5 @@
1#
2# Placeholder for custom default kernel configuration. yocto-bsp will
3# replace this file with a user-specified defconfig.
4#
5{{ if custom_kernel_defconfig: replace_file(of, custom_kernel_defconfig) }}
diff --git a/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine-user-config.cfg b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine-user-config.cfg
new file mode 100644
index 0000000000..922309d5ab
--- /dev/null
+++ b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine-user-config.cfg
@@ -0,0 +1,9 @@
1# yocto-bsp-filename {{=machine}}-user-config.cfg
2#
3# Used by yocto-kernel to manage config options.
4#
5# yocto-kernel may change the contents of this file in any
6# way it sees fit, including removing comments like this,
7# so don't manually make any modifications you don't want
8# to lose.
9#
diff --git a/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine-user-patches.scc b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine-user-patches.scc
new file mode 100644
index 0000000000..6d1138f42a
--- /dev/null
+++ b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine-user-patches.scc
@@ -0,0 +1,9 @@
1# yocto-bsp-filename {{=machine}}-user-patches.scc
2#
3# Used by yocto-kernel to manage patches.
4#
5# yocto-kernel may change the contents of this file in any
6# way it sees fit, including removing comments like this,
7# so don't manually make any modifications you don't want
8# to lose.
9#
diff --git a/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine.cfg b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine.cfg
new file mode 100644
index 0000000000..1ba8201f16
--- /dev/null
+++ b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine.cfg
@@ -0,0 +1,4 @@
1# yocto-bsp-filename {{=machine}}.cfg
2#
3# A convenient place to add config options, nothing more.
4#
diff --git a/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine.scc b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine.scc
new file mode 100644
index 0000000000..0b6b413377
--- /dev/null
+++ b/scripts/lib/bsp/substrate/target/arch/common/recipes-kernel/linux/linux-yocto-custom/machine.scc
@@ -0,0 +1,18 @@
1# yocto-bsp-filename {{=machine}}.scc
2#
3# The top-level 'feature' for the {{=machine}} custom kernel.
4#
5# Essentially this is a convenient top-level container or starting
6# point for adding lower-level config fragements and features.
7#
8
9# {{=machine}}.cfg in the linux-yocto-custom subdir is just a
10# convenient place for adding random config fragments.
11
12kconf hardware {{=machine}}.cfg
13
14# These are used by yocto-kernel to add config fragments and features.
15# Don't remove if you plan on using yocto-kernel with this BSP.
16
17kconf hardware {{=machine}}-user-config.cfg
18include {{=machine}}-user-patches.scc