From b2f2f14d56da34c442127a0351ccd7dc3061a5c9 Mon Sep 17 00:00:00 2001 From: "daehan.wi" <daehan.wi@samsung.com> Date: Wed, 17 Dec 2014 22:17:07 +0900 Subject: [PATCH] sprat: sensors: Fixed error to generate data for noncontinuous sensor Bug: 18764637 Change-Id: I899c5396848c527324cf5ce0afc01ec848bf4f61 Signed-off-by: daehan.wi <daehan.wi@samsung.com> --- drivers/sensorhub/stm/ssp_data.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/sensorhub/stm/ssp_data.c b/drivers/sensorhub/stm/ssp_data.c index 428c815cd193..2410a4f0a467 100644 --- a/drivers/sensorhub/stm/ssp_data.c +++ b/drivers/sensorhub/stm/ssp_data.c @@ -33,10 +33,14 @@ static void generate_data(struct ssp_data *data, struct sensor_value *sensorsdat int iSensorData, u64 timestamp) { u64 move_timestamp = data->lastTimestamp[iSensorData]; - while ((move_timestamp * 10 + data->adDelayBuf[iSensorData] * 15) < (timestamp * 10)) { - move_timestamp += data->adDelayBuf[iSensorData]; - sensorsdata->timestamp = move_timestamp; - data->report_sensor_data[iSensorData](data, sensorsdata); + if ((iSensorData != PROXIMITY_SENSOR) && (iSensorData != GESTURE_SENSOR) + && (iSensorData != STEP_DETECTOR) && (iSensorData != SIG_MOTION_SENSOR) + && (iSensorData != STEP_COUNTER) && (iSensorData != TILT_TO_WAKE)) { + while ((move_timestamp * 10 + data->adDelayBuf[iSensorData] * 15) < (timestamp * 10)) { + move_timestamp += data->adDelayBuf[iSensorData]; + sensorsdata->timestamp = move_timestamp; + data->report_sensor_data[iSensorData](data, sensorsdata); + } } } -- GitLab