Merge branch 'mdio_net'
Johan Hovold says: ==================== net: cpsw and mdio-gpio fixes for v3.15-final These patches against v3.15-rc4 fix a few issues in the cpsw and mdio-gpio drivers. Resend with proper stable CC (git send-email still fails to parse the Sorry about the noise. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
27653053be
@ -14,7 +14,7 @@ node.
|
||||
Example:
|
||||
|
||||
aliases {
|
||||
mdio-gpio0 = <&mdio0>;
|
||||
mdio-gpio0 = &mdio0;
|
||||
};
|
||||
|
||||
mdio0: mdio {
|
||||
|
@ -1871,18 +1871,13 @@ static int cpsw_probe_dt(struct cpsw_platform_data *data,
|
||||
mdio_node = of_find_node_by_phandle(be32_to_cpup(parp));
|
||||
phyid = be32_to_cpup(parp+1);
|
||||
mdio = of_find_device_by_node(mdio_node);
|
||||
|
||||
if (strncmp(mdio->name, "gpio", 4) == 0) {
|
||||
/* GPIO bitbang MDIO driver attached */
|
||||
struct mii_bus *bus = dev_get_drvdata(&mdio->dev);
|
||||
|
||||
snprintf(slave_data->phy_id, sizeof(slave_data->phy_id),
|
||||
PHY_ID_FMT, bus->id, phyid);
|
||||
} else {
|
||||
/* davinci MDIO driver attached */
|
||||
snprintf(slave_data->phy_id, sizeof(slave_data->phy_id),
|
||||
PHY_ID_FMT, mdio->name, phyid);
|
||||
of_node_put(mdio_node);
|
||||
if (!mdio) {
|
||||
pr_err("Missing mdio platform device\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
snprintf(slave_data->phy_id, sizeof(slave_data->phy_id),
|
||||
PHY_ID_FMT, mdio->name, phyid);
|
||||
|
||||
mac_addr = of_get_mac_address(slave_node);
|
||||
if (mac_addr)
|
||||
|
@ -215,6 +215,10 @@ static int mdio_gpio_probe(struct platform_device *pdev)
|
||||
if (pdev->dev.of_node) {
|
||||
pdata = mdio_gpio_of_get_data(pdev);
|
||||
bus_id = of_alias_get_id(pdev->dev.of_node, "mdio-gpio");
|
||||
if (bus_id < 0) {
|
||||
dev_warn(&pdev->dev, "failed to get alias id\n");
|
||||
bus_id = 0;
|
||||
}
|
||||
} else {
|
||||
pdata = dev_get_platdata(&pdev->dev);
|
||||
bus_id = pdev->id;
|
||||
|
Loading…
x
Reference in New Issue
Block a user