forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ALSA: ALSA driver for SGI O2 audio board
This patch adds a new ALSA driver for the audio device found inside most of the SGI O2 workstation. The hardware uses a SGI custom chip, which feeds a AD codec chip. Signed-off-by: Thomas Bogendoerfer <[email protected]> Signed-off-by: Takashi Iwai <[email protected]> Signed-off-by: Jaroslav Kysela <[email protected]>
- Loading branch information
Showing
5 changed files
with
1,621 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
/* | ||
* 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 <[email protected]> | ||
* Copyright 2008 Thomas Bogendoerfer <[email protected]> | ||
*/ | ||
|
||
#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 */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.