On 11/12/12 11:57, the mail apparently from Botao Sun included:
Hi Andy,
The Audio input on Panda 4460 always bothers me. My microphone works well on my PC, Vexpress A9 board, but never works on Panda 4460. The plug is a standard 3 parts one.
How did you work out this issue? With a line in cable?
Yes the situation there is not as simple as it could be.
Neither Panda will accept a microphone in the line in socket. They don't provide MICBIAS to power the microphone.
4430 PandaBoard wires Line In to headset microphone input on the audio chip. Confusingly that is Mono and we think differential. What gets recorded there is the difference between the L and R signal we believe. So you should just play silence on one channel and your signal on the other to get a good result. The result will be a fake stereo file with the same mono capture on both channels.
4460 PandaBoard ES fixed that by wiring Line In socket to AuxFM L+R on the audio chip instead, which act like normal, 2 x single-ended inputs. So you can record in stereo properly there. However even then L + R are swapped at the connector compared to the output ^^
UCM stuff knows about the differences; the ALSA driver calls the card differently between PandaBoard and PandaBoardES sso the UCM stuff can route headset mic or AuxFM for capture accordingly.
One other gotcha, they both only issue S32_LE sample format, not the more common S16_LE.
Here's a magic capture script that works on both without relying on UCM or other things.
#!/bin/sh
amixer cset name='MUX_UL00' 'AMic0' amixer cset name='MUX_UL01' 'AMic1' if [ -z "`cat /proc/asound/cards | grep PandaBoardES`" ] ; then amixer cset name='Analog Left Capture Route' 'Headset Mic' amixer cset name='Analog Right Capture Route' 'Headset Mic' else amixer cset name='Analog Left Capture Route' 'Aux/FM Left' amixer cset name='Analog Right Capture Route' 'Aux/FM Right' fi amixer cset name='Capture Preamplifier Volume' 2 amixer cset name='Capture Volume' 4
arecord -v -v -D hw:0,0 -d 5 -f s32_LE -c 2 -r 48000 record.wav
-Andy
On Mon, Nov 12, 2012 at 2:51 PM, Andy Green <andy.green@linaro.org mailto:andy.green@linaro.org> wrote:
On 11/09/12 15:20, the mail apparently from Botao Sun included: Hi - 3. Panda 4430 + ubuntu (Column AD): https://docs.google.com/a/__linaro.org/spreadsheet/ccc?__key=__0AroPySpr4FnEdEwwZkhrZ1VYUEg2L__TlQZzR0RlhzM3c#gid=0 <https://docs.google.com/a/linaro.org/spreadsheet/ccc?key=0AroPySpr4FnEdEwwZkhrZ1VYUEg2LTlQZzR0RlhzM3c#gid=0> Audio works. Dead lock error still exists in boot log, and the issues Audio has been working for months kernelside FWIW, I'm glad it's caught up in these tests. still exist in power management and Bluetooth. All other features remain the same status. BT has always been a bit fragile. There exists a bunch of patches and changes in TI Android that make it super good apparently, I don't think status of BT will change unless we get these. Which may happen. 4. Panda 4460 + ubuntu (Column AC): https://docs.google.com/a/__linaro.org/spreadsheet/ccc?__key=__0AroPySpr4FnEdEwwZkhrZ1VYUEg2L__TlQZzR0RlhzM3c#gid=1 <https://docs.google.com/a/linaro.org/spreadsheet/ccc?key=0AroPySpr4FnEdEwwZkhrZ1VYUEg2LTlQZzR0RlhzM3c#gid=1> Exactly same status as previous test result. Audio input is unavailable I was using PandaBoard ES audio input over the weekend perfectly well, whatever the problem there it's not a problem with the kernel. and dead lock error exists in boot log, although no significant effect to system. That locking log warning is coming from the SGX driver. They seem content to ship it like that and despite it sounds dire it doesn't make trouble. -Andy -- Andy Green | TI Landing Team Leader Linaro.org │ Open source software for ARM SoCs | Follow Linaro http://facebook.com/pages/__Linaro/155974581091106 <http://facebook.com/pages/Linaro/155974581091106> - http://twitter.com/#!/__linaroorg <http://twitter.com/#!/linaroorg> - http://linaro.org/linaro-blog