/*- * Copyright 2006 John-Mark Gurney * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * $Id$ */ #ifndef _IOCTL_BKTRAU_H_ #define _IOCTL_BKTRAU_H_ #ifndef _KERNEL #include #endif #include struct bktrau_audio { u_int ba_gain; /* A_GAIN 0-15 */ u_int ba_g2x; /* A_G2X bool */ u_int ba_pwrdn; /* A_PWRDN bool */ u_int ba_sel; /* A_SEL 0-3 */ u_int ba_sce; /* DA_SCE bool */ u_int ba_lri; /* DA_LRI bool */ u_int ba_mlb; /* DA_MLB bool */ u_int ba_lrd; /* DA_LRD 0-31 */ u_int ba_dpm; /* DA_DPM bool */ u_int ba_sbr; /* DA_SBR bool */ u_int ba_es2; /* DA_ES2 bool */ u_int ba_lmt; /* DA_LMT bool */ u_int ba_sdr; /* DA_SDR 0-15 */ u_int ba_iom; /* DA_IOM 0-1 */ u_int ba_app; /* DA_APP bool */ u_int ba_pktp; /* PKTP 0-2 */ u_int ba_lines; /* AFP_LEN 1-255 */ u_int ba_bytes; /* ALP_LEN 1-4095 */ u_int ba_nbufs; /* cnt of buffers, ba_bytes * ba_lines long */ caddr_t *ba_bufs; /* buffer addresses */ }; struct bktrau_stats { u_int bs_scerr; u_int bs_ocerr; u_int bs_pabort; u_int bs_riperr; u_int bs_pperr; u_int bs_fdsr; u_int bs_ftrgt; u_int bs_fbus; u_int bs_oflow; u_int bs_droppedbuf; }; #define BKTRAU_SETAUDIO _IOW('A', 0, struct bktrau_audio) /* set options */ #define BKTRAU_GETAUDIO _IOR('A', 1, struct bktrau_audio) /* get options */ #define BKTRAU_START _IO('A', 2) /* start */ #define BKTRAU_STOP _IO('A', 3) /* stop */ #define BKTRAU_GETVBUF _IOR('A', 4, unsigned int) /* get valid */ #define BKTRAU_SETCBUF _IOW('A', 5, unsigned int) /* set completed */ #define BKTRAU_GETSTATS _IOR('A', 6, struct bktrau_stats) /* get stats */ #endif /* _IOCTL_BKTRAU_H_ */