1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * Copyright (C) 2020-2022 Loongson Technology Corporation Limited 4 */ 5 #ifndef _ASM_LOONGARCH_EFI_H 6 #define _ASM_LOONGARCH_EFI_H 7 8 #include <linux/efi.h> 9 10 void __init efi_init(void); 11 void __init efi_runtime_init(void); 12 void efifb_setup_from_dmi(struct screen_info *si, const char *opt); 13 14 #define ARCH_EFI_IRQ_FLAGS_MASK 0x00000004 /* Bit 2: CSR.CRMD.IE */ 15 16 #define arch_efi_call_virt_setup() \ 17 ({ \ 18 }) 19 20 #define arch_efi_call_virt(p, f, args...) \ 21 ({ \ 22 efi_##f##_t * __f; \ 23 __f = p->f; \ 24 __f(args); \ 25 }) 26 27 #define arch_efi_call_virt_teardown() \ 28 ({ \ 29 }) 30 31 #define EFI_ALLOC_ALIGN SZ_64K 32 33 struct screen_info *alloc_screen_info(void); 34 void free_screen_info(struct screen_info *si); 35 36 static inline unsigned long efi_get_max_initrd_addr(unsigned long image_addr) 37 { 38 return ULONG_MAX; 39 } 40 41 #endif /* _ASM_LOONGARCH_EFI_H */ 42