ADHD: [asymptote] Enable auto-switching of internal mic & microphone jack
ADHD: [asymptote] Enable auto-switching of internal mic & microphone jack

Details

  Updates gavd to handle auto-switching of between the internal
  microphone (DMIC) and the microphone jack (ADC) when a micrphone is
  plugged in.

  Asymptote has only a single jack, so I borrowed an integrated
  microphone / headphone from Dylan to test this.

  o codec_wm8903.h:

    Improve the initialization command so that the ADC is configured
    the way we need it for switching.

    The mixer commands were initially determined by looking at
    'alsamixer' and the schematic (thanks, Dylan).  After all the
    controls were identified, it was a matter of hands-on work to get
    the state of controls seen in this change.

  o board-tegra2_kaen.h

    Fill in the commands to switch between 'DMIC' and 'ADC' based on
    the state of the microphone switch.

  o board-tegra2_aebl.h
    board-tegra2_asymptote.h
    board-tegra2_seaboard.h

    Stubbed out the commands for switching the microphone until they
    can be tested on each architecture.

  o gavd/thread_gpio_switch_monitor.c

    Update the microphone thread with the commands to execute.

Testing

  tegra2_asymptote:

    Verified that the microphone autoswitching works by executing:

       arecord -f cd|aplay -f cd

BUG=chromium-os:19558
TEST=See above.

Change-Id: I3f9ca4063a1ee193d2fad9fc7913782e43bcda1d
Signed-off-by: Taylor Hutt <39a9c928d8a3a00d7fd484a843cc4ccfc80af42c@chromium.org>

drinkcat/adhd,drinkcat/adhd,drinkcat/adhd,drinkcat/adhd,drinkcat/adhd,drinkcat/adhd