From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
To: alsa-devel@alsa-project.org
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>,
Cezary Rojewski <cezary.rojewski@intel.com>,
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>,
Liam Girdwood <liam.r.girdwood@linux.intel.com>,
Peter Ujfalusi <peter.ujfalusi@linux.intel.com>,
Bard Liao <yung-chuan.liao@linux.intel.com>,
Ranjani Sridharan <ranjani.sridharan@linux.intel.com>,
Kai Vehmanen <kai.vehmanen@linux.intel.com>,
Mark Brown <broonie@kernel.org>,
Daniel Baluta <daniel.baluta@nxp.com>,
linux-kernel@vger.kernel.org,
sound-open-firmware@alsa-project.org
Subject: [PATCH v7 04/13] ASoC: SOF: Intel: Fix error handling in hda_init()
Date: Mon, 9 Oct 2023 13:54:28 +0200 [thread overview]
Message-ID: <20231009115437.99976-5-maarten.lankhorst@linux.intel.com> (raw)
In-Reply-To: <20231009115437.99976-1-maarten.lankhorst@linux.intel.com>
The hda_codec_i915_init() errors are ignored in
hda_init() so it can never return -EPROBE_DEFER.
Fix this before we move the call to hda_init() from the
deferred probe to early probe.
While at it, also fix error handling when hda_dsp_ctrl_get_caps
fails.
Suggested-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
---
sound/soc/sof/intel/hda.c | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/sound/soc/sof/intel/hda.c b/sound/soc/sof/intel/hda.c
index 86a2571488bcc..2f189473323f3 100644
--- a/sound/soc/sof/intel/hda.c
+++ b/sound/soc/sof/intel/hda.c
@@ -848,13 +848,21 @@ static int hda_init(struct snd_sof_dev *sdev)
/* init i915 and HDMI codecs */
ret = hda_codec_i915_init(sdev);
- if (ret < 0)
- dev_warn(sdev->dev, "init of i915 and HDMI codec failed\n");
+ if (ret < 0 && ret != -ENODEV) {
+ dev_err_probe(sdev->dev, ret, "init of i915 and HDMI codec failed\n");
+ goto out;
+ }
/* get controller capabilities */
ret = hda_dsp_ctrl_get_caps(sdev);
- if (ret < 0)
+ if (ret < 0) {
dev_err(sdev->dev, "error: get caps error\n");
+ hda_codec_i915_exit(sdev);
+ }
+
+out:
+ if (ret < 0)
+ iounmap(sof_to_bus(sdev)->remap_addr);
return ret;
}
--
2.39.2
next prev parent reply other threads:[~2023-10-09 16:03 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-09 11:54 [PATCH v7 00/13] sound: Use -EPROBE_DEFER instead of i915 module loading Maarten Lankhorst
2023-10-09 11:54 ` [PATCH v7 01/13] ASoC: SOF: core: Ensure sof_ops_free() is still called when probe never ran Maarten Lankhorst
2023-10-13 9:15 ` Takashi Iwai
2023-10-19 10:02 ` Maarten Lankhorst
2023-10-19 13:09 ` Takashi Iwai
2023-10-09 11:54 ` [PATCH v7 02/13] ASoC: SOF: core: Add probe_early and remove_late callbacks Maarten Lankhorst
2023-10-09 11:54 ` [PATCH v7 03/13] ASoC: SOF: Intel: hda: start splitting the probe Maarten Lankhorst
2023-10-09 11:54 ` Maarten Lankhorst [this message]
2023-10-09 11:54 ` [PATCH v7 05/13] ALSA: hda: Intel: Fix error handling in azx_probe() Maarten Lankhorst
2023-10-09 11:54 ` [PATCH v7 06/13] ALSA: hda: i915: Allow override of gpu binding Maarten Lankhorst
2023-10-09 11:54 ` [PATCH v7 07/13] ALSA: hda: i915: Add an allow_modprobe argument to snd_hdac_i915_init Maarten Lankhorst
2023-10-09 11:54 ` [PATCH v7 08/13] ALSA: hda: i915: Allow xe as match for i915_component_master_match Maarten Lankhorst
2023-10-09 11:54 ` [PATCH v7 09/13] ASoC: Intel: avs: Move snd_hdac_i915_init to before probe_work Maarten Lankhorst
2023-10-09 11:54 ` [PATCH v7 10/13] ALSA: hda: Intel: " Maarten Lankhorst
2023-10-09 11:54 ` [PATCH v7 11/13] ASoC: Intel: Skylake: " Maarten Lankhorst
2023-10-09 11:54 ` [PATCH v7 12/13] ASoC: SOF: Intel: Move binding to display driver outside of deferred probe Maarten Lankhorst
2023-10-09 11:54 ` [PATCH v7 13/13] ALSA: hda: i915: Remove extra argument from snd_hdac_i915_init Maarten Lankhorst
2023-10-10 10:49 ` [PATCH v7 00/13] sound: Use -EPROBE_DEFER instead of i915 module loading Péter Ujfalusi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231009115437.99976-5-maarten.lankhorst@linux.intel.com \
--to=maarten.lankhorst@linux.intel.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=cezary.rojewski@intel.com \
--cc=daniel.baluta@nxp.com \
--cc=kai.vehmanen@linux.intel.com \
--cc=liam.r.girdwood@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=perex@perex.cz \
--cc=peter.ujfalusi@linux.intel.com \
--cc=pierre-louis.bossart@linux.intel.com \
--cc=ranjani.sridharan@linux.intel.com \
--cc=sound-open-firmware@alsa-project.org \
--cc=tiwai@suse.com \
--cc=yung-chuan.liao@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.