From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by smtp.lore.kernel.org (Postfix) with ESMTP id 17CFEC43334 for ; Tue, 14 Jun 2022 12:26:11 +0000 (UTC) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3F27F40A81; Tue, 14 Jun 2022 14:26:11 +0200 (CEST) Received: from mail-qt1-f174.google.com (mail-qt1-f174.google.com [209.85.160.174]) by mails.dpdk.org (Postfix) with ESMTP id 1C4E04069C for ; Tue, 14 Jun 2022 14:26:10 +0200 (CEST) Received: by mail-qt1-f174.google.com with SMTP id l3so4597784qtp.1 for ; Tue, 14 Jun 2022 05:26:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=aFvcXnJb6E1nZ5r73cmV4EBBByr32CFUgXzB1/s1Hqc=; b=qD8Wtpe9Q8SWO2SLFBiyI4i2jiejUo6jVU1vCk67LyYazgn+qrWQzTgP/WQav7YfLY K5sJgp7WKod9RlwcRomP8UNggAYVqFD7y9tZPgtmj89SQQJL1AgoQB7AqkVwtx7M2UT0 APAJmYDGrT5j/zzkUPlfQdkidbTpNvJLK6Xyj7WYukrhBqIIoMg9l6X39LOUksynBydb mb1KMjxK/ZpvOjL/97kbmrC9e0p24w5oXgOkzocjnSgSLNi61iAQp7302o8w76j3datk uhZkDwvLuvkxfnlYjSi9wPMQs5Osl7X8DJN09Fn6btHWzwSy/9EtR5p96J3zeB3jQbeE WBcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=aFvcXnJb6E1nZ5r73cmV4EBBByr32CFUgXzB1/s1Hqc=; b=s/EllYUkNSTKcTggvrpDPqc2R8g7pOuSfjpBzsvGM/X5M5zQhy8Rqt3+Lpm9reBOOF oZTPwFmkNFNntSPbjcEA/DhCc/BMgMNqNkjYcBO5FB3TrtpR5KiywJLcYWB1Fww/AGmB vKFWcPOrbtmob8+uZVfpF/t/V8/7h7K/Srci3cp3+kdFNxIHSyLiCgXmGYXIE9flQZbG OuqmeHEIKbyd4XOCzuy+weBgrWItoOSl3LI70bw0PM6yi0OMbMgB68NxAQR4rmG+Pj95 /SMlWqBqwgPO8WBRbP6ubK1IvgcniyA/yoce4a7oy3UEy4eBHJTPdK0wr6j4Qr6FaS7e XLMQ== X-Gm-Message-State: AOAM532TpSJrTZ2Jrl7ilZFQn9C6fBanfzPixIkCj+jCcFpE1eEm11A8 QtPIxOm10WqxkpJQqJ22HdD1TeEbJA6lIOMP33f9i1koozU= X-Google-Smtp-Source: ABdhPJyA7/zmSeLCONF+izI+1EyHqS2YYffltnkuepge0Z+dmV0W6mDP+97IBacDDkFIL2Zw75djosrj9sJHmk0c+as= X-Received: by 2002:a05:622a:15d3:b0:304:ef40:9477 with SMTP id d19-20020a05622a15d300b00304ef409477mr3780862qty.502.1655209569234; Tue, 14 Jun 2022 05:26:09 -0700 (PDT) MIME-Version: 1.0 References: <20220517040408.158840-1-psatheesh@marvell.com> In-Reply-To: <20220517040408.158840-1-psatheesh@marvell.com> From: Jerin Jacob Date: Tue, 14 Jun 2022 17:55:43 +0530 Message-ID: Subject: Re: [dpdk-dev] [PATCH] common/cnxk: dump hardware flow MCAM entry data To: Satheesh Paul Cc: Nithin Dabilpuram , Kiran Kumar K , Sunil Kumar Kori , Satha Rao , dpdk-dev Content-Type: text/plain; charset="UTF-8" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On Tue, May 17, 2022 at 9:34 AM wrote: > > 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 Updated the git commit as follows and applied to dpdk-next-net-eventdev/for-main. Thanks common/cnxk: support dumping flow MCAM entry data 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 K > --- > 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 >