On Thu, 24 Jan 2019 19:11:59 +0100 Andrew Lunn <and...@lunn.ch> wrote:
> On Thu, Jan 24, 2019 at 07:04:51PM +0100, Marek Behun wrote: > > What properties does the cpu port node need to contain to force it? > > phy-mode = "2500base-x"; is not enough. > > Hi Marek > > For DSA ports we have: > > phy-mode = > "rgmii-txid"; fixed-link { > speed = > <1000>; full-duplex; > }; > > See dsa_port_fixed_link_register_of() > > Andrew Hi Andrew, the configuration phy-mode = "2500base-x"; fixed-link { speed = <2500>; full-duplex; }; does not work, because swphy does not support speed=2500 (only 10, 100 and 1000). managed = "in-band-status"; does not work either. If I use speed = <1000>, then the swphy is created correctly, cmode is set correctly to 2500base-x, but speed register on the port is set to 1000, and the connection does not work. The easiest way would probably be to implement swphy to support speed 2500. But I don't know what values should the simulated PHY registers contain... The function dsa_port_fixed_link_register_of creates this phy device, adjusts the link and then calls put_device(&phydev->mdio.dev); Does this mean that the phy device is immediately destroyed? Marek