projects
/
linux-2.6-block.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge remote-tracking branches 'spi/topic/fsl-espi', 'spi/topic/gpio', 'spi/topic...
[linux-2.6-block.git]
/
drivers
/
spi
/
spi-mpc512x-psc.c
diff --git
a/drivers/spi/spi-mpc512x-psc.c
b/drivers/spi/spi-mpc512x-psc.c
index 9602bbd8d7eac061fffb5543704fc9d68a48f135..46d2313f7c6fc1e155ff15c7f60962291c923524 100644
(file)
--- a/
drivers/spi/spi-mpc512x-psc.c
+++ b/
drivers/spi/spi-mpc512x-psc.c
@@
-504,7
+504,7
@@
static int mpc512x_psc_spi_do_probe(struct device *dev, u32 regaddr,
master->cleanup = mpc512x_psc_spi_cleanup;
master->dev.of_node = dev->of_node;
master->cleanup = mpc512x_psc_spi_cleanup;
master->dev.of_node = dev->of_node;
- tempp =
ioremap(
regaddr, size);
+ tempp =
devm_ioremap(dev,
regaddr, size);
if (!tempp) {
dev_err(dev, "could not ioremap I/O port range\n");
ret = -EFAULT;
if (!tempp) {
dev_err(dev, "could not ioremap I/O port range\n");
ret = -EFAULT;
@@
-513,9
+513,8
@@
static int mpc512x_psc_spi_do_probe(struct device *dev, u32 regaddr,
mps->psc = tempp;
mps->fifo =
(struct mpc512x_psc_fifo *)(tempp + sizeof(struct mpc52xx_psc));
mps->psc = tempp;
mps->fifo =
(struct mpc512x_psc_fifo *)(tempp + sizeof(struct mpc52xx_psc));
-
- ret = request_irq(mps->irq, mpc512x_psc_spi_isr, IRQF_SHARED,
- "mpc512x-psc-spi", mps);
+ ret = devm_request_irq(dev, mps->irq, mpc512x_psc_spi_isr, IRQF_SHARED,
+ "mpc512x-psc-spi", mps);
if (ret)
goto free_master;
init_completion(&mps->txisrdone);
if (ret)
goto free_master;
init_completion(&mps->txisrdone);
@@
-525,11
+524,11
@@
static int mpc512x_psc_spi_do_probe(struct device *dev, u32 regaddr,
clk = devm_clk_get(dev, clk_name);
if (IS_ERR(clk)) {
ret = PTR_ERR(clk);
clk = devm_clk_get(dev, clk_name);
if (IS_ERR(clk)) {
ret = PTR_ERR(clk);
- goto free_
irq
;
+ goto free_
master
;
}
ret = clk_prepare_enable(clk);
if (ret)
}
ret = clk_prepare_enable(clk);
if (ret)
- goto free_
irq
;
+ goto free_
master
;
mps->clk_mclk = clk;
mps->mclk_rate = clk_get_rate(clk);
mps->clk_mclk = clk;
mps->mclk_rate = clk_get_rate(clk);
@@
-545,11
+544,7
@@
static int mpc512x_psc_spi_do_probe(struct device *dev, u32 regaddr,
free_clock:
clk_disable_unprepare(mps->clk_mclk);
free_clock:
clk_disable_unprepare(mps->clk_mclk);
-free_irq:
- free_irq(mps->irq, mps);
free_master:
free_master:
- if (mps->psc)
- iounmap(mps->psc);
spi_master_put(master);
return ret;
spi_master_put(master);
return ret;
@@
-557,13
+552,10
@@
free_master:
static int mpc512x_psc_spi_do_remove(struct device *dev)
{
static int mpc512x_psc_spi_do_remove(struct device *dev)
{
- struct spi_master *master =
spi_master_get(dev_get_drvdata(dev)
);
+ struct spi_master *master =
dev_get_drvdata(dev
);
struct mpc512x_psc_spi *mps = spi_master_get_devdata(master);
clk_disable_unprepare(mps->clk_mclk);
struct mpc512x_psc_spi *mps = spi_master_get_devdata(master);
clk_disable_unprepare(mps->clk_mclk);
- free_irq(mps->irq, mps);
- if (mps->psc)
- iounmap(mps->psc);
return 0;
}
return 0;
}