[PATCH 1/3] RISC-V: asm: factor relocation related functions into asm/reloc.h
Sascha Hauer
sha at pengutronix.de
Mon Aug 8 05:48:13 PDT 2022
On Fri, Aug 05, 2022 at 09:42:35AM +0200, Ahmad Fatoum wrote:
> To allow use of global_variable_offset() from common PBL code,
> move the definition into a new <asm/reloc.h> header.
> At current time, it's expected that PBL enabled platforms define
> at least get_runtime_offset() there.
>
> Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
> ---
> arch/riscv/include/asm/barebox-riscv.h | 7 +------
> arch/riscv/include/asm/reloc.h | 15 +++++++++++++++
> include/asm-generic/reloc.h | 10 ++++++++++
> 3 files changed, 26 insertions(+), 6 deletions(-)
> create mode 100644 arch/riscv/include/asm/reloc.h
> create mode 100644 include/asm-generic/reloc.h
Applied, thanks
Sascha
>
> diff --git a/arch/riscv/include/asm/barebox-riscv.h b/arch/riscv/include/asm/barebox-riscv.h
> index 5c87d37c9eb8..db6ff0ea7131 100644
> --- a/arch/riscv/include/asm/barebox-riscv.h
> +++ b/arch/riscv/include/asm/barebox-riscv.h
> @@ -21,12 +21,7 @@
> #include <asm/barebox-riscv-head.h>
> #include <asm/system.h>
> #include <asm/cache.h>
> -
> -unsigned long get_runtime_offset(void);
> -
> -void setup_c(void);
> -void relocate_to_current_adr(void);
> -void relocate_to_adr(unsigned long target);
> +#include <asm/reloc.h>
>
> void __noreturn __naked barebox_riscv_entry(unsigned long membase, unsigned long memsize,
> void *boarddata, unsigned int flags);
> diff --git a/arch/riscv/include/asm/reloc.h b/arch/riscv/include/asm/reloc.h
> new file mode 100644
> index 000000000000..9a59326cad27
> --- /dev/null
> +++ b/arch/riscv/include/asm/reloc.h
> @@ -0,0 +1,15 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +
> +#ifndef _ASM_RELOC_H_
> +#define _ASM_RELOC_H_
> +
> +unsigned long get_runtime_offset(void);
> +
> +void relocate_to_current_adr(void);
> +void relocate_to_adr(unsigned long target);
> +
> +void setup_c(void);
> +
> +#include <asm-generic/reloc.h>
> +
> +#endif /* _BAREBOX_RISCV_H_ */
> diff --git a/include/asm-generic/reloc.h b/include/asm-generic/reloc.h
> new file mode 100644
> index 000000000000..90459371ebe8
> --- /dev/null
> +++ b/include/asm-generic/reloc.h
> @@ -0,0 +1,10 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +
> +#ifndef _ASM_GENERIC_RELOC_H_
> +#define _ASM_GENERIC_RELOC_H_
> +
> +#ifndef global_variable_offset
> +#define global_variable_offset() get_runtime_offset()
> +#endif
> +
> +#endif
> --
> 2.30.2
>
>
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list