Input: tegra-kbc - remove default keymap
authorLaxman Dewangan <ldewangan@nvidia.com>
Mon, 7 Jan 2013 02:34:48 +0000 (18:34 -0800)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 17 Jan 2013 08:28:02 +0000 (00:28 -0800)
Tegra KBC driver have the default key mapping for 16x8 configuration.
The key mapping can be provided through platform data or through DT
and the mapping varies from platform to platform, hence this default
mapping is not so useful. Remove the default mapping to reduce the code
lines of the driver.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/keyboard/tegra-kbc.c

index 39ef663bb38f3ee2a1a1920528da89fa8512e6e5..4526bdd3602259d25aa908ff4feb24da8665362e 100644 (file)
@@ -87,147 +87,6 @@ struct tegra_kbc {
        struct clk *clk;
 };
 
-static const u32 tegra_kbc_default_keymap[] = {
-       KEY(0, 2, KEY_W),
-       KEY(0, 3, KEY_S),
-       KEY(0, 4, KEY_A),
-       KEY(0, 5, KEY_Z),
-       KEY(0, 7, KEY_FN),
-
-       KEY(1, 7, KEY_LEFTMETA),
-
-       KEY(2, 6, KEY_RIGHTALT),
-       KEY(2, 7, KEY_LEFTALT),
-
-       KEY(3, 0, KEY_5),
-       KEY(3, 1, KEY_4),
-       KEY(3, 2, KEY_R),
-       KEY(3, 3, KEY_E),
-       KEY(3, 4, KEY_F),
-       KEY(3, 5, KEY_D),
-       KEY(3, 6, KEY_X),
-
-       KEY(4, 0, KEY_7),
-       KEY(4, 1, KEY_6),
-       KEY(4, 2, KEY_T),
-       KEY(4, 3, KEY_H),
-       KEY(4, 4, KEY_G),
-       KEY(4, 5, KEY_V),
-       KEY(4, 6, KEY_C),
-       KEY(4, 7, KEY_SPACE),
-
-       KEY(5, 0, KEY_9),
-       KEY(5, 1, KEY_8),
-       KEY(5, 2, KEY_U),
-       KEY(5, 3, KEY_Y),
-       KEY(5, 4, KEY_J),
-       KEY(5, 5, KEY_N),
-       KEY(5, 6, KEY_B),
-       KEY(5, 7, KEY_BACKSLASH),
-
-       KEY(6, 0, KEY_MINUS),
-       KEY(6, 1, KEY_0),
-       KEY(6, 2, KEY_O),
-       KEY(6, 3, KEY_I),
-       KEY(6, 4, KEY_L),
-       KEY(6, 5, KEY_K),
-       KEY(6, 6, KEY_COMMA),
-       KEY(6, 7, KEY_M),
-
-       KEY(7, 1, KEY_EQUAL),
-       KEY(7, 2, KEY_RIGHTBRACE),
-       KEY(7, 3, KEY_ENTER),
-       KEY(7, 7, KEY_MENU),
-
-       KEY(8, 4, KEY_RIGHTSHIFT),
-       KEY(8, 5, KEY_LEFTSHIFT),
-
-       KEY(9, 5, KEY_RIGHTCTRL),
-       KEY(9, 7, KEY_LEFTCTRL),
-
-       KEY(11, 0, KEY_LEFTBRACE),
-       KEY(11, 1, KEY_P),
-       KEY(11, 2, KEY_APOSTROPHE),
-       KEY(11, 3, KEY_SEMICOLON),
-       KEY(11, 4, KEY_SLASH),
-       KEY(11, 5, KEY_DOT),
-
-       KEY(12, 0, KEY_F10),
-       KEY(12, 1, KEY_F9),
-       KEY(12, 2, KEY_BACKSPACE),
-       KEY(12, 3, KEY_3),
-       KEY(12, 4, KEY_2),
-       KEY(12, 5, KEY_UP),
-       KEY(12, 6, KEY_PRINT),
-       KEY(12, 7, KEY_PAUSE),
-
-       KEY(13, 0, KEY_INSERT),
-       KEY(13, 1, KEY_DELETE),
-       KEY(13, 3, KEY_PAGEUP),
-       KEY(13, 4, KEY_PAGEDOWN),
-       KEY(13, 5, KEY_RIGHT),
-       KEY(13, 6, KEY_DOWN),
-       KEY(13, 7, KEY_LEFT),
-
-       KEY(14, 0, KEY_F11),
-       KEY(14, 1, KEY_F12),
-       KEY(14, 2, KEY_F8),
-       KEY(14, 3, KEY_Q),
-       KEY(14, 4, KEY_F4),
-       KEY(14, 5, KEY_F3),
-       KEY(14, 6, KEY_1),
-       KEY(14, 7, KEY_F7),
-
-       KEY(15, 0, KEY_ESC),
-       KEY(15, 1, KEY_GRAVE),
-       KEY(15, 2, KEY_F5),
-       KEY(15, 3, KEY_TAB),
-       KEY(15, 4, KEY_F1),
-       KEY(15, 5, KEY_F2),
-       KEY(15, 6, KEY_CAPSLOCK),
-       KEY(15, 7, KEY_F6),
-
-       /* Software Handled Function Keys */
-       KEY(20, 0, KEY_KP7),
-
-       KEY(21, 0, KEY_KP9),
-       KEY(21, 1, KEY_KP8),
-       KEY(21, 2, KEY_KP4),
-       KEY(21, 4, KEY_KP1),
-
-       KEY(22, 1, KEY_KPSLASH),
-       KEY(22, 2, KEY_KP6),
-       KEY(22, 3, KEY_KP5),
-       KEY(22, 4, KEY_KP3),
-       KEY(22, 5, KEY_KP2),
-       KEY(22, 7, KEY_KP0),
-
-       KEY(27, 1, KEY_KPASTERISK),
-       KEY(27, 3, KEY_KPMINUS),
-       KEY(27, 4, KEY_KPPLUS),
-       KEY(27, 5, KEY_KPDOT),
-
-       KEY(28, 5, KEY_VOLUMEUP),
-
-       KEY(29, 3, KEY_HOME),
-       KEY(29, 4, KEY_END),
-       KEY(29, 5, KEY_BRIGHTNESSDOWN),
-       KEY(29, 6, KEY_VOLUMEDOWN),
-       KEY(29, 7, KEY_BRIGHTNESSUP),
-
-       KEY(30, 0, KEY_NUMLOCK),
-       KEY(30, 1, KEY_SCROLLLOCK),
-       KEY(30, 2, KEY_MUTE),
-
-       KEY(31, 4, KEY_HELP),
-};
-
-static const
-struct matrix_keymap_data tegra_kbc_default_keymap_data = {
-       .keymap         = tegra_kbc_default_keymap,
-       .keymap_size    = ARRAY_SIZE(tegra_kbc_default_keymap),
-};
-
 static void tegra_kbc_report_released_keys(struct input_dev *input,
                                           unsigned short old_keycodes[],
                                           unsigned int old_num_keys,
@@ -704,33 +563,6 @@ static inline struct tegra_kbc_platform_data *tegra_kbc_dt_parse_pdata(
 }
 #endif
 
-static int tegra_kbd_setup_keymap(struct tegra_kbc *kbc)
-{
-       const struct tegra_kbc_platform_data *pdata = kbc->pdata;
-       const struct matrix_keymap_data *keymap_data = pdata->keymap_data;
-       unsigned int keymap_rows = KBC_MAX_KEY;
-       int retval;
-
-       if (keymap_data && pdata->use_fn_map)
-               keymap_rows *= 2;
-
-       retval = matrix_keypad_build_keymap(keymap_data, NULL,
-                                           keymap_rows, KBC_MAX_COL,
-                                           kbc->keycode, kbc->idev);
-       if (retval == -ENOSYS || retval == -ENOENT) {
-               /*
-                * If there is no OF support in kernel or keymap
-                * property is missing, use default keymap.
-                */
-               retval = matrix_keypad_build_keymap(
-                                       &tegra_kbc_default_keymap_data, NULL,
-                                       keymap_rows, KBC_MAX_COL,
-                                       kbc->keycode, kbc->idev);
-       }
-
-       return retval;
-}
-
 static int tegra_kbc_probe(struct platform_device *pdev)
 {
        const struct tegra_kbc_platform_data *pdata = pdev->dev.platform_data;
@@ -742,6 +574,7 @@ static int tegra_kbc_probe(struct platform_device *pdev)
        int num_rows = 0;
        unsigned int debounce_cnt;
        unsigned int scan_time_rows;
+       unsigned int keymap_rows = KBC_MAX_KEY;
 
        if (!pdata)
                pdata = tegra_kbc_dt_parse_pdata(pdev);
@@ -815,7 +648,12 @@ static int tegra_kbc_probe(struct platform_device *pdev)
        input_dev->open = tegra_kbc_open;
        input_dev->close = tegra_kbc_close;
 
-       err = tegra_kbd_setup_keymap(kbc);
+       if (pdata->keymap_data && pdata->use_fn_map)
+               keymap_rows *= 2;
+
+       err = matrix_keypad_build_keymap(pdata->keymap_data, NULL,
+                                        keymap_rows, KBC_MAX_COL,
+                                        kbc->keycode, input_dev);
        if (err) {
                dev_err(&pdev->dev, "failed to setup keymap\n");
                return err;