tools/fdtgrep: Include __symbols__ table

This is required for overlays to work at SPL.

Loading of symbol table depends on DT Overlay support in SPL
so make it compile-time dependent. Without this SPL fails to
boot some platforms where this feature is not enabled
(e.g. dra71-evm.)

Without including the <linux/kconfig.h> file, the symbol
CONFIG_SPL_LOAD_FIT_APPLY_OVERLAY will not be visible and
we will never include the symbol table.

So include <linux/kconfig.h>

Due to some reason it needs to be included after
[#include "fdt_host.h"] otherwise it causes a build error.

Signed-off-by: Roger Quadros <rogerq@kernel.org>
This commit is contained in:
Roger Quadros 2023-11-24 17:03:24 +02:00 committed by Praneeth Bajjuri
parent 2bf80af7a9
commit ca69452f7a
1 changed files with 8 additions and 0 deletions

View File

@ -22,6 +22,8 @@
#include "fdt_host.h"
#include "libfdt_internal.h"
#include <linux/kconfig.h>
/* Define DEBUG to get some debugging output on stderr */
#ifdef DEBUG
#define debug(a, b...) fprintf(stderr, a, ## b)
@ -1234,6 +1236,12 @@ int main(int argc, char *argv[])
disp.fout = stdout;
}
if (IS_ENABLED(CONFIG_SPL_LOAD_FIT_APPLY_OVERLAY)) {
/* include symbol table */
if (value_add(&disp, &disp.value_head, FDT_IS_NODE, 1, "/__symbols__"))
usage("Cannot add __symbols__ value");
}
/* Run the grep and output the results */
ret = do_fdtgrep(&disp, filename);
if (disp.output_fname)