Harmony has headers on the board for an internal speaker and internal mic. This patch series adds various infra-structure, and enables usage of the internal speaker.
The patch series includes both changes to code within the ASoC subsystem and Tegra subsystem, the latter provided only for context when reading the ASoC changes. Would you prefer I separated these so that the ASoC maintainers can grab a whole series and apply it, rather than just a subset of the patches?
While patch 2 is physically located in the Tegra subsystem, I'd consider it part of the ASoC driver. Can such a change be checked into the ASoC tree? This new header file will be required to build to ASoC driver once the following patches are in. I was considering placing this in include/sound, following the example of various codecs, but it doesn't seem a good idea to pollute that directory with platform-specific files. The current location for the file follows the example of s3c24xx/simtec. Perhaps it should be in sound/soc/tegra?
Changelog:
* v3: * Reverted change to WM8903_GPIO_NO_CONFIG * Program WM8903_GP1_FN_MASK in direction_{input,output} * Simplify harmony_event_int_spk * Didn't remove GPIO entries from harmony_wm8903_pdata, since this also sets up all the other fields to 0 too.
Stephen Warren (4): ASoC: WM8903: Expose GPIOs through gpiolib ARM: tegra: Add Harmony sound platform data type ARM: tegra: Platform data fixes for ASoC driver updates ASoC: tegra: Harmony: Support the internal speaker
arch/arm/mach-tegra/board-harmony.c | 31 ++++++ arch/arm/mach-tegra/gpio-names.h | 2 + arch/arm/mach-tegra/include/mach/harmony_audio.h | 19 ++++ include/sound/wm8903.h | 20 ++++- sound/soc/codecs/wm8903.c | 126 +++++++++++++++++++++- sound/soc/tegra/harmony.c | 87 +++++++++++++-- 6 files changed, 272 insertions(+), 13 deletions(-) create mode 100644 arch/arm/mach-tegra/include/mach/harmony_audio.h