]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
octeontx2-af: mcs: Fix unsupported secy stats read
authorGeetha sowjanya <gakula@marvell.com>
Tue, 16 Jun 2026 19:00:18 +0000 (00:30 +0530)
committerJakub Kicinski <kuba@kernel.org>
Sun, 21 Jun 2026 21:45:10 +0000 (14:45 -0700)
Secy control stats counter doesn't exist for CNF10KB platform.
Skip reading this respective register for CNF10KB silicon while
fetching secy stats.

Fixes: 9312150af8da ("octeontx2-af: cn10k: mcs: Support for stats collection")
Signed-off-by: Geetha sowjanya <gakula@marvell.com>
Signed-off-by: Subbaraya Sundeep <sbhatta@marvell.com>
Link: https://patch.msgid.link/1781636420-19816-1-git-send-email-sbhatta@marvell.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/marvell/octeontx2/af/mcs.c
drivers/net/ethernet/marvell/octeontx2/af/rvu_debugfs.c

index c1775bd01c2b4879f6ca2edb57310c04e4c52588..a07e0b3d8d0006dcc617180568ff54494e13150b 100644 (file)
@@ -120,13 +120,13 @@ void mcs_get_rx_secy_stats(struct mcs *mcs, struct mcs_secy_stats *stats, int id
        reg = MCSX_CSE_RX_MEM_SLAVE_INPKTSSECYUNTAGGEDX(id);
        stats->pkt_untaged_cnt = mcs_reg_read(mcs, reg);
 
-       reg = MCSX_CSE_RX_MEM_SLAVE_INPKTSSECYCTLX(id);
-       stats->pkt_ctl_cnt = mcs_reg_read(mcs, reg);
-
        if (mcs->hw->mcs_blks > 1) {
                reg = MCSX_CSE_RX_MEM_SLAVE_INPKTSSECYNOTAGX(id);
                stats->pkt_notag_cnt = mcs_reg_read(mcs, reg);
+               return;
        }
+       reg = MCSX_CSE_RX_MEM_SLAVE_INPKTSSECYCTLX(id);
+       stats->pkt_ctl_cnt = mcs_reg_read(mcs, reg);
 }
 
 void mcs_get_flowid_stats(struct mcs *mcs, struct mcs_flowid_stats *stats,
index fa461489acdd653246f4fbffbd46c541ba2c3a7a..ca2704b188a5cf17409670ca5242ad0383c3255e 100644 (file)
@@ -482,10 +482,11 @@ static int rvu_dbg_mcs_rx_secy_stats_display(struct seq_file *filp, void *unused
                seq_printf(filp, "secy%d: Tagged ctrl pkts: %lld\n", secy_id,
                           stats.pkt_tagged_ctl_cnt);
                seq_printf(filp, "secy%d: Untaged pkts: %lld\n", secy_id, stats.pkt_untaged_cnt);
-               seq_printf(filp, "secy%d: Ctrl pkts: %lld\n", secy_id, stats.pkt_ctl_cnt);
                if (mcs->hw->mcs_blks > 1)
                        seq_printf(filp, "secy%d: pkts notag: %lld\n", secy_id,
                                   stats.pkt_notag_cnt);
+               else
+                       seq_printf(filp, "secy%d: Ctrl pkts: %lld\n", secy_id, stats.pkt_ctl_cnt);
        }
        mutex_unlock(&mcs->stats_lock);
        return 0;