1*95e1ffb1Schristos /* $NetBSD: auccvar.h,v 1.6 2005/12/11 12:16:28 christos Exp $ */ 2b14e6082Sis /* 3b14e6082Sis * Copyright (c) 1991-1993 Regents of the University of California. 4b14e6082Sis * All rights reserved. 5b14e6082Sis * 6b14e6082Sis * Redistribution and use in source and binary forms, with or without 7b14e6082Sis * modification, are permitted provided that the following conditions 8b14e6082Sis * are met: 9b14e6082Sis * 1. Redistributions of source code must retain the above copyright 10b14e6082Sis * notice, this list of conditions and the following disclaimer. 11b14e6082Sis * 2. Redistributions in binary form must reproduce the above copyright 12b14e6082Sis * notice, this list of conditions and the following disclaimer in the 13b14e6082Sis * documentation and/or other materials provided with the distribution. 14b14e6082Sis * 3. All advertising materials mentioning features or use of this software 15b14e6082Sis * must display the following acknowledgement: 16b14e6082Sis * This product includes software developed by the Computer Systems 17b14e6082Sis * Engineering Group at Lawrence Berkeley Laboratory. 18b14e6082Sis * 4. Neither the name of the University nor of the Laboratory may be used 19b14e6082Sis * to endorse or promote products derived from this software without 20b14e6082Sis * specific prior written permission. 21b14e6082Sis * 22b14e6082Sis * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 23b14e6082Sis * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24b14e6082Sis * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25b14e6082Sis * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 26b14e6082Sis * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27b14e6082Sis * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28b14e6082Sis * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29b14e6082Sis * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30b14e6082Sis * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31b14e6082Sis * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32b14e6082Sis * SUCH DAMAGE. 33b14e6082Sis */ 34b14e6082Sis 35b14e6082Sis 36b14e6082Sis #ifndef _AUCCVAR_H_ 37b14e6082Sis #define _AUCCVAR_H_ 38b14e6082Sis 39b14e6082Sis #define AUDIO_BUF_SIZE 8192 40b14e6082Sis 41b14e6082Sis /* per channel data */ 42b14e6082Sis typedef struct aucc_data { 43b14e6082Sis u_int nd_freq; /* frequency */ 44b14e6082Sis u_int nd_per; /* period = clock/freq */ 45b14e6082Sis u_int nd_volume; /* 0..63 */ 46b14e6082Sis u_int nd_busy; /* 1, if channel is busy */ 47b14e6082Sis u_short *nd_dma; /* pointer to dma buffer */ 48b14e6082Sis u_int nd_dmalength; /* length of dma data */ 49b14e6082Sis int nd_mask; /* mask of active channels, 50b14e6082Sis together with this one */ 51b14e6082Sis void (*nd_intr)(void *); /* interrupt routine */ 52b14e6082Sis void *nd_intrdata; /* interrupt data */ 535171612dSis int nd_doublebuf; /* double buffering */ 54b14e6082Sis } aucc_data_t; 55b14e6082Sis 56b14e6082Sis 57b14e6082Sis /* mixer sets */ 58b14e6082Sis #define AUCC_CHANNELS 0 59b14e6082Sis 60b14e6082Sis /* mixer values */ 61b14e6082Sis #define AUCC_VOLUME 1 62b14e6082Sis #define AUCC_OUTPUT_CLASS 2 63b14e6082Sis 64b14e6082Sis #endif /* _AUCCVAR_H_ */ 65