[PATCH] dm: core: Inline a few ofnode functions in SPL
Simon Glass
sjg at chromium.org
Wed Dec 23 16:42:58 CET 2020
A recent change to unify the flattree/livetree code introduced a small
size increase in SPL on some boards. For example SPL code size for
px30-core-ctouch2-px30 increased by 40 bytes.
To address this we can take advantage of the fact that some of the ofnode
functions are only called a few times in SPL, so it is worth inlining
them.
Add new Kconfig options to control this. These functions are not inlined
for U-Boot proper, since this increases code size.
Fixes: 2ebea5eaebf ("dm: core: Combine the flattree and livetree binding code")
Signed-off-by: Simon Glass <sjg at chromium.org>
---
This series mostly improves code size:
04: dm: core: Inline a few ofnode functions in SPL
arm: brppt1_spi brsmarc1
aarch64: (for 267/267 boards) spl/u-boot-spl:all -8.9
spl/u-boot-spl:text -8.9
arm: (for 693/693 boards) all +65.1 bss +0.2 data +64.9 rodata
+0.0 spl/u-boot-spl:all -6.6 spl/u-boot-spl:text -6.6 text -0.0
microblaze: (for 1/1 boards) spl/u-boot-spl:all -132.0
spl/u-boot-spl:text -132.0
mips: (for 44/44 boards) spl/u-boot-spl:all -9.0 spl/u-boot-spl:text -9.0
riscv: (for 18/18 boards) spl/u-boot-spl:all +17.3
spl/u-boot-spl:text +17.3
x86: (for 28/28 boards) spl/u-boot-spl:all -6.1
spl/u-boot-spl:text -6.1 tpl/u-boot-tpl:all -1.5 tpl/u-boot-tpl:text
-1.5
For the particular board mentioned with the problem
(px30-core-ctouch2-px30) it erases the size 40-byte increase:
04: dm: core: Inline a few ofnode functions in SPL
aarch64: (for 1/1 boards) spl/u-boot-spl:all -84.0 spl/u-boot-spl:text -84.0
drivers/core/Kconfig | 16 +++++++++++++
drivers/core/ofnode.c | 2 ++
include/dm/ofnode.h | 56 ++++++++++++++++++++++++++++++++++---------
3 files changed, 63 insertions(+), 11 deletions(-)
Applied to u-boot-dm/next, thanks!
More information about the U-Boot
mailing list