summaryrefslogtreecommitdiffstats
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.bz2
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 */