The phy device keeps a note of the duplex mode, so use that value instead of duplex mode. Also use the phydev defines for duplex modes, and remove the driver private ones. Signed-off-by: Mark Einon <mark.einon@xxxxxxxxx> --- drivers/staging/et131x/et1310_mac.c | 8 +++++--- drivers/staging/et131x/et1310_phy.c | 4 ---- drivers/staging/et131x/et1310_phy.h | 4 ---- drivers/staging/et131x/et131x_adapter.h | 1 - 4 files changed, 5 insertions(+), 12 deletions(-) diff --git a/drivers/staging/et131x/et1310_mac.c b/drivers/staging/et131x/et1310_mac.c index efabc03..08d7691 100644 --- a/drivers/staging/et131x/et1310_mac.c +++ b/drivers/staging/et131x/et1310_mac.c @@ -205,11 +205,11 @@ void et1310_config_mac_regs2(struct et131x_adapter *adapter) cfg2 &= ~0x0021; /* Turn on duplex if needed */ - if (adapter->duplex_mode) + if (phydev && phydev->duplex == DUPLEX_FULL) cfg2 |= 0x01; ifctrl &= ~(1 << 26); - if (!adapter->duplex_mode) + if (phydev && phydev->duplex == DUPLEX_HALF) ifctrl |= (1<<26); /* Enable ghd */ writel(ifctrl, &mac->if_ctrl); @@ -450,7 +450,9 @@ void et1310_config_macstat_regs(struct et131x_adapter *adapter) void et1310_config_flow_control(struct et131x_adapter *adapter) { - if (adapter->duplex_mode == 0) { + struct phy_device *phydev = adapter->phydev; + + if (phydev->duplex == DUPLEX_HALF) { adapter->flowcontrol = FLOW_NONE; } else { char remote_pause, remote_async_pause; diff --git a/drivers/staging/et131x/et1310_phy.c b/drivers/staging/et131x/et1310_phy.c index c5d0d02..41f0afa 100644 --- a/drivers/staging/et131x/et1310_phy.c +++ b/drivers/staging/et131x/et1310_phy.c @@ -477,8 +477,6 @@ void et131x_mii_check(struct et131x_adapter *adapter, netif_carrier_off(adapter->netdev); - adapter->duplex_mode = 0; - /* Free the packets being actively sent & stopped */ et131x_free_busy_send_packets(adapter); @@ -516,8 +514,6 @@ void et131x_mii_check(struct et131x_adapter *adapter, &speed, &duplex, &mdi_mdix, &masterslave, &polarity); - adapter->duplex_mode = duplex; - adapter->boot_coma = 20; if (phydev && phydev->speed == SPEED_10) { diff --git a/drivers/staging/et131x/et1310_phy.h b/drivers/staging/et131x/et1310_phy.h index 3e95c66..d996e8e 100644 --- a/drivers/staging/et131x/et1310_phy.h +++ b/drivers/staging/et131x/et1310_phy.h @@ -242,10 +242,6 @@ struct mi_regs { #define TRUEPHY_MASK 2 #endif -/* Define duplex modes */ -#define TRUEPHY_DUPLEX_HALF 0 -#define TRUEPHY_DUPLEX_FULL 1 - /* Define master/slave configuration values */ #define TRUEPHY_CFG_SLAVE 0 #define TRUEPHY_CFG_MASTER 1 diff --git a/drivers/staging/et131x/et131x_adapter.h b/drivers/staging/et131x/et131x_adapter.h index 1e65e79..a63f376 100644 --- a/drivers/staging/et131x/et131x_adapter.h +++ b/drivers/staging/et131x/et131x_adapter.h @@ -169,7 +169,6 @@ struct et131x_adapter { /* Packet Filter and look ahead size */ u32 packet_filter; - u32 duplex_mode; /* multicast list */ u32 multicast_addr_count; -- 1.7.6 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel