[PATCH u-boot v2 12/38] efi_loader: add macro for const EFI runtime data

Heinrich Schuchardt xypron.glpk at gmx.de
Fri Mar 12 17:47:58 CET 2021


On 12.03.21 11:34, Marek Behún wrote:
> Add macro __efi_runtime_rodata, for const variables with similar purpose
> as those using __efi_runtime_data.
>
> Signed-off-by: Marek Behún <marek.behun at nic.cz>

Reviewed-by: Heinrich Schuchardt <xypron.glpk at gmx.de>

> ---
>  include/efi_loader.h | 17 +++++++++++++++++
>  1 file changed, 17 insertions(+)
>
> diff --git a/include/efi_loader.h b/include/efi_loader.h
> index 696f80e9f3..d673ba12e3 100644
> --- a/include/efi_loader.h
> +++ b/include/efi_loader.h
> @@ -682,6 +682,22 @@ ssize_t efi_dp_check_length(const struct efi_device_path *dp,
>   */
>  #define __efi_runtime_data __section(".data.efi_runtime")
>
> +/**
> + * __efi_runtime_rodata - declares a read-only variable for EFI runtime section
> + *
> + * This macro indicates that a variable is read-only (const) and should go into
> + * the EFI runtime section, and thus still be available when the OS is running.
> + *
> + * Only use on variables also declared const.
> + *
> + * Example:
> + *
> + * ::
> + *
> + *   static const __efi_runtime_rodata my_const_table[] = { 1, 2, 3 };
> + */
> +#define __efi_runtime_rodata __section(".rodata.efi_runtime")
> +
>  /**
>   * __efi_runtime - declares a function for EFI runtime section
>   *
> @@ -893,6 +909,7 @@ efi_status_t efi_launch_capsules(void);
>
>  /* Without CONFIG_EFI_LOADER we don't have a runtime section, stub it out */
>  #define __efi_runtime_data
> +#define __efi_runtime_rodata
>  #define __efi_runtime
>  static inline efi_status_t efi_add_runtime_mmio(void *mmio_ptr, u64 len)
>  {
>



More information about the U-Boot mailing list