Commit | Line | Data |
---|---|---|
217494e5 DC |
1 | /* |
2 | * STMicroelectronics pressures driver | |
3 | * | |
4 | * Copyright 2013 STMicroelectronics Inc. | |
5 | * | |
6 | * Denis Ciocca <denis.ciocca@st.com> | |
7 | * v. 1.0.0 | |
8 | * Licensed under the GPL-2. | |
9 | */ | |
10 | ||
11 | #ifndef ST_PRESS_H | |
12 | #define ST_PRESS_H | |
13 | ||
14 | #include <linux/types.h> | |
15 | #include <linux/iio/common/st_sensors.h> | |
16 | ||
9d317724 SB |
17 | enum st_press_type { |
18 | LPS001WP, | |
19 | LPS25H, | |
20 | LPS331AP, | |
21 | LPS22HB, | |
22 | ST_PRESS_MAX, | |
23 | }; | |
24 | ||
7885a8ce | 25 | #define LPS001WP_PRESS_DEV_NAME "lps001wp" |
93187840 | 26 | #define LPS25H_PRESS_DEV_NAME "lps25h" |
217494e5 | 27 | #define LPS331AP_PRESS_DEV_NAME "lps331ap" |
e039e2f5 | 28 | #define LPS22HB_PRESS_DEV_NAME "lps22hb" |
217494e5 | 29 | |
23cde4d6 DC |
30 | /** |
31 | * struct st_sensors_platform_data - default press platform data | |
32 | * @drdy_int_pin: default press DRDY is available on INT1 pin. | |
33 | */ | |
34 | static const struct st_sensors_platform_data default_press_pdata = { | |
35 | .drdy_int_pin = 1, | |
36 | }; | |
37 | ||
0baa3fc1 | 38 | int st_press_common_probe(struct iio_dev *indio_dev); |
217494e5 DC |
39 | void st_press_common_remove(struct iio_dev *indio_dev); |
40 | ||
41 | #ifdef CONFIG_IIO_BUFFER | |
42 | int st_press_allocate_ring(struct iio_dev *indio_dev); | |
43 | void st_press_deallocate_ring(struct iio_dev *indio_dev); | |
44 | int st_press_trig_set_state(struct iio_trigger *trig, bool state); | |
45 | #define ST_PRESS_TRIGGER_SET_STATE (&st_press_trig_set_state) | |
46 | #else /* CONFIG_IIO_BUFFER */ | |
47 | static inline int st_press_allocate_ring(struct iio_dev *indio_dev) | |
48 | { | |
49 | return 0; | |
50 | } | |
51 | ||
52 | static inline void st_press_deallocate_ring(struct iio_dev *indio_dev) | |
53 | { | |
54 | } | |
55 | #define ST_PRESS_TRIGGER_SET_STATE NULL | |
56 | #endif /* CONFIG_IIO_BUFFER */ | |
57 | ||
58 | #endif /* ST_PRESS_H */ |