From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id E2E38A00C3 for ; Fri, 13 May 2022 13:04:34 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B7B0740DDE; Fri, 13 May 2022 13:04:34 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id BC76440DDE for ; Fri, 13 May 2022 13:04:33 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 24D6FCRK007609 for ; Fri, 13 May 2022 04:04:32 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=02RsdOhi5dpMXI/C+fNNHlr4tY+RMyjWPiUWggWiqrs=; b=UsxKXDfOAQTIko/OHALUrH7P4iOnoUSNL0m0YHDckjl6qvPIETOIjOFG7+KOWT2qJYTx FjemCc6jD4H0x0zizWA1b/ena+ZcgRlc04BPrxo6o5S/SwoFG8wDvPUDHCN/p/KHC0At RciUsRkMy5o8TMRo7hUoJmAo0oRdY95z3IjdzIRe0Jn6Pn7Nm+AJuMJJ2FgnpVTtKc4v th69XEVHKYTppdizgTOsAGrNi5WGPsrQWnoKCNFEfAGCICEnDNFh1xN9RcGQ7gaI63fU wbPDkfIkA+WXm4j4/pozwhLfhKbum48GnFo9G979E4EIO/h4aMK7GsfHcVBDZa4iMsT1 lA== Received: from dc5-exch02.marvell.com ([199.233.59.182]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3g0yqwnms7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Fri, 13 May 2022 04:04:32 -0700 Received: from DC5-EXCH01.marvell.com (10.69.176.38) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Fri, 13 May 2022 04:04:23 -0700 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Fri, 13 May 2022 04:04:23 -0700 Received: from localhost.localdomain (unknown [10.28.34.33]) by maili.marvell.com (Postfix) with ESMTP id 46AB03F7062; Fri, 13 May 2022 04:04:21 -0700 (PDT) From: To: Nithin Dabilpuram , Kiran Kumar K , Sunil Kumar Kori , Satha Rao CC: , Satheesh Paul Subject: [dpdk-dev] [PATCH] common/cnxk: dump hardware flow MCAM entry data Date: Fri, 13 May 2022 16:34:17 +0530 Message-ID: <20220513110417.1208714-1-psatheesh@marvell.com> X-Mailer: git-send-email 2.25.4 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-ORIG-GUID: w4DMwHUhhYrSUQlX9CJsQDJ2sCCLXo80 X-Proofpoint-GUID: w4DMwHUhhYrSUQlX9CJsQDJ2sCCLXo80 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.858,Hydra:6.0.486,FMLib:17.11.64.514 definitions=2022-05-13_04,2022-05-13_01,2022-02-23_01 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org From: Satheesh Paul When dumping flow data, read hardware MCAM entry corresponding to the flow and print that data also. Signed-off-by: Satheesh Paul Reviewed-by: Kiran Kumar Kokkilagadda --- drivers/common/cnxk/roc_npc_mcam_dump.c | 26 ++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/drivers/common/cnxk/roc_npc_mcam_dump.c b/drivers/common/cnxk/roc_npc_mcam_dump.c index 679e3d7657..2aaf3ccd0b 100644 --- a/drivers/common/cnxk/roc_npc_mcam_dump.c +++ b/drivers/common/cnxk/roc_npc_mcam_dump.c @@ -586,8 +586,10 @@ roc_npc_flow_mcam_dump(FILE *file, struct roc_npc *roc_npc, struct roc_npc_flow *flow) { struct npc *npc = roc_npc_to_npc_priv(roc_npc); + struct npc_mcam_read_entry_req *mcam_read_req; + struct npc_mcam_read_entry_rsp *mcam_read_rsp; bool is_rx = 0; - int i; + int i, rc = 0; fprintf(file, "MCAM Index:%d\n", flow->mcam_id); fprintf(file, "Interface :%s (%d)\n", intf_str[flow->nix_intf], @@ -609,5 +611,27 @@ roc_npc_flow_mcam_dump(FILE *file, struct roc_npc *roc_npc, fprintf(file, "\tDW%d_Mask:%016lX\n", i, flow->mcam_mask[i]); } + mcam_read_req = mbox_alloc_msg_npc_mcam_read_entry(npc->mbox); + if (mcam_read_req == NULL) { + plt_err("Failed to alloc msg"); + return; + } + + mcam_read_req->entry = flow->mcam_id; + rc = mbox_process_msg(npc->mbox, (void *)&mcam_read_rsp); + if (rc) { + plt_err("Failed to fetch MCAM entry"); + return; + } + + fprintf(file, "HW MCAM Data :\n"); + + for (i = 0; i < ROC_NPC_MAX_MCAM_WIDTH_DWORDS; i++) { + fprintf(file, "\tDW%d :%016lX\n", i, + mcam_read_rsp->entry_data.kw[i]); + fprintf(file, "\tDW%d_Mask:%016lX\n", i, + mcam_read_rsp->entry_data.kw_mask[i]); + } + fprintf(file, "\n"); } -- 2.25.4