Use unique PSCx register base offset to obtain the
SPI PSC number used for SPI bus id.

Signed-off-by: Anatolij Gustschin <ag...@denx.de>
---
 drivers/spi/spi-mpc512x-psc.c |   17 +++++++++++------
 1 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/drivers/spi/spi-mpc512x-psc.c b/drivers/spi/spi-mpc512x-psc.c
index 0a1e39e..844d68f 100644
--- a/drivers/spi/spi-mpc512x-psc.c
+++ b/drivers/spi/spi-mpc512x-psc.c
@@ -523,16 +523,21 @@ static int __devinit mpc512x_psc_spi_of_probe(struct 
platform_device *op)
 
        /* get PSC id (0..11, used by port_config) */
        if (op->dev.platform_data == NULL) {
-               const u32 *psc_nump;
+               u32 reg;
+               int err;
 
-               psc_nump = of_get_property(op->dev.of_node, "cell-index", NULL);
-               if (!psc_nump || *psc_nump > 11) {
-                       dev_err(&op->dev, "mpc512x_psc_spi: Device node %s "
-                               "has invalid cell-index property\n",
+               err =  of_property_read_u32(op->dev.of_node, "reg", &reg);
+               if (err) {
+                       dev_err(&op->dev, "Can't read reg property: %d\n", err);
+                       return err;
+               }
+
+               id = (reg & 0xf00) >> 8;
+               if (id > 11) {
+                       dev_err(&op->dev, "node %s has invalid reg property\n",
                                op->dev.of_node->full_name);
                        return -EINVAL;
                }
-               id = *psc_nump;
        }
 
        return mpc512x_psc_spi_do_probe(&op->dev, (u32) regaddr64, (u32) size64,
-- 
1.7.7.6


------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
spi-devel-general mailing list
spi-devel-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/spi-devel-general

Reply via email to