u-boot/tools/binman/test/blob_syms.c
Simon Glass c1157860c5 binman: Provide general support for updating ELF symbols
The current support for updating variables in a binary is hard-coded to
work with U-Boot:

- It assumes the image starts at __image_copy_start
- It uses the existing U-Boot-specific entry types

It is useful for other projects to use these feature.

Add properties to enable writing symbols for any blob, a way of specifying
the base symbol and a way of providing the ELF filename to allow symbol
lookup to take place.

With this it is possible to update a Zephyr image, such as zephyr.bin
after it has been built.

Signed-off-by: Simon Glass <sjg@chromium.org>
2023-01-18 14:55:41 -07:00

20 lines
472 B
C

// SPDX-License-Identifier: GPL-2.0+
/*
* Copyright (c) 2017 Google, Inc
*
* Simple program to create some binman symbols. This is used by binman tests.
*/
typedef unsigned long ulong;
#include <linux/kconfig.h>
#include <binman_sym.h>
DECLARE_BINMAN_MAGIC_SYM;
unsigned long val1 = 123;
unsigned long val2 = 456;
binman_sym_declare(unsigned long, inset, offset);
unsigned long val3 = 789;
unsigned long val4 = 999;
binman_sym_declare(unsigned long, inset, size);