Line data Source code
1 1 : /*
2 : * Copyright 2024 Google LLC
3 : *
4 : * SPDX-License-Identifier: Apache-2.0
5 : */
6 :
7 : /**
8 : * @file
9 : * @brief Header file for PMW3610 input driver.
10 : * @ingroup pmw3610_interface
11 : */
12 :
13 : #ifndef ZEPHYR_INCLUDE_INPUT_PMW3610_H_
14 : #define ZEPHYR_INCLUDE_INPUT_PMW3610_H_
15 :
16 : /**
17 : * @defgroup pmw3610_interface PMW3610
18 : * @ingroup input_interface_ext
19 : * @brief PMW3610 Low Power Laser Mouse Sensor
20 : * @{
21 : */
22 :
23 : /**
24 : * @brief Set resolution on a pmw3610 device
25 : *
26 : * @param dev pmw3610 device.
27 : * @param res_cpi CPI resolution, 200 to 3200.
28 : * @retval 0 success
29 : * @retval -EINVAL invalid resolution
30 : * @retval -errno another error occurred
31 : */
32 1 : int pmw3610_set_resolution(const struct device *dev, uint16_t res_cpi);
33 :
34 : /**
35 : * @brief Set force awake mode on a pmw3610 device
36 : *
37 : * @param dev pmw3610 device.
38 : * @param enable whether to enable or disable force awake mode.
39 : *
40 : * @retval 0 success
41 : * @retval -errno an error occurred
42 : */
43 1 : int pmw3610_force_awake(const struct device *dev, bool enable);
44 :
45 : /** @} */
46 :
47 : #endif /* ZEPHYR_INCLUDE_INPUT_PMW3610_H_ */
|