Message ID | 20161114091216.22166-1-mugunthanvnm@ti.com |
---|---|
State | Changes Requested |
Delegated to: | Joe Hershberger |
Headers | show |
On Monday 14 November 2016 02:42 PM, Mugunthan V N wrote: > Add support to detect RGMII link interface from link-interface > device tree entry. Also rename the existing link type enums so > that it provides meaning full interface like SGMII. > > Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> Tested-by: Lokesh Vutla <lokeshvutla@ti.com> Thanks and regards, Lokesh > --- > > Without this support there is a crash in K2G EVM tftp boot [1]. > Verified this with tftp download on K2G EVM [2] > > [1] - http://pastebin.ubuntu.com/23474751/ > [2] - http://pastebin.ubuntu.com/23474748/ > > --- > drivers/net/keystone_net.c | 23 +++++++++++++++-------- > 1 file changed, 15 insertions(+), 8 deletions(-) > > diff --git a/drivers/net/keystone_net.c b/drivers/net/keystone_net.c > index f88d83e727..a5120e01ad 100644 > --- a/drivers/net/keystone_net.c > +++ b/drivers/net/keystone_net.c > @@ -56,13 +56,16 @@ struct rx_buff_desc net_rx_buffs = { > #ifdef CONFIG_DM_ETH > > enum link_type { > - LINK_TYPE_MAC_TO_MAC_AUTO = 0, > - LINK_TYPE_MAC_TO_PHY_MODE = 1, > - LINK_TYPE_MAC_TO_MAC_FORCED_MODE = 2, > - LINK_TYPE_MAC_TO_FIBRE_MODE = 3, > - LINK_TYPE_MAC_TO_PHY_NO_MDIO_MODE = 4, > - LINK_TYPE_10G_MAC_TO_PHY_MODE = 10, > - LINK_TYPE_10G_MAC_TO_MAC_FORCED_MODE = 11, > + LINK_TYPE_SGMII_MAC_TO_MAC_AUTO = 0, > + LINK_TYPE_SGMII_MAC_TO_PHY_MODE = 1, > + LINK_TYPE_SGMII_MAC_TO_MAC_FORCED_MODE = 2, > + LINK_TYPE_SGMII_MAC_TO_FIBRE_MODE = 3, > + LINK_TYPE_SGMII_MAC_TO_PHY_NO_MDIO_MODE = 4, > + LINK_TYPE_RGMII_LINK_MAC_PHY = 5, > + LINK_TYPE_RGMII_LINK_MAC_MAC_FORCED = 6, > + LINK_TYPE_RGMII_LINK_MAC_PHY_NO_MDIO = 7, > + LINK_TYPE_10G_MAC_TO_PHY_MODE = 10, > + LINK_TYPE_10G_MAC_TO_MAC_FORCED_MODE = 11, > }; > > #define mac_hi(mac) (((mac)[0] << 0) | ((mac)[1] << 8) | \ > @@ -1077,11 +1080,15 @@ static int ks2_eth_parse_slave_interface(int netcp, int slave, > priv->mdio_base = (void *)fdtdec_get_addr(fdt, mdio, "reg"); > } > > - if (priv->link_type == LINK_TYPE_MAC_TO_PHY_MODE) { > + if (priv->link_type == LINK_TYPE_SGMII_MAC_TO_PHY_MODE) { > priv->phy_if = PHY_INTERFACE_MODE_SGMII; > pdata->phy_interface = priv->phy_if; > priv->sgmii_link_type = SGMII_LINK_MAC_PHY; > priv->has_mdio = true; > + } else if (priv->link_type == LINK_TYPE_RGMII_LINK_MAC_PHY) { > + priv->phy_if = PHY_INTERFACE_MODE_RGMII; > + pdata->phy_interface = priv->phy_if; > + priv->has_mdio = true; > } > > return 0; >
On Mon, Nov 14, 2016 at 3:12 AM, Mugunthan V N <mugunthanvnm@ti.com> wrote: > Add support to detect RGMII link interface from link-interface > device tree entry. Also rename the existing link type enums so > that it provides meaning full interface like SGMII. > > Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> > --- > > Without this support there is a crash in K2G EVM tftp boot [1]. > Verified this with tftp download on K2G EVM [2] > > [1] - http://pastebin.ubuntu.com/23474751/ > [2] - http://pastebin.ubuntu.com/23474748/ > > --- > drivers/net/keystone_net.c | 23 +++++++++++++++-------- > 1 file changed, 15 insertions(+), 8 deletions(-) > > diff --git a/drivers/net/keystone_net.c b/drivers/net/keystone_net.c > index f88d83e727..a5120e01ad 100644 > --- a/drivers/net/keystone_net.c > +++ b/drivers/net/keystone_net.c > @@ -56,13 +56,16 @@ struct rx_buff_desc net_rx_buffs = { > #ifdef CONFIG_DM_ETH > > enum link_type { > - LINK_TYPE_MAC_TO_MAC_AUTO = 0, > - LINK_TYPE_MAC_TO_PHY_MODE = 1, > - LINK_TYPE_MAC_TO_MAC_FORCED_MODE = 2, > - LINK_TYPE_MAC_TO_FIBRE_MODE = 3, > - LINK_TYPE_MAC_TO_PHY_NO_MDIO_MODE = 4, > - LINK_TYPE_10G_MAC_TO_PHY_MODE = 10, > - LINK_TYPE_10G_MAC_TO_MAC_FORCED_MODE = 11, > + LINK_TYPE_SGMII_MAC_TO_MAC_AUTO = 0, > + LINK_TYPE_SGMII_MAC_TO_PHY_MODE = 1, > + LINK_TYPE_SGMII_MAC_TO_MAC_FORCED_MODE = 2, > + LINK_TYPE_SGMII_MAC_TO_FIBRE_MODE = 3, > + LINK_TYPE_SGMII_MAC_TO_PHY_NO_MDIO_MODE = 4, > + LINK_TYPE_RGMII_LINK_MAC_PHY = 5, > + LINK_TYPE_RGMII_LINK_MAC_MAC_FORCED = 6, > + LINK_TYPE_RGMII_LINK_MAC_PHY_NO_MDIO = 7, > + LINK_TYPE_10G_MAC_TO_PHY_MODE = 10, > + LINK_TYPE_10G_MAC_TO_MAC_FORCED_MODE = 11, > }; > > #define mac_hi(mac) (((mac)[0] << 0) | ((mac)[1] << 8) | \ > @@ -1077,11 +1080,15 @@ static int ks2_eth_parse_slave_interface(int netcp, int slave, > priv->mdio_base = (void *)fdtdec_get_addr(fdt, mdio, "reg"); > } > > - if (priv->link_type == LINK_TYPE_MAC_TO_PHY_MODE) { > + if (priv->link_type == LINK_TYPE_SGMII_MAC_TO_PHY_MODE) { > priv->phy_if = PHY_INTERFACE_MODE_SGMII; > pdata->phy_interface = priv->phy_if; > priv->sgmii_link_type = SGMII_LINK_MAC_PHY; > priv->has_mdio = true; > + } else if (priv->link_type == LINK_TYPE_RGMII_LINK_MAC_PHY) { > + priv->phy_if = PHY_INTERFACE_MODE_RGMII; > + pdata->phy_interface = priv->phy_if; > + priv->has_mdio = true; > } > > return 0; This is great, but can you please add this info to a bindings file in doc/device-tree-bindings/net/keystone-netcp.txt so that it's less magic? Thanks, -Joe
Joe On Tuesday 15 November 2016 09:10 AM, Joe Hershberger wrote: > This is great, but can you please add this info to a bindings file in > doc/device-tree-bindings/net/keystone-netcp.txt so that it's less > magic? link-interface is already documented in Kernel device tree bindings (Documentation/devicetree/bindings/net/keystone-netcp.txt), still do we need to document the same in u-boot as well? Regards Mugunthan V N
On Mon, Nov 14, 2016 at 02:42:16PM +0530, Mugunthan V N wrote: > Add support to detect RGMII link interface from link-interface > device tree entry. Also rename the existing link type enums so > that it provides meaning full interface like SGMII. > > Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
On Tue, Nov 15, 2016 at 12:05 AM, Mugunthan V N <mugunthanvnm@ti.com> wrote: > Joe > > On Tuesday 15 November 2016 09:10 AM, Joe Hershberger wrote: >> This is great, but can you please add this info to a bindings file in >> doc/device-tree-bindings/net/keystone-netcp.txt so that it's less >> magic? > > link-interface is already documented in Kernel device tree bindings > (Documentation/devicetree/bindings/net/keystone-netcp.txt), still do we > need to document the same in u-boot as well? I guess I'll leave this to Tom and Simon, but I believe most of the bindings are replicated to U-Boot when we begin supporting them.
Hi Joe, On 30 November 2016 at 12:08, Joe Hershberger <joe.hershberger@gmail.com> wrote: > > On Tue, Nov 15, 2016 at 12:05 AM, Mugunthan V N <mugunthanvnm@ti.com> wrote: > > Joe > > > > On Tuesday 15 November 2016 09:10 AM, Joe Hershberger wrote: > >> This is great, but can you please add this info to a bindings file in > >> doc/device-tree-bindings/net/keystone-netcp.txt so that it's less > >> magic? > > > > link-interface is already documented in Kernel device tree bindings > > (Documentation/devicetree/bindings/net/keystone-netcp.txt), still do we > > need to document the same in u-boot as well? > > I guess I'll leave this to Tom and Simon, but I believe most of the > bindings are replicated to U-Boot when we begin supporting them. Yes that's the idea. Regards, Simon
diff --git a/drivers/net/keystone_net.c b/drivers/net/keystone_net.c index f88d83e727..a5120e01ad 100644 --- a/drivers/net/keystone_net.c +++ b/drivers/net/keystone_net.c @@ -56,13 +56,16 @@ struct rx_buff_desc net_rx_buffs = { #ifdef CONFIG_DM_ETH enum link_type { - LINK_TYPE_MAC_TO_MAC_AUTO = 0, - LINK_TYPE_MAC_TO_PHY_MODE = 1, - LINK_TYPE_MAC_TO_MAC_FORCED_MODE = 2, - LINK_TYPE_MAC_TO_FIBRE_MODE = 3, - LINK_TYPE_MAC_TO_PHY_NO_MDIO_MODE = 4, - LINK_TYPE_10G_MAC_TO_PHY_MODE = 10, - LINK_TYPE_10G_MAC_TO_MAC_FORCED_MODE = 11, + LINK_TYPE_SGMII_MAC_TO_MAC_AUTO = 0, + LINK_TYPE_SGMII_MAC_TO_PHY_MODE = 1, + LINK_TYPE_SGMII_MAC_TO_MAC_FORCED_MODE = 2, + LINK_TYPE_SGMII_MAC_TO_FIBRE_MODE = 3, + LINK_TYPE_SGMII_MAC_TO_PHY_NO_MDIO_MODE = 4, + LINK_TYPE_RGMII_LINK_MAC_PHY = 5, + LINK_TYPE_RGMII_LINK_MAC_MAC_FORCED = 6, + LINK_TYPE_RGMII_LINK_MAC_PHY_NO_MDIO = 7, + LINK_TYPE_10G_MAC_TO_PHY_MODE = 10, + LINK_TYPE_10G_MAC_TO_MAC_FORCED_MODE = 11, }; #define mac_hi(mac) (((mac)[0] << 0) | ((mac)[1] << 8) | \ @@ -1077,11 +1080,15 @@ static int ks2_eth_parse_slave_interface(int netcp, int slave, priv->mdio_base = (void *)fdtdec_get_addr(fdt, mdio, "reg"); } - if (priv->link_type == LINK_TYPE_MAC_TO_PHY_MODE) { + if (priv->link_type == LINK_TYPE_SGMII_MAC_TO_PHY_MODE) { priv->phy_if = PHY_INTERFACE_MODE_SGMII; pdata->phy_interface = priv->phy_if; priv->sgmii_link_type = SGMII_LINK_MAC_PHY; priv->has_mdio = true; + } else if (priv->link_type == LINK_TYPE_RGMII_LINK_MAC_PHY) { + priv->phy_if = PHY_INTERFACE_MODE_RGMII; + pdata->phy_interface = priv->phy_if; + priv->has_mdio = true; } return 0;
Add support to detect RGMII link interface from link-interface device tree entry. Also rename the existing link type enums so that it provides meaning full interface like SGMII. Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> --- Without this support there is a crash in K2G EVM tftp boot [1]. Verified this with tftp download on K2G EVM [2] [1] - http://pastebin.ubuntu.com/23474751/ [2] - http://pastebin.ubuntu.com/23474748/ --- drivers/net/keystone_net.c | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-)