arch/x86/include/asm/efi.h
Source file repositories/reference/linux-study-clean/arch/x86/include/asm/efi.h
File Facts
- System
- Linux kernel
- Corpus path
arch/x86/include/asm/efi.h- Extension
.h- Size
- 13831 bytes
- Lines
- 432
- Domain
- Architecture Layer
- Bucket
- arch/x86
- Inferred role
- Architecture Layer: implementation source
- Status
- source implementation candidate
Why This File Exists
CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.
- CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
asm/fpu/api.hasm/processor-flags.hasm/tlb.hasm/nospec-branch.hasm/mmu_context.hasm/ibt.hlinux/build_bug.hlinux/kernel.hlinux/pgtable.h
Detected Declarations
function efi_fpu_beginfunction efi_fpu_endfunction efi_is_mixedfunction efi_runtime_supportedfunction efi_is_64bitfunction efi_is_nativefunction _Genericfunction efi64_convert_statusfunction efi64_zero_upperfunction __efi64_thunk_mapfunction parse_efi_setupfunction efi_is_table_addressfunction efi_reserve_boot_servicesfunction efi_get_runtime_map_sizefunction efi_get_runtime_map_desc_sizefunction efi_runtime_map_copy
Annotated Snippet
static inline void parse_efi_setup(u64 phys_addr, u32 data_len) {}
static inline bool efi_reboot_required(void)
{
return false;
}
static inline bool efi_is_table_address(unsigned long phys_addr)
{
return false;
}
static inline void efi_reserve_boot_services(void)
{
}
#endif /* CONFIG_EFI */
extern int __init efi_memmap_alloc(unsigned int num_entries,
struct efi_memory_map_data *data);
extern int __init efi_memmap_install(struct efi_memory_map_data *data);
extern int __init efi_memmap_split_count(efi_memory_desc_t *md,
struct range *range);
extern void __init efi_memmap_insert(struct efi_memory_map *old_memmap,
void *buf, struct efi_mem_range *mem);
enum efi_secureboot_mode __x86_efi_boot_mode(void);
#define arch_efi_boot_mode __x86_efi_boot_mode()
#ifdef CONFIG_EFI_RUNTIME_MAP
int efi_get_runtime_map_size(void);
int efi_get_runtime_map_desc_size(void);
int efi_runtime_map_copy(void *buf, size_t bufsz);
#else
static inline int efi_get_runtime_map_size(void)
{
return 0;
}
static inline int efi_get_runtime_map_desc_size(void)
{
return 0;
}
static inline int efi_runtime_map_copy(void *buf, size_t bufsz)
{
return 0;
}
#endif
#endif /* _ASM_X86_EFI_H */
Annotation
- Immediate include surface: `asm/fpu/api.h`, `asm/processor-flags.h`, `asm/tlb.h`, `asm/nospec-branch.h`, `asm/mmu_context.h`, `asm/ibt.h`, `linux/build_bug.h`, `linux/kernel.h`.
- Detected declarations: `function efi_fpu_begin`, `function efi_fpu_end`, `function efi_is_mixed`, `function efi_runtime_supported`, `function efi_is_64bit`, `function efi_is_native`, `function _Generic`, `function efi64_convert_status`, `function efi64_zero_upper`, `function __efi64_thunk_map`.
- Atlas domain: Architecture Layer / arch/x86.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.