[alsa-devel] Wyse Winterm CS5535 Driver
dbond at nrggos.com.au
Mon Nov 5 22:41:41 CET 2007
Takashi Iwai wrote:
> 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 (184.108.40.206 <http://220.127.116.11> ) 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;
>>>> 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").
>> 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.
I updated the alsalibs to the latest version. There was no difference.
Might be kernel emulation?
The alsa sound demo files are encoded at 48000Hz and work perfectly with
the default kernel drivers etc. Anything encoded at any other rate does not.
Your reference to the codec, does this mean the cs5535 driver? That is
the only thing that is different with this terminal.
I boot many terminals with different sound cards with this boot image,
the others work.
What do you suggest I do?
The contents of this electronic message and any attachments are intended only
for the addressee and may contain legally privileged, personal, sensitive or
confidential information. If you are not the intended addressee, and have
received this email, any transmission, distribution, downloading, printing or
photocopying of the contents of this message or attachments is strictly
prohibited. Any legal privilege or confidentiality attached to this message and
attachments is not waived, lost or destroyed by reason of delivery to any
person other than intended addressee. If you have received this message and
are not the intended addressee you should notify the sender by return email and
destroy all copies of the message and any attachments. Unless expressly
attributed, the views expressed in this email do not necessarily represent the
views of the company.
More information about the Alsa-devel