[alsa-devel] issue with TWL4030

Grazvydas Ignotas notasas at gmail.com
Sat Jul 3 00:50:50 CEST 2010


Hi,

there seems to be a problem with TWL4030 hw_param programming, which
is easy to reproduce over OSS emulation with this simple program:

int oss_dev = open("/dev/dsp", O_WRONLY);
int stereo = 1, bits = 16, rate = 44100;
ioctl(oss_dev, SNDCTL_DSP_SETFMT, &bits);
ioctl(oss_dev, SNDCTL_DSP_SPEED,  &rate);
ioctl(oss_dev, SNDCTL_DSP_STEREO, &stereo);
write(oss_dev, somebuff, sizeof(somebuff));

The above program ends up playing at 8kHz, instead of expected 44kHz.
I did some call tracing and got this:
[ 1092.246032] soc_pcm_hw_params, rate 8000
[ 1092.250122] twl4030_hw_params
[ 1092.253234]   set rate 8000
[ 1092.256103]   configured 1
[ 1092.259368] soc_pcm_hw_params, rate 8000
[ 1092.263427] twl4030_hw_params
[ 1092.266845] soc_pcm_hw_params, rate 44100
[ 1092.270965] twl4030_hw_params
[ 1094.459106] twl4030_shutdown
[ 1094.462036]   configured 0

So it looks like twl4030->configured is the culprit of this, removing
it solves the problem, but I guess that will break something else. Any
ideas how to properly fix this?

Gražvydas


More information about the Alsa-devel mailing list