drivers: net: cpsw: fix RMII/RGMII mode when used with fixed-link PHY
authorDavid Rivshin <drivshin@allworx.com>
Thu, 17 Dec 2015 04:02:10 +0000 (23:02 -0500)
committerDavid S. Miller <davem@davemloft.net>
Fri, 18 Dec 2015 19:46:05 +0000 (14:46 -0500)
commitf1eea5c15ae799a1291f0f481fa3ea09be913fa9
treec2c7b0b3aeeb9410ac2dd1ef6c14055bd0e9c139
parent1873c58d4a45bd4d7104ba1482fcd9c3bd094cd1
drivers: net: cpsw: fix RMII/RGMII mode when used with fixed-link PHY

Commit 1f71e8c96fc654724723ce987e0a8b2aeb81746d ("drivers: net: cpsw: Add
support for fixed-link PHY") did not parse the "phy-mode" property in
the case of a fixed-link PHY, leaving slave_data->phy_if with its default
of PHY_INTERFACE_MODE_NA(0). This later gets passed to phy_connect() in
cpsw_slave_open(), and eventually to cpsw_phy_sel() where it hits a default
case that configures the MAC for MII mode.

The user visible symptom is that while kernel log messages seem to indicate
that the interface is set up, there is no network communication. Eventually
a watchdog error occurs:
    NETDEV WATCHDOG: eth0 (cpsw): transmit queue 0 timed out

Fixes: 1f71e8c96fc6 ("drivers: net: cpsw: Add support for fixed-link PHY")
Signed-off-by: David Rivshin <drivshin@allworx.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/devicetree/bindings/net/cpsw.txt
drivers/net/ethernet/ti/cpsw.c