summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--board/arcada_ish/board.c8
-rw-r--r--board/arcada_ish/board.h11
-rw-r--r--board/arcada_ish/gpio.inc2
3 files changed, 19 insertions, 2 deletions
diff --git a/board/arcada_ish/board.c b/board/arcada_ish/board.c
index ce9aaece6c..6ab110e03f 100644
--- a/board/arcada_ish/board.c
+++ b/board/arcada_ish/board.c
@@ -80,6 +80,14 @@ struct motion_sensor_t motion_sensors[] = {
};
const unsigned int motion_sensor_count = ARRAY_SIZE(motion_sensors);
+/* Initialize board. */
+static void board_init(void)
+{
+ /* Enable interrupt for LSM6DS3 sensor */
+ gpio_enable_interrupt(GPIO_ACCEL_GYRO_INT_L);
+}
+DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_DEFAULT);
+
/* TODO(b/122364080): replace when implement real chipset/power task */
int chipset_in_state(int state_mask)
{
diff --git a/board/arcada_ish/board.h b/board/arcada_ish/board.h
index 348a92c6d1..fbc8ad1c8a 100644
--- a/board/arcada_ish/board.h
+++ b/board/arcada_ish/board.h
@@ -32,8 +32,15 @@
#define CONFIG_I2C_MASTER
#define CONFIG_ACCELGYRO_LSM6DSM /* For LSM6DS3 */
-/* TODO(b/123634700): This is temporary until FIFO is supported */
-#define CONFIG_ACCEL_FORCE_MODE_MASK (1 << LID_ACCEL)
+
+#define CONFIG_ACCEL_INTERRUPTS
+#define CONFIG_ACCEL_FIFO 256
+#define CONFIG_ACCEL_FIFO_THRES (CONFIG_ACCEL_FIFO / 3)
+
+#define CONFIG_ACCEL_LSM6DSM_INT_EVENT TASK_EVENT_CUSTOM(1 << 2)
+
+#define CONFIG_MKBP_EVENT
+#define CONFIG_MKBP_USE_HECI
/* Host command over HECI */
#define CONFIG_HOSTCMD_HECI
diff --git a/board/arcada_ish/gpio.inc b/board/arcada_ish/gpio.inc
index d4a819ef10..cca0d2f885 100644
--- a/board/arcada_ish/gpio.inc
+++ b/board/arcada_ish/gpio.inc
@@ -5,6 +5,8 @@
* found in the LICENSE file.
*/
+GPIO_INT(ACCEL_GYRO_INT_L, PIN(0), GPIO_INT_FALLING | GPIO_SEL_1P8V, lsm6dsm_interrupt)
+
GPIO(NB_MODE_L, PIN(4), GPIO_OUT_LOW)
GPIO(LID_CL_NB_L, PIN(5), GPIO_INPUT)
GPIO(LID_CL_TAB_L, PIN(6), GPIO_INPUT)