Commit 6ac4262f authored by Kuninori Morimoto's avatar Kuninori Morimoto Committed by Mark Brown
Browse files

ASoC: fsi: convert to devm_xxx()

parent dbd4e51c
Loading
Loading
Loading
Loading
+8 −17
Original line number Diff line number Diff line
@@ -1655,22 +1655,20 @@ static int fsi_probe(struct platform_device *pdev)
	irq = platform_get_irq(pdev, 0);
	if (!res || (int)irq <= 0) {
		dev_err(&pdev->dev, "Not enough FSI platform resources.\n");
		ret = -ENODEV;
		goto exit;
		return -ENODEV;
	}

	master = kzalloc(sizeof(*master), GFP_KERNEL);
	master = devm_kzalloc(&pdev->dev, sizeof(*master), GFP_KERNEL);
	if (!master) {
		dev_err(&pdev->dev, "Could not allocate master\n");
		ret = -ENOMEM;
		goto exit;
		return -ENOMEM;
	}

	master->base = ioremap_nocache(res->start, resource_size(res));
	master->base = devm_ioremap_nocache(&pdev->dev,
					    res->start, resource_size(res));
	if (!master->base) {
		ret = -ENXIO;
		dev_err(&pdev->dev, "Unable to ioremap FSI registers.\n");
		goto exit_kfree;
		return -ENXIO;
	}

	/* master setting */
@@ -1686,7 +1684,7 @@ static int fsi_probe(struct platform_device *pdev)
	ret = fsi_stream_probe(&master->fsia, &pdev->dev);
	if (ret < 0) {
		dev_err(&pdev->dev, "FSIA stream probe failed\n");
		goto exit_iounmap;
		return ret;
	}

	/* FSI B setting */
@@ -1734,11 +1732,7 @@ static int fsi_probe(struct platform_device *pdev)
	fsi_stream_remove(&master->fsib);
exit_fsia:
	fsi_stream_remove(&master->fsia);
exit_iounmap:
	iounmap(master->base);
exit_kfree:
	kfree(master);
exit:

	return ret;
}

@@ -1757,9 +1751,6 @@ static int fsi_remove(struct platform_device *pdev)
	fsi_stream_remove(&master->fsia);
	fsi_stream_remove(&master->fsib);

	iounmap(master->base);
	kfree(master);

	return 0;
}