summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael5 Chen <michael5_chen@pegatroncorp.com>2019-10-01 18:28:23 +0800
committerCommit Bot <commit-bot@chromium.org>2019-10-14 05:21:51 +0000
commitffc5335db7e1f15cd5a4d4b48932ad7054a3315e (patch)
treea9659b0ab6a14b565532d357debc42f96958612f
parent2972a3ec086dd1b09347a16543638ecc270beffe (diff)
downloadchrome-ec-ffc5335db7e1f15cd5a4d4b48932ad7054a3315e.tar.gz
helios: Support GMR sensor for rev2 board
BUG=b:141723737 BRANCH=Master TEST=Manual Check tablet mode behavior for board version 1 and 2. Change-Id: Iea992b726d9c5a8e4562362dbd24aec8460742c4 Signed-off-by: Michael5 Chen <michael5_chen@pegatroncorp.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1831933 Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
-rw-r--r--board/helios/board.c12
-rw-r--r--board/helios/board.h4
-rw-r--r--board/helios/gpio.inc1
3 files changed, 16 insertions, 1 deletions
diff --git a/board/helios/board.c b/board/helios/board.c
index 85a7882706..bb13c5531c 100644
--- a/board/helios/board.c
+++ b/board/helios/board.c
@@ -117,6 +117,18 @@ static void board_lid_interrupt(enum gpio_signal signal)
lid_interrupt(signal);
}
+static void board_gmr_tablet_switch_isr(enum gpio_signal signal)
+{
+ /*
+ * For board version more than 2, the DUT support GMR sensor.
+ * Else, blocked tablet_mode interrupt.
+ */
+ if (get_board_id() < 2)
+ return;
+
+ gmr_tablet_switch_isr(signal);
+}
+
#include "gpio_list.h" /* Must come after other header files. */
/******************************************************************************/
diff --git a/board/helios/board.h b/board/helios/board.h
index b83c3fd61d..98bfb7fb80 100644
--- a/board/helios/board.h
+++ b/board/helios/board.h
@@ -40,6 +40,9 @@
#define CONFIG_LID_ANGLE_SENSOR_BASE BASE_ACCEL
#define CONFIG_LID_ANGLE_SENSOR_LID LID_ACCEL
#define CONFIG_LID_ANGLE_UPDATE
+#define CONFIG_GMR_TABLET_MODE
+#define GMR_TABLET_MODE_GPIO_L GPIO_TABLET_MODE_L
+
/* OPT3001 ALS */
#define CONFIG_ALS
#define ALS_COUNT 1
@@ -74,7 +77,6 @@
#define CONFIG_STEINHART_HART_3V3_30K9_47K_4050B
/* DPTF */
-#define CONFIG_DPTF_MOTION_LID_NO_GMR_SENSOR
#define CONFIG_DPTF_MULTI_PROFILE
/*
diff --git a/board/helios/gpio.inc b/board/helios/gpio.inc
index 316709e6d9..25b3f9146e 100644
--- a/board/helios/gpio.inc
+++ b/board/helios/gpio.inc
@@ -10,6 +10,7 @@
/* Wake Source interrupts */
GPIO_INT(LID_OPEN, PIN(D, 2), GPIO_INT_BOTH | GPIO_HIB_WAKE_HIGH, board_lid_interrupt)
+GPIO_INT(TABLET_MODE_L, PIN(C, 7), GPIO_INT_BOTH, board_gmr_tablet_switch_isr)
GPIO_INT(WP_L, PIN(A, 1), GPIO_INT_BOTH, switch_interrupt) /* EC_WP_ODL */
GPIO_INT(POWER_BUTTON_L, PIN(0, 1), GPIO_INT_BOTH, power_button_interrupt) /* MECH_PWR_BTN_ODL */
GPIO_INT(ACOK_OD, PIN(0, 0), GPIO_INT_BOTH | GPIO_HIB_WAKE_HIGH, extpower_interrupt)