From 0f0407ea30c87898d5efee7db5fb874f57c4ec19 Mon Sep 17 00:00:00 2001 From: Ondrej Jirman Date: Sun, 3 Apr 2022 16:16:26 +0200 Subject: [PATCH 535/544] Revert "input: kb151: Move default keymap to the drvier" This reverts commit fa236c3c7a3afbf487ed12be021135053db97fa6. --- drivers/input/keyboard/kb151.c | 135 +++------------------------------ 1 file changed, 12 insertions(+), 123 deletions(-) diff --git a/drivers/input/keyboard/kb151.c b/drivers/input/keyboard/kb151.c index 41a68f0c3988..bb6250efe934 100644 --- a/drivers/input/keyboard/kb151.c +++ b/drivers/input/keyboard/kb151.c @@ -1,12 +1,10 @@ // SPDX-License-Identifier: GPL-2.0-only // // Copyright (C) 2021 Samuel Holland -// Copyright (C) 2022 Ondřej Jirman #include #include #include -#include #include #include #include @@ -14,113 +12,16 @@ #define KB151_CRC8_POLYNOMIAL 0x07 #define KB151_DEVICE_ID_HI 0x00 -#define KB151_DEVICE_ID_HI_VALUE 0x4b +#define KB151_DEVICE_ID_HI_VALUE 0x4b #define KB151_DEVICE_ID_LO 0x01 -#define KB151_DEVICE_ID_LO_VALUE 0x42 +#define KB151_DEVICE_ID_LO_VALUE 0x42 #define KB151_FW_REVISION 0x02 #define KB151_FW_FEATURES 0x03 #define KB151_MATRIX_SIZE 0x06 #define KB151_SCAN_CRC 0x07 #define KB151_SCAN_DATA 0x08 #define KB151_SYS_CONFIG 0x20 -#define KB151_SYS_CONFIG_DISABLE_SCAN BIT(0) - -/* default regmap from the factory */ - -#define DEFAULT_MAP_ROWS 12 -#define DEFAULT_MAP_COLS 12 - -static const u32 kb151_default_keymap[] = { - MATRIX_KEY(0, 0, KEY_ESC), - MATRIX_KEY(0, 1, KEY_1), - MATRIX_KEY(0, 2, KEY_2), - MATRIX_KEY(0, 3, KEY_3), - MATRIX_KEY(0, 4, KEY_4), - MATRIX_KEY(0, 5, KEY_5), - MATRIX_KEY(0, 6, KEY_6), - MATRIX_KEY(0, 7, KEY_7), - MATRIX_KEY(0, 8, KEY_8), - MATRIX_KEY(0, 9, KEY_9), - MATRIX_KEY(0, 10, KEY_0), - MATRIX_KEY(0, 11, KEY_BACKSPACE), - MATRIX_KEY(1, 0, KEY_TAB), - MATRIX_KEY(1, 1, KEY_Q), - MATRIX_KEY(1, 2, KEY_W), - MATRIX_KEY(1, 3, KEY_E), - MATRIX_KEY(1, 4, KEY_R), - MATRIX_KEY(1, 5, KEY_T), - MATRIX_KEY(1, 6, KEY_Y), - MATRIX_KEY(1, 7, KEY_U), - MATRIX_KEY(1, 8, KEY_I), - MATRIX_KEY(1, 9, KEY_O), - MATRIX_KEY(1, 10, KEY_P), - MATRIX_KEY(1, 11, KEY_ENTER), - MATRIX_KEY(2, 0, KEY_LEFTMETA), - MATRIX_KEY(2, 1, KEY_A), - MATRIX_KEY(2, 2, KEY_S), - MATRIX_KEY(2, 3, KEY_D), - MATRIX_KEY(2, 4, KEY_F), - MATRIX_KEY(2, 5, KEY_G), - MATRIX_KEY(2, 6, KEY_H), - MATRIX_KEY(2, 7, KEY_J), - MATRIX_KEY(2, 8, KEY_K), - MATRIX_KEY(2, 9, KEY_L), - MATRIX_KEY(2, 10, KEY_SEMICOLON), - MATRIX_KEY(3, 0, KEY_LEFTSHIFT), - MATRIX_KEY(3, 1, KEY_Z), - MATRIX_KEY(3, 2, KEY_X), - MATRIX_KEY(3, 3, KEY_C), - MATRIX_KEY(3, 4, KEY_V), - MATRIX_KEY(3, 5, KEY_B), - MATRIX_KEY(3, 6, KEY_N), - MATRIX_KEY(3, 7, KEY_M), - MATRIX_KEY(3, 8, KEY_COMMA), - MATRIX_KEY(3, 9, KEY_DOT), - MATRIX_KEY(3, 10, KEY_SLASH), - MATRIX_KEY(4, 1, KEY_LEFTCTRL), - MATRIX_KEY(4, 4, KEY_SPACE), - MATRIX_KEY(4, 6, KEY_APOSTROPHE), - MATRIX_KEY(4, 8, KEY_RIGHTBRACE), - MATRIX_KEY(4, 9, KEY_LEFTBRACE), - MATRIX_KEY(5, 2, KEY_FN), - MATRIX_KEY(5, 3, KEY_LEFTALT), - MATRIX_KEY(5, 5, KEY_RIGHTALT), - - /* FN layer */ - MATRIX_KEY(6, 1, KEY_BACKSLASH), // | - MATRIX_KEY(6, 2, KEY_BACKSLASH), - MATRIX_KEY(6, 3, KEY_DOLLAR), - MATRIX_KEY(6, 4, KEY_EURO), - MATRIX_KEY(6, 5, KEY_GRAVE), // ~ - MATRIX_KEY(6, 6, KEY_GRAVE), - MATRIX_KEY(6, 7, KEY_MINUS), // _ - MATRIX_KEY(6, 8, KEY_EQUAL), - MATRIX_KEY(6, 9, KEY_MINUS), - MATRIX_KEY(6, 10, KEY_EQUAL), - MATRIX_KEY(6, 11, KEY_DELETE), - - MATRIX_KEY(8, 0, KEY_SYSRQ), - MATRIX_KEY(8, 10, KEY_INSERT), - - MATRIX_KEY(9, 0, KEY_LEFTSHIFT), - MATRIX_KEY(9, 8, KEY_HOME), - MATRIX_KEY(9, 9, KEY_UP), - MATRIX_KEY(9, 10, KEY_END), - - MATRIX_KEY(10, 1, KEY_LEFTCTRL), - MATRIX_KEY(10, 6, KEY_LEFT), - MATRIX_KEY(10, 8, KEY_RIGHT), - MATRIX_KEY(10, 9, KEY_DOWN), - - MATRIX_KEY(11, 2, KEY_FN), - MATRIX_KEY(11, 3, KEY_LEFTALT), - MATRIX_KEY(11, 5, KEY_RIGHTALT), -}; - -static const struct matrix_keymap_data kb151_default_keymap_data = { - .keymap = kb151_default_keymap, - .keymap_size = ARRAY_SIZE(kb151_default_keymap), -}; +#define KB151_SYS_CONFIG_DISABLE_SCAN BIT(0) struct kb151 { struct input_dev *input; @@ -185,9 +86,8 @@ static void kb151_update(struct i2c_client *client) dev_dbg(&client->dev, "FN is now %s\n", pressed ? "pressed" : "released"); kb151->fn_state = pressed; - } else { - input_report_key(kb151->input, keymap[code], pressed); - } + } else + input_report_key(kb151->input, keymap[code], pressed); } } input_sync(kb151->input); @@ -256,36 +156,26 @@ static int kb151_probe(struct i2c_client *client) struct device *dev = &client->dev; u8 info[KB151_MATRIX_SIZE + 1]; unsigned int kb_rows, kb_cols; - unsigned int map_rows = DEFAULT_MAP_ROWS, map_cols = DEFAULT_MAP_COLS; + unsigned int map_rows, map_cols; struct kb151 *kb151; - bool has_of_keymap; int ret; - has_of_keymap = of_property_read_bool(dev->of_node, "linux,keymap"); - ret = i2c_smbus_read_i2c_block_data(client, 0, sizeof(info), info); - if (ret != sizeof(info)) { - dev_err(dev, "KB151 was not detected on the bus (%d)\n", ret); + if (ret != sizeof(info)) return ret; - } if (info[KB151_DEVICE_ID_HI] != KB151_DEVICE_ID_HI_VALUE || - info[KB151_DEVICE_ID_LO] != KB151_DEVICE_ID_LO_VALUE) { - dev_warn(dev, "Device on address %hu doesn't look like KB151\n", - client->addr); + info[KB151_DEVICE_ID_LO] != KB151_DEVICE_ID_LO_VALUE) return -ENODEV; - } dev_info(dev, "Found KB151 with firmware %d.%d (features=%#x)\n", info[KB151_FW_REVISION] >> 4, info[KB151_FW_REVISION] & 0xf, info[KB151_FW_FEATURES]); - if (has_of_keymap) { - ret = matrix_keypad_parse_properties(dev, &map_rows, &map_cols); - if (ret) - return ret; - } + ret = matrix_keypad_parse_properties(dev, &map_rows, &map_cols); + if (ret) + return ret; kb_rows = info[KB151_MATRIX_SIZE] & 0xf; kb_cols = info[KB151_MATRIX_SIZE] >> 4; @@ -322,8 +212,7 @@ static int kb151_probe(struct i2c_client *client) __set_bit(EV_REP, kb151->input->evbit); - ret = matrix_keypad_build_keymap(has_of_keymap ? NULL : &kb151_default_keymap_data, - NULL, map_rows, map_cols, + ret = matrix_keypad_build_keymap(NULL, NULL, map_rows, map_cols, NULL, kb151->input); if (ret) return dev_err_probe(dev, ret, "Failed to build keymap\n"); -- 2.34.1