47 lines
		
	
	
	
		
			1.5 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			47 lines
		
	
	
	
		
			1.5 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
|   | /*
 | ||
|  |  * This file is subject to the terms and conditions of the GNU General Public | ||
|  |  * License.  See the file "COPYING" in the main directory of this archive | ||
|  |  * for more details. | ||
|  |  * | ||
|  |  * Copyright 2003 Vivien Chappelier <vivien.chappelier@linux-mips.org> | ||
|  |  * Copyright 2008 Thomas Bogendoerfer <tsbogend@franken.de> | ||
|  |  */ | ||
|  | 
 | ||
|  | #ifndef __SOUND_AD1843_H
 | ||
|  | #define __SOUND_AD1843_H
 | ||
|  | 
 | ||
|  | struct snd_ad1843 { | ||
|  | 	void *chip; | ||
|  | 	int (*read)(void *chip, int reg); | ||
|  | 	int (*write)(void *chip, int reg, int val); | ||
|  | }; | ||
|  | 
 | ||
|  | #define AD1843_GAIN_RECLEV 0
 | ||
|  | #define AD1843_GAIN_LINE   1
 | ||
|  | #define AD1843_GAIN_LINE_2 2
 | ||
|  | #define AD1843_GAIN_MIC    3
 | ||
|  | #define AD1843_GAIN_PCM_0  4
 | ||
|  | #define AD1843_GAIN_PCM_1  5
 | ||
|  | #define AD1843_GAIN_SIZE   (AD1843_GAIN_PCM_1+1)
 | ||
|  | 
 | ||
|  | int ad1843_get_gain_max(struct snd_ad1843 *ad1843, int id); | ||
|  | int ad1843_get_gain(struct snd_ad1843 *ad1843, int id); | ||
|  | int ad1843_set_gain(struct snd_ad1843 *ad1843, int id, int newval); | ||
|  | int ad1843_get_recsrc(struct snd_ad1843 *ad1843); | ||
|  | int ad1843_set_recsrc(struct snd_ad1843 *ad1843, int newsrc); | ||
|  | void ad1843_setup_dac(struct snd_ad1843 *ad1843, | ||
|  | 		      unsigned int id, | ||
|  | 		      unsigned int framerate, | ||
|  | 		      snd_pcm_format_t fmt, | ||
|  | 		      unsigned int channels); | ||
|  | void ad1843_shutdown_dac(struct snd_ad1843 *ad1843, | ||
|  | 			 unsigned int id); | ||
|  | void ad1843_setup_adc(struct snd_ad1843 *ad1843, | ||
|  | 		      unsigned int framerate, | ||
|  | 		      snd_pcm_format_t fmt, | ||
|  | 		      unsigned int channels); | ||
|  | void ad1843_shutdown_adc(struct snd_ad1843 *ad1843); | ||
|  | int ad1843_init(struct snd_ad1843 *ad1843); | ||
|  | 
 | ||
|  | #endif /* __SOUND_AD1843_H */
 |