|
@@ -17,7 +17,6 @@
|
|
|
#include <linux/errno.h>
|
|
|
#include <linux/interrupt.h>
|
|
|
#include <linux/of_platform.h>
|
|
|
-#include <linux/of_spi.h>
|
|
|
#include <linux/workqueue.h>
|
|
|
#include <linux/completion.h>
|
|
|
#include <linux/io.h>
|
|
@@ -398,6 +397,7 @@ static int __init mpc52xx_psc_spi_do_probe(struct device *dev, u32 regaddr,
|
|
|
master->setup = mpc52xx_psc_spi_setup;
|
|
|
master->transfer = mpc52xx_psc_spi_transfer;
|
|
|
master->cleanup = mpc52xx_psc_spi_cleanup;
|
|
|
+ master->dev.of_node = dev->of_node;
|
|
|
|
|
|
mps->psc = ioremap(regaddr, size);
|
|
|
if (!mps->psc) {
|
|
@@ -470,7 +470,6 @@ static int __init mpc52xx_psc_spi_of_probe(struct of_device *op,
|
|
|
const u32 *regaddr_p;
|
|
|
u64 regaddr64, size64;
|
|
|
s16 id = -1;
|
|
|
- int rc;
|
|
|
|
|
|
regaddr_p = of_get_address(op->dev.of_node, 0, &size64, NULL);
|
|
|
if (!regaddr_p) {
|
|
@@ -491,13 +490,8 @@ static int __init mpc52xx_psc_spi_of_probe(struct of_device *op,
|
|
|
id = *psc_nump + 1;
|
|
|
}
|
|
|
|
|
|
- rc = mpc52xx_psc_spi_do_probe(&op->dev, (u32)regaddr64, (u32)size64,
|
|
|
+ return mpc52xx_psc_spi_do_probe(&op->dev, (u32)regaddr64, (u32)size64,
|
|
|
irq_of_parse_and_map(op->dev.of_node, 0), id);
|
|
|
- if (rc == 0)
|
|
|
- of_register_spi_devices(dev_get_drvdata(&op->dev),
|
|
|
- op->dev.of_node);
|
|
|
-
|
|
|
- return rc;
|
|
|
}
|
|
|
|
|
|
static int __exit mpc52xx_psc_spi_of_remove(struct of_device *op)
|