tty/vt: consolemap: introduce enum translation_map and use it

Again, instead of magic constants in the code, declare an enum and be a
little bit more explicit. Both in the translations definition and in the
loops etc.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Link: https://lore.kernel.org/r/20220607104946.18710-17-jslaby@suse.cz
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Jiri Slaby
2022-06-07 12:49:27 +02:00
committed by Greg Kroah-Hartman
parent 949fafcd7f
commit 5a904a936b
2 changed files with 32 additions and 25 deletions

View File

@@ -7,10 +7,15 @@
#ifndef __LINUX_CONSOLEMAP_H__
#define __LINUX_CONSOLEMAP_H__
#define LAT1_MAP 0
#define GRAF_MAP 1
#define IBMPC_MAP 2
#define USER_MAP 3
enum translation_map {
LAT1_MAP,
GRAF_MAP,
IBMPC_MAP,
USER_MAP,
FIRST_MAP = LAT1_MAP,
LAST_MAP = USER_MAP,
};
#include <linux/types.h>
@@ -18,7 +23,7 @@ struct vc_data;
#ifdef CONFIG_CONSOLE_TRANSLATIONS
u16 inverse_translate(const struct vc_data *conp, u16 glyph, bool use_unicode);
unsigned short *set_translate(int m, struct vc_data *vc);
unsigned short *set_translate(enum translation_map m, struct vc_data *vc);
int conv_uni_to_pc(struct vc_data *conp, long ucs);
u32 conv_8bit_to_uni(unsigned char c);
int conv_uni_to_8bit(u32 uni);
@@ -30,7 +35,8 @@ static inline u16 inverse_translate(const struct vc_data *conp, u16 glyph,
return glyph;
}
static inline unsigned short *set_translate(int m, struct vc_data *vc)
static inline unsigned short *set_translate(enum translation_map m,
struct vc_data *vc)
{
return NULL;
}