mvswitch: fix autonegotiation issue
authorSergey Ryazanov <ryazanov.s.a@gmail.com>
Tue, 6 Jun 2017 22:25:31 +0000 (01:25 +0300)
committerJo-Philipp Wich <jo@mein.io>
Wed, 13 Dec 2017 14:52:49 +0000 (15:52 +0100)
commit816fb3433b48af45a6e48bd2810950f71d27535f
tree0a3f1835a41a7505a6c5ec786d6951d54511b531
parent41ee45428baab8c9cc365209caef8b03c86ae0e8
mvswitch: fix autonegotiation issue

The Marvel 88E6060 switch has an MDIO interface, but does not emulate
regular PHY behavior for the host. The network core can not detect using
the generic code, whether the connection via the attached PHY can be
used or not. The PHY's state machine is stuck in a state of
auto-negotiation and does not go any further so the Ethernet interface
of the router stay forever in the not-runing state.

Fix this issue by implementing the aneg_done callback to be able to
inform the network core that the Ethernet interface link to which the
switch is connected can be marked as RUNNING.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
(cherry picked from commit 913b2290caad437bb523d6f1ee5a70707f7f7ef4)
target/linux/generic/files/drivers/net/phy/mvswitch.c