On Wed, Nov 15, 2023 at 01:36:25PM +0100, Maarten Lankhorst wrote:
> It turns out that even if the comment says that the driver can load
> fine, it's not really the case and no codecs are detected.
> Specifically for -EPROBE_DEFER, always fail the probe.
> 
> This fixes a regression when HDA-intel is loaded before i915.
> 
> Reported-by: Ville Syrjälä <[email protected]>
> Signed-off-by: Maarten Lankhorst <[email protected]>
> Tested-by: Kai Vehmanen <[email protected]>
> Fixes: e6d0c13e9f46 ("ALSA: hda: i915: Remove extra argument from 
> snd_hdac_i915_init")
> Cc: Takashi Iwai <[email protected]>

Appears to work here as well. Thanks.

> 
> ---
> Using Takashi's version, as I like the separate -EPROBE_DEFER if more.
> ---
>  sound/pci/hda/hda_intel.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
> index 058f6e6491f9..8e9a003daa8d 100644
> --- a/sound/pci/hda/hda_intel.c
> +++ b/sound/pci/hda/hda_intel.c
> @@ -2140,6 +2140,9 @@ static int azx_probe(struct pci_dev *pci,
>       if (chip->driver_caps & AZX_DCAPS_I915_COMPONENT) {
>               err = snd_hdac_i915_init(azx_bus(chip));
>               if (err < 0) {
> +                     if (err == -EPROBE_DEFER)
> +                             goto out_free;
> +
>                       /* if the controller is bound only with HDMI/DP
>                        * (for HSW and BDW), we need to abort the probe;
>                        * for other chips, still continue probing as other
> -- 
> 2.40.1

-- 
Ville Syrjälä
Intel

Reply via email to