Update of /cvsroot/alsa/alsa-kernel/pci/ac97 In directory sc8-pr-cvs1:/tmp/cvs-serv29801
Modified Files: ac97_codec.c Log Message: fixed snd_ac97_set_rate() to accept surround and LFE sample rates, too. Index: ac97_codec.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/pci/ac97/ac97_codec.c,v retrieving revision 1.103 retrieving revision 1.104 diff -u -r1.103 -r1.104 --- ac97_codec.c 28 Aug 2003 15:36:44 -0000 1.103 +++ ac97_codec.c 30 Sep 2003 13:54:33 -0000 1.104 @@ -2067,6 +2067,8 @@ * * The valid registers are AC97_PMC_MIC_ADC_RATE, * AC97_PCM_FRONT_DAC_RATE, AC97_PCM_LR_ADC_RATE and AC97_SPDIF. + * AC97_PCM_SURR_DAC_RATE and AC97_PCM_LFE_DAC_RATE are accepted + * if the codec supports them. * The SPDIF register is a pseudo-register to change the rate of SPDIF * (only if supported). * @@ -2074,27 +2076,27 @@ */ int snd_ac97_set_rate(ac97_t *ac97, int reg, unsigned short rate) { - unsigned short mask; unsigned int tmp; switch (reg) { case AC97_PCM_MIC_ADC_RATE: - mask = 0x0000; if ((ac97->regs[AC97_EXTENDED_STATUS] & AC97_EA_VRM) == 0) /* MIC VRA */ if (rate != 48000) return -EINVAL; break; case AC97_PCM_FRONT_DAC_RATE: - mask = 0x0200; - if ((ac97->regs[AC97_EXTENDED_STATUS] & AC97_EA_VRA) == 0) /* VRA */ - if (rate != 48000) - return -EINVAL; - break; case AC97_PCM_LR_ADC_RATE: - mask = 0x0100; if ((ac97->regs[AC97_EXTENDED_STATUS] & AC97_EA_VRA) == 0) /* VRA */ if (rate != 48000) return -EINVAL; + break; + case AC97_PCM_SURR_DAC_RATE: + if (! (ac97->ext_id & AC97_SCAP_SURROUND_DAC)) + return -EINVAL; + break; + case AC97_PCM_LFE_DAC_RATE: + if (! (ac97->ext_id & AC97_SCAP_CENTER_LFE_DAC)) + return -EINVAL; break; case AC97_SPDIF: return set_spdif_rate(ac97, rate); ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ Alsa-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-cvslog