Home | History | Annotate | Line # | Download | only in hdaudio
      1 /* $NetBSD: hdaudio_mixer.h,v 1.1 2015/03/28 14:09:59 jmcneill Exp $ */
      2 
      3 /*
      4  * Copyright (c) 2009 Precedence Technologies Ltd <support (at) precedence.co.uk>
      5  * Copyright (c) 2009 Jared D. McNeill <jmcneill (at) invisible.ca>
      6  * All rights reserved.
      7  *
      8  * This code is derived from software contributed to The NetBSD Foundation
      9  * by Precedence Technologies Ltd
     10  *
     11  * Redistribution and use in source and binary forms, with or without
     12  * modification, are permitted provided that the following conditions
     13  * are met:
     14  * 1. Redistributions of source code must retain the above copyright
     15  *    notice, this list of conditions and the following disclaimer.
     16  * 2. The name of the author may not be used to endorse or promote products
     17  *    derived from this software without specific prior written permission.
     18  *
     19  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     20  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
     21  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     22  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
     23  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
     24  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
     25  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
     26  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
     27  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     28  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     29  * SUCH DAMAGE.
     30  */
     31 
     32 #ifndef _HDAUDIO_MIXER_H
     33 #define _HDAUDIO_MIXER_H
     34 
     35 /* From src/lib/libossaudio/soundcard.h */
     36 
     37 #define	HDAUDIO_MIXER_NRDEVICES	25
     38 #define	HDAUDIO_MIXER_VOLUME	0
     39 #define	HDAUDIO_MIXER_BASS	1
     40 #define	HDAUDIO_MIXER_TREBLE	2
     41 #define	HDAUDIO_MIXER_SYNTH	3
     42 #define	HDAUDIO_MIXER_PCM	4
     43 #define	HDAUDIO_MIXER_SPEAKER	5
     44 #define	HDAUDIO_MIXER_LINE	6
     45 #define	HDAUDIO_MIXER_MIC	7
     46 #define	HDAUDIO_MIXER_CD	8
     47 #define	HDAUDIO_MIXER_IMIX	9
     48 #define	HDAUDIO_MIXER_ALTPCM	10
     49 #define	HDAUDIO_MIXER_RECLEV	11
     50 #define	HDAUDIO_MIXER_IGAIN	12
     51 #define	HDAUDIO_MIXER_OGAIN	13
     52 #define	HDAUDIO_MIXER_LINE1	14
     53 #define	HDAUDIO_MIXER_LINE2	15
     54 #define	HDAUDIO_MIXER_LINE3	16
     55 #define	HDAUDIO_MIXER_DIGITAL1	17
     56 #define	HDAUDIO_MIXER_DIGITAL2	18
     57 #define	HDAUDIO_MIXER_DIGITAL3	19
     58 #define	HDAUDIO_MIXER_PHONEIN	20
     59 #define	HDAUDIO_MIXER_PHONEOUT	21
     60 #define	HDAUDIO_MIXER_VIDEO	22
     61 #define	HDAUDIO_MIXER_RADIO	23
     62 #define	HDAUDIO_MIXER_MONITOR	24
     63 
     64 #define	HDAUDIO_MASK(x)		(1 << (HDAUDIO_MIXER_##x))
     65 
     66 #define	HDAUDIO_DEVICE_NAMES	{					   \
     67 	AudioNmaster, AudioNbass, AudioNtreble, AudioNfmsynth, AudioNdac,  \
     68 	"beep", AudioNline, AudioNmicrophone, AudioNcd,		   	   \
     69 	AudioNrecord, AudioNdac"2", "reclvl", AudioNinput, AudioNoutput,   \
     70 	AudioNline"1", AudioNline"2", AudioNline"3",			   \
     71 	"dig1", "dig2", "dig3", "phin", "phout",			   \
     72 	AudioNvideo, "radio", AudioNmonitor				   \
     73 				}
     74 
     75 #endif /* !_HDAUDIO_MIXER_H */
     76