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)
downloadopenembedded-core-contrib-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"
DT_BOOT_CPU[doc] = "The boot cpu, defaults to 0"
DT_BOOT_CPU ??= "0"
-DTC_FLAGS ?= "-R ${DT_RESERVED_MAP} -p ${DT_PADDING_SIZE} -b ${DT_BOOT_CPU}"
+DTC_FLAGS ?= "-R ${DT_RESERVED_MAP} -b ${DT_BOOT_CPU}"
DTC_PPFLAGS ?= "-nostdinc -undef -D__DTS__ -x assembler-with-cpp"
-DTC_OFLAGS ?= "-@ -H epapr"
+DTC_BFLAGS ?= "-p ${DT_PADDING_SIZE}"
+DTC_OFLAGS ?= "-p 0 -@ -H epapr"
python () {
if d.getVar("KERNEL_INCLUDE"):
@@ -106,6 +107,8 @@ def devicetree_compile(dtspath, includes, d):
dtcargs = ["dtc"] + (d.getVar("DTC_FLAGS") or "").split()
if isoverlay:
dtcargs += (d.getVar("DTC_OFLAGS") or "").split()
+ else:
+ dtcargs += (d.getVar("DTC_BFLAGS") or "").split()
for i in includes:
dtcargs += ["-i", i]
dtcargs += ["-o", "{0}.{1}".format(dtname, "dtbo" if isoverlay else "dtb")]