ASoC: fsl-asoc-card: Add missing handling of {hp,mic}-dt-gpios
authorGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 27 Sep 2024 12:42:16 +0000 (14:42 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 3 Oct 2024 14:59:43 +0000 (15:59 +0100)
The DT bindings deprecated the "hp-det-gpio" and "mic-det-gpio"
properties in favor of "hp-det-gpios" and "mic-det-gpios", but the
driver was never updated to support the latter.

Even before, there existed users of "hp-det-gpios" and "mic-det-gpios".
While this may have been handled fine by the ASoC core, this was missed
by the Freescale-specific part.

Fixes: 4189b54220e5af15 ("ASoC: dt-bindings: fsl-asoc-card: convert to YAML")
Fixes: 40ba2eda0a7b727f ("arm64: dts: imx8mm-nitrogen-r2: add audio")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Link: https://patch.msgid.link/dbcb5bfea005a468ec6dc38374fe6d02bc693c22.1727438777.git.geert+renesas@glider.be
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/fsl/fsl-asoc-card.c

index f6c3aeff0d8eafd71bca747d77386c5ef19b7168..a0c2ce84c32b1d06b160c7283285ebd90358bfe7 100644 (file)
@@ -1033,14 +1033,15 @@ static int fsl_asoc_card_probe(struct platform_device *pdev)
        }
 
        /*
-        * Properties "hp-det-gpio" and "mic-det-gpio" are optional, and
+        * Properties "hp-det-gpios" and "mic-det-gpios" are optional, and
         * simple_util_init_jack() uses these properties for creating
         * Headphone Jack and Microphone Jack.
         *
         * The notifier is initialized in snd_soc_card_jack_new(), then
         * snd_soc_jack_notifier_register can be called.
         */
-       if (of_property_read_bool(np, "hp-det-gpio")) {
+       if (of_property_read_bool(np, "hp-det-gpios") ||
+           of_property_read_bool(np, "hp-det-gpio") /* deprecated */) {
                ret = simple_util_init_jack(&priv->card, &priv->hp_jack,
                                            1, NULL, "Headphone Jack");
                if (ret)
@@ -1049,7 +1050,8 @@ static int fsl_asoc_card_probe(struct platform_device *pdev)
                snd_soc_jack_notifier_register(&priv->hp_jack.jack, &hp_jack_nb);
        }
 
-       if (of_property_read_bool(np, "mic-det-gpio")) {
+       if (of_property_read_bool(np, "mic-det-gpios") ||
+           of_property_read_bool(np, "mic-det-gpio") /* deprecated */) {
                ret = simple_util_init_jack(&priv->card, &priv->mic_jack,
                                            0, NULL, "Mic Jack");
                if (ret)