diff options
Diffstat (limited to 'drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c')
-rw-r--r-- | drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c index f0718e1a8369..c306df7d4568 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c +++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c | |||
@@ -1994,9 +1994,20 @@ static int set_coalesce(struct net_device *dev, struct ethtool_coalesce *c) | |||
1994 | { | 1994 | { |
1995 | const struct port_info *pi = netdev_priv(dev); | 1995 | const struct port_info *pi = netdev_priv(dev); |
1996 | struct adapter *adap = pi->adapter; | 1996 | struct adapter *adap = pi->adapter; |
1997 | 1997 | struct sge_rspq *q; | |
1998 | return set_rxq_intr_params(adap, &adap->sge.ethrxq[pi->first_qset].rspq, | 1998 | int i; |
1999 | c->rx_coalesce_usecs, c->rx_max_coalesced_frames); | 1999 | int r = 0; |
2000 | |||
2001 | for (i = pi->first_qset; i < pi->first_qset + pi->nqsets; i++) { | ||
2002 | q = &adap->sge.ethrxq[i].rspq; | ||
2003 | r = set_rxq_intr_params(adap, q, c->rx_coalesce_usecs, | ||
2004 | c->rx_max_coalesced_frames); | ||
2005 | if (r) { | ||
2006 | dev_err(&dev->dev, "failed to set coalesce %d\n", r); | ||
2007 | break; | ||
2008 | } | ||
2009 | } | ||
2010 | return r; | ||
2000 | } | 2011 | } |
2001 | 2012 | ||
2002 | static int get_coalesce(struct net_device *dev, struct ethtool_coalesce *c) | 2013 | static int get_coalesce(struct net_device *dev, struct ethtool_coalesce *c) |