linux/drivers/input/touchscreen/ad7879.h
Mike Frysinger 4397c98a8a Input: ad7879 - split bus logic out
The ad7879 driver is using the old bus method of only supporting one
at a time (I2C or SPI). So refactor it like the other input drivers
that support multiple busses simultaneously.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-07-03 13:13:03 -07:00

31 lines
705 B
C

/*
* AD7879/AD7889 touchscreen (bus interfaces)
*
* Copyright (C) 2008-2010 Michael Hennerich, Analog Devices Inc.
*
* Licensed under the GPL-2 or later.
*/
#ifndef _AD7879_H_
#define _AD7879_H_
#include <linux/types.h>
struct ad7879;
struct device;
struct ad7879_bus_ops {
u16 bustype;
int (*read)(struct device *dev, u8 reg);
int (*multi_read)(struct device *dev, u8 first_reg, u8 count, u16 *buf);
int (*write)(struct device *dev, u8 reg, u16 val);
};
void ad7879_disable(struct ad7879 *);
void ad7879_enable(struct ad7879 *);
struct ad7879 *ad7879_probe(struct device *dev, u8 devid, unsigned irq,
const struct ad7879_bus_ops *bops);
void ad7879_remove(struct ad7879 *);
#endif