summary refs log tree commit diff
path: root/sound/x86
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2017-01-31 08:44:23 +0100
committerTakashi Iwai <tiwai@suse.de>2017-02-03 17:31:06 +0100
commit301cf8a9559bb372ab64da3781d3d93d1ce38213 (patch)
tree53c04f64d4878f7c9324cc1c3c05c9d46323406b /sound/x86
parentc415022e487fbba19926b56b981c5474474c0465 (diff)
downloadlinux-301cf8a9559bb372ab64da3781d3d93d1ce38213.tar.gz
ALSA: x86: Check platform_data earlier
Just a minor optimization; check the presence of platform_data earlier
in the probe function before actually starting allocation, which makes
the error path easier.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/x86')
-rw-r--r--sound/x86/intel_hdmi_lpe_audio.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/sound/x86/intel_hdmi_lpe_audio.c b/sound/x86/intel_hdmi_lpe_audio.c
index b84f7d92ed24..8789f55724da 100644
--- a/sound/x86/intel_hdmi_lpe_audio.c
+++ b/sound/x86/intel_hdmi_lpe_audio.c
@@ -310,6 +310,12 @@ static int hdmi_lpe_audio_probe(struct platform_device *pdev)
 	dev_dbg(&pdev->dev, "Enter %s\n", __func__);
 	dev_dbg(&pdev->dev, "dma_mask: %p\n", pdev->dev.dma_mask);
 
+	pdata = pdev->dev.platform_data;
+	if (!pdata) {
+		dev_err(&pdev->dev, "%s: quit: pdata not allocated by i915!!\n", __func__);
+		return -EINVAL;
+	}
+
 	/* get resources */
 	irq = platform_get_irq(pdev, 0);
 	if (irq < 0) {
@@ -352,14 +358,6 @@ static int hdmi_lpe_audio_probe(struct platform_device *pdev)
 	/* assume pipe A as default */
 	ctx->had_config_offset = AUDIO_HDMI_CONFIG_A;
 
-	pdata = pdev->dev.platform_data;
-
-	if (pdata == NULL) {
-		dev_err(&pdev->dev, "%s: quit: pdata not allocated by i915!!\n", __func__);
-		ret = -ENOMEM;
-		goto error_irq;
-	}
-
 	platform_set_drvdata(pdev, ctx);
 
 	/* setup interrupt handler */