From patchwork Wed Feb 7 03:13:13 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Boyer X-Patchwork-Id: 136464 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 6F01943A2A; Wed, 7 Feb 2024 04:14:58 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C343042DFF; Wed, 7 Feb 2024 04:14:30 +0100 (CET) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2046.outbound.protection.outlook.com [40.107.93.46]) by mails.dpdk.org (Postfix) with ESMTP id E6AA342DC9 for ; Wed, 7 Feb 2024 04:14:23 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=me/pyKXHWPqVA82IitIT5PyhO0FNQoLS+K0CIXL2LfPZsTBUb+agdPjw5/vcpmBp8jLOyz+G2nHDL6mM1Nwa8XI9EkKRN+HIyKYv9mdsGllhdxXHEUeMiZ9IxsTHO+aSKeCEtG287ZpTWn47qbp0auP3Yu7uxLyMIX13ckG48jorCSX64hzFes5nNIrKbyd4tZaz6YGwIOp8gsg3wxb6r0ieS1RTPtwF3pRgaeGlY+GE9rXf8+nrcTHqTSf0b3DruApbYAGj6wsrcxB7hqlyNy67noGu0ujbbtXStjhQuZNrBL9AOr3Ndr2jUF+v9DAEjqnz+3r0nmJBDqSaEHjcbA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wg6GarQmVRHe0vG9yPeKZpU6Tcj+zI7KHAQofbhW6rE=; b=frvhIkFUSTYAqhjq5I0kq0NuYe+vevxa01AsatLTdr11SwAexA9ClmpSWT24MpKggCfKocrIPaKnBCbQIHLwxNMYNyYxnLc2WzAVc9qSI4rGB/e3ape9TqPL+j4LQjIcUe3c8J3uMa54XqNuGY2PR2QuGcrFgw58uV/IpRuwKthkr4oRMIKHbGaNNNGqESKW6IW3i/876Ah8AXwlFLQRDK31rnOjrLYUKf0xNgKBRqb5qvPiCEU+gYeX+1IgZ/ma15ailBPrnjqjSSH8lGahzTzGcfA1qoY1aq3ZlcYmfBh/kWV47fC4Zznd8G+JO9J06NhkwgoP21XyHu/3VmcCAg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=dpdk.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wg6GarQmVRHe0vG9yPeKZpU6Tcj+zI7KHAQofbhW6rE=; b=SPUkBwvrxGU91oqJCRWJHDGaGWDXigj3+BW80zRDZ+I4vCFvk89Q+Ofrzz22UKAIvfrLL0wdbnWxTvl5nUTNYCjNSv9mepdLWvAPA2SWOK5nLFb6XJplaNDiaS1H++KXo8f4X/TsDUXNuGK9K/56iEmw163NLtLqmQGMUK6NmHE= Received: from DM6PR02CA0044.namprd02.prod.outlook.com (2603:10b6:5:177::21) by MW4PR12MB7014.namprd12.prod.outlook.com (2603:10b6:303:218::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.15; Wed, 7 Feb 2024 03:14:22 +0000 Received: from CO1PEPF000044FB.namprd21.prod.outlook.com (2603:10b6:5:177:cafe::c7) by DM6PR02CA0044.outlook.office365.com (2603:10b6:5:177::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7249.37 via Frontend Transport; Wed, 7 Feb 2024 03:14:21 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1PEPF000044FB.mail.protection.outlook.com (10.167.241.201) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7292.0 via Frontend Transport; Wed, 7 Feb 2024 03:14:21 +0000 Received: from driver-dev1.pensando.io (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34; Tue, 6 Feb 2024 21:14:17 -0600 From: Andrew Boyer To: CC: Brad Larson , Andrew Boyer Subject: [PATCH v3 09/13] net/ionic: add flexible firmware xstat counters Date: Tue, 6 Feb 2024 19:13:13 -0800 Message-ID: <20240207031317.32293-10-andrew.boyer@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20240207031317.32293-1-andrew.boyer@amd.com> References: <20240202193238.62669-1-andrew.boyer@amd.com> <20240207031317.32293-1-andrew.boyer@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000044FB:EE_|MW4PR12MB7014:EE_ X-MS-Office365-Filtering-Correlation-Id: c8caae0a-3914-412f-6344-08dc278ae13c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QzBE9V2layskIcPYu5+2gUc1DETFBpPMXi2n9M6uvXq5Jpx9VLEZUCcrMhSf2qSwaLJAwwuBp/2Aao5D8cMNk+p8nEkIuaoGrBHDYb5KINCl5sNb9MI4ZHWfPLoht0tXjAwM6jbF8m1lCU/kBKLb8FC/+Zo4T0JfHrX+bR75ghQmtYW31QHfS/Z6l4ExWYeZNAypA/HmbM4TgTl3y7EgKPS+gWOeI7WPNsYyHkUGxkF9KX/036ZIZhyLD82nTLIHsGLe9fjgCLGAyclJzicwS6S7zVEkX8oRMPGl5v6JVj2BSAIVJfuci2iMcmscHAyonrjQ+YdzfxTGBKGQqUSzBn3zyMBa+wqNp7Feg7P9K2KGf0Y8RhVXivetW2IsIlTcaWThTclVH/x6d3J26wZoW+jNvFi96osPNUvnBKNDpeU7L8tDocCN1DiZyVjdRrJKN2URT3JWgZdiqqJlwRRAuqMWOA68i45inuXjbQY5Yh6MbTwhukSFEf5hP0a3DrZZE/E4NFr8dZQOQbDLc/y1GpyjJy9NhjymsCfZ7Dtzv7ZfAdIWQJOs+U/yJKjr6dYftw3lk0vb0k7nHZMiUwjPN4SJ67Z0rDMVPKsIlIoyQgy9U3YGuAg6/KgzYK3cwRyJeW04KtPfEyrhhrzp74QfbeQZ2M+j54UelvKSSULnX+lRFDU3eanJQ9jPE0kAUutZIEAdD+sySY0dvPSNpf8r25WDM+VTjFn9BehAH3FAeC73QWrcFjl113en13wDwdZL+lonlVOPjHdRA5izrb5wHQ== X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230031)(4636009)(136003)(346002)(39860400002)(376002)(396003)(230922051799003)(1800799012)(451199024)(82310400011)(186009)(64100799003)(40470700004)(46966006)(36840700001)(44832011)(6666004)(16526019)(26005)(356005)(83380400001)(1076003)(426003)(47076005)(82740400003)(54906003)(336012)(8936002)(2616005)(4326008)(6916009)(70206006)(8676002)(5660300002)(2906002)(70586007)(316002)(81166007)(36860700001)(478600001)(86362001)(36756003)(41300700001)(40480700001)(40460700003)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2024 03:14:21.5850 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c8caae0a-3914-412f-6344-08dc278ae13c X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000044FB.namprd21.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB7014 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 From: Brad Larson Assign 32 counters for flexible firmware events. These can be used as per-port or per-queue counters in certain firmware configurations. They are displayed as fw_flex_eventX in xstats. Signed-off-by: Andrew Boyer Signed-off-by: Brad Larson --- drivers/net/ionic/ionic_ethdev.c | 33 +++++++++++++++ drivers/net/ionic/ionic_if.h | 70 ++++++++++++++++---------------- 2 files changed, 68 insertions(+), 35 deletions(-) diff --git a/drivers/net/ionic/ionic_ethdev.c b/drivers/net/ionic/ionic_ethdev.c index 327f6b9de5..7c55a26956 100644 --- a/drivers/net/ionic/ionic_ethdev.c +++ b/drivers/net/ionic/ionic_ethdev.c @@ -196,6 +196,39 @@ static const struct rte_ionic_xstats_name_off rte_ionic_xstats_strings[] = { tx_desc_fetch_error)}, {"tx_desc_data_error", offsetof(struct ionic_lif_stats, tx_desc_data_error)}, + /* Flexible firmware events */ + {"fw_flex_event1", offsetof(struct ionic_lif_stats, flex1)}, + {"fw_flex_event2", offsetof(struct ionic_lif_stats, flex2)}, + {"fw_flex_event3", offsetof(struct ionic_lif_stats, flex3)}, + {"fw_flex_event4", offsetof(struct ionic_lif_stats, flex4)}, + {"fw_flex_event5", offsetof(struct ionic_lif_stats, flex5)}, + {"fw_flex_event6", offsetof(struct ionic_lif_stats, flex6)}, + {"fw_flex_event7", offsetof(struct ionic_lif_stats, flex7)}, + {"fw_flex_event8", offsetof(struct ionic_lif_stats, flex8)}, + {"fw_flex_event9", offsetof(struct ionic_lif_stats, flex9)}, + {"fw_flex_event10", offsetof(struct ionic_lif_stats, flex10)}, + {"fw_flex_event11", offsetof(struct ionic_lif_stats, flex11)}, + {"fw_flex_event12", offsetof(struct ionic_lif_stats, flex12)}, + {"fw_flex_event13", offsetof(struct ionic_lif_stats, flex13)}, + {"fw_flex_event14", offsetof(struct ionic_lif_stats, flex14)}, + {"fw_flex_event15", offsetof(struct ionic_lif_stats, flex15)}, + {"fw_flex_event16", offsetof(struct ionic_lif_stats, flex16)}, + {"fw_flex_event17", offsetof(struct ionic_lif_stats, flex17)}, + {"fw_flex_event18", offsetof(struct ionic_lif_stats, flex18)}, + {"fw_flex_event19", offsetof(struct ionic_lif_stats, flex19)}, + {"fw_flex_event20", offsetof(struct ionic_lif_stats, flex20)}, + {"fw_flex_event21", offsetof(struct ionic_lif_stats, flex21)}, + {"fw_flex_event22", offsetof(struct ionic_lif_stats, flex22)}, + {"fw_flex_event23", offsetof(struct ionic_lif_stats, flex23)}, + {"fw_flex_event24", offsetof(struct ionic_lif_stats, flex24)}, + {"fw_flex_event25", offsetof(struct ionic_lif_stats, flex25)}, + {"fw_flex_event26", offsetof(struct ionic_lif_stats, flex26)}, + {"fw_flex_event27", offsetof(struct ionic_lif_stats, flex27)}, + {"fw_flex_event28", offsetof(struct ionic_lif_stats, flex28)}, + {"fw_flex_event29", offsetof(struct ionic_lif_stats, flex29)}, + {"fw_flex_event30", offsetof(struct ionic_lif_stats, flex30)}, + {"fw_flex_event31", offsetof(struct ionic_lif_stats, flex31)}, + {"fw_flex_event32", offsetof(struct ionic_lif_stats, flex32)}, }; #define IONIC_NB_HW_STATS RTE_DIM(rte_ionic_xstats_strings) diff --git a/drivers/net/ionic/ionic_if.h b/drivers/net/ionic/ionic_if.h index 79aa196345..7ca604a7bb 100644 --- a/drivers/net/ionic/ionic_if.h +++ b/drivers/net/ionic/ionic_if.h @@ -2592,41 +2592,41 @@ struct ionic_lif_stats { __le64 rsvd16; __le64 rsvd17; - __le64 rsvd18; - __le64 rsvd19; - __le64 rsvd20; - __le64 rsvd21; - __le64 rsvd22; - __le64 rsvd23; - __le64 rsvd24; - __le64 rsvd25; - - __le64 rsvd26; - __le64 rsvd27; - __le64 rsvd28; - __le64 rsvd29; - __le64 rsvd30; - __le64 rsvd31; - __le64 rsvd32; - __le64 rsvd33; - - __le64 rsvd34; - __le64 rsvd35; - __le64 rsvd36; - __le64 rsvd37; - __le64 rsvd38; - __le64 rsvd39; - __le64 rsvd40; - __le64 rsvd41; - - __le64 rsvd42; - __le64 rsvd43; - __le64 rsvd44; - __le64 rsvd45; - __le64 rsvd46; - __le64 rsvd47; - __le64 rsvd48; - __le64 rsvd49; + __le64 flex1; + __le64 flex2; + __le64 flex3; + __le64 flex4; + __le64 flex5; + __le64 flex6; + __le64 flex7; + __le64 flex8; + + __le64 flex9; + __le64 flex10; + __le64 flex11; + __le64 flex12; + __le64 flex13; + __le64 flex14; + __le64 flex15; + __le64 flex16; + + __le64 flex17; + __le64 flex18; + __le64 flex19; + __le64 flex20; + __le64 flex21; + __le64 flex22; + __le64 flex23; + __le64 flex24; + + __le64 flex25; + __le64 flex26; + __le64 flex27; + __le64 flex28; + __le64 flex29; + __le64 flex30; + __le64 flex31; + __le64 flex32; /* RDMA/ROCE REQ Error/Debugs (768 - 895) */ __le64 rdma_req_rx_pkt_seq_err;