18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci#ifndef MAX1600_H 38c2ecf20Sopenharmony_ci#define MAX1600_H 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_cistruct gpio_desc; 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cienum { 88c2ecf20Sopenharmony_ci MAX1600_GPIO_0VCC = 0, 98c2ecf20Sopenharmony_ci MAX1600_GPIO_1VCC, 108c2ecf20Sopenharmony_ci MAX1600_GPIO_0VPP, 118c2ecf20Sopenharmony_ci MAX1600_GPIO_1VPP, 128c2ecf20Sopenharmony_ci MAX1600_GPIO_MAX, 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ci MAX1600_CHAN_A, 158c2ecf20Sopenharmony_ci MAX1600_CHAN_B, 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci MAX1600_CODE_LOW, 188c2ecf20Sopenharmony_ci MAX1600_CODE_HIGH, 198c2ecf20Sopenharmony_ci}; 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_cistruct max1600 { 228c2ecf20Sopenharmony_ci struct gpio_desc *gpio[MAX1600_GPIO_MAX]; 238c2ecf20Sopenharmony_ci struct device *dev; 248c2ecf20Sopenharmony_ci unsigned int code; 258c2ecf20Sopenharmony_ci}; 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ciint max1600_init(struct device *dev, struct max1600 **ptr, 288c2ecf20Sopenharmony_ci unsigned int channel, unsigned int code); 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ciint max1600_configure(struct max1600 *, unsigned int vcc, unsigned int vpp); 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci#endif 33