]> git.droids-corp.org - dpdk.git/commitdiff
net/iavf: fix queue interrupt for ice
authorWei Zhao <wei.zhao1@intel.com>
Thu, 18 Apr 2019 04:58:15 +0000 (12:58 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 19 Apr 2019 12:51:54 +0000 (14:51 +0200)
Enable CLEARPBA bit is required by ice NIC of A0/A1 version to
enable Tx and Rx queue interrupt.
Also enable CLEARPBA bit does no impact on IAVF behaviour when be
hosted by other devices, so we can make it as default.

Fixes: d6bde6b5eae9 ("net/avf: enable Rx interrupt")
Cc: stable@dpdk.org
Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
drivers/net/iavf/iavf_ethdev.c

index 7825cbc85c6ff6dea6dd92ba1d4d4792c6fbc6be..7a0696ed725d9a5c67d665461f8cabe3ac0f59e6 100644 (file)
@@ -1014,11 +1014,13 @@ iavf_dev_rx_queue_intr_enable(struct rte_eth_dev *dev, uint16_t queue_id)
                PMD_DRV_LOG(INFO, "MISC is also enabled for control");
                IAVF_WRITE_REG(hw, IAVFINT_DYN_CTL01,
                              IAVFINT_DYN_CTL01_INTENA_MASK |
+                             IAVFINT_DYN_CTL01_CLEARPBA_MASK |
                              IAVFINT_DYN_CTL01_ITR_INDX_MASK);
        } else {
                IAVF_WRITE_REG(hw,
                              IAVFINT_DYN_CTLN1(msix_intr - IAVF_RX_VEC_START),
                              IAVFINT_DYN_CTLN1_INTENA_MASK |
+                             IAVFINT_DYN_CTL01_CLEARPBA_MASK |
                              IAVFINT_DYN_CTLN1_ITR_INDX_MASK);
        }