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