tg3: Improve internal resource allocations
The 5717 and the 57765 have more resources at their disposal internally. This patch tunes the driver to get better performance. The adjustments made here only apply to the 57765 and 5717 asic revs. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Reviewed-by: Benjamin Li <benli@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
614b05900e
commit
666bc831cf
@@ -8152,7 +8152,11 @@ static int tg3_reset_hw(struct tg3 *tp, int reset_phy)
|
||||
/* Prevent chip from dropping frames when flow control
|
||||
* is enabled.
|
||||
*/
|
||||
tw32_f(MAC_LOW_WMARK_MAX_RX_FRAME, 2);
|
||||
if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_57765)
|
||||
val = 1;
|
||||
else
|
||||
val = 2;
|
||||
tw32_f(MAC_LOW_WMARK_MAX_RX_FRAME, val);
|
||||
|
||||
if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5704 &&
|
||||
(tp->tg3_flags2 & TG3_FLG2_PHY_SERDES)) {
|
||||
@@ -14091,9 +14095,22 @@ static void __devinit tg3_init_link_config(struct tg3 *tp)
|
||||
|
||||
static void __devinit tg3_init_bufmgr_config(struct tg3 *tp)
|
||||
{
|
||||
if (tp->tg3_flags2 & TG3_FLG2_5705_PLUS &&
|
||||
GET_ASIC_REV(tp->pci_chip_rev_id) != ASIC_REV_5717 &&
|
||||
GET_ASIC_REV(tp->pci_chip_rev_id) != ASIC_REV_57765) {
|
||||
if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5717 ||
|
||||
GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_57765) {
|
||||
tp->bufmgr_config.mbuf_read_dma_low_water =
|
||||
DEFAULT_MB_RDMA_LOW_WATER_5705;
|
||||
tp->bufmgr_config.mbuf_mac_rx_low_water =
|
||||
DEFAULT_MB_MACRX_LOW_WATER_57765;
|
||||
tp->bufmgr_config.mbuf_high_water =
|
||||
DEFAULT_MB_HIGH_WATER_57765;
|
||||
|
||||
tp->bufmgr_config.mbuf_read_dma_low_water_jumbo =
|
||||
DEFAULT_MB_RDMA_LOW_WATER_5705;
|
||||
tp->bufmgr_config.mbuf_mac_rx_low_water_jumbo =
|
||||
DEFAULT_MB_MACRX_LOW_WATER_JUMBO_57765;
|
||||
tp->bufmgr_config.mbuf_high_water_jumbo =
|
||||
DEFAULT_MB_HIGH_WATER_JUMBO_57765;
|
||||
} else if (tp->tg3_flags2 & TG3_FLG2_5705_PLUS) {
|
||||
tp->bufmgr_config.mbuf_read_dma_low_water =
|
||||
DEFAULT_MB_RDMA_LOW_WATER_5705;
|
||||
tp->bufmgr_config.mbuf_mac_rx_low_water =
|
||||
|
Reference in New Issue
Block a user