It seems that that alsa lib is not returning the correct values. Is this typical of the gcc bug?
Iirc, some pcm refinements were being broken by this bug. So it could be causing the period size = 0.
I've now tried it with no -O option and it still returns period_size of 0. The bug seemed to go away according to the bugzilla report when optimization is disabled.
What gcc version are you using?
4.1.1
The bug is also marked as fixed in 4.1.2.
Can you also send me the parameters you use with ./configure to setup the cross-compilation?
I use the following:
CFLAGS="-Wall -O1" \ CXXFLAGS="-Wall -O1" \ CC=arm-linux-gcc ./configure \ --host=arm-linux\ --prefix=$HOME/bsp/rootfs/buildroot/build_arm/root/usr\ --with-softfloat\ --with-debug=yes
The OE recipe used to build alsa-lib for OE is here (although, it needs updating):-
http://www.openembedded.org/repo/org.openembedded.dev/packages/alsa/alsa-lib...
Btw, have you tried any other tests or aplay ?
I run speaker_test from alsa-utils and get exactly the same result.
What about aplay -Dhw:0.0 file.wav (this should rule out missing conf files that buildroot has not installed)
I will try aplay.