AC97_EXTENDED_STATUS
case AC97_EXTENDED_STATUS:
em28xx_write_ac97(dev, AC97_EXTENDED_STATUS, 0x0031);
aaci_ac97_write(aaci->ac97, AC97_EXTENDED_STATUS, 0x0001); /* VRA */
snd_ac97_update_bits(ac97, AC97_EXTENDED_STATUS,
snd_ac97_update_bits(ac97, AC97_EXTENDED_STATUS,
snd_ac97_update_bits(ac97, AC97_EXTENDED_STATUS,
reg = snd_ac97_read(ac97, AC97_EXTENDED_STATUS);
snd_ac97_write_cache(ac97, AC97_EXTENDED_STATUS, reg);
power = ac97->regs[AC97_EXTENDED_STATUS];
snd_ac97_write(ac97, AC97_EXTENDED_STATUS, power);
[PWIDX_CLFE] = { AC97_PCM_LFE_DAC_RATE, AC97_EXTENDED_STATUS,
[PWIDX_SURR] = { AC97_PCM_SURR_DAC_RATE, AC97_EXTENDED_STATUS,
[PWIDX_MIC] = { AC97_PCM_MIC_ADC_RATE, AC97_EXTENDED_STATUS,
if (ac97->regs[AC97_EXTENDED_STATUS] & AC97_EA_SPDIF) {
snd_ac97_update_bits(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, 0);
snd_ac97_write(ac97, AC97_EXTENDED_STATUS, ac97->regs[AC97_EXTENDED_STATUS]);
snd_ac97_update_bits(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, AC97_EA_SPDIF); /* turn on again */
unsigned short extst = snd_ac97_read_cache(ac97, AC97_EXTENDED_STATUS);
snd_ac97_update_bits_nolock(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, 0); /* turn off */
snd_ac97_update_bits_nolock(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, AC97_EA_SPDIF); /* turn on again */
unsigned short extst = snd_ac97_read_cache(ac97, AC97_EXTENDED_STATUS);
snd_ac97_update_bits_nolock(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, 0); /* turn off */
snd_ac97_update_bits_nolock(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, AC97_EA_SPDIF); /* turn on again */
AC97_SINGLE(SNDRV_CTL_NAME_IEC958("",PLAYBACK,SWITCH),AC97_EXTENDED_STATUS, 2, 1, 0),
.private_value = AC97_SINGLE_VALUE(AC97_EXTENDED_STATUS, 4, 3, 0)
val = snd_ac97_read(ac97, AC97_EXTENDED_STATUS);
snd_ac97_write_cache(ac97, AC97_EXTENDED_STATUS, 0x05c0);
snd_ac97_update_bits(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, 0);
snd_ac97_update_bits(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, 0);
snd_ac97_update_bits(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, 0);
snd_ac97_update_bits_nolock(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, 0);
snd_ac97_update_bits_nolock(ac97, AC97_EXTENDED_STATUS, AC97_EA_SPDIF, AC97_EA_SPDIF);
if ((ac97->regs[AC97_EXTENDED_STATUS] & AC97_EA_VRM) == 0) /* MIC VRA */
if ((ac97->regs[AC97_EXTENDED_STATUS] & AC97_EA_VRA) == 0) /* VRA */
snd_ac97_update_bits(ac97, AC97_EXTENDED_STATUS,
val = snd_ac97_read(ac97, AC97_EXTENDED_STATUS);
AC97_EXTENDED_STATUS);
AC97_EXTENDED_STATUS,
case AC97_EXTENDED_STATUS:
case AC97_EXTENDED_STATUS:
case AC97_EXTENDED_STATUS:
snd_ac97_update_bits(chip->ac97[0], AC97_EXTENDED_STATUS, 0x03 << 4, 0x03 << 4);
oxygen_ac97_set_bits(chip, 0, AC97_EXTENDED_STATUS,
snd_ac97_update_bits(chip->ac97, AC97_EXTENDED_STATUS, 0x03 << 4, 0x03 << 4);
snd_ac97_update_bits(chip->ac97, AC97_EXTENDED_STATUS,
ext_status = snd_soc_component_read(component, AC97_EXTENDED_STATUS);
snd_soc_component_write(component, AC97_EXTENDED_STATUS, ext_status&~0x3800);
snd_soc_component_update_bits(component, AC97_EXTENDED_STATUS, 0x5, 0x1);
snd_soc_component_update_bits(component, AC97_EXTENDED_STATUS, 0x5, 0x5);
snd_soc_component_update_bits(component, AC97_EXTENDED_STATUS, 0x1, 0x1);
snd_soc_component_update_bits(component, AC97_EXTENDED_STATUS, 0x1, 0x1);
snd_soc_component_update_bits(component, AC97_EXTENDED_STATUS, 0x1, 0x1);
snd_soc_component_update_bits(component, AC97_EXTENDED_STATUS, 0x0001, 0x0001);
snd_soc_component_update_bits(component, AC97_EXTENDED_STATUS, 0x0001, 0x0001);
snd_ac97_update_bits(ac97, AC97_EXTENDED_STATUS,