diff options
Diffstat (limited to 'board/lantis/board.c')
-rw-r--r-- | board/lantis/board.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/board/lantis/board.c b/board/lantis/board.c index 44e117ee9a..f8c8b2e477 100644 --- a/board/lantis/board.c +++ b/board/lantis/board.c @@ -26,6 +26,7 @@ #include "hooks.h" #include "intc.h" #include "keyboard_8042.h" +#include "keyboard_8042_sharedlib.h" #include "keyboard_raw.h" #include "keyboard_scan.h" #include "lid_switch.h" @@ -376,7 +377,7 @@ struct motion_sensor_t motion_sensors[] = { .port = I2C_PORT_SENSOR, .i2c_spi_addr_flags = LSM6DSM_ADDR0_FLAGS, .default_range = 1000 | ROUND_UP_FLAG, /* dps */ - .rot_standard_ref = NULL, + .rot_standard_ref = &base_standard_ref, .min_frequency = LSM6DSM_ODR_MIN_VAL, .max_frequency = LSM6DSM_ODR_MAX_VAL, }, @@ -531,6 +532,17 @@ static void board_update_no_keypad_by_fwconfig(void) } } +static void board_update_keyboard_layout(void) +{ + if (get_cbi_fw_config_keyboard() == KB_LAYOUT_1) { + /* + * If keyboard is UK(KB_LAYOUT_1), we need translate right ctrl + * to backslash(\|) key. + */ + set_scancode_set2(4, 0, get_scancode_set2(2, 7)); + } +} + void board_init(void) { int on; @@ -592,6 +604,7 @@ void board_init(void) board_power_5v_enable(on); board_update_no_keypad_by_fwconfig(); + board_update_keyboard_layout(); } DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_DEFAULT); |