|
@@ -1960,3 +1960,55 @@ static struct adp5520_leds_platform_data adp5520_leds_data = {
|
|
|
|
|
|
/*
|
|
|
* ADP5520 GPIO Data
|
|
|
+ */
|
|
|
+
|
|
|
+static struct adp5520_gpio_platform_data adp5520_gpio_data = {
|
|
|
+ .gpio_start = 50,
|
|
|
+ .gpio_en_mask = ADP5520_GPIO_C1 | ADP5520_GPIO_C2 | ADP5520_GPIO_R2,
|
|
|
+ .gpio_pullup_mask = ADP5520_GPIO_C1 | ADP5520_GPIO_C2 | ADP5520_GPIO_R2,
|
|
|
+};
|
|
|
+
|
|
|
+ /*
|
|
|
+ * ADP5520 Keypad Data
|
|
|
+ */
|
|
|
+
|
|
|
+static const unsigned short adp5520_keymap[ADP5520_KEYMAPSIZE] = {
|
|
|
+ [ADP5520_KEY(0, 0)] = KEY_GRAVE,
|
|
|
+ [ADP5520_KEY(0, 1)] = KEY_1,
|
|
|
+ [ADP5520_KEY(0, 2)] = KEY_2,
|
|
|
+ [ADP5520_KEY(0, 3)] = KEY_3,
|
|
|
+ [ADP5520_KEY(1, 0)] = KEY_4,
|
|
|
+ [ADP5520_KEY(1, 1)] = KEY_5,
|
|
|
+ [ADP5520_KEY(1, 2)] = KEY_6,
|
|
|
+ [ADP5520_KEY(1, 3)] = KEY_7,
|
|
|
+ [ADP5520_KEY(2, 0)] = KEY_8,
|
|
|
+ [ADP5520_KEY(2, 1)] = KEY_9,
|
|
|
+ [ADP5520_KEY(2, 2)] = KEY_0,
|
|
|
+ [ADP5520_KEY(2, 3)] = KEY_MINUS,
|
|
|
+ [ADP5520_KEY(3, 0)] = KEY_EQUAL,
|
|
|
+ [ADP5520_KEY(3, 1)] = KEY_BACKSLASH,
|
|
|
+ [ADP5520_KEY(3, 2)] = KEY_BACKSPACE,
|
|
|
+ [ADP5520_KEY(3, 3)] = KEY_ENTER,
|
|
|
+};
|
|
|
+
|
|
|
+static struct adp5520_keys_platform_data adp5520_keys_data = {
|
|
|
+ .rows_en_mask = ADP5520_ROW_R3 | ADP5520_ROW_R2 | ADP5520_ROW_R1 | ADP5520_ROW_R0,
|
|
|
+ .cols_en_mask = ADP5520_COL_C3 | ADP5520_COL_C2 | ADP5520_COL_C1 | ADP5520_COL_C0,
|
|
|
+ .keymap = adp5520_keymap,
|
|
|
+ .keymapsize = ARRAY_SIZE(adp5520_keymap),
|
|
|
+ .repeat = 0,
|
|
|
+};
|
|
|
+
|
|
|
+ /*
|
|
|
+ * ADP5520/5501 Multifunction Device Init Data
|
|
|
+ */
|
|
|
+
|
|
|
+static struct adp5520_platform_data adp5520_pdev_data = {
|
|
|
+ .backlight = &adp5520_backlight_data,
|
|
|
+ .leds = &adp5520_leds_data,
|
|
|
+ .gpio = &adp5520_gpio_data,
|
|
|
+ .keys = &adp5520_keys_data,
|
|
|
+};
|
|
|
+
|
|
|
+#endif
|
|
|
+
|