aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authormario.six@gdsys.cc <mario.six@gdsys.cc>2017-02-22 16:07:22 +0100
committerStefan Roese <sr@denx.de>2017-03-29 07:38:10 +0200
commit0db4cd257f03b907feb52c827197ff875172e785 (patch)
tree718e626852ec41e14c8a5c1b5a6c8030b2bbdd31 /include
parent55e0306c92ea33721aeb0946eecf82f702954513 (diff)
downloadu-boot-0db4cd257f03b907feb52c827197ff875172e785.zip
u-boot-0db4cd257f03b907feb52c827197ff875172e785.tar.gz
u-boot-0db4cd257f03b907feb52c827197ff875172e785.tar.bz2
dm: Add callback to modify the device tree
Certain boards come in different variations by way of utilizing daughter boards, for example. These boards might contain additional chips, which are added to the main board's busses, e.g. I2C. The device tree support for such boards would either, quite naturally, employ the overlay mechanism to add such chips to the tree, or would use one large default device tree, and delete the devices that are actually not present. Regardless of approach, even on the U-Boot level, a modification of the device tree is a prerequisite to have such modular families of boards supported properly. Therefore, we add an option to make the U-Boot device tree (the actual copy later used by the driver model) writeable, and add a callback method that allows boards to modify the device tree at an early stage, at which, hopefully, also the application of device tree overlays will be possible. Signed-off-by: Mario Six <mario.six@gdsys.cc> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Stefan Roese <sr@denx.de>
Diffstat (limited to 'include')
-rw-r--r--include/common.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/common.h b/include/common.h
index fbbc2cb..2cbbd5a 100644
--- a/include/common.h
+++ b/include/common.h
@@ -497,6 +497,7 @@ extern ssize_t spi_write (uchar *, int, uchar *, int);
/* $(BOARD)/$(BOARD).c */
int board_early_init_f (void);
+int board_fix_fdt (void *rw_fdt_blob); /* manipulate the U-Boot fdt before its relocation */
int board_late_init (void);
int board_postclk_init (void); /* after clocks/timebase, before env/serial */
int board_early_init_r (void);