ALSA: hda: i915: Remove extra argument from snd_hdac_i915_init
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
Mon, 9 Oct 2023 11:54:37 +0000 (13:54 +0200)
committerTakashi Iwai <tiwai@suse.de>
Thu, 19 Oct 2023 12:56:25 +0000 (14:56 +0200)
Now that all drivers have moved from modprobe loading to
handling -EPROBE_DEFER, we can remove the argument again.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20231009115437.99976-14-maarten.lankhorst@linux.intel.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
include/sound/hda_i915.h
sound/hda/hdac_i915.c
sound/pci/hda/hda_intel.c
sound/soc/intel/avs/core.c
sound/soc/intel/skylake/skl.c
sound/soc/sof/intel/hda-codec.c

index f91bd66360865bb768ea2abe9ef3da1aaaf17ea6..6b79614a893b90dceb92e3a2945af150ff234bea 100644 (file)
@@ -9,12 +9,12 @@
 
 #ifdef CONFIG_SND_HDA_I915
 void snd_hdac_i915_set_bclk(struct hdac_bus *bus);
-int snd_hdac_i915_init(struct hdac_bus *bus, bool allow_modprobe);
+int snd_hdac_i915_init(struct hdac_bus *bus);
 #else
 static inline void snd_hdac_i915_set_bclk(struct hdac_bus *bus)
 {
 }
-static inline int snd_hdac_i915_init(struct hdac_bus *bus, bool allow_modprobe)
+static inline int snd_hdac_i915_init(struct hdac_bus *bus)
 {
        return -ENODEV;
 }
index 0765e5350e7bafa1272c0b199c8e1572ab32c656..365c36fdf205854c12a6f1eda217b757f9e462bd 100644 (file)
@@ -156,7 +156,7 @@ static int i915_gfx_present(struct pci_dev *hdac_pci)
  *
  * Returns zero for success or a negative error code.
  */
-int snd_hdac_i915_init(struct hdac_bus *bus, bool allow_modprobe)
+int snd_hdac_i915_init(struct hdac_bus *bus)
 {
        struct drm_audio_component *acomp;
        int err;
@@ -172,18 +172,10 @@ int snd_hdac_i915_init(struct hdac_bus *bus, bool allow_modprobe)
        acomp = bus->audio_component;
        if (!acomp)
                return -ENODEV;
-       if (allow_modprobe && !acomp->ops) {
-               if (!IS_ENABLED(CONFIG_MODULES) ||
-                   !request_module("i915")) {
-                       /* 60s timeout */
-                       wait_for_completion_killable_timeout(&acomp->master_bind_complete,
-                                                            msecs_to_jiffies(60 * 1000));
-               }
-       }
        if (!acomp->ops) {
-               int err = allow_modprobe ? -ENODEV : -EPROBE_DEFER;
                snd_hdac_acomp_exit(bus);
-               return dev_err_probe(bus->dev, err, "couldn't bind with audio component\n");
+               return dev_err_probe(bus->dev, -EPROBE_DEFER,
+                                    "couldn't bind with audio component\n");
        }
        return 0;
 }
index c729ce192a7d2a83ac97c682ddb044352aa22d42..976e9d388cc7842bcbd6b3c6bc19e9711063911c 100644 (file)
@@ -2138,7 +2138,7 @@ static int azx_probe(struct pci_dev *pci,
 #ifdef CONFIG_SND_HDA_I915
        /* bind with i915 if needed */
        if (chip->driver_caps & AZX_DCAPS_I915_COMPONENT) {
-               err = snd_hdac_i915_init(azx_bus(chip), false);
+               err = snd_hdac_i915_init(azx_bus(chip));
                if (err < 0) {
                        /* if the controller is bound only with HDMI/DP
                         * (for HSW and BDW), we need to abort the probe;
index 8a206395824878f056f2f7f2071e98dc216a841f..33044f353575de7e2b18f17f74be0675dd1522b4 100644 (file)
@@ -461,7 +461,7 @@ static int avs_pci_probe(struct pci_dev *pci, const struct pci_device_id *id)
        pci_set_drvdata(pci, bus);
        device_disable_async_suspend(dev);
 
-       ret = snd_hdac_i915_init(bus, false);
+       ret = snd_hdac_i915_init(bus);
        if (ret == -EPROBE_DEFER)
                goto err_i915_init;
        else if (ret < 0)
index 24bdbe2a53bec3a2bc2a4dd9b0b2a77e204f199e..f46f109d5856ecd5bc4393d732681ab9ae2b5487 100644 (file)
@@ -1056,7 +1056,7 @@ static int skl_probe(struct pci_dev *pci,
        }
 
        if (IS_ENABLED(CONFIG_SND_SOC_HDAC_HDMI)) {
-               err = snd_hdac_i915_init(bus, false);
+               err = snd_hdac_i915_init(bus);
                if (err < 0)
                        goto out_dmic_unregister;
        }
index f1fd5b44aaac9a4ffda3fe682c58743061900c62..8a5e99a898ecb4b941faafc092aea8c0ac0ba691 100644 (file)
@@ -415,7 +415,7 @@ int hda_codec_i915_init(struct snd_sof_dev *sdev)
                return 0;
 
        /* i915 exposes a HDA codec for HDMI audio */
-       ret = snd_hdac_i915_init(bus, true);
+       ret = snd_hdac_i915_init(bus);
        if (ret < 0)
                return ret;