linux/arch/riscv/include/asm/efi.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2/*
   3 * Copyright (C) 2020 Western Digital Corporation or its affiliates.
   4 */
   5#ifndef _ASM_EFI_H
   6#define _ASM_EFI_H
   7
   8#include <asm/csr.h>
   9#include <asm/io.h>
  10#include <asm/mmu_context.h>
  11#include <asm/ptrace.h>
  12#include <asm/tlbflush.h>
  13
  14#ifdef CONFIG_EFI
  15extern void efi_init(void);
  16extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
  17#else
  18#define efi_init()
  19#endif
  20
  21int efi_create_mapping(struct mm_struct *mm, efi_memory_desc_t *md);
  22int efi_set_mapping_permissions(struct mm_struct *mm, efi_memory_desc_t *md);
  23
  24#define arch_efi_call_virt_setup()      efi_virtmap_load()
  25#define arch_efi_call_virt_teardown()   efi_virtmap_unload()
  26
  27#define arch_efi_call_virt(p, f, args...) p->f(args)
  28
  29#define ARCH_EFI_IRQ_FLAGS_MASK (SR_IE | SR_SPIE)
  30
  31/* Load initrd anywhere in system RAM */
  32static inline unsigned long efi_get_max_initrd_addr(unsigned long image_addr)
  33{
  34        return ULONG_MAX;
  35}
  36
  37#define alloc_screen_info(x...)         (&screen_info)
  38
  39static inline void free_screen_info(struct screen_info *si)
  40{
  41}
  42
  43void efi_virtmap_load(void);
  44void efi_virtmap_unload(void);
  45
  46#endif /* _ASM_EFI_H */
  47