From patchwork Wed Feb 7 02:18:45 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Boyer X-Patchwork-Id: 136452 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 1693143A1B; Wed, 7 Feb 2024 03:20:43 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E511342D91; Wed, 7 Feb 2024 03:20:04 +0100 (CET) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2066.outbound.protection.outlook.com [40.107.94.66]) by mails.dpdk.org (Postfix) with ESMTP id 5395742DC0 for ; Wed, 7 Feb 2024 03:19:56 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=magj+7+RZ4s8O98amWaG54K9oe/+TYPC9D8tDRuIoVA2Bcmg7lhmTbWyzfmFx/N7k04qsbcTD/HEwC/PP+ZHiz+bYJ8+VNe0zAW5SwHAb+EOw9CBb2LfGuYJsj7aI7OrHQS+ZBYmqMdskps7b7ofnxa4sVOU9BiwUITAzyUY5eMLoKddEI0R3IPyFtLfiVRf8wFtCNHBoyDU5Kx6pbNQ3qR40PZ/Xks5EeKkWoF6cdFU1cjS9tSCwt5vrBBhnbfIEj/Qk5o/i4vVXZRdPmYUBRn2RRI9PG3yk81K3JVbM+287QDqUJeuZIVz5DPIK1AD1Us/iIy/JGHMta+JJzaNFw== 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=OdTxq1X9rQDNSNOMzdxUXS1ZkSf9GGtTtDwuq0PwMCIQijBgfHeus8m88A+AcdDGFp5DDYVRHdt+LYq8pP29etjnkBzMBHfdGxDX6CuJnQwLggSj8MhYpylUiODtgijq0RDjeWVyFYOMM53/wI1Tk9Zg19COJ9nfgnCApphp6AIl9CFlsKppEF9AUL1u2hBktVA87CnqBbrhtRobUoHHs69wXNg2Hlz83L6zwc/lHaZlA/+aLkuZu9KJSelSOU1IRRAROJ0jSyPGliQq5UP6ZrLEG6E8ohXtdpGITT/ADB9Ba+94REUy+TRbbEceJ0hsPqG/kSv+6K6WBuzI7EEUxA== 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=Uwpd+mKXu5k0wm/Z3Cyga4nYo0QBZ8SN0JInTCauFttvcJViAoRmEuX1sPn7rmmYN0kgxaOUkqY+b5/CYlZuGVP4ZwzPAVfnBkDhiQ41sG1wVFd4uaDeyN/Qi0XX1GH7qe+592hPqRPmRJwWeCTO1p8knGkyG/jpTI16dTElBPE= Received: from PR3PR09CA0012.eurprd09.prod.outlook.com (2603:10a6:102:b7::17) by PH8PR12MB7205.namprd12.prod.outlook.com (2603:10b6:510:227::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.14; Wed, 7 Feb 2024 02:19:53 +0000 Received: from SA2PEPF000015CC.namprd03.prod.outlook.com (2603:10a6:102:b7:cafe::ae) by PR3PR09CA0012.outlook.office365.com (2603:10a6:102:b7::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7249.36 via Frontend Transport; Wed, 7 Feb 2024 02:19:52 +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 SA2PEPF000015CC.mail.protection.outlook.com (10.167.241.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7249.19 via Frontend Transport; Wed, 7 Feb 2024 02:19:52 +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 20:19:47 -0600 From: Andrew Boyer To: CC: Brad Larson , Andrew Boyer Subject: [PATCH v2 09/13] net/ionic: add flexible firmware xstat counters Date: Tue, 6 Feb 2024 18:18:45 -0800 Message-ID: <20240207021849.52988-10-andrew.boyer@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20240202193238.62669-1-andrew.boyer@amd.com> References: <20240202193238.62669-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: SA2PEPF000015CC:EE_|PH8PR12MB7205:EE_ X-MS-Office365-Filtering-Correlation-Id: c9064674-c15c-4966-0cc2-08dc27834485 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: d+9GMZenngYg23R8iXu2NfJakMdlEqatLdfqeWHN0V3u77Tob2CDtai67ljz3TeYMIQICnW+uXMsXPwPX5l+GYaJSUUrCt8Bj3Op34kbr6WcPSToq2qNldmWuHBmkhD0qcyJbmK61MFb9i3ZmRF+onxj1gbhySxeHlfh9jADKWYhAlefDUp4JWu6XOvSe5N/JM2/IoSkzIdcMCqkPRsZDiY262X6j/QOCylJPs5DmmAJzZ7q0P+Gj5TmHup+ZQwkhifcZA0kWcUvWP1xx/Rf3SwGNlregl9P8YquSbd+s25gJvcPUIARTsOwts54tiKJky+9ZY8/b7vGHceti50nPfSXTiOVQuneVNfeyRrkW5Sk8WxON8nnIGpgWil7VO+l28juNYlW6xHhtxDKB6ODMq8K+1wSfMJk3yOo0KlSMYnfIrs8wGQ8bq6PrMNY4KpeE0KRDBbyn8CX5IyWtbd0vY29vzlFe1BKdGtzBEbGnnqY0netW+1mM+zeaShGt/NgcwuydGCoeVSTVo9WtoKkbOIVJK0rKoXdPjRpSrN2VDfKa/jiMTtqxQ7W05PIaR2FA4bW8IqFyXFTM5fuq/CBx9KTijEtlVX4yRibqrKNA0A6DIY83Z2EsltVkduq/0yF6IwwgRfsDdR+WY3ROgc9gIEJYuORQrtSPScOzOgfDmGC4EOVqyAlHB1fsK45/brZIOaC1B8rEspx/iXi0CnIIUiLEKPeee0RlVaTOYiBdByK0ZqoCEZu0yaL1ONIu2URjWgx7tuM0gjmoR1j2sfs5Q== 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)(39860400002)(376002)(346002)(396003)(230922051799003)(82310400011)(186009)(1800799012)(64100799003)(451199024)(46966006)(40470700004)(36840700001)(16526019)(40480700001)(1076003)(41300700001)(336012)(426003)(40460700003)(26005)(2616005)(316002)(36860700001)(36756003)(6916009)(81166007)(83380400001)(478600001)(356005)(82740400003)(54906003)(47076005)(70586007)(8936002)(86362001)(5660300002)(8676002)(2906002)(44832011)(70206006)(4326008)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2024 02:19:52.2130 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c9064674-c15c-4966-0cc2-08dc27834485 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: SA2PEPF000015CC.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB7205 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;