1094332d3Sopenharmony_ci/*
2094332d3Sopenharmony_ci * Copyright (c) 2022 Huawei Device Co., Ltd.
3094332d3Sopenharmony_ci *
4094332d3Sopenharmony_ci * HDF is dual licensed: you can use it either under the terms of
5094332d3Sopenharmony_ci * the GPL, or the BSD license, at your option.
6094332d3Sopenharmony_ci * See the LICENSE file in the root of this repository for complete details.
7094332d3Sopenharmony_ci */
8094332d3Sopenharmony_ci
9094332d3Sopenharmony_ci#ifndef PEDOMETER_BMI160_H
10094332d3Sopenharmony_ci#define PEDOMETER_BMI160_H
11094332d3Sopenharmony_ci
12094332d3Sopenharmony_ci#include "sensor_pedometer_driver.h"
13094332d3Sopenharmony_ci#include "sensor_config_parser.h"
14094332d3Sopenharmony_ci
15094332d3Sopenharmony_ci#define PEDOMETER_TEST_NUM                   1000
16094332d3Sopenharmony_ci
17094332d3Sopenharmony_ci/* PEDOMETER DATA REGISTERS ADDR */
18094332d3Sopenharmony_ci#define BMI160_PEDOMETER_LSB_ADDR            0x78
19094332d3Sopenharmony_ci#define BMI160_PEDOMETER_MSB_ADDR            0x79
20094332d3Sopenharmony_ci#define BMI160_STATUS_ADDR                   0x1B
21094332d3Sopenharmony_ci
22094332d3Sopenharmony_ci/* PEDOMETER DATA READY */
23094332d3Sopenharmony_ci#define BMI160_PEDOMETER_DATA_READY_MASK     0x80
24094332d3Sopenharmony_ci
25094332d3Sopenharmony_ciint32_t DetectPedometerBim160Chip(struct SensorCfgData *data);
26094332d3Sopenharmony_cistruct Bmi160DrvData {
27094332d3Sopenharmony_ci    struct IDeviceIoService ioService;
28094332d3Sopenharmony_ci    struct HdfDeviceObject *device;
29094332d3Sopenharmony_ci    struct SensorCfgData *sensorCfg;
30094332d3Sopenharmony_ci};
31094332d3Sopenharmony_ci
32094332d3Sopenharmony_ci#endif /* PEDOMETER_BMI160_H */
33