diff options
author | Grant Likely <grant.likely@secretlab.ca> | 2009-04-25 08:53:28 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-04-27 05:53:51 -0400 |
commit | fd84f0ee50d3abedd11454b016823aa3ffcdc919 (patch) | |
tree | 389c5ffd6a06d26c253add860b7fd853c71f3cf7 /arch | |
parent | 0b9da337dca972e7a4144e298ec3adb8f244d4a4 (diff) |
powerpc/82xx: Rework Embedded Planet ep8248e platform to use of_mdio
This patch modifies the bitbanged MDIO driver in the ep8248e platform
code to use the common of_mdio infrastructure.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Acked-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/platforms/82xx/ep8248e.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/arch/powerpc/platforms/82xx/ep8248e.c b/arch/powerpc/platforms/82xx/ep8248e.c index 0eb6d7f62241..51fcae41f08a 100644 --- a/arch/powerpc/platforms/82xx/ep8248e.c +++ b/arch/powerpc/platforms/82xx/ep8248e.c | |||
@@ -14,6 +14,7 @@ | |||
14 | #include <linux/interrupt.h> | 14 | #include <linux/interrupt.h> |
15 | #include <linux/fsl_devices.h> | 15 | #include <linux/fsl_devices.h> |
16 | #include <linux/mdio-bitbang.h> | 16 | #include <linux/mdio-bitbang.h> |
17 | #include <linux/of_mdio.h> | ||
17 | #include <linux/of_platform.h> | 18 | #include <linux/of_platform.h> |
18 | 19 | ||
19 | #include <asm/io.h> | 20 | #include <asm/io.h> |
@@ -115,7 +116,7 @@ static int __devinit ep8248e_mdio_probe(struct of_device *ofdev, | |||
115 | struct mii_bus *bus; | 116 | struct mii_bus *bus; |
116 | struct resource res; | 117 | struct resource res; |
117 | struct device_node *node; | 118 | struct device_node *node; |
118 | int ret, i; | 119 | int ret; |
119 | 120 | ||
120 | node = of_get_parent(ofdev->node); | 121 | node = of_get_parent(ofdev->node); |
121 | of_node_put(node); | 122 | of_node_put(node); |
@@ -130,17 +131,13 @@ static int __devinit ep8248e_mdio_probe(struct of_device *ofdev, | |||
130 | if (!bus) | 131 | if (!bus) |
131 | return -ENOMEM; | 132 | return -ENOMEM; |
132 | 133 | ||
133 | bus->phy_mask = 0; | ||
134 | bus->irq = kmalloc(sizeof(int) * PHY_MAX_ADDR, GFP_KERNEL); | 134 | bus->irq = kmalloc(sizeof(int) * PHY_MAX_ADDR, GFP_KERNEL); |
135 | 135 | ||
136 | for (i = 0; i < PHY_MAX_ADDR; i++) | ||
137 | bus->irq[i] = -1; | ||
138 | |||
139 | bus->name = "ep8248e-mdio-bitbang"; | 136 | bus->name = "ep8248e-mdio-bitbang"; |
140 | bus->parent = &ofdev->dev; | 137 | bus->parent = &ofdev->dev; |
141 | snprintf(bus->id, MII_BUS_ID_SIZE, "%x", res.start); | 138 | snprintf(bus->id, MII_BUS_ID_SIZE, "%x", res.start); |
142 | 139 | ||
143 | return mdiobus_register(bus); | 140 | return of_mdiobus_register(bus, ofdev->node); |
144 | } | 141 | } |
145 | 142 | ||
146 | static int ep8248e_mdio_remove(struct of_device *ofdev) | 143 | static int ep8248e_mdio_remove(struct of_device *ofdev) |