]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - drivers/net/tg3.c
tg3: Disable TSS
[net-next-2.6.git] / drivers / net / tg3.c
index 9f6ffffc8376ad84a8085f526608e6e248c45c79..38f1b19b776b8734d51d54a961b4b15fa842bb5b 100644 (file)
@@ -8015,6 +8015,16 @@ static int tg3_reset_hw(struct tg3 *tp, int reset_phy)
            GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_57780)
                rdmac_mode |= RDMAC_MODE_IPV6_LSO_EN;
 
+       if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5761 ||
+           GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5784 ||
+           GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5785 ||
+           GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_57780 ||
+           (tp->tg3_flags3 & TG3_FLG3_5717_PLUS)) {
+               val = tr32(TG3_RDMA_RSRVCTRL_REG);
+               tw32(TG3_RDMA_RSRVCTRL_REG,
+                    val | TG3_RDMA_RSRVCTRL_FIFO_OFLW_FIX);
+       }
+
        /* Receive/send statistics. */
        if (tp->tg3_flags2 & TG3_FLG2_5750_PLUS) {
                val = tr32(RCVLPC_STATS_ENABLE);
@@ -8817,16 +8827,9 @@ static bool tg3_enable_msix(struct tg3 *tp)
                tp->napi[i].irq_vec = msix_ent[i].vector;
 
        tp->dev->real_num_tx_queues = 1;
-       if (tp->irq_cnt > 1) {
+       if (tp->irq_cnt > 1)
                tp->tg3_flags3 |= TG3_FLG3_ENABLE_RSS;
 
-               if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5717 ||
-                   GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5719) {
-                       tp->tg3_flags3 |= TG3_FLG3_ENABLE_TSS;
-                       tp->dev->real_num_tx_queues = tp->irq_cnt - 1;
-               }
-       }
-
        return true;
 }