spi: atcspi200: switch to devm functions

Switch to use devm_spi_alloc_host and devm_mutex_init to make code clean.

Signed-off-by: Felix Gu <ustc.gu@gmail.com>
Link: https://patch.msgid.link/20260417-atcspi-v1-2-854831667d63@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Felix Gu 2026-04-17 00:27:55 +08:00 committed by Mark Brown
parent 565bdf4512
commit aaea50c3bd
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0

View File

@ -550,7 +550,7 @@ static int atcspi_probe(struct platform_device *pdev)
struct resource *mem_res;
int ret;
host = spi_alloc_host(&pdev->dev, sizeof(*spi));
host = devm_spi_alloc_host(&pdev->dev, sizeof(*spi));
if (!host)
return -ENOMEM;
@ -559,21 +559,23 @@ static int atcspi_probe(struct platform_device *pdev)
spi->dev = &pdev->dev;
dev_set_drvdata(&pdev->dev, host);
mutex_init(&spi->mutex_lock);
ret = devm_mutex_init(&pdev->dev, &spi->mutex_lock);
if (ret)
return ret;
ret = atcspi_init_resources(pdev, spi, &mem_res);
if (ret)
goto free_controller;
return ret;
ret = atcspi_enable_clk(spi);
if (ret)
goto free_controller;
return ret;
atcspi_init_controller(pdev, spi, host, mem_res);
ret = atcspi_setup(spi);
if (ret)
goto free_controller;
return ret;
spi->use_dma = false;
if (ATCSPI_DMA_SUPPORT) {
@ -586,18 +588,11 @@ static int atcspi_probe(struct platform_device *pdev)
}
ret = devm_spi_register_controller(&pdev->dev, host);
if (ret) {
dev_err_probe(spi->dev, ret,
"Failed to register SPI controller\n");
goto free_controller;
}
if (ret)
return dev_err_probe(spi->dev, ret,
"Failed to register SPI controller\n");
return 0;
free_controller:
mutex_destroy(&spi->mutex_lock);
spi_controller_put(host);
return ret;
}
static int atcspi_suspend(struct device *dev)