1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Copyright (c) 2024 Analog Devices Inc.
4  * Copyright (c) 2024 Baylibre, SAS
5  */
6 #ifndef __LINUX_PLATFORM_DATA_AD3552R_HS_H__
7 #define __LINUX_PLATFORM_DATA_AD3552R_HS_H__
8 
9 struct iio_backend;
10 
11 enum ad3552r_io_mode {
12 	AD3552R_IO_MODE_SPI,
13 	AD3552R_IO_MODE_DSPI,
14 	AD3552R_IO_MODE_QSPI,
15 };
16 
17 struct ad3552r_hs_platform_data {
18 	int (*bus_reg_read)(struct iio_backend *back, u32 reg, u32 *val,
19 			    size_t data_size);
20 	int (*bus_reg_write)(struct iio_backend *back, u32 reg, u32 val,
21 			     size_t data_size);
22 	int (*bus_set_io_mode)(struct iio_backend *back,
23 			       enum ad3552r_io_mode mode);
24 	u32 bus_sample_data_clock_hz;
25 };
26 
27 #endif /* __LINUX_PLATFORM_DATA_AD3552R_HS_H__ */
28