1*916dfe90Santon /* $OpenBSD: hidccvar.h,v 1.1 2022/11/11 06:46:48 anton Exp $ */ 2*916dfe90Santon 3*916dfe90Santon /* 4*916dfe90Santon * Copyright (c) 2022 Anton Lindqvist <anton@openbsd.org> 5*916dfe90Santon * 6*916dfe90Santon * Permission to use, copy, modify, and distribute this software for any 7*916dfe90Santon * purpose with or without fee is hereby granted, provided that the above 8*916dfe90Santon * copyright notice and this permission notice appear in all copies. 9*916dfe90Santon * 10*916dfe90Santon * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11*916dfe90Santon * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12*916dfe90Santon * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 13*916dfe90Santon * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14*916dfe90Santon * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 15*916dfe90Santon * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 16*916dfe90Santon * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17*916dfe90Santon */ 18*916dfe90Santon 19*916dfe90Santon #include <sys/types.h> 20*916dfe90Santon 21*916dfe90Santon struct hidcc_attach_arg { 22*916dfe90Santon struct device *device; 23*916dfe90Santon void *audio_cookie; 24*916dfe90Santon 25*916dfe90Santon void *desc; 26*916dfe90Santon int descsiz; 27*916dfe90Santon int repid; 28*916dfe90Santon int isize; 29*916dfe90Santon 30*916dfe90Santon int (*enable)(void *, int); 31*916dfe90Santon void *arg; 32*916dfe90Santon }; 33*916dfe90Santon 34*916dfe90Santon int hidcc_match(void *, int, uint8_t); 35*916dfe90Santon struct hidcc *hidcc_attach(const struct hidcc_attach_arg *); 36*916dfe90Santon int hidcc_detach(struct hidcc *, int); 37*916dfe90Santon void hidcc_intr(struct hidcc *, void *, u_int); 38