]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/spi/spi-mpc512x-psc.c
Merge remote-tracking branch 'spi/for-next'
[karo-tx-linux.git] / drivers / spi / spi-mpc512x-psc.c
index 6adf4e35816d76c1c7f120cd924420c4c8bf71a1..58d5ee0e4443e24442cb4cbeb51b2e80ac637d3b 100644 (file)
@@ -20,6 +20,7 @@
 #include <linux/errno.h>
 #include <linux/interrupt.h>
 #include <linux/of_address.h>
+#include <linux/of_irq.h>
 #include <linux/of_platform.h>
 #include <linux/completion.h>
 #include <linux/io.h>
@@ -536,7 +537,7 @@ static int mpc512x_psc_spi_do_probe(struct device *dev, u32 regaddr,
        if (ret < 0)
                goto free_clock;
 
-       ret = spi_register_master(master);
+       ret = devm_spi_register_master(dev, master);
        if (ret < 0)
                goto free_clock;
 
@@ -559,12 +560,10 @@ static int mpc512x_psc_spi_do_remove(struct device *dev)
        struct spi_master *master = spi_master_get(dev_get_drvdata(dev));
        struct mpc512x_psc_spi *mps = spi_master_get_devdata(master);
 
-       spi_unregister_master(master);
        clk_disable_unprepare(mps->clk_mclk);
        free_irq(mps->irq, mps);
        if (mps->psc)
                iounmap(mps->psc);
-       spi_master_put(master);
 
        return 0;
 }