1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* 3 * ADXL345/346 Three-Axis Digital Accelerometers (I2C/SPI Interface) 4 * 5 * Enter bugs at http://blackfin.uclinux.org/ 6 * 7 * Copyright (C) 2009 Michael Hennerich, Analog Devices Inc. 8 */ 9 10 #ifndef _ADXL34X_H_ 11 #define _ADXL34X_H_ 12 13 struct device; 14 struct adxl34x; 15 16 struct adxl34x_bus_ops { 17 u16 bustype; 18 int (*read)(struct device *, unsigned char); 19 int (*read_block)(struct device *, unsigned char, int, void *); 20 int (*write)(struct device *, unsigned char, unsigned char); 21 }; 22 23 void adxl34x_suspend(struct adxl34x *ac); 24 void adxl34x_resume(struct adxl34x *ac); 25 struct adxl34x *adxl34x_probe(struct device *dev, int irq, 26 bool fifo_delay_default, 27 const struct adxl34x_bus_ops *bops); 28 int adxl34x_remove(struct adxl34x *ac); 29 30 #endif 31