summaryrefslogtreecommitdiffstats
path: root/meta/classes/devicetree.bbclass
diff options
context:
space:
mode:
authorLuca Ceresoli <luca@lucaceresoli.net>2018-09-11 13:13:59 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-09-13 07:42:28 +0100
commitbb05e37d57465378296fa119c73bd50cf979cbcb (patch)
treed93048e4e8a4864bd9ceb04921d973e8010380ba /meta/classes/devicetree.bbclass
parent9ba2b4ab7dbddd64573d5cc39cf73122c859c125 (diff)
downloadpoky-bb05e37d57465378296fa119c73bd50cf979cbcb.tar.gz
devicetree.bbclass: don't pad DT overlays
By default the devicetree class adds padding to the generated .dtb files, which can be needed by the bootloader. However it also pads .dtbo files, which is not useful. Don't apply padding to the overlay devicetrees. To achieve this: * move "-p ${DT_PADDING_SIZE}" to a new variable, DTB_BFLAGS (B for "base") * add "-p 0" to DTC_OFLAGS to disable padding for overlays Cc: Nathan Rossi <nathan@nathanrossi.com> (From OE-Core rev: 678fe8c66b19f141f6869859cf365aec037e89d9) Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/devicetree.bbclass')
-rw-r--r--meta/classes/devicetree.bbclass7
1 files changed, 5 insertions, 2 deletions
diff --git a/meta/classes/devicetree.bbclass b/meta/classes/devicetree.bbclass
index dbc83f2a1d..8fe5a5ed79 100644
--- a/meta/classes/devicetree.bbclass
+++ b/meta/classes/devicetree.bbclass
@@ -55,9 +55,10 @@ DT_RESERVED_MAP ??= "8"
55DT_BOOT_CPU[doc] = "The boot cpu, defaults to 0" 55DT_BOOT_CPU[doc] = "The boot cpu, defaults to 0"
56DT_BOOT_CPU ??= "0" 56DT_BOOT_CPU ??= "0"
57 57
58DTC_FLAGS ?= "-R ${DT_RESERVED_MAP} -p ${DT_PADDING_SIZE} -b ${DT_BOOT_CPU}" 58DTC_FLAGS ?= "-R ${DT_RESERVED_MAP} -b ${DT_BOOT_CPU}"
59DTC_PPFLAGS ?= "-nostdinc -undef -D__DTS__ -x assembler-with-cpp" 59DTC_PPFLAGS ?= "-nostdinc -undef -D__DTS__ -x assembler-with-cpp"
60DTC_OFLAGS ?= "-@ -H epapr" 60DTC_BFLAGS ?= "-p ${DT_PADDING_SIZE}"
61DTC_OFLAGS ?= "-p 0 -@ -H epapr"
61 62
62python () { 63python () {
63 if d.getVar("KERNEL_INCLUDE"): 64 if d.getVar("KERNEL_INCLUDE"):
@@ -106,6 +107,8 @@ def devicetree_compile(dtspath, includes, d):
106 dtcargs = ["dtc"] + (d.getVar("DTC_FLAGS") or "").split() 107 dtcargs = ["dtc"] + (d.getVar("DTC_FLAGS") or "").split()
107 if isoverlay: 108 if isoverlay:
108 dtcargs += (d.getVar("DTC_OFLAGS") or "").split() 109 dtcargs += (d.getVar("DTC_OFLAGS") or "").split()
110 else:
111 dtcargs += (d.getVar("DTC_BFLAGS") or "").split()
109 for i in includes: 112 for i in includes:
110 dtcargs += ["-i", i] 113 dtcargs += ["-i", i]
111 dtcargs += ["-o", "{0}.{1}".format(dtname, "dtbo" if isoverlay else "dtb")] 114 dtcargs += ["-o", "{0}.{1}".format(dtname, "dtbo" if isoverlay else "dtb")]