diff options
Diffstat (limited to 'sound/pci/emu10k1/emu10k1_main.c')
-rw-r--r-- | sound/pci/emu10k1/emu10k1_main.c | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/sound/pci/emu10k1/emu10k1_main.c b/sound/pci/emu10k1/emu10k1_main.c index f8e2ccd50d60..eb093700fa71 100644 --- a/sound/pci/emu10k1/emu10k1_main.c +++ b/sound/pci/emu10k1/emu10k1_main.c | |||
@@ -181,7 +181,32 @@ static int snd_emu10k1_init(struct snd_emu10k1 *emu, int enable_ir, int resume) | |||
181 | tmp = inl(emu->port + A_IOCFG) & ~0x8; /* Clear bit 3 */ | 181 | tmp = inl(emu->port + A_IOCFG) & ~0x8; /* Clear bit 3 */ |
182 | outl(tmp, emu->port + A_IOCFG); | 182 | outl(tmp, emu->port + A_IOCFG); |
183 | } | 183 | } |
184 | 184 | if (emu->card_capabilities->spi_dac) { /* Audigy 2 ZS Notebook with DAC Wolfson WM8768/WM8568 */ | |
185 | u32 tmp; | ||
186 | tmp = snd_emu10k1_spi_write(emu, 0x00ff); | ||
187 | tmp = snd_emu10k1_spi_write(emu, 0x02ff); | ||
188 | tmp = snd_emu10k1_spi_write(emu, 0x0400); | ||
189 | tmp = snd_emu10k1_spi_write(emu, 0x0520); | ||
190 | tmp = snd_emu10k1_spi_write(emu, 0x0600); | ||
191 | tmp = snd_emu10k1_spi_write(emu, 0x08ff); | ||
192 | tmp = snd_emu10k1_spi_write(emu, 0x0aff); | ||
193 | tmp = snd_emu10k1_spi_write(emu, 0x0cff); | ||
194 | tmp = snd_emu10k1_spi_write(emu, 0x0eff); | ||
195 | tmp = snd_emu10k1_spi_write(emu, 0x10ff); | ||
196 | tmp = snd_emu10k1_spi_write(emu, 0x1200); | ||
197 | tmp = snd_emu10k1_spi_write(emu, 0x1400); | ||
198 | tmp = snd_emu10k1_spi_write(emu, 0x1480); | ||
199 | tmp = snd_emu10k1_spi_write(emu, 0x1800); | ||
200 | tmp = snd_emu10k1_spi_write(emu, 0x1aff); | ||
201 | tmp = snd_emu10k1_spi_write(emu, 0x1cff); | ||
202 | tmp = snd_emu10k1_spi_write(emu, 0x1e00); | ||
203 | tmp = snd_emu10k1_spi_write(emu, 0x0530); | ||
204 | tmp = snd_emu10k1_spi_write(emu, 0x0602); | ||
205 | tmp = snd_emu10k1_spi_write(emu, 0x0622); | ||
206 | tmp = snd_emu10k1_spi_write(emu, 0x1400); | ||
207 | snd_emu10k1_ptr20_write(emu, 0x60, 0, 0x10); | ||
208 | } | ||
209 | |||
185 | snd_emu10k1_ptr_write(emu, PTB, 0, emu->ptb_pages.addr); | 210 | snd_emu10k1_ptr_write(emu, PTB, 0, emu->ptb_pages.addr); |
186 | snd_emu10k1_ptr_write(emu, TCB, 0, 0); /* taken from original driver */ | 211 | snd_emu10k1_ptr_write(emu, TCB, 0, 0); /* taken from original driver */ |
187 | snd_emu10k1_ptr_write(emu, TCBS, 0, 4); /* taken from original driver */ | 212 | snd_emu10k1_ptr_write(emu, TCBS, 0, 4); /* taken from original driver */ |
@@ -747,6 +772,7 @@ static struct snd_emu_chip_details emu_chip_details[] = { | |||
747 | .emu10k2_chip = 1, | 772 | .emu10k2_chip = 1, |
748 | .ca0108_chip = 1, | 773 | .ca0108_chip = 1, |
749 | .ca_cardbus_chip = 1, | 774 | .ca_cardbus_chip = 1, |
775 | .spi_dac = 1, | ||
750 | .spk71 = 1} , | 776 | .spk71 = 1} , |
751 | {.vendor = 0x1102, .device = 0x0008, | 777 | {.vendor = 0x1102, .device = 0x0008, |
752 | .driver = "Audigy2", .name = "Audigy 2 Value [Unknown]", | 778 | .driver = "Audigy2", .name = "Audigy 2 Value [Unknown]", |