summaryrefslogtreecommitdiffstats
path: root/classes/linux-raspberrypi-base.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'classes/linux-raspberrypi-base.bbclass')
-rw-r--r--classes/linux-raspberrypi-base.bbclass39
1 files changed, 39 insertions, 0 deletions
diff --git a/classes/linux-raspberrypi-base.bbclass b/classes/linux-raspberrypi-base.bbclass
new file mode 100644
index 0000000..40beef1
--- /dev/null
+++ b/classes/linux-raspberrypi-base.bbclass
@@ -0,0 +1,39 @@
1inherit linux-kernel-base
2
3
4def get_dts(d, ver):
5 staging_dir = d.getVar("STAGING_KERNEL_BUILDDIR", True)
6 dts = d.getVar("KERNEL_DEVICETREE", True)
7
8 # d.getVar() might return 'None' as a normal string
9 # leading to 'is None' check isn't enough.
10 # TODO: Investigate if this is a bug in bitbake
11 if ver is None or ver == "None":
12 ''' if 'ver' isn't set try to grab the kernel version
13 from the kernel staging '''
14 ver = get_kernelversion_file(staging_dir)
15
16 if ver is not None:
17 min_ver = ver.split('.', 3)
18 else:
19 return dts
20
21 # Always turn off device tree support for kernel's < 3.18
22 try:
23 if int(min_ver[0]) <= 3:
24 if int(min_ver[1]) < 18:
25 dts = ""
26 except IndexError:
27 min_ver = None
28
29 return dts
30
31
32def split_overlays(d, out):
33 dts = get_dts(d, None)
34 if out:
35 overlays = oe.utils.str_filter_out('\S+\-overlay\.dtb$', dts, d)
36 else:
37 overlays = oe.utils.str_filter('\S+\-overlay\.dtb$', dts, d)
38
39 return overlays