Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 184257
b: refs/heads/master
c: 26b3927
h: refs/heads/master
i:
  184255: 7c44901
v: v3
  • Loading branch information
Alexander Duyck authored and David S. Miller committed Feb 17, 2010
1 parent a32500b commit 7c9f1fa
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 14 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9874c41cd5e70bfc97bcd52a8b6c98c2a6ba7299
refs/heads/master: 26b39276ca5ff4dbf3c07704e34fd820fd97decf
1 change: 0 additions & 1 deletion trunk/drivers/net/igb/igb.h
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,6 @@ struct igb_q_vector {

u16 itr_val;
u8 set_itr;
u8 itr_shift;
void __iomem *itr_register;

char name[IFNAMSIZ + 9];
Expand Down
25 changes: 13 additions & 12 deletions trunk/drivers/net/igb/igb_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -504,6 +504,12 @@ static void igb_assign_vector(struct igb_q_vector *q_vector, int msix_vector)
BUG();
break;
}

/* add q_vector eims value to global eims_enable_mask */
adapter->eims_enable_mask |= q_vector->eims_value;

/* configure q_vector to set itr on first interrupt */
q_vector->set_itr = 1;
}

/**
Expand Down Expand Up @@ -561,11 +567,8 @@ static void igb_configure_msix(struct igb_adapter *adapter)

adapter->eims_enable_mask |= adapter->eims_other;

for (i = 0; i < adapter->num_q_vectors; i++) {
struct igb_q_vector *q_vector = adapter->q_vector[i];
igb_assign_vector(q_vector, vector++);
adapter->eims_enable_mask |= q_vector->eims_value;
}
for (i = 0; i < adapter->num_q_vectors; i++)
igb_assign_vector(adapter->q_vector[i], vector++);

wrfl();
}
Expand Down Expand Up @@ -756,10 +759,8 @@ static int igb_alloc_q_vectors(struct igb_adapter *adapter)
if (!q_vector)
goto err_out;
q_vector->adapter = adapter;
q_vector->itr_shift = (hw->mac.type == e1000_82575) ? 16 : 0;
q_vector->itr_register = hw->hw_addr + E1000_EITR(0);
q_vector->itr_val = IGB_START_ITR;
q_vector->set_itr = 1;
netif_napi_add(adapter->netdev, &q_vector->napi, igb_poll, 64);
adapter->q_vector[v_idx] = q_vector;
}
Expand Down Expand Up @@ -4142,6 +4143,7 @@ static irqreturn_t igb_msix_other(int irq, void *data)

static void igb_write_itr(struct igb_q_vector *q_vector)
{
struct igb_adapter *adapter = q_vector->adapter;
u32 itr_val = q_vector->itr_val & 0x7FFC;

if (!q_vector->set_itr)
Expand All @@ -4150,8 +4152,8 @@ static void igb_write_itr(struct igb_q_vector *q_vector)
if (!itr_val)
itr_val = 0x4;

if (q_vector->itr_shift)
itr_val |= itr_val << q_vector->itr_shift;
if (adapter->hw.mac.type == e1000_82575)
itr_val |= itr_val << 16;
else
itr_val |= 0x8000000;

Expand Down Expand Up @@ -4228,9 +4230,8 @@ static void igb_setup_dca(struct igb_adapter *adapter)
wr32(E1000_DCA_CTRL, E1000_DCA_CTRL_DCA_MODE_CB2);

for (i = 0; i < adapter->num_q_vectors; i++) {
struct igb_q_vector *q_vector = adapter->q_vector[i];
q_vector->cpu = -1;
igb_update_dca(q_vector);
adapter->q_vector[i]->cpu = -1;
igb_update_dca(adapter->q_vector[i]);
}
}

Expand Down

0 comments on commit 7c9f1fa

Please sign in to comment.