mirror of https://github.com/ipxe/ipxe.git
[console] Ensure that US keyboard map appears at start of linker table
Signed-off-by: Michael Brown <mcb30@ipxe.org>pull/594/head
parent
252cff5e9a
commit
11e17991d0
|
@ -21,7 +21,7 @@ static struct keymap_key us_altgr[] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
/** "us" keyboard map */
|
/** "us" keyboard map */
|
||||||
struct keymap us_keymap __keymap = {
|
struct keymap us_keymap __keymap_default = {
|
||||||
.name = "us",
|
.name = "us",
|
||||||
.basic = us_basic,
|
.basic = us_basic,
|
||||||
.altgr = us_altgr,
|
.altgr = us_altgr,
|
||||||
|
|
|
@ -39,8 +39,11 @@ struct keymap {
|
||||||
/** Keyboard mapping table */
|
/** Keyboard mapping table */
|
||||||
#define KEYMAP __table ( struct keymap, "keymap" )
|
#define KEYMAP __table ( struct keymap, "keymap" )
|
||||||
|
|
||||||
|
/** Define a default keyboard mapping */
|
||||||
|
#define __keymap_default __table_entry ( KEYMAP, 01 )
|
||||||
|
|
||||||
/** Define a keyboard mapping */
|
/** Define a keyboard mapping */
|
||||||
#define __keymap __table_entry ( KEYMAP, 01 )
|
#define __keymap __table_entry ( KEYMAP, 02 )
|
||||||
|
|
||||||
/** Mappable character mask */
|
/** Mappable character mask */
|
||||||
#define KEYMAP_MASK 0xff
|
#define KEYMAP_MASK 0xff
|
||||||
|
|
|
@ -399,6 +399,7 @@ class Keymap:
|
||||||
keymap_name = self.cname("keymap")
|
keymap_name = self.cname("keymap")
|
||||||
basic_name = self.cname("basic")
|
basic_name = self.cname("basic")
|
||||||
altgr_name = self.cname("altgr")
|
altgr_name = self.cname("altgr")
|
||||||
|
attribute = "__keymap_default" if self.name == "us" else "__keymap"
|
||||||
code = textwrap.dedent(f"""
|
code = textwrap.dedent(f"""
|
||||||
/** @file
|
/** @file
|
||||||
*
|
*
|
||||||
|
@ -419,7 +420,7 @@ class Keymap:
|
||||||
static struct keymap_key {altgr_name}[] = %s;
|
static struct keymap_key {altgr_name}[] = %s;
|
||||||
|
|
||||||
/** "{self.name}" keyboard map */
|
/** "{self.name}" keyboard map */
|
||||||
struct keymap {keymap_name} __keymap = {{
|
struct keymap {keymap_name} {attribute} = {{
|
||||||
\t.name = "{self.name}",
|
\t.name = "{self.name}",
|
||||||
\t.basic = {basic_name},
|
\t.basic = {basic_name},
|
||||||
\t.altgr = {altgr_name},
|
\t.altgr = {altgr_name},
|
||||||
|
|
Loading…
Reference in New Issue