qed: Don't close the OUT_EN during init
authorMintz, Yuval <Yuval.Mintz@cavium.com>
Thu, 6 Apr 2017 12:58:31 +0000 (15:58 +0300)
committerDavid S. Miller <davem@davemloft.net>
Thu, 6 Apr 2017 21:26:31 +0000 (14:26 -0700)
Before initializing the chip's engine, driver currently closes a set
of registers on the HW's ingress flow to prevent packets from slipping
in while they're not supposed to.

This configuration is insufficient, as there are some scenarios where
packets would still arrive even when said registers are set,
but the management firmware already closes other per-port registers
that do suffice, making this setting unnecessray.

Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/qlogic/qed/qed_dev.c

index c5f48860a934d2cdef59b052ea298a2b0fcb50c7..fb759ba34b8d33300508785aaabdde78236e44cf 100644 (file)
@@ -1279,18 +1279,6 @@ static int qed_hw_init_common(struct qed_hwfn *p_hwfn,
 
        qed_cxt_hw_init_common(p_hwfn);
 
-       /* Close gate from NIG to BRB/Storm; By default they are open, but
-        * we close them to prevent NIG from passing data to reset blocks.
-        * Should have been done in the ENGINE phase, but init-tool lacks
-        * proper port-pretend capabilities.
-        */
-       qed_wr(p_hwfn, p_ptt, NIG_REG_RX_BRB_OUT_EN, 0);
-       qed_wr(p_hwfn, p_ptt, NIG_REG_STORM_OUT_EN, 0);
-       qed_port_pretend(p_hwfn, p_ptt, p_hwfn->port_id ^ 1);
-       qed_wr(p_hwfn, p_ptt, NIG_REG_RX_BRB_OUT_EN, 0);
-       qed_wr(p_hwfn, p_ptt, NIG_REG_STORM_OUT_EN, 0);
-       qed_port_unpretend(p_hwfn, p_ptt);
-
        qed_init_cache_line_size(p_hwfn, p_ptt);
 
        rc = qed_init_run(p_hwfn, p_ptt, PHASE_ENGINE, ANY_PHASE_ID, hw_mode);