| /* SPDX-License-Identifier: GPL-2.0 */ |
| /* |
| * Access to VGA videoram |
| * |
| * (c) 1998 Martin Mares <mj@ucw.cz> |
| */ |
| |
| #ifndef _LINUX_ASM_VGA_H_ |
| #define _LINUX_ASM_VGA_H_ |
| |
| #include <linux/bug.h> |
| #include <linux/string.h> |
| #include <asm/types.h> |
| |
| #define VT_BUF_HAVE_RW |
| #define VT_BUF_HAVE_MEMSETW |
| #define VT_BUF_HAVE_MEMCPYW |
| #define VT_BUF_HAVE_MEMMOVEW |
| |
| #undef scr_writew |
| #undef scr_readw |
| |
| static inline void scr_writew(u16 val, u16 *addr) |
| { |
| BUG_ON((long) addr >= 0); |
| |
| *addr = val; |
| } |
| |
| static inline u16 scr_readw(const u16 *addr) |
| { |
| BUG_ON((long) addr >= 0); |
| |
| return *addr; |
| } |
| |
| static inline void scr_memsetw(u16 *p, u16 v, unsigned int n) |
| { |
| BUG_ON((long) p >= 0); |
| |
| memset16(p, cpu_to_le16(v), n / 2); |
| } |
| |
| static inline void scr_memcpyw(u16 *d, u16 *s, unsigned int n) |
| { |
| BUG_ON((long) d >= 0); |
| |
| memcpy(d, s, n); |
| } |
| |
| static inline void scr_memmovew(u16 *d, u16 *s, unsigned int n) |
| { |
| BUG_ON((long) d >= 0); |
| |
| memmove(d, s, n); |
| } |
| |
| #define VGA_MAP_MEM(x,s) (x) |
| |
| #endif |