]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - arch/x86/include/asm/bios_ebda.h
x86/msr-index: Cleanup bit defines
[mirror_ubuntu-bionic-kernel.git] / arch / x86 / include / asm / bios_ebda.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _ASM_X86_BIOS_EBDA_H
3 #define _ASM_X86_BIOS_EBDA_H
4
5 #include <asm/io.h>
6
7 /*
8 * Returns physical address of EBDA. Returns 0 if there is no EBDA.
9 */
10 static inline unsigned int get_bios_ebda(void)
11 {
12 /*
13 * There is a real-mode segmented pointer pointing to the
14 * 4K EBDA area at 0x40E.
15 */
16 unsigned int address = *(unsigned short *)phys_to_virt(0x40E);
17 address <<= 4;
18 return address; /* 0 means none */
19 }
20
21 void reserve_bios_regions(void);
22
23 #ifdef CONFIG_X86_CHECK_BIOS_CORRUPTION
24 /*
25 * This is obviously not a great place for this, but we want to be
26 * able to scatter it around anywhere in the kernel.
27 */
28 void check_for_bios_corruption(void);
29 void start_periodic_check_for_corruption(void);
30 #else
31 static inline void check_for_bios_corruption(void)
32 {
33 }
34
35 static inline void start_periodic_check_for_corruption(void)
36 {
37 }
38 #endif
39
40 #endif /* _ASM_X86_BIOS_EBDA_H */