Commit 77b3d6a2 authored by Stephen Hemminger's avatar Stephen Hemminger Committed by Jeff Garzik

[PATCH] sky2: coalescing parameters

Change default coalescing parameters slightly, and allow wider
range of values.
Signed-off-by: default avatarStephen Hemminger <shemminger@osdl.org>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent e07b1aa8
...@@ -2272,7 +2272,8 @@ static int sky2_reset(struct sky2_hw *hw) ...@@ -2272,7 +2272,8 @@ static int sky2_reset(struct sky2_hw *hw)
sky2_write8(hw, STAT_FIFO_ISR_WM, 16); sky2_write8(hw, STAT_FIFO_ISR_WM, 16);
sky2_write32(hw, STAT_TX_TIMER_INI, sky2_us2clk(hw, 1000)); sky2_write32(hw, STAT_TX_TIMER_INI, sky2_us2clk(hw, 1000));
sky2_write32(hw, STAT_ISR_TIMER_INI, sky2_us2clk(hw, 7)); sky2_write32(hw, STAT_ISR_TIMER_INI, sky2_us2clk(hw, 20));
sky2_write32(hw, STAT_LEV_TIMER_INI, sky2_us2clk(hw, 100));
/* enable status unit */ /* enable status unit */
sky2_write32(hw, STAT_CTRL, SC_STAT_OP_ON); sky2_write32(hw, STAT_CTRL, SC_STAT_OP_ON);
...@@ -2758,19 +2759,11 @@ static int sky2_set_coalesce(struct net_device *dev, ...@@ -2758,19 +2759,11 @@ static int sky2_set_coalesce(struct net_device *dev,
{ {
struct sky2_port *sky2 = netdev_priv(dev); struct sky2_port *sky2 = netdev_priv(dev);
struct sky2_hw *hw = sky2->hw; struct sky2_hw *hw = sky2->hw;
const u32 tmin = sky2_clk2us(hw, 1); const u32 tmax = sky2_clk2us(hw, 0x0ffffff);
const u32 tmax = 5000;
if (ecmd->tx_coalesce_usecs != 0 && if (ecmd->tx_coalesce_usecs > tmax ||
(ecmd->tx_coalesce_usecs < tmin || ecmd->tx_coalesce_usecs > tmax)) ecmd->rx_coalesce_usecs > tmax ||
return -EINVAL; ecmd->rx_coalesce_usecs_irq > tmax)
if (ecmd->rx_coalesce_usecs != 0 &&
(ecmd->rx_coalesce_usecs < tmin || ecmd->rx_coalesce_usecs > tmax))
return -EINVAL;
if (ecmd->rx_coalesce_usecs_irq != 0 &&
(ecmd->rx_coalesce_usecs_irq < tmin || ecmd->rx_coalesce_usecs_irq > tmax))
return -EINVAL; return -EINVAL;
if (ecmd->tx_max_coalesced_frames >= TX_RING_SIZE-1) if (ecmd->tx_max_coalesced_frames >= TX_RING_SIZE-1)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment