With this patch, phy_id can be one of the following: 1) NULL : use the first phy on the bus, 2) "" : force to 100/full, no mdio control 3) "<bus>:<addr>" : use the specified bus and phy
The ability to force 100/full is necessary on some platforms (e.g. da830 evm), where an on-board switch may be connected on the emac mii. Signed-off-by: Cyril Chemparathy <cy...@ti.com> Signed-off-by: Michael Williamson <michael.william...@criticallink.com> Signed-off-by: Caglar Akyuz <caglarak...@gmail.com> --- drivers/net/davinci_emac.c | 2 +- include/linux/davinci_emac.h | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletions(-) diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c index 525b84c..363c970 100644 --- a/drivers/net/davinci_emac.c +++ b/drivers/net/davinci_emac.c @@ -1566,7 +1566,7 @@ static int emac_dev_open(struct net_device *ndev) priv->phy_id = dev_name(phy); } - if (priv->phy_id) { + if (priv->phy_id && *priv->phy_id) { priv->phydev = phy_connect(ndev, priv->phy_id, &emac_adjust_link, 0, PHY_INTERFACE_MODE_MII); diff --git a/include/linux/davinci_emac.h b/include/linux/davinci_emac.h index 7508e49..9ae9ff0 100644 --- a/include/linux/davinci_emac.h +++ b/include/linux/davinci_emac.h @@ -25,6 +25,13 @@ struct emac_platform_data { u32 ctrl_ram_offset; u32 hw_ram_addr; u32 ctrl_ram_size; + + /* + * phy_id can be one of the following: + * - NULL : use the first phy on the bus, + * - "" : force to 100/full, no mdio control + * - "<bus>:<addr>" : use the specified bus and phy + */ const char *phy_id; u8 rmii_en; u8 version; -- 1.7.0.4 _______________________________________________ Davinci-linux-open-source mailing list Davinci-linux-open-source@linux.davincidsp.com http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source