Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4f873010 authored by Sunil Paidimarri's avatar Sunil Paidimarri Committed by Lakshit Tyagi
Browse files

data-kernel: EMAC: Fixed ethool speed issue.



Don't modify emac supported capabilities during
early ethernet boot up. Only update advertise values
otherwise speed can't be changed using ethtool.

Change-Id: I06a2d5cd93fec14cd107d7c4c39e704163369e80
CRs-Fixed: 2416416
Signed-off-by: default avatarSunil Paidimarri <hisunil@codeaurora.org>
parent 59e9f875
Loading
Loading
Loading
Loading
+11 −17
Original line number Diff line number Diff line
@@ -1122,20 +1122,6 @@ static int DWC_ETH_QOS_init_phy(struct net_device *dev)
#endif



	if (pdata->res_data->early_eth_en ) {
		phydev->autoneg = AUTONEG_DISABLE;
		phydev->speed = SPEED_100;
		phy_set_max_speed(phydev, SPEED_100);
		phydev->duplex = DUPLEX_FULL;
		phydev->supported = SUPPORTED_100baseT_Full | SUPPORTED_TP | SUPPORTED_MII;
		phydev->supported &= ~(SUPPORTED_10baseT_Half | SUPPORTED_100baseT_Half | SUPPORTED_1000baseT_Half);
		phydev->supported &= ~SUPPORTED_Autoneg;
		phydev->advertising = phydev->supported;
		phydev->advertising &= ~ADVERTISED_Autoneg;
		EMACDBG("Set max speed to SPEED_100 as early ethernet enabled\n");
	}
	else {
	if (pdata->interface == PHY_INTERFACE_MODE_GMII || pdata->interface == PHY_INTERFACE_MODE_RGMII) {
		phy_set_max_speed(phydev, SPEED_1000);
		/* Half duplex not supported */
@@ -1146,6 +1132,14 @@ static int DWC_ETH_QOS_init_phy(struct net_device *dev)
		phydev->supported &= ~(SUPPORTED_10baseT_Half | SUPPORTED_100baseT_Half);
	}
	phydev->advertising = phydev->supported;

	if (pdata->res_data->early_eth_en ) {
		phydev->autoneg = AUTONEG_DISABLE;
		phydev->speed = SPEED_100;
		phydev->duplex = DUPLEX_FULL;
		phydev->advertising = phydev->supported;
		phydev->advertising &= ~(SUPPORTED_1000baseT_Full);
		EMACDBG("Set max speed to SPEED_100 as early ethernet enabled\n");
	}

	pdata->phydev = phydev;