• Stephen Warren's avatar
    ASoC: Tegra: Harmony: Explicitly set mic enables · bf1b1328
    Stephen Warren authored
    Harmony has both an external mic (a regular mic jack) and an internal mic
    (a 0.1" two-pin header on the board).
    
    The external mic is connected to the WM8903's IN1L pin, and is supported
    by the current driver.
    
    The internal mic is connected to the WM8903's IN1R pin, and is not supported
    by the current driver.
    
    It appears that no Harmony systems were shipped with any internal mic
    connected; users were expected to provide their own. This makes the
    internal mic connection less interesting.
    
    The WM8903's Mic Bias signal is used for both of these mics. For each mic,
    a GPIO drives a transistor which gates whether the mic bias signal is
    actively connected to that mic, or isolated from it.
    
    The dual use of the mic bias for both mics makes a general-purpose complete
    implementation of mic detection using the mic bias complex. So, for
    simplicity, the internal mic is currently ignored by the driver.
    
    This patch configures the relevant GPIOs to enable the mic bias connection
    to the external mic, and disable the mic bias connection to the internal
    mic. Note that in practice, this is the default state if these GPIOs aren't
    configured.
    Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
    Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
    bf1b1328
harmony.c 9.91 KB