From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from rnd-relay.smtp.broadcom.com (rnd-relay.smtp.broadcom.com [192.19.229.170]) by dpdk.org (Postfix) with ESMTP id 2546FD4E0 for ; Fri, 18 May 2018 16:40:10 +0200 (CEST) Received: from nis-sj1-27.broadcom.com (nis-sj1-27.lvn.broadcom.net [10.75.144.136]) by rnd-relay.smtp.broadcom.com (Postfix) with ESMTP id 9A60F30C005 for ; Fri, 18 May 2018 07:40:08 -0700 (PDT) Received: from C02VPB22HTD6.vpn.broadcom.net (unknown [10.10.118.241]) by nis-sj1-27.broadcom.com (Postfix) with ESMTP id 372B6AC0753 for ; Fri, 18 May 2018 07:40:08 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Date: Fri, 18 May 2018 07:39:57 -0700 Message-Id: <20180518144001.24801-4-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.15.1 (Apple Git-101) In-Reply-To: <20180518144001.24801-1-ajit.khaparde@broadcom.com> References: <20180518144001.24801-1-ajit.khaparde@broadcom.com> Subject: [dpdk-dev] [PATCH 3/7] net/bnxt: fix rss hash configuration X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 May 2018 14:40:10 -0000 While configuring RSS, the FW needs to know the rss_hash_mode that needs to be initialized. Set hash mode to HWRM_VNIC_RSS_CFG_INPUT_HASH_MODE_FLAGS_DEFAULT to allow the FW to use the global mode already configured in the device. Fixes: bcd4bcc4426f ("net/bnxt: configure RSS") Signed-off-by: Ajit Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 1 + drivers/net/bnxt/bnxt_vnic.c | 2 ++ drivers/net/bnxt/bnxt_vnic.h | 1 + 3 files changed, 4 insertions(+) diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c index 28aa7476d..b285761eb 100644 --- a/drivers/net/bnxt/bnxt_hwrm.c +++ b/drivers/net/bnxt/bnxt_hwrm.c @@ -1462,6 +1462,7 @@ int bnxt_hwrm_vnic_rss_cfg(struct bnxt *bp, HWRM_PREP(req, VNIC_RSS_CFG); req.hash_type = rte_cpu_to_le_32(vnic->hash_type); + req.hash_mode_flags = vnic->hash_mode; req.ring_grp_tbl_addr = rte_cpu_to_le_64(vnic->rss_table_dma_addr); diff --git a/drivers/net/bnxt/bnxt_vnic.c b/drivers/net/bnxt/bnxt_vnic.c index 733a5a92c..19d06af55 100644 --- a/drivers/net/bnxt/bnxt_vnic.c +++ b/drivers/net/bnxt/bnxt_vnic.c @@ -49,6 +49,8 @@ void bnxt_init_vnics(struct bnxt *bp) vnic->rss_rule = (uint16_t)HWRM_NA_SIGNATURE; vnic->cos_rule = (uint16_t)HWRM_NA_SIGNATURE; vnic->lb_rule = (uint16_t)HWRM_NA_SIGNATURE; + vnic->hash_mode = + HWRM_VNIC_RSS_CFG_INPUT_HASH_MODE_FLAGS_DEFAULT; for (j = 0; j < MAX_QUEUES_PER_VNIC; j++) vnic->fw_grp_ids[j] = (uint16_t)HWRM_NA_SIGNATURE; diff --git a/drivers/net/bnxt/bnxt_vnic.h b/drivers/net/bnxt/bnxt_vnic.h index c60bb543c..c521d7e5a 100644 --- a/drivers/net/bnxt/bnxt_vnic.h +++ b/drivers/net/bnxt/bnxt_vnic.h @@ -25,6 +25,7 @@ struct bnxt_vnic_info { uint16_t dflt_ring_grp; uint16_t mru; uint16_t hash_type; + uint8_t hash_mode; rte_iova_t rss_table_dma_addr; uint16_t *rss_table; rte_iova_t rss_hash_key_dma_addr; -- 2.15.1 (Apple Git-101)