The first three changes add a gpio audio jack device. This device can be used on systems that report headphone or mic plug through GPIOS. There can be 0-N of these devices created per board each can report one of several events. For example, this allows for a single jack for HP/Mic and a separate jack for line out.
The last two patches are an example of the jack being used on Acer's Tegra Chromebook, those can be considered separately and might not be worth the churn.
Dylan Reid (5): ALSA: Add jack types to dt-bindings ASoC: jack - make add_gpiods accept pre-filled descriptors ASoC: Add GPIO based jack device ASoC: tegra_max98090: Change nyan to use gpio-jack ARM: tegra: nyan: specify gpio-audio-jack device
.../devicetree/bindings/sound/gpio-audio-jack.txt | 39 +++++ arch/arm/boot/dts/tegra124-nyan.dtsi | 22 ++- include/dt-bindings/sound/audio-jack-events.h | 9 + sound/soc/codecs/Kconfig | 4 + sound/soc/codecs/Makefile | 2 + sound/soc/codecs/gpio-audio-jack.c | 191 +++++++++++++++++++++ sound/soc/soc-jack.c | 9 +- sound/soc/tegra/tegra_max98090.c | 107 +++--------- 8 files changed, 291 insertions(+), 92 deletions(-) create mode 100644 Documentation/devicetree/bindings/sound/gpio-audio-jack.txt create mode 100644 include/dt-bindings/sound/audio-jack-events.h create mode 100644 sound/soc/codecs/gpio-audio-jack.c