1 /* SPDX-License-Identifier: GPL-2.0 */ 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 2 /* 3 * consolemap.h 3 * consolemap.h 4 * 4 * 5 * Interface between console.c, selection.c a 5 * Interface between console.c, selection.c and consolemap.c 6 */ 6 */ 7 #ifndef __LINUX_CONSOLEMAP_H__ 7 #ifndef __LINUX_CONSOLEMAP_H__ 8 #define __LINUX_CONSOLEMAP_H__ 8 #define __LINUX_CONSOLEMAP_H__ 9 9 10 enum translation_map { 10 enum translation_map { 11 LAT1_MAP, 11 LAT1_MAP, 12 GRAF_MAP, 12 GRAF_MAP, 13 IBMPC_MAP, 13 IBMPC_MAP, 14 USER_MAP, 14 USER_MAP, 15 15 16 FIRST_MAP = LAT1_MAP, 16 FIRST_MAP = LAT1_MAP, 17 LAST_MAP = USER_MAP, 17 LAST_MAP = USER_MAP, 18 }; 18 }; 19 19 20 #include <linux/types.h> 20 #include <linux/types.h> 21 21 22 struct vc_data; 22 struct vc_data; 23 23 24 #ifdef CONFIG_CONSOLE_TRANSLATIONS 24 #ifdef CONFIG_CONSOLE_TRANSLATIONS 25 u16 inverse_translate(const struct vc_data *co 25 u16 inverse_translate(const struct vc_data *conp, u16 glyph, bool use_unicode); 26 unsigned short *set_translate(enum translation 26 unsigned short *set_translate(enum translation_map m, struct vc_data *vc); 27 int conv_uni_to_pc(struct vc_data *conp, long 27 int conv_uni_to_pc(struct vc_data *conp, long ucs); 28 u32 conv_8bit_to_uni(unsigned char c); 28 u32 conv_8bit_to_uni(unsigned char c); 29 int conv_uni_to_8bit(u32 uni); 29 int conv_uni_to_8bit(u32 uni); 30 void console_map_init(void); 30 void console_map_init(void); 31 #else 31 #else 32 static inline u16 inverse_translate(const stru 32 static inline u16 inverse_translate(const struct vc_data *conp, u16 glyph, 33 bool use_unicode) 33 bool use_unicode) 34 { 34 { 35 return glyph; 35 return glyph; 36 } 36 } 37 37 38 static inline unsigned short *set_translate(en 38 static inline unsigned short *set_translate(enum translation_map m, 39 struct vc_data *vc) 39 struct vc_data *vc) 40 { 40 { 41 return NULL; 41 return NULL; 42 } 42 } 43 43 44 static inline int conv_uni_to_pc(struct vc_dat 44 static inline int conv_uni_to_pc(struct vc_data *conp, long ucs) 45 { 45 { 46 return ucs > 0xff ? -1 : ucs; 46 return ucs > 0xff ? -1 : ucs; 47 } 47 } 48 48 49 static inline u32 conv_8bit_to_uni(unsigned ch 49 static inline u32 conv_8bit_to_uni(unsigned char c) 50 { 50 { 51 return c; 51 return c; 52 } 52 } 53 53 54 static inline int conv_uni_to_8bit(u32 uni) 54 static inline int conv_uni_to_8bit(u32 uni) 55 { 55 { 56 return uni & 0xff; 56 return uni & 0xff; 57 } 57 } 58 58 59 static inline void console_map_init(void) { } 59 static inline void console_map_init(void) { } 60 #endif /* CONFIG_CONSOLE_TRANSLATIONS */ 60 #endif /* CONFIG_CONSOLE_TRANSLATIONS */ 61 61 62 #endif /* __LINUX_CONSOLEMAP_H__ */ 62 #endif /* __LINUX_CONSOLEMAP_H__ */ 63 63
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.