1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef MAX1600_H
3#define MAX1600_H
4
5struct gpio_desc;
6
7enum {
8	MAX1600_GPIO_0VCC = 0,
9	MAX1600_GPIO_1VCC,
10	MAX1600_GPIO_0VPP,
11	MAX1600_GPIO_1VPP,
12	MAX1600_GPIO_MAX,
13
14	MAX1600_CHAN_A,
15	MAX1600_CHAN_B,
16
17	MAX1600_CODE_LOW,
18	MAX1600_CODE_HIGH,
19};
20
21struct max1600 {
22	struct gpio_desc *gpio[MAX1600_GPIO_MAX];
23	struct device *dev;
24	unsigned int code;
25};
26
27int max1600_init(struct device *dev, struct max1600 **ptr,
28	unsigned int channel, unsigned int code);
29
30int max1600_configure(struct max1600 *, unsigned int vcc, unsigned int vpp);
31
32#endif
33