XO-1.5 microphone testing

John Gilmore gnu at toad.com
Fri Jul 3 23:40:35 EDT 2009


> Basically, for each configuration (external microphone plugged in, and
> external microphone not plugged in), I'd like to know the following:
>  - which of the 8 microphones is the one to use
>  - which ports we can turn off

In reading the generic Intel HDA codec spec, and comparing it to the
http://dev.laptop.org/~dsd/20090629/codec0.txt, it seems that the
"Configuration Default" registers aren't being set up properly by OFW.
These registers define the physical location, color, and type of
device connected by motherboard wiring to each pin on the codec.
E.g. "Internal Mic Inside Lid" versus "External Green Headphone Output
1/8" Jack on Left side".  It's also easy to specify "Not Connected"
here.  Normally these would be set at power-on by the BIOS, and then
read by the software in order to properly label the various audio
controls.  This design avoids needing separate software driver mods
(kernel "quirks") for every single model of motherboard or laptop.
(These register contents are not retained over a full codec
power-down, so the kernel would probably want to save a copy from boot
time.)

I hope you'll test with both mono and stereo external microphones.
The new hardware supports analog stereo input (and mic).  It'd be a
shame to turn that capability off in software because it was only
tested with an analog mic.

I think it should be possible to turn the mic bias on and off in
software (allowing the mic port to be used as "Line In").

It should be possible to turn the headphone output into an unamplified
Line Out.

Testing the OLPC-specific analog "sensor" input mode would be very
useful.  Given the stereo input jack, this would give experimenters
TWO analog inputs.  (Somebody should tell XXX who's uploading
a bunch of instructions for making analog sensors on the wiki;
e.g. XXX).

It would also be useful to test the higher sample rates and larger
sample sizes (24-bit samples, at 192 ksamples/sec outbound or 96
ksamples/sec inbound).  I've had trouble with those settings on an
Acer netbook, for example.

If the microphone LED is on a GPIO under software control, independent
of the hardware's actual ability to listen on the internal mic, then
the LED isn't providing any useful function.  (In which case that LED
hole might as well be used for sensing the brightness of the light
falling on the screen; one of the audio ADC's might be useful for
that.)

	John



More information about the Devel mailing list