OSDN Git Service

platform/chrome: cros_ec_sensorhub: Add code to spread timestmap
authorGwendal Grignou <gwendal@chromium.org>
Fri, 27 Mar 2020 22:34:34 +0000 (15:34 -0700)
committerEnric Balletbo i Serra <enric.balletbo@collabora.com>
Sat, 28 Mar 2020 21:04:32 +0000 (22:04 +0100)
commitb9b05664ebf6cd58d2a7f9a7cffa119f331114e6
tree2e178f56b446ec79ea78e01aa776c6644f4f50b3
parent145d59baff5944b71551ac518d7fd7d377a9c820
platform/chrome: cros_ec_sensorhub: Add code to spread timestmap

EC FIFO can send sensor events in batch. Spread them based on
previous (TSa) and currnet timestamp (TSb)

  EC FIFO                             iio events
+-----------+
| TSa       |
+-----------+             +---------------------------------------+
| event 1   |             | event 1 | TSb - (TSb - TSa)/n * (n-1) |
+-----------+             +---------------------------------------+
| event 2   |             | event 2 | TSb - (TSb - TSa)/n * (n-2) |
+-----------+             +---------------------------------------+
|  ...      |  ------>    |  ....   |                             |
+-----------+             +---------------------------------------+
| event n-1 |             | event 2 | TSb - (TSb - TSa)/n         |
+-----------+             +---------------------------------------+
| event n   |             | event 2 | TSb                         |
+-----------+             +---------------------------------------+
| TSb       |
+-----------+

Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Acked-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
drivers/platform/chrome/cros_ec_sensorhub_ring.c