diff options
author | Clemens Ladisch <clemens@ladisch.de> | 2008-01-21 08:50:19 +0100 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2008-01-31 17:30:07 +0100 |
commit | 878ac3ee76a5abb4952396570207f6ebe0597e52 (patch) | |
tree | 9c5dea50a61302f3b4533314091b8cb9c02f4170 /sound/pci/oxygen/oxygen_lib.c | |
parent | 44fb7aae82b37f5bb66cb1423e2babb11d90969e (diff) | |
download | talos-op-linux-878ac3ee76a5abb4952396570207f6ebe0597e52.tar.gz talos-op-linux-878ac3ee76a5abb4952396570207f6ebe0597e52.zip |
[ALSA] oxygen: add more symbols
Add symbol definitions for the various codecs and GPIO pins.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/pci/oxygen/oxygen_lib.c')
-rw-r--r-- | sound/pci/oxygen/oxygen_lib.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/sound/pci/oxygen/oxygen_lib.c b/sound/pci/oxygen/oxygen_lib.c index b7079adc3d92..aceb1f9e0f35 100644 --- a/sound/pci/oxygen/oxygen_lib.c +++ b/sound/pci/oxygen/oxygen_lib.c @@ -28,6 +28,7 @@ #include <sound/mpu401.h> #include <sound/pcm.h> #include "oxygen.h" +#include "cm9780.h" MODULE_AUTHOR("Clemens Ladisch <clemens@ladisch.de>"); MODULE_DESCRIPTION("C-Media CMI8788 helper library"); @@ -262,9 +263,15 @@ static void __devinit oxygen_init(struct oxygen *chip) OXYGEN_AC97_CODEC0_LINER); oxygen_write_ac97(chip, 0, AC97_RESET, 0); msleep(1); - oxygen_ac97_set_bits(chip, 0, 0x70, 0x0300); - oxygen_ac97_set_bits(chip, 0, 0x64, 0x8043); - oxygen_ac97_set_bits(chip, 0, 0x62, 0x180f); + oxygen_ac97_set_bits(chip, 0, CM9780_GPIO_SETUP, + CM9780_GPIO0IO | CM9780_GPIO1IO); + oxygen_ac97_set_bits(chip, 0, CM9780_MIXER, + CM9780_BSTSEL | CM9780_STRO_MIC | + CM9780_MIX2FR | CM9780_PCBSW); + oxygen_ac97_set_bits(chip, 0, CM9780_JACK, + CM9780_RSOE | CM9780_CBOE | + CM9780_SSOE | CM9780_FROE | + CM9780_MIC2MIC | CM9780_LI2LI); oxygen_write_ac97(chip, 0, AC97_MASTER, 0x0000); oxygen_write_ac97(chip, 0, AC97_PC_BEEP, 0x8000); oxygen_write_ac97(chip, 0, AC97_MIC, 0x8808); @@ -275,7 +282,8 @@ static void __devinit oxygen_init(struct oxygen *chip) oxygen_write_ac97(chip, 0, AC97_REC_GAIN, 0x8000); oxygen_write_ac97(chip, 0, AC97_CENTER_LFE_MASTER, 0x8080); oxygen_write_ac97(chip, 0, AC97_SURROUND_MASTER, 0x8080); - oxygen_ac97_clear_bits(chip, 0, 0x72, 0x0001); + oxygen_ac97_clear_bits(chip, 0, + CM9780_GPIO_STATUS, CM9780_GPO0); /* power down unused ADCs and DACs */ oxygen_ac97_set_bits(chip, 0, AC97_POWERDOWN, AC97_PD_PR0 | AC97_PD_PR1); |