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 */
34