This allows for automatic output source switching in userspace. Enable
the pullup on the GPIO to actually make it trigger and mark it as
active-high since detection is reversed otherwise.

Signed-off-by: Guido Günther <a...@sigxcpu.org>
---
 .../dts/freescale/imx8mq-librem5-devkit.dts   | 21 ++++++++++---------
 1 file changed, 11 insertions(+), 10 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts 
b/arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts
index f818af592046..e3bfef98090a 100644
--- a/arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts
+++ b/arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts
@@ -50,13 +50,6 @@ btn2 {
                        linux,code = <KEY_VOLUMEDOWN>;
                };
 
-               hp-det {
-                       label = "HP_DET";
-                       gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
-                       wakeup-source;
-                       linux,code = <KEY_HP>;
-               };
-
                wwan-wake {
                        label = "WWAN_WAKE";
                        gpios = <&gpio3 8 GPIO_ACTIVE_LOW>;
@@ -173,22 +166,25 @@ mic_mux: mic-mux {
 
        sound {
                compatible = "simple-audio-card";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_hpdet>;
                simple-audio-card,aux-devs = <&speaker_amp>, <&mic_mux>;
                simple-audio-card,name = "Librem 5 Devkit";
                simple-audio-card,format = "i2s";
                simple-audio-card,widgets =
                        "Microphone", "Builtin Microphone",
                        "Microphone", "Headset Microphone",
-                       "Headphone", "Headphone Jack",
+                       "Headphone", "Headphones",
                        "Speaker", "Builtin Speaker";
                simple-audio-card,routing =
                        "MIC_IN", "Mic Mux OUT",
                        "Mic Mux IN1", "Headset Microphone",
                        "Mic Mux IN2", "Builtin Microphone",
                        "Mic Mux OUT", "Mic Bias",
-                       "Headphone Jack", "HP_OUT",
+                       "Headphones", "HP_OUT",
                        "Builtin Speaker", "Speaker Amp OUTR",
                        "Speaker Amp INR", "LINE_OUT";
+               simple-audio-card,hp-det-gpio = <&gpio3 20 GPIO_ACTIVE_HIGH>;
 
                simple-audio-card,cpu {
                        sound-dai = <&sai2>;
@@ -630,7 +626,6 @@ pinctrl_gpio_keys: gpiokeygrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SAI2_RXFS_GPIO4_IO21       0x16
                        MX8MQ_IOMUXC_SAI2_RXC_GPIO4_IO22        0x16
-                       MX8MQ_IOMUXC_SAI5_RXC_GPIO3_IO20        0x180  /* 
HP_DET */
                        MX8MQ_IOMUXC_NAND_DATA02_GPIO3_IO8      0x80   /* 
nWoWWAN */
                >;
        };
@@ -641,6 +636,12 @@ MX8MQ_IOMUXC_SPDIF_RX_GPIO5_IO4            0xc6   /* 
nHAPTIC */
                >;
        };
 
+       pinctrl_hpdet: hpdetgrp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_SAI5_RXC_GPIO3_IO20        0xC0   /* 
HP_DET */
+               >;
+       };
+
        pinctrl_i2c1: i2c1grp {
                fsl,pins = <
                        MX8MQ_IOMUXC_I2C1_SCL_I2C1_SCL          0x4000001f
-- 
2.30.0

Reply via email to