diff options
author | Bill Richardson <wfrichar@chromium.org> | 2014-02-06 13:10:23 -0800 |
---|---|---|
committer | chrome-internal-fetch <chrome-internal-fetch@google.com> | 2014-02-08 04:15:39 +0000 |
commit | 683beb87378afbebc24a41b532cb2480d90d5282 (patch) | |
tree | 89ce40d4d5d6e20490d0176c267b7f01533a4a2d /board | |
parent | 5c808ee56c44be4c665de6a85f5feb5cd5753f9d (diff) | |
download | chrome-ec-683beb87378afbebc24a41b532cb2480d90d5282.tar.gz |
Samus: Support capsense input as keyboard events.
This is experimental for now; the capsense chip simply reports its buttons
as the number keys on the keyboard (1-8).
BUG=chrome-os-partner:23382
BRANCH=samus,ToT
TEST=manual
To test, you'll need a reworked and correctly programmed capsense module.
Boot the system, and switch to VT2. Touch the capsense bar and you'll see
the input appear on the console as though you were typing numbers.
Note that the capsense hardware is still buggy. Refer to the bug for
workarounds.
Change-Id: I4c3a8b70b8197ffd538c38c59c9336383365afa7
Signed-off-by: Bill Richardson <wfrichar@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/185434
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Reviewed-by: Dave Parker <dparker@chromium.org>
Diffstat (limited to 'board')
-rw-r--r-- | board/samus/board.c | 5 | ||||
-rw-r--r-- | board/samus/board.h | 3 |
2 files changed, 5 insertions, 3 deletions
diff --git a/board/samus/board.c b/board/samus/board.c index de32c21c7f..c0a1325a45 100644 --- a/board/samus/board.c +++ b/board/samus/board.c @@ -8,6 +8,7 @@ #include "adc.h" #include "adc_chip.h" #include "backlight.h" +#include "capsense.h" #include "common.h" #include "driver/temp_sensor/tmp006.h" #include "driver/als_isl29035.h" @@ -64,6 +65,8 @@ const struct gpio_info gpio_list[] = { switch_interrupt}, {"PCH_BL_EN", LM4_GPIO_M, (1<<3), GPIO_INT_RISING, backlight_interrupt}, + {"CAPSENSE_INT_L", LM4_GPIO_N, (1<<0), GPIO_INT_FALLING, + capsense_interrupt}, /* Other inputs */ {"BOARD_VERSION1", LM4_GPIO_Q, (1<<5), GPIO_INPUT, NULL}, @@ -76,8 +79,6 @@ const struct gpio_info gpio_list[] = { {"USB1_STATUS_L", LM4_GPIO_E, (1<<6), GPIO_INPUT, NULL}, {"USB2_OC_L", LM4_GPIO_E, (1<<0), GPIO_INPUT, NULL}, {"USB2_STATUS_L", LM4_GPIO_D, (1<<7), GPIO_INPUT, NULL}, - /* Not yet sure if this will need to be handled as an interrupt */ - {"CAPSENSE_INT_L", LM4_GPIO_N, (1<<0), GPIO_INPUT, NULL}, /* Outputs; all unasserted by default except for reset signals */ {"CPU_PROCHOT", LM4_GPIO_B, (1<<1), GPIO_OUT_LOW, NULL}, diff --git a/board/samus/board.h b/board/samus/board.h index dc90f3b0cd..b892bd8d7c 100644 --- a/board/samus/board.h +++ b/board/samus/board.h @@ -18,6 +18,7 @@ #define CONFIG_ALS #define CONFIG_ALS_ISL29035 #define CONFIG_BOARD_VERSION +#define CONFIG_CAPSENSE #define CONFIG_POWER_COMMON #define CONFIG_CHIPSET_CAN_THROTTLE #define CONFIG_KEYBOARD_BOARD_CONFIG @@ -92,6 +93,7 @@ enum gpio_signal { GPIO_RECOVERY_L, /* Recovery signal from servo */ GPIO_WP_L, /* Write protect input */ GPIO_PCH_BL_EN, /* PCH backlight input */ + GPIO_CAPSENSE_INT_L, /* Capsense interrupt */ /* Other inputs */ GPIO_BOARD_VERSION1, /* Board version stuffing resistor 1 */ @@ -104,7 +106,6 @@ enum gpio_signal { GPIO_USB1_STATUS_L, /* USB charger port 1 status output */ GPIO_USB2_OC_L, /* USB port overcurrent warning */ GPIO_USB2_STATUS_L, /* USB charger port 2 status output */ - GPIO_CAPSENSE_INT_L, /* Capsense interrupt (through EC_WAKE_L) */ /* Outputs */ GPIO_CPU_PROCHOT, /* Force CPU to think it's overheated */ |