Loading...
1/*
2 * Access to VGA videoram
3 *
4 * (c) 1998 Martin Mares <mj@ucw.cz>
5 */
6
7#ifndef _ASM_X86_VGA_H
8#define _ASM_X86_VGA_H
9
10/*
11 * On the PC, we can just recalculate addresses and then
12 * access the videoram directly without any black magic.
13 */
14
15#define VGA_MAP_MEM(x, s) (unsigned long)phys_to_virt(x)
16
17#define vga_readb(x) (*(x))
18#define vga_writeb(x, y) (*(y) = (x))
19
20#endif /* _ASM_X86_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 */