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