switch(ecmd->speed) { 
switch (ecmd->speed) { 
static int sky2_set_settings(struct net_device *dev, struct ethtool_cmd *ecmd){	struct sky2_port *sky2 = netdev_priv(dev);	const struct sky2_hw *hw = sky2->hw;	u32 supported = sky2_supported_modes(hw);	if (ecmd->autoneg == AUTONEG_ENABLE) {		ecmd->advertising = supported;		sky2->duplex = -1;		sky2->speed = -1;	} else {		u32 setting;		switch(ecmd->speed) {		case SPEED_1000:			if (ecmd->duplex == DUPLEX_FULL)				setting = SUPPORTED_1000baseT_Full;			else if (ecmd->duplex == DUPLEX_HALF)				setting = SUPPORTED_1000baseT_Half;			else				return -EINVAL;			break;		case SPEED_100:			if (ecmd->duplex == DUPLEX_FULL)				setting = SUPPORTED_100baseT_Full;			else if (ecmd->duplex == DUPLEX_HALF)				setting = SUPPORTED_100baseT_Half;			else				return -EINVAL;			break;		case SPEED_10:			if (ecmd->duplex == DUPLEX_FULL)				setting = SUPPORTED_10baseT_Full;			else if (ecmd->duplex == DUPLEX_HALF)				setting = SUPPORTED_10baseT_Half;			else				return -EINVAL;			break;		default:			return -EINVAL;		}		if ((setting & supported) == 0)			return -EINVAL;		sky2->speed = ecmd->speed;		sky2->duplex = ecmd->duplex;	}	sky2->autoneg = ecmd->autoneg;	sky2->advertising = ecmd->advertising;	if (netif_running(dev)) {		sky2_down(dev);		sky2_up(dev);	}	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/793b883ed12a6ae6e2901ddb5e038b77d6f0c0ac/sky2.c/buggy/drivers/net/sky2.c