[alsa-devel] Wyse Winterm CS5535 Driver
Takashi Iwai
tiwai at suse.de
Mon Nov 5 10:12:07 CET 2007
At Thu, 01 Nov 2007 08:15:57 +1000,
Darryl Bond wrote:
>
>
>
> Takashi Iwai wrote:
> > At Wed, 31 Oct 2007 11:08:06 +1000,
> > Darryl Bond wrote:
> >
> >> I have a Wyse S50 terminal that I am booting diskless. I have been
> >> trying to get sound working. The box has a cs5535 chipset.
> >>
> >> After much fiddling in the kernel source (2.6.22.5 <http://2.6.22.5> ) I
> >> have been able to make it work. I'm not sure if it is a cs5535 problem
> >> as the code that fixes it is in ac97_pcm.c.
> >>
> >> It would appear that the card is getting passed an unexpected rate. The
> >> function sound/pci/ac97/ac97_pcm.c snd_ac97_set_rate()
> >> has a section:
> >> case AC97_PCM_FRONT_DAC_RATE:
> >> case AC97_PCM_LR_ADC_RATE:
> >>
> >> if ((ac97->regs[AC97_EXTENDED_STATUS] & AC97_EA_VRA) == 0) /* VRA */
> >> if (rate != 48000 && rate != 96000)
> >> return -EINVAL;
> >> break;
> >> If I use 'aplay wavfile' the rate passed to this function is 44100.
> >> I I changethe code to:
> >> if (rate != 48000 && rate != 96000 && rate != 44100)
> >>
> >> it plays but at a slightly incorrect rate.
> >>
> >
> > Apparently your codec doesn't support VRA, so it cannot work except
> > for 48kHz (or 96kHz in some cases). Usually other rates are converted
> > via alsa-lib plugin. In the recent versions, the default PCM
> > "default" does such conversions automagically (unless you specify
> > explicitly the non-conversion, e.g., passing the device 'hw").
> >
> >
> > Takashi
> >
> The main application I need to run (Citrix ICA client) uses OSS sound.
> It works fine with other sound cards and drivers. In this case it passes
> 8000 to snd_ac97_set_rate().
OSS emulation also allows the automatic rate conversion, so it should
work regardless whether the chip supports non-48kHz or not.
> Do I need to make sure that I have a recent Alsalibs? It would appear
> that I am using 1.0.10-0.
> Does OSS use the alsalibs?
Depends. If it's a user-space emulation, then yes. If it's a
kerne-space emulation, then no.
Takashi
More information about the Alsa-devel
mailing list