Linux 6.9-rc6
[sfrench/cifs-2.6.git] / arch / x86 / include / asm / vga.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  *      Access to VGA videoram
4  *
5  *      (c) 1998 Martin Mares <mj@ucw.cz>
6  */
7
8 #ifndef _ASM_X86_VGA_H
9 #define _ASM_X86_VGA_H
10
11 #include <asm/set_memory.h>
12
13 /*
14  *      On the PC, we can just recalculate addresses and then
15  *      access the videoram directly without any black magic.
16  *      To support memory encryption however, we need to access
17  *      the videoram as decrypted memory.
18  */
19
20 #define VGA_MAP_MEM(x, s)                                       \
21 ({                                                              \
22         unsigned long start = (unsigned long)phys_to_virt(x);   \
23                                                                 \
24         if (IS_ENABLED(CONFIG_AMD_MEM_ENCRYPT))                 \
25                 set_memory_decrypted(start, (s) >> PAGE_SHIFT); \
26                                                                 \
27         start;                                                  \
28 })
29
30 #define vga_readb(x) (*(x))
31 #define vga_writeb(x, y) (*(y) = (x))
32
33 #endif /* _ASM_X86_VGA_H */