34 lines
		
	
	
		
			740 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			740 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| /*
 | |
|  *	Access to VGA videoram
 | |
|  *
 | |
|  *	(c) 1998 Martin Mares <mj@ucw.cz>
 | |
|  */
 | |
| 
 | |
| #ifndef _ASM_X86_VGA_H
 | |
| #define _ASM_X86_VGA_H
 | |
| 
 | |
| #include <asm/set_memory.h>
 | |
| 
 | |
| /*
 | |
|  *	On the PC, we can just recalculate addresses and then
 | |
|  *	access the videoram directly without any black magic.
 | |
|  *	To support memory encryption however, we need to access
 | |
|  *	the videoram as decrypted memory.
 | |
|  */
 | |
| 
 | |
| #define VGA_MAP_MEM(x, s)					\
 | |
| ({								\
 | |
| 	unsigned long start = (unsigned long)phys_to_virt(x);	\
 | |
| 								\
 | |
| 	if (IS_ENABLED(CONFIG_AMD_MEM_ENCRYPT))			\
 | |
| 		set_memory_decrypted(start, (s) >> PAGE_SHIFT);	\
 | |
| 								\
 | |
| 	start;							\
 | |
| })
 | |
| 
 | |
| #define vga_readb(x) (*(x))
 | |
| #define vga_writeb(x, y) (*(y) = (x))
 | |
| 
 | |
| #endif /* _ASM_X86_VGA_H */
 |