mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-17 22:49:02 +00:00
fdt: Introduce helper method fdt_overlay_apply_verbose()
Introduce fdt_overlay_apply_verbose, a method that applies an overlay but in the case of an error produces a helpful message. In addition if a base tree is found to be missing the __symbols__ node the message will point out that the probable reason is that the base tree was miscompiled without the -@ option. Signed-off-by: Pantelis Antoniou <pantelis.antoniou@konsulko.com> Acked-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
18c991ca2b
commit
fc7c31891c
2 changed files with 33 additions and 0 deletions
|
@ -1655,3 +1655,34 @@ int fdt_fixup_display(void *blob, const char *path, const char *display)
|
|||
}
|
||||
return toff;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_OF_LIBFDT_OVERLAY
|
||||
/**
|
||||
* fdt_overlay_apply_verbose - Apply an overlay with verbose error reporting
|
||||
*
|
||||
* @fdt: ptr to device tree
|
||||
* @fdto: ptr to device tree overlay
|
||||
*
|
||||
* Convenience function to apply an overlay and display helpful messages
|
||||
* in the case of an error
|
||||
*/
|
||||
int fdt_overlay_apply_verbose(void *fdt, void *fdto)
|
||||
{
|
||||
int err;
|
||||
bool has_symbols;
|
||||
|
||||
err = fdt_path_offset(fdt, "/__symbols__");
|
||||
has_symbols = err >= 0;
|
||||
|
||||
err = fdt_overlay_apply(fdt, fdto);
|
||||
if (err < 0) {
|
||||
printf("failed on fdt_overlay_apply(): %s\n",
|
||||
fdt_strerror(err));
|
||||
if (!has_symbols) {
|
||||
printf("base fdt does did not have a /__symbols__ node\n");
|
||||
printf("make sure you've compiled with -@\n");
|
||||
}
|
||||
}
|
||||
return err;
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -264,6 +264,8 @@ int arch_fixup_memory_node(void *blob);
|
|||
int fdt_setup_simplefb_node(void *fdt, int node, u64 base_address, u32 width,
|
||||
u32 height, u32 stride, const char *format);
|
||||
|
||||
int fdt_overlay_apply_verbose(void *fdt, void *fdto);
|
||||
|
||||
#endif /* ifdef CONFIG_OF_LIBFDT */
|
||||
|
||||
#ifdef USE_HOSTCC
|
||||
|
|
Loading…
Add table
Reference in a new issue