|
@@ -1174,8 +1174,15 @@ static int __devinit find_phy(struct device_node *np,
|
|
struct device_node *phynode, *mdionode;
|
|
struct device_node *phynode, *mdionode;
|
|
struct resource res;
|
|
struct resource res;
|
|
int ret = 0, len;
|
|
int ret = 0, len;
|
|
|
|
+ const u32 *data;
|
|
|
|
+
|
|
|
|
+ data = of_get_property(np, "fixed-link", NULL);
|
|
|
|
+ if (data) {
|
|
|
|
+ snprintf(fpi->bus_id, 16, PHY_ID_FMT, 0, *data);
|
|
|
|
+ return 0;
|
|
|
|
+ }
|
|
|
|
|
|
- const u32 *data = of_get_property(np, "phy-handle", &len);
|
|
|
|
|
|
+ data = of_get_property(np, "phy-handle", &len);
|
|
if (!data || len != 4)
|
|
if (!data || len != 4)
|
|
return -EINVAL;
|
|
return -EINVAL;
|
|
|
|
|