diff options
-rw-r--r-- | board/eve/board.h | 4 | ||||
-rw-r--r-- | board/kukui/board.h | 1 | ||||
-rw-r--r-- | board/samus/board.h | 2 | ||||
-rw-r--r-- | common/gesture.c | 2 | ||||
-rw-r--r-- | common/motion_sense.c | 8 | ||||
-rw-r--r-- | driver/accel_lis2dw12.c | 8 | ||||
-rw-r--r-- | driver/accelgyro_bmi160.c | 10 | ||||
-rw-r--r-- | include/config.h | 6 |
8 files changed, 21 insertions, 20 deletions
diff --git a/board/eve/board.h b/board/eve/board.h index fb75e67791..3bf3dedf50 100644 --- a/board/eve/board.h +++ b/board/eve/board.h @@ -146,12 +146,12 @@ /* Enable double tap detection */ #define CONFIG_GESTURE_DETECTION #define CONFIG_GESTURE_HOST_DETECTION -#define CONFIG_GESTURE_SENSOR_BATTERY_TAP 1 +#define CONFIG_GESTURE_SENSOR_DOUBLE_TAP 1 #define CONFIG_GESTURE_SAMPLING_INTERVAL_MS 5 #define CONFIG_GESTURE_TAP_THRES_MG 100 #define CONFIG_GESTURE_TAP_MAX_INTERSTICE_T 500 #define CONFIG_GESTURE_DETECTION_MASK \ - BIT(CONFIG_GESTURE_SENSOR_BATTERY_TAP) + BIT(CONFIG_GESTURE_SENSOR_DOUBLE_TAP) /* USB */ #define CONFIG_USB_CHARGER diff --git a/board/kukui/board.h b/board/kukui/board.h index f7e55e001d..4ac375b19b 100644 --- a/board/kukui/board.h +++ b/board/kukui/board.h @@ -154,6 +154,7 @@ int board_discharge_on_ac(int enable); #define CONFIG_GESTURE_DETECTION #define CONFIG_GESTURE_HOST_DETECTION #define CONFIG_GESTURE_SENSOR_DOUBLE_TAP 0 +#define CONFIG_GESTURE_SENSOR_DOUBLE_TAP_FOR_HOST #define CONFIG_GESTURE_SAMPLING_INTERVAL_MS 5 #define CONFIG_GESTURE_TAP_THRES_MG 100 #define CONFIG_GESTURE_TAP_MAX_INTERSTICE_T 500 diff --git a/board/samus/board.h b/board/samus/board.h index f4bc5f6663..1e3154c2e3 100644 --- a/board/samus/board.h +++ b/board/samus/board.h @@ -213,7 +213,7 @@ void jtag_interrupt(enum gpio_signal signal); void set_pp5000_in_g3(int mask, int enable); /* Define for sensor tasks */ -#define CONFIG_GESTURE_SENSOR_BATTERY_TAP 0 +#define CONFIG_GESTURE_SENSOR_DOUBLE_TAP 0 #define CONFIG_GESTURE_TAP_OUTER_WINDOW_T 200 #define CONFIG_GESTURE_TAP_INNER_WINDOW_T 30 #define CONFIG_GESTURE_TAP_MIN_INTERSTICE_T 120 diff --git a/common/gesture.c b/common/gesture.c index b5e3c99851..86039e33bb 100644 --- a/common/gesture.c +++ b/common/gesture.c @@ -67,7 +67,7 @@ enum tap_states { /* Tap sensor to use */ static struct motion_sensor_t *sensor = -&motion_sensors[CONFIG_GESTURE_SENSOR_BATTERY_TAP]; +&motion_sensors[CONFIG_GESTURE_SENSOR_DOUBLE_TAP]; /* Tap state information */ static int history_z[MAX_WINDOW]; /* Changes in Z */ diff --git a/common/motion_sense.c b/common/motion_sense.c index 7e1d06186b..ce8c3588ca 100644 --- a/common/motion_sense.c +++ b/common/motion_sense.c @@ -730,7 +730,7 @@ static void check_and_queue_gestures(uint32_t *event) /* Run gesture recognition engine */ gesture_calc(event); #endif -#ifdef CONFIG_GESTURE_DETECTION_MASK +#ifdef CONFIG_GESTURE_SENSOR_DOUBLE_TAP if (*event & TASK_EVENT_MOTION_ACTIVITY_INTERRUPT( MOTIONSENSE_ACTIVITY_DOUBLE_TAP)) { #ifdef CONFIG_GESTURE_HOST_DETECTION @@ -741,10 +741,10 @@ static void check_and_queue_gestures(uint32_t *event) * AP is ignoring double tap event, do no wake up and no * automatic disable. */ -#ifdef CONFIG_GESTURE_SENSOR_BATTERY_TAP - vector.flags = 0; -#else +#ifdef CONFIG_GESTURE_SENSOR_DOUBLE_TAP_FOR_HOST vector.flags = MOTIONSENSE_SENSOR_FLAG_WAKEUP; +#else + vector.flags = 0; #endif vector.activity = MOTIONSENSE_ACTIVITY_DOUBLE_TAP; vector.state = 1; /* triggered */ diff --git a/driver/accel_lis2dw12.c b/driver/accel_lis2dw12.c index f51f83b5ce..ba7514309f 100644 --- a/driver/accel_lis2dw12.c +++ b/driver/accel_lis2dw12.c @@ -150,7 +150,7 @@ static int lis2dw12_config_interrupt(const struct motion_sensor_t *s) return ret; #endif /* CONFIG_ACCEL_FIFO */ -#ifdef CONFIG_GESTURE_SENSOR_BATTERY_TAP +#ifdef CONFIG_GESTURE_SENSOR_DOUBLE_TAP /* * Configure D-TAP event detection on 3 axis. * For more details please refer to AN5038. @@ -186,7 +186,7 @@ static int lis2dw12_config_interrupt(const struct motion_sensor_t *s) ret = st_write_data_with_mask(s, LIS2DW12_INT1_TAP_ADDR, LIS2DW12_INT1_DTAP_MASK, LIS2DW12_EN_BIT); -#endif /* CONFIG_GESTURE_SENSOR_BATTERY_TAP */ +#endif /* CONFIG_GESTURE_SENSOR_DOUBLE_TAP */ return ret; } @@ -221,7 +221,7 @@ static int lis2dw12_irq_handler(struct motion_sensor_t *s, uint32_t *event) return EC_ERROR_NOT_HANDLED; } -#ifdef CONFIG_GESTURE_SENSOR_BATTERY_TAP +#ifdef CONFIG_GESTURE_SENSOR_DOUBLE_TAP { int status = 0; @@ -231,7 +231,7 @@ static int lis2dw12_irq_handler(struct motion_sensor_t *s, uint32_t *event) if (status & LIS2DW12_DOUBLE_TAP) *event |= CONFIG_GESTURE_TAP_EVENT; } -#endif /* CONFIG_GESTURE_SENSOR_BATTERY_TAP */ +#endif /* CONFIG_GESTURE_SENSOR_DOUBLE_TAP */ #ifdef CONFIG_ACCEL_FIFO { diff --git a/driver/accelgyro_bmi160.c b/driver/accelgyro_bmi160.c index 41ac393b23..e46a367b6a 100644 --- a/driver/accelgyro_bmi160.c +++ b/driver/accelgyro_bmi160.c @@ -772,7 +772,7 @@ int manage_activity(const struct motion_sensor_t *s, break; } #endif -#ifdef CONFIG_GESTURE_DETECTION_MASK +#ifdef CONFIG_GESTURE_SENSOR_DOUBLE_TAP case MOTIONSENSE_ACTIVITY_DOUBLE_TAP: { int tmp; /* Set double tap interrupt */ @@ -1059,7 +1059,7 @@ static int config_interrupt(const struct motion_sensor_t *s) raw_write8(s->port, s->i2c_spi_addr_flags, BMI160_CMD_REG, BMI160_CMD_INT_RESET); -#ifdef CONFIG_GESTURE_DETECTION_MASK +#ifdef CONFIG_GESTURE_SENSOR_DOUBLE_TAP raw_write8(s->port, s->i2c_spi_addr_flags, BMI160_INT_TAP_0, BMI160_TAP_DUR(s, CONFIG_GESTURE_TAP_MAX_INTERSTICE_T)); @@ -1099,7 +1099,7 @@ static int config_interrupt(const struct motion_sensor_t *s) #ifdef CONFIG_GESTURE_SIGMO tmp |= BMI160_INT_ANYMOTION; #endif -#ifdef CONFIG_GESTURE_DETECTION_MASK +#ifdef CONFIG_GESTURE_SENSOR_DOUBLE_TAP tmp |= BMI160_INT_D_TAP; #endif #ifdef CONFIG_BMI160_ORIENTATION_SENSOR @@ -1207,7 +1207,7 @@ static int irq_handler(struct motion_sensor_t *s, uint32_t *event) if (rv) return rv; -#ifdef CONFIG_GESTURE_DETECTION_MASK +#ifdef CONFIG_GESTURE_SENSOR_DOUBLE_TAP if (interrupt & BMI160_D_TAP_INT) *event |= TASK_EVENT_MOTION_ACTIVITY_INTERRUPT( MOTIONSENSE_ACTIVITY_DOUBLE_TAP); @@ -1311,7 +1311,7 @@ static int init(const struct motion_sensor_t *s) data->disabled_activities |= 1 << MOTIONSENSE_ACTIVITY_SIG_MOTION; #endif -#ifdef CONFIG_GESTURE_DETECTION_MASK +#ifdef CONFIG_GESTURE_SENSOR_DOUBLE_TAP data->disabled_activities |= 1 << MOTIONSENSE_ACTIVITY_DOUBLE_TAP; #endif diff --git a/include/config.h b/include/config.h index 138a19b6d4..c51fd4d4d1 100644 --- a/include/config.h +++ b/include/config.h @@ -1933,12 +1933,12 @@ /* Sensor sampling interval for gesture recognition */ #undef CONFIG_GESTURE_SAMPLING_INTERVAL_MS -/* Which sensor to look for battery tap recognition */ -#undef CONFIG_GESTURE_SENSOR_BATTERY_TAP - /* Which sensor to look for double tap recognition */ #undef CONFIG_GESTURE_SENSOR_DOUBLE_TAP +/* Use for waking up host */ +#undef CONFIG_GESTURE_SENSOR_DOUBLE_TAP_FOR_HOST + /* * Double tap detection parameters * Double tap works by looking for two isolated Z-axis accelerometer impulses |