Commit 09d930ae authored by Mark Brown's avatar Mark Brown

Merge branch 'for-3.1' into for-3.2

parents 33c5f969 c09f5ca7
...@@ -385,14 +385,14 @@ static int ep93xx_i2s_probe(struct platform_device *pdev) ...@@ -385,14 +385,14 @@ static int ep93xx_i2s_probe(struct platform_device *pdev)
res = platform_get_resource(pdev, IORESOURCE_MEM, 0); res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
if (!res) { if (!res) {
err = -ENODEV; err = -ENODEV;
goto fail; goto fail_free_info;
} }
info->mem = request_mem_region(res->start, resource_size(res), info->mem = request_mem_region(res->start, resource_size(res),
pdev->name); pdev->name);
if (!info->mem) { if (!info->mem) {
err = -EBUSY; err = -EBUSY;
goto fail; goto fail_free_info;
} }
info->regs = ioremap(info->mem->start, resource_size(info->mem)); info->regs = ioremap(info->mem->start, resource_size(info->mem));
...@@ -435,6 +435,7 @@ static int ep93xx_i2s_probe(struct platform_device *pdev) ...@@ -435,6 +435,7 @@ static int ep93xx_i2s_probe(struct platform_device *pdev)
iounmap(info->regs); iounmap(info->regs);
fail_release_mem: fail_release_mem:
release_mem_region(info->mem->start, resource_size(info->mem)); release_mem_region(info->mem->start, resource_size(info->mem));
fail_free_info:
kfree(info); kfree(info);
fail: fail:
return err; return err;
......
...@@ -878,10 +878,12 @@ static struct device_node *find_ssi_node(struct device_node *dma_channel_np) ...@@ -878,10 +878,12 @@ static struct device_node *find_ssi_node(struct device_node *dma_channel_np)
* assume that device_node pointers are a valid comparison. * assume that device_node pointers are a valid comparison.
*/ */
np = of_parse_phandle(ssi_np, "fsl,playback-dma", 0); np = of_parse_phandle(ssi_np, "fsl,playback-dma", 0);
of_node_put(np);
if (np == dma_channel_np) if (np == dma_channel_np)
return ssi_np; return ssi_np;
np = of_parse_phandle(ssi_np, "fsl,capture-dma", 0); np = of_parse_phandle(ssi_np, "fsl,capture-dma", 0);
of_node_put(np);
if (np == dma_channel_np) if (np == dma_channel_np)
return ssi_np; return ssi_np;
} }
......
...@@ -345,8 +345,10 @@ static int mpc8610_hpcd_probe(struct platform_device *pdev) ...@@ -345,8 +345,10 @@ static int mpc8610_hpcd_probe(struct platform_device *pdev)
} }
machine_data = kzalloc(sizeof(struct mpc8610_hpcd_data), GFP_KERNEL); machine_data = kzalloc(sizeof(struct mpc8610_hpcd_data), GFP_KERNEL);
if (!machine_data) if (!machine_data) {
return -ENOMEM; ret = -ENOMEM;
goto error_alloc;
}
machine_data->dai[0].cpu_dai_name = dev_name(&ssi_pdev->dev); machine_data->dai[0].cpu_dai_name = dev_name(&ssi_pdev->dev);
machine_data->dai[0].ops = &mpc8610_hpcd_ops; machine_data->dai[0].ops = &mpc8610_hpcd_ops;
...@@ -494,7 +496,7 @@ static int mpc8610_hpcd_probe(struct platform_device *pdev) ...@@ -494,7 +496,7 @@ static int mpc8610_hpcd_probe(struct platform_device *pdev)
ret = platform_device_add(sound_device); ret = platform_device_add(sound_device);
if (ret) { if (ret) {
dev_err(&pdev->dev, "platform device add failed\n"); dev_err(&pdev->dev, "platform device add failed\n");
goto error; goto error_sound;
} }
dev_set_drvdata(&pdev->dev, sound_device); dev_set_drvdata(&pdev->dev, sound_device);
...@@ -502,14 +504,12 @@ static int mpc8610_hpcd_probe(struct platform_device *pdev) ...@@ -502,14 +504,12 @@ static int mpc8610_hpcd_probe(struct platform_device *pdev)
return 0; return 0;
error_sound:
platform_device_unregister(sound_device);
error: error:
of_node_put(codec_np);
if (sound_device)
platform_device_unregister(sound_device);
kfree(machine_data); kfree(machine_data);
error_alloc:
of_node_put(codec_np);
return ret; return ret;
} }
......
...@@ -297,8 +297,10 @@ static int get_dma_channel(struct device_node *ssi_np, ...@@ -297,8 +297,10 @@ static int get_dma_channel(struct device_node *ssi_np,
* dai->platform name should already point to an allocated buffer. * dai->platform name should already point to an allocated buffer.
*/ */
ret = of_address_to_resource(dma_channel_np, 0, &res); ret = of_address_to_resource(dma_channel_np, 0, &res);
if (ret) if (ret) {
of_node_put(dma_channel_np);
return ret; return ret;
}
snprintf((char *)dai->platform_name, DAI_NAME_SIZE, "%llx.%s", snprintf((char *)dai->platform_name, DAI_NAME_SIZE, "%llx.%s",
(unsigned long long) res.start, dma_channel_np->name); (unsigned long long) res.start, dma_channel_np->name);
......
...@@ -424,7 +424,7 @@ static __devinit int kirkwood_i2s_dev_probe(struct platform_device *pdev) ...@@ -424,7 +424,7 @@ static __devinit int kirkwood_i2s_dev_probe(struct platform_device *pdev)
if (!priv->mem) { if (!priv->mem) {
dev_err(&pdev->dev, "request_mem_region failed\n"); dev_err(&pdev->dev, "request_mem_region failed\n");
err = -EBUSY; err = -EBUSY;
goto error; goto error_alloc;
} }
priv->io = ioremap(priv->mem->start, SZ_16K); priv->io = ioremap(priv->mem->start, SZ_16K);
......
...@@ -1915,7 +1915,7 @@ struct snd_kcontrol *snd_soc_cnew(const struct snd_kcontrol_new *_template, ...@@ -1915,7 +1915,7 @@ struct snd_kcontrol *snd_soc_cnew(const struct snd_kcontrol_new *_template,
if (prefix) { if (prefix) {
name_len = strlen(long_name) + strlen(prefix) + 2; name_len = strlen(long_name) + strlen(prefix) + 2;
name = kmalloc(name_len, GFP_ATOMIC); name = kmalloc(name_len, GFP_KERNEL);
if (!name) if (!name)
return NULL; return NULL;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment