crypto: atmel - use devm_xxx() managed function
Using the devm_xxx() managed function to stripdown the error and remove code. Signed-off-by: LABBE Corentin <clabbe.montjoie@gmail.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:

committed by
Herbert Xu

parent
dc97fa0232
commit
b0e8b3417a
@@ -1349,11 +1349,9 @@ static int atmel_sha_probe(struct platform_device *pdev)
|
||||
struct crypto_platform_data *pdata;
|
||||
struct device *dev = &pdev->dev;
|
||||
struct resource *sha_res;
|
||||
unsigned long sha_phys_size;
|
||||
int err;
|
||||
|
||||
sha_dd = devm_kzalloc(&pdev->dev, sizeof(struct atmel_sha_dev),
|
||||
GFP_KERNEL);
|
||||
sha_dd = devm_kzalloc(&pdev->dev, sizeof(*sha_dd), GFP_KERNEL);
|
||||
if (sha_dd == NULL) {
|
||||
dev_err(dev, "unable to alloc data struct.\n");
|
||||
err = -ENOMEM;
|
||||
@@ -1382,7 +1380,6 @@ static int atmel_sha_probe(struct platform_device *pdev)
|
||||
goto res_err;
|
||||
}
|
||||
sha_dd->phys_base = sha_res->start;
|
||||
sha_phys_size = resource_size(sha_res);
|
||||
|
||||
/* Get the IRQ */
|
||||
sha_dd->irq = platform_get_irq(pdev, 0);
|
||||
@@ -1392,26 +1389,26 @@ static int atmel_sha_probe(struct platform_device *pdev)
|
||||
goto res_err;
|
||||
}
|
||||
|
||||
err = request_irq(sha_dd->irq, atmel_sha_irq, IRQF_SHARED, "atmel-sha",
|
||||
sha_dd);
|
||||
err = devm_request_irq(&pdev->dev, sha_dd->irq, atmel_sha_irq,
|
||||
IRQF_SHARED, "atmel-sha", sha_dd);
|
||||
if (err) {
|
||||
dev_err(dev, "unable to request sha irq.\n");
|
||||
goto res_err;
|
||||
}
|
||||
|
||||
/* Initializing the clock */
|
||||
sha_dd->iclk = clk_get(&pdev->dev, "sha_clk");
|
||||
sha_dd->iclk = devm_clk_get(&pdev->dev, "sha_clk");
|
||||
if (IS_ERR(sha_dd->iclk)) {
|
||||
dev_err(dev, "clock initialization failed.\n");
|
||||
err = PTR_ERR(sha_dd->iclk);
|
||||
goto clk_err;
|
||||
goto res_err;
|
||||
}
|
||||
|
||||
sha_dd->io_base = ioremap(sha_dd->phys_base, sha_phys_size);
|
||||
sha_dd->io_base = devm_ioremap_resource(&pdev->dev, sha_res);
|
||||
if (!sha_dd->io_base) {
|
||||
dev_err(dev, "can't ioremap\n");
|
||||
err = -ENOMEM;
|
||||
goto sha_io_err;
|
||||
goto res_err;
|
||||
}
|
||||
|
||||
atmel_sha_hw_version_init(sha_dd);
|
||||
@@ -1425,12 +1422,12 @@ static int atmel_sha_probe(struct platform_device *pdev)
|
||||
if (IS_ERR(pdata)) {
|
||||
dev_err(&pdev->dev, "platform data not available\n");
|
||||
err = PTR_ERR(pdata);
|
||||
goto err_pdata;
|
||||
goto res_err;
|
||||
}
|
||||
}
|
||||
if (!pdata->dma_slave) {
|
||||
err = -ENXIO;
|
||||
goto err_pdata;
|
||||
goto res_err;
|
||||
}
|
||||
err = atmel_sha_dma_init(sha_dd, pdata);
|
||||
if (err)
|
||||
@@ -1461,12 +1458,6 @@ err_algs:
|
||||
if (sha_dd->caps.has_dma)
|
||||
atmel_sha_dma_cleanup(sha_dd);
|
||||
err_sha_dma:
|
||||
err_pdata:
|
||||
iounmap(sha_dd->io_base);
|
||||
sha_io_err:
|
||||
clk_put(sha_dd->iclk);
|
||||
clk_err:
|
||||
free_irq(sha_dd->irq, sha_dd);
|
||||
res_err:
|
||||
tasklet_kill(&sha_dd->done_task);
|
||||
sha_dd_err:
|
||||
|
Reference in New Issue
Block a user