1 /* SPDX-License-Identifier: GPL-2.0 */
5 #include <linux/types.h>
9 int (*start_meas
)(struct sps30_state
*state
);
10 int (*stop_meas
)(struct sps30_state
*state
);
11 int (*read_meas
)(struct sps30_state
*state
, __be32
*meas
, size_t num
);
12 int (*reset
)(struct sps30_state
*state
);
13 int (*clean_fan
)(struct sps30_state
*state
);
14 int (*read_cleaning_period
)(struct sps30_state
*state
, __be32
*period
);
15 int (*write_cleaning_period
)(struct sps30_state
*state
, __be32 period
);
16 int (*show_info
)(struct sps30_state
*state
);
20 /* serialize access to the device */
25 * priv pointer is solely for serdev driver private data. We keep it
26 * here because driver_data inside dev has been already used for iio and
27 * struct serdev_device doesn't have one.
30 const struct sps30_ops
*ops
;
33 int sps30_probe(struct device
*dev
, const char *name
, void *priv
, const struct sps30_ops
*ops
);