aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/fpga/machxo2-spi.c
diff options
context:
space:
mode:
authorAlan Tull <atull@kernel.org>2018-10-15 18:20:01 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-10-16 05:13:50 -0400
commit084181fe8cc7472695b907f0018f4cd00934cb12 (patch)
tree812b6c10de92d91bccfdec2da621abacc2745c4d /drivers/fpga/machxo2-spi.c
parent1c87dc897b8c8ace3aa4480fa29ef6439dabb3ab (diff)
fpga: mgr: add devm_fpga_mgr_create
Add devm_fpga_mgr_create() which is the managed version of fpga_mgr_create(). Change current FPGA manager drivers to use devm_fpga_mgr_create() Signed-off-by: Alan Tull <atull@kernel.org> Suggested-by: Federico Vaga <federico.vaga@cern.ch> Acked-by: Moritz Fischer <mdf@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/fpga/machxo2-spi.c')
-rw-r--r--drivers/fpga/machxo2-spi.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/fpga/machxo2-spi.c b/drivers/fpga/machxo2-spi.c
index a582e0000c97..4d8a87641587 100644
--- a/drivers/fpga/machxo2-spi.c
+++ b/drivers/fpga/machxo2-spi.c
@@ -356,25 +356,20 @@ static int machxo2_spi_probe(struct spi_device *spi)
356{ 356{
357 struct device *dev = &spi->dev; 357 struct device *dev = &spi->dev;
358 struct fpga_manager *mgr; 358 struct fpga_manager *mgr;
359 int ret;
360 359
361 if (spi->max_speed_hz > MACHXO2_MAX_SPEED) { 360 if (spi->max_speed_hz > MACHXO2_MAX_SPEED) {
362 dev_err(dev, "Speed is too high\n"); 361 dev_err(dev, "Speed is too high\n");
363 return -EINVAL; 362 return -EINVAL;
364 } 363 }
365 364
366 mgr = fpga_mgr_create(dev, "Lattice MachXO2 SPI FPGA Manager", 365 mgr = devm_fpga_mgr_create(dev, "Lattice MachXO2 SPI FPGA Manager",
367 &machxo2_ops, spi); 366 &machxo2_ops, spi);
368 if (!mgr) 367 if (!mgr)
369 return -ENOMEM; 368 return -ENOMEM;
370 369
371 spi_set_drvdata(spi, mgr); 370 spi_set_drvdata(spi, mgr);
372 371
373 ret = fpga_mgr_register(mgr); 372 return fpga_mgr_register(mgr);
374 if (ret)
375 fpga_mgr_free(mgr);
376
377 return ret;
378} 373}
379 374
380static int machxo2_spi_remove(struct spi_device *spi) 375static int machxo2_spi_remove(struct spi_device *spi)