]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ASoC: codecs: max98090: use component set_jack callback
authorSrinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Wed, 20 May 2026 15:50:02 +0000 (15:50 +0000)
committerMark Brown <broonie@kernel.org>
Mon, 25 May 2026 12:39:33 +0000 (13:39 +0100)
The MAX98090 driver provides a custom max98090_mic_detect() helper for
machine drivers to register a jack.

This can be implemented using the standard component set_jack callback
instead. Doing so allows machine drivers to use
snd_soc_component_set_jack(), which is also the interface used by
machine drivers including Qualcomm ones.

Convert max98090_mic_detect() to a component set_jack callback and remove
the exported helper.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Link: https://patch.msgid.link/20260520155002.145306-3-srinivas.kandagatla@oss.qualcomm.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/max98090.c
sound/soc/codecs/max98090.h

index 13a15459040fc38681b7e279fb35db9fd656d9b9..bd3bfa1d340296dca08476fd0ca8290adad4faed 100644 (file)
@@ -2337,7 +2337,7 @@ static irqreturn_t max98090_interrupt(int irq, void *data)
 }
 
 /**
- * max98090_mic_detect - Enable microphone detection via the MAX98090 IRQ
+ * max98090_set_jack - Enable microphone detection via the MAX98090 IRQ
  *
  * @component:  MAX98090 component
  * @jack:   jack to report detection events on
@@ -2349,12 +2349,12 @@ static irqreturn_t max98090_interrupt(int irq, void *data)
  *
  * If no jack is supplied detection will be disabled.
  */
-int max98090_mic_detect(struct snd_soc_component *component,
-       struct snd_soc_jack *jack)
+static int max98090_set_jack(struct snd_soc_component *component,
+                            struct snd_soc_jack *jack, void *data)
 {
        struct max98090_priv *max98090 = snd_soc_component_get_drvdata(component);
 
-       dev_dbg(component->dev, "max98090_mic_detect\n");
+       dev_dbg(component->dev, "%s\n", __func__);
 
        max98090->jack = jack;
        if (jack) {
@@ -2377,7 +2377,6 @@ int max98090_mic_detect(struct snd_soc_component *component,
 
        return 0;
 }
-EXPORT_SYMBOL_GPL(max98090_mic_detect);
 
 #define MAX98090_RATES SNDRV_PCM_RATE_8000_96000
 #define MAX98090_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S24_LE)
@@ -2554,6 +2553,7 @@ static const struct snd_soc_component_driver soc_component_dev_max98090 = {
        .remove                 = max98090_remove,
        .seq_notifier           = max98090_seq_notifier,
        .set_bias_level         = max98090_set_bias_level,
+       .set_jack               = max98090_set_jack,
        .idle_bias_on           = 1,
        .use_pmdown_time        = 1,
        .endianness             = 1,
index 6ce8dd176e48fe46f6568412a4501ffa0fedc11e..048af4a1376f13d95096437a6f482adf8e9e6a1b 100644 (file)
@@ -1543,7 +1543,4 @@ struct max98090_priv {
        bool shdn_pending;
 };
 
-int max98090_mic_detect(struct snd_soc_component *component,
-       struct snd_soc_jack *jack);
-
 #endif