 if (!(priv->einfo->device_flags & FSL_GIANFAR_DEV_HAS_COALESCE)) return -EOPNOTSUPP; 
int gfar_scoalesce(struct net_device *dev, struct ethtool_coalesce *cvals){	struct gfar_private *priv = netdev_priv(dev);	/* Set up rx coalescing */	if ((cvals->rx_coalesce_usecs == 0) ||	    (cvals->rx_max_coalesced_frames == 0))		priv->rxcoalescing = 0;	else		priv->rxcoalescing = 1;	priv->rxtime = gfar_usecs2ticks(priv, cvals->rx_coalesce_usecs);	priv->rxcount = cvals->rx_max_coalesced_frames;	/* Set up tx coalescing */	if ((cvals->tx_coalesce_usecs == 0) ||	    (cvals->tx_max_coalesced_frames == 0))		priv->txcoalescing = 0;	else		priv->txcoalescing = 1;	priv->txtime = gfar_usecs2ticks(priv, cvals->tx_coalesce_usecs);	priv->txcount = cvals->tx_max_coalesced_frames;	if (priv->rxcoalescing)		gfar_write(&priv->regs->rxic,			   mk_ic_value(priv->rxcount, priv->rxtime));	else		gfar_write(&priv->regs->rxic, 0);	if (priv->txcoalescing)		gfar_write(&priv->regs->txic,			   mk_ic_value(priv->txcount, priv->txtime));	else		gfar_write(&priv->regs->txic, 0);	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/0bbaf069f053957e8d733784e18a2992afd1dd3c/gianfar_ethtool.c/buggy/drivers/net/gianfar_ethtool.c