From 1d8b57f6b0c83cdda0c930974d7e7279a8402851 Mon Sep 17 00:00:00 2001 From: Grover Yen Date: Fri, 15 Aug 2014 17:50:05 +0800 Subject: cranky: Implement volume up/down button Based on the code cloned from rambi, implement volume up/down button. BUG=chrome-os-partner:30747 BRANCH=none TEST=make -j buildall, make -j tests Change-Id: I0097d9b6b93fd247bb1d7f4469a10db71ae959e0 Signed-off-by: Grover Yen Reviewed-on: https://chromium-review.googlesource.com/212611 Reviewed-by: Mohammed Habibulla --- board/cranky/board.c | 13 +++++++++++++ board/cranky/board.h | 3 +++ 2 files changed, 16 insertions(+) diff --git a/board/cranky/board.c b/board/cranky/board.c index d72db1fa39..04c56fe4a5 100644 --- a/board/cranky/board.c +++ b/board/cranky/board.c @@ -7,6 +7,7 @@ #include "adc.h" #include "adc_chip.h" #include "backlight.h" +#include "button.h" #include "charge_state.h" #include "charger.h" #include "common.h" @@ -64,6 +65,10 @@ const struct gpio_info gpio_list[] = { {"UART0_RX", LM4_GPIO_A, (1<<0), GPIO_INT_BOTH_DSLEEP | GPIO_PULL_UP, uart_deepsleep_interrupt}, + {"BUTTON_VOLUME_DOWN_L", LM4_GPIO_B, (1<<0), GPIO_INT_BOTH, + button_interrupt}, + {"BUTTON_VOLUME_UP_L", LM4_GPIO_B, (1<<1), GPIO_INT_BOTH, + button_interrupt}, /* Other inputs */ {"BOARD_VERSION1", LM4_GPIO_Q, (1<<5), GPIO_INPUT, NULL}, @@ -210,6 +215,14 @@ struct ec_thermal_config thermal_params[] = { }; BUILD_ASSERT(ARRAY_SIZE(thermal_params) == TEMP_SENSOR_COUNT); +const struct button_config buttons[] = { + {"Volume Down", KEYBOARD_BUTTON_VOLUME_DOWN, GPIO_BUTTON_VOLUME_DOWN_L, + 30 * MSEC, 0}, + {"Volume Up", KEYBOARD_BUTTON_VOLUME_UP, GPIO_BUTTON_VOLUME_UP_L, + 30 * MSEC, 0}, +}; +BUILD_ASSERT(ARRAY_SIZE(buttons) == CONFIG_BUTTON_COUNT); + /** * Discharge battery when on AC power for factory test. */ diff --git a/board/cranky/board.h b/board/cranky/board.h index a0d1a49a43..7241fcf6cd 100644 --- a/board/cranky/board.h +++ b/board/cranky/board.h @@ -13,6 +13,7 @@ #define CONFIG_BACKLIGHT_LID #define CONFIG_BATTERY_SMART #define CONFIG_BOARD_VERSION +#define CONFIG_BUTTON_COUNT 2 #define CONFIG_CHARGER #define CONFIG_CHARGER_BQ24715 #define CONFIG_CHARGER_DISCHARGE_ON_AC @@ -85,6 +86,8 @@ enum gpio_signal { GPIO_WP_L, /* Write protect input */ GPIO_JTAG_TCK, /* JTAG clock input */ GPIO_UART0_RX, /* UART0 RX input */ + GPIO_BUTTON_VOLUME_DOWN_L, /* Volume down button */ + GPIO_BUTTON_VOLUME_UP_L, /* Volume up button */ /* Other inputs */ GPIO_BOARD_VERSION1, /* Board version stuffing resistor 1 */ -- cgit v1.2.1