Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

bnx2x: Fix configuration of doorbell block

As part of VF RSS feature doorbell block was configured not to use dpm, but
a small part of configuration was left out, preventing the driver from sending
tx messages to the device. This patch adds the missing configuration.

Reported-by: Eric Dumazet <eric.dumazet@gmil.com>
Signed-off-by: Ariel Elior <ariele@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Tested-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Ariel Elior and committed by
David S. Miller
c19d65c9 300893b0

+1 -3
+1
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
··· 7645 7645 7646 7646 bnx2x_init_block(bp, BLOCK_TM, init_phase); 7647 7647 bnx2x_init_block(bp, BLOCK_DORQ, init_phase); 7648 + REG_WR(bp, DORQ_REG_MODE_ACT, 1); /* no dpm */ 7648 7649 7649 7650 bnx2x_iov_init_dq(bp); 7650 7651
-3
drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
··· 1756 1756 REG_WR(bp, DORQ_REG_VF_TYPE_MIN_MCID_0, 0); 1757 1757 REG_WR(bp, DORQ_REG_VF_TYPE_MAX_MCID_0, 0x1ffff); 1758 1758 1759 - /* set the number of VF allowed doorbells to the full DQ range */ 1760 - REG_WR(bp, DORQ_REG_VF_NORM_MAX_CID_COUNT, 0x20000); 1761 - 1762 1759 /* set the VF doorbell threshold */ 1763 1760 REG_WR(bp, DORQ_REG_VF_USAGE_CT_LIMIT, 4); 1764 1761 }