summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Lee <mike5@huaqin.corp-partner.google.com>2021-03-12 20:55:01 +0800
committerCommit Bot <commit-bot@chromium.org>2021-03-16 17:21:08 +0000
commitf6bc0dfffca27571f24ba97aa2f67caa7a386fc5 (patch)
tree9ae410484acf3f74a4f5e4e702039bfad2a3b774
parent4b600b1b7609ce301fa4d57a15f7dedd874eba2c (diff)
downloadchrome-ec-f6bc0dfffca27571f24ba97aa2f67caa7a386fc5.tar.gz
blipper: support keypad function
Enable keypad function BUG=b:182018600 BRANCH=dedede TEST=make BOARD=blipper pass, then test keypad function ok Signed-off-by: Mike Lee <mike5@huaqin.corp-partner.google.com> Change-Id: I313ceba51290ea8968ca25962551431d73518184 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2755358 Reviewed-by: Henry Sun <henrysun@google.com> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
-rw-r--r--board/blipper/board.c30
-rw-r--r--board/blipper/board.h3
2 files changed, 33 insertions, 0 deletions
diff --git a/board/blipper/board.c b/board/blipper/board.c
index 5cb2390474..d1b4b08c2a 100644
--- a/board/blipper/board.c
+++ b/board/blipper/board.c
@@ -19,6 +19,7 @@
#include "gpio.h"
#include "hooks.h"
#include "intc.h"
+#include "keyboard_raw.h"
#include "keyboard_scan.h"
#include "lid_switch.h"
#include "power.h"
@@ -175,6 +176,29 @@ const struct usb_mux usb_muxes[CONFIG_USB_PD_PORT_MAX_COUNT] = {
},
};
+static const struct ec_response_keybd_config blipper_keybd = {
+ .num_top_row_keys = 10,
+ .action_keys = {
+ TK_BACK, /* T1 */
+ TK_FORWARD, /* T2 */
+ TK_REFRESH, /* T3 */
+ TK_FULLSCREEN, /* T4 */
+ TK_OVERVIEW, /* T5 */
+ TK_BRIGHTNESS_DOWN, /* T6 */
+ TK_BRIGHTNESS_UP, /* T7 */
+ TK_VOL_MUTE, /* T8 */
+ TK_VOL_DOWN, /* T9 */
+ TK_VOL_UP, /* T10 */
+ },
+ .capabilities = KEYBD_CAP_SCRNLOCK_KEY | KEYBD_CAP_NUMERIC_KEYPAD,
+};
+
+__override const struct ec_response_keybd_config
+*board_vivaldi_keybd_config(void)
+{
+ return &blipper_keybd;
+}
+
void board_init(void)
{
gpio_enable_interrupt(GPIO_USB_C0_INT_ODL);
@@ -195,6 +219,12 @@ void board_init(void)
*/
if (!gpio_get_level(GPIO_USB_C0_INT_ODL))
hook_call_deferred(&check_c0_line_data, 0);
+
+ /* Setting scan mask KSO11, KSO12, KSO13 and KSO14 */
+ keyscan_config.actual_key_mask[11] = 0xfe;
+ keyscan_config.actual_key_mask[12] = 0xff;
+ keyscan_config.actual_key_mask[13] = 0xff;
+ keyscan_config.actual_key_mask[14] = 0xff;
}
DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_DEFAULT);
diff --git a/board/blipper/board.h b/board/blipper/board.h
index d3905df9ab..cf1809232d 100644
--- a/board/blipper/board.h
+++ b/board/blipper/board.h
@@ -66,6 +66,9 @@
/* USB Mux */
#define CONFIG_USB_MUX_IT5205
+/* KeyBoard */
+#define CONFIG_KEYBOARD_KEYPAD
+
#ifndef __ASSEMBLER__
#include "gpio_signal.h"