efi_loader: Use EFI_CACHELINE_SIZE in the image loader too
We were using our EFI_CACHELINE_SIZE define only in the runtime service code, but left the image loader to use plain CONFIG_SYS_CACHELINE_SIZE. This patch moves EFI_CACHELINE_SIZE into efi_loader.h and converts the image loader to use it. Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
parent
b66babda45
commit
89aea43642
@ -75,6 +75,13 @@ const char *__efi_nesting_dec(void);
|
||||
##__VA_ARGS__); \
|
||||
})
|
||||
|
||||
#ifdef CONFIG_SYS_CACHELINE_SIZE
|
||||
#define EFI_CACHELINE_SIZE CONFIG_SYS_CACHELINE_SIZE
|
||||
#else
|
||||
/* Just use the greatest cache flush alignment requirement I'm aware of */
|
||||
#define EFI_CACHELINE_SIZE 128
|
||||
#endif
|
||||
|
||||
extern struct efi_runtime_services efi_runtime_services;
|
||||
extern struct efi_system_table systab;
|
||||
|
||||
|
@ -287,7 +287,7 @@ void *efi_load_pe(void *efi, struct efi_loaded_image *loaded_image_info)
|
||||
|
||||
/* Flush cache */
|
||||
flush_cache((ulong)efi_reloc,
|
||||
ALIGN(virt_size, CONFIG_SYS_CACHELINE_SIZE));
|
||||
ALIGN(virt_size, EFI_CACHELINE_SIZE));
|
||||
invalidate_icache_all();
|
||||
|
||||
/* Populate the loaded image interface bits */
|
||||
|
@ -29,13 +29,6 @@ static efi_status_t __efi_runtime EFIAPI efi_unimplemented(void);
|
||||
static efi_status_t __efi_runtime EFIAPI efi_device_error(void);
|
||||
static efi_status_t __efi_runtime EFIAPI efi_invalid_parameter(void);
|
||||
|
||||
#ifdef CONFIG_SYS_CACHELINE_SIZE
|
||||
#define EFI_CACHELINE_SIZE CONFIG_SYS_CACHELINE_SIZE
|
||||
#else
|
||||
/* Just use the greatest cache flush alignment requirement I'm aware of */
|
||||
#define EFI_CACHELINE_SIZE 128
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_ARM64)
|
||||
#define R_RELATIVE 1027
|
||||
#define R_MASK 0xffffffffULL
|
||||
|
Loading…
Reference in New Issue
Block a user