Linux Audio

Check our new training course

Loading...
v3.1
 
 1/*
 2 * AD7879/AD7889 touchscreen (bus interfaces)
 3 *
 4 * Copyright (C) 2008-2010 Michael Hennerich, Analog Devices Inc.
 5 *
 6 * Licensed under the GPL-2 or later.
 7 */
 8
 9#ifndef _AD7879_H_
10#define _AD7879_H_
11
 
12#include <linux/types.h>
13
14struct ad7879;
15struct device;
 
16
17struct ad7879_bus_ops {
18	u16 bustype;
19	int (*read)(struct device *dev, u8 reg);
20	int (*multi_read)(struct device *dev, u8 first_reg, u8 count, u16 *buf);
21	int (*write)(struct device *dev, u8 reg, u16 val);
22};
23
24void ad7879_suspend(struct ad7879 *);
25void ad7879_resume(struct ad7879 *);
26struct ad7879 *ad7879_probe(struct device *dev, u8 devid, unsigned irq,
27			    const struct ad7879_bus_ops *bops);
28void ad7879_remove(struct ad7879 *);
29
30#endif
v6.13.7
 1/* SPDX-License-Identifier: GPL-2.0-or-later */
 2/*
 3 * AD7879/AD7889 touchscreen (bus interfaces)
 4 *
 5 * Copyright (C) 2008-2010 Michael Hennerich, Analog Devices Inc.
 
 
 6 */
 7
 8#ifndef _AD7879_H_
 9#define _AD7879_H_
10
11#include <linux/pm.h>
12#include <linux/types.h>
13
14struct attribute_group;
15struct device;
16struct regmap;
17
18extern const struct attribute_group *ad7879_groups[];
19extern const struct dev_pm_ops ad7879_pm_ops;
 
 
 
 
20
21int ad7879_probe(struct device *dev, struct regmap *regmap,
22		 int irq, u16 bustype, u8 devid);
 
 
 
23
24#endif