diff options
| author | Michael Brown | 2011-03-16 04:17:34 +0100 |
|---|---|---|
| committer | Michael Brown | 2011-03-16 13:02:52 +0100 |
| commit | f98cf7d70f3d32e19ca6aabbd9601c0d432ea67f (patch) | |
| tree | e0c8d0f8fadce5e700ca67922e614b138781d48e /src/include | |
| parent | [efi] Mark SNP devices as children of EFI PCI device (diff) | |
| download | ipxe-f98cf7d70f3d32e19ca6aabbd9601c0d432ea67f.tar.gz ipxe-f98cf7d70f3d32e19ca6aabbd9601c0d432ea67f.tar.xz ipxe-f98cf7d70f3d32e19ca6aabbd9601c0d432ea67f.zip | |
[console] Add facility for rudimentary keyboard mapping
Allow for remapping of ASCII characters returned by the BIOS, using a
map consisting of (from,to) pairs.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/ipxe/keymap.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/include/ipxe/keymap.h b/src/include/ipxe/keymap.h new file mode 100644 index 000000000..9ac42a6b1 --- /dev/null +++ b/src/include/ipxe/keymap.h @@ -0,0 +1,30 @@ +#ifndef _IPXE_KEYMAP_H +#define _IPXE_KEYMAP_H + +/** + * @file + * + * Keyboard mappings + * + */ + +FILE_LICENCE ( GPL2_OR_LATER ); + +#include <stdint.h> +#include <ipxe/tables.h> + +/** A keyboard mapping */ +struct key_mapping { + /** Character read from keyboard */ + uint8_t from; + /** Character to be used instead */ + uint8_t to; +} __attribute__ (( packed )); + +/** Keyboard mapping table */ +#define KEYMAP __table ( struct key_mapping, "keymap" ) + +/** Define a keyboard mapping */ +#define __keymap __table_entry ( KEYMAP, 01 ) + +#endif /* _IPXE_KEYMAP_H */ |
