summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorMichael Brown2022-02-16 01:14:38 +0100
committerMichael Brown2022-02-16 15:06:33 +0100
commit304333dace992ea4b876a074c42bb7fd752137ca (patch)
tree021f862d948ef4a6d567fafcd9c841795bf6a5b1 /src/include
parent[settings] Always process all settings applicators (diff)
downloadipxe-304333dace992ea4b876a074c42bb7fd752137ca.tar.gz
ipxe-304333dace992ea4b876a074c42bb7fd752137ca.tar.xz
ipxe-304333dace992ea4b876a074c42bb7fd752137ca.zip
[console] Support changing keyboard map at runtime
Provide the special keyboard map named "dynamic" which allows the active keyboard map to be selected at runtime via the ${keymap} setting, e.g.: #define KEYBOARD_MAP dynamic iPXE> set keymap uk Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include')
-rw-r--r--src/include/ipxe/errfile.h1
-rw-r--r--src/include/ipxe/keymap.h2
2 files changed, 3 insertions, 0 deletions
diff --git a/src/include/ipxe/errfile.h b/src/include/ipxe/errfile.h
index 23e406b62..81f555725 100644
--- a/src/include/ipxe/errfile.h
+++ b/src/include/ipxe/errfile.h
@@ -395,6 +395,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
#define ERRFILE_efi_cachedhcp ( ERRFILE_OTHER | 0x00550000 )
#define ERRFILE_linux_sysfs ( ERRFILE_OTHER | 0x00560000 )
#define ERRFILE_linux_acpi ( ERRFILE_OTHER | 0x00570000 )
+#define ERRFILE_dynkeymap ( ERRFILE_OTHER | 0x00580000 )
/** @} */
diff --git a/src/include/ipxe/keymap.h b/src/include/ipxe/keymap.h
index 392d3ab8f..8bfbe07a5 100644
--- a/src/include/ipxe/keymap.h
+++ b/src/include/ipxe/keymap.h
@@ -73,5 +73,7 @@ struct keymap {
#define KEYMAP_ALTGR 0x0800
extern unsigned int key_remap ( unsigned int character );
+extern struct keymap * keymap_find ( const char *name );
+extern void keymap_set ( struct keymap *keymap );
#endif /* _IPXE_KEYMAP_H */