e1000e: Make arrays out of these Rx/Tx registers
With multiple queues coming into the code these base control registers need to be made into arrays. Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
committed by
Jeff Garzik
parent
8d7c294cae
commit
e9ec2c0f4b
@@ -1753,18 +1753,18 @@ static s32 e1000_init_hw_ich8lan(struct e1000_hw *hw)
|
||||
ret_val = e1000_setup_link_ich8lan(hw);
|
||||
|
||||
/* Set the transmit descriptor write-back policy for both queues */
|
||||
txdctl = er32(TXDCTL);
|
||||
txdctl = er32(TXDCTL(0));
|
||||
txdctl = (txdctl & ~E1000_TXDCTL_WTHRESH) |
|
||||
E1000_TXDCTL_FULL_TX_DESC_WB;
|
||||
txdctl = (txdctl & ~E1000_TXDCTL_PTHRESH) |
|
||||
E1000_TXDCTL_MAX_TX_DESC_PREFETCH;
|
||||
ew32(TXDCTL, txdctl);
|
||||
txdctl = er32(TXDCTL1);
|
||||
ew32(TXDCTL(0), txdctl);
|
||||
txdctl = er32(TXDCTL(1));
|
||||
txdctl = (txdctl & ~E1000_TXDCTL_WTHRESH) |
|
||||
E1000_TXDCTL_FULL_TX_DESC_WB;
|
||||
txdctl = (txdctl & ~E1000_TXDCTL_PTHRESH) |
|
||||
E1000_TXDCTL_MAX_TX_DESC_PREFETCH;
|
||||
ew32(TXDCTL1, txdctl);
|
||||
ew32(TXDCTL(1), txdctl);
|
||||
|
||||
/*
|
||||
* ICH8 has opposite polarity of no_snoop bits.
|
||||
@@ -1807,30 +1807,30 @@ static void e1000_initialize_hw_bits_ich8lan(struct e1000_hw *hw)
|
||||
ew32(CTRL_EXT, reg);
|
||||
|
||||
/* Transmit Descriptor Control 0 */
|
||||
reg = er32(TXDCTL);
|
||||
reg = er32(TXDCTL(0));
|
||||
reg |= (1 << 22);
|
||||
ew32(TXDCTL, reg);
|
||||
ew32(TXDCTL(0), reg);
|
||||
|
||||
/* Transmit Descriptor Control 1 */
|
||||
reg = er32(TXDCTL1);
|
||||
reg = er32(TXDCTL(1));
|
||||
reg |= (1 << 22);
|
||||
ew32(TXDCTL1, reg);
|
||||
ew32(TXDCTL(1), reg);
|
||||
|
||||
/* Transmit Arbitration Control 0 */
|
||||
reg = er32(TARC0);
|
||||
reg = er32(TARC(0));
|
||||
if (hw->mac.type == e1000_ich8lan)
|
||||
reg |= (1 << 28) | (1 << 29);
|
||||
reg |= (1 << 23) | (1 << 24) | (1 << 26) | (1 << 27);
|
||||
ew32(TARC0, reg);
|
||||
ew32(TARC(0), reg);
|
||||
|
||||
/* Transmit Arbitration Control 1 */
|
||||
reg = er32(TARC1);
|
||||
reg = er32(TARC(1));
|
||||
if (er32(TCTL) & E1000_TCTL_MULR)
|
||||
reg &= ~(1 << 28);
|
||||
else
|
||||
reg |= (1 << 28);
|
||||
reg |= (1 << 24) | (1 << 26) | (1 << 30);
|
||||
ew32(TARC1, reg);
|
||||
ew32(TARC(1), reg);
|
||||
|
||||
/* Device Status */
|
||||
if (hw->mac.type == e1000_ich8lan) {
|
||||
|
Reference in New Issue
Block a user