From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id F3FC145BB4;
	Wed, 23 Oct 2024 19:06:38 +0200 (CEST)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 8B461432C0;
	Wed, 23 Oct 2024 19:02:12 +0200 (CEST)
Received: from egress-ip11a.ess.de.barracuda.com
 (egress-ip11a.ess.de.barracuda.com [18.184.203.234])
 by mails.dpdk.org (Postfix) with ESMTP id 2A19542EB5
 for <dev@dpdk.org>; Wed, 23 Oct 2024 19:01:28 +0200 (CEST)
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05lp2108.outbound.protection.outlook.com [104.47.18.108]) by
 mx-outbound15-83.eu-central-1a.ess.aws.cudaops.com (version=TLSv1.2
 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO);
 Wed, 23 Oct 2024 17:01:27 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=EEjK2ZmGvURgdFpedofbdv2pVrtImKra7tBiL2Vj009N/3JqtnE3oK/GVAiRdlQ1mjdqRbqdbBNXu+Wv5sVMep0scFHn9TZvVi6pRudN1REDuQz54NSECt9cwYJwBAyG/RTASORZRuQstpSSFbw6g8jCuLho8b84HIpUyLoAwCBqlt1a7598ZzjlG6npGox0UBYx1d1VJIZLxMEdwGqfPGpl2/R/kbg1DudbbzkHgwzlW+vx/4zEu6Dxhf+Ve5UeZ3MI+Df2XkeqMzl6mwob51UUVWei63jlsadDgfiWwbgnixwtvvHuvQ0neKx/g16krfNQi82VzFfp3B6nDagMVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 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=mN1p5G0MTKTOUvZhzoNA+wil2SIMafO5l2KelxehsRM=;
 b=Uk+Ij5XwYY/wofvEC+/BCWm5gcCI65cgwBiLTvIqtDpwR3EWoCQmG/E0/VBnBanSyR66+p05WuHQyaqqpPPfFfg9fWys4Q/l3DfRFqqPPXpJO9s99yslQfluCuoRqgFOKx8w3iJelvOZUrnyQrbx6tvT/YZjI3P++InGebAo7oIkuR5Rhz4JggzgvLAw3fEu5TeVgCArG63zqmmFJfnhm4Ee8PFat8GBhbMTJqR04te9N1KNLOXWEZi3sv0iQpyCN5HJyZQsJbh5VvdUG0P2nGEi8hwf54L1iYm3NqeFY/z1AYwy3dl8TynNBBO3UM0xD3J/hvcIVoxXUzEo3KTVWA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=fail (sender ip is
 178.72.21.4) smtp.rcpttodomain=dpdk.org smtp.mailfrom=napatech.com;
 dmarc=fail (p=reject sp=reject pct=100) action=oreject
 header.from=napatech.com; dkim=none (message not signed); arc=none (0)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=napatech.com;
 s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mN1p5G0MTKTOUvZhzoNA+wil2SIMafO5l2KelxehsRM=;
 b=jei7pn5RzRr5GSiwUGgCMjJcGXNvi5Xtqw/8zk6r877dH+VYKfmXpGaLGvto1Xk6TkBtWhugXHtLzm2IoXPMFZoSVW444OLMwQBIdxLdlSy/AElXbWM0rJKyxoYGRPJOBZSlBTDUSs8JAI18u35/mwOKK1AxTUIL7NUSwnAONag=
Received: from DU7PR01CA0024.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:50f::26) by DU0P190MB1754.EURP190.PROD.OUTLOOK.COM
 (2603:10a6:10:346::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8069.27; Wed, 23 Oct
 2024 17:01:22 +0000
Received: from DB5PEPF00014B9E.eurprd02.prod.outlook.com
 (2603:10a6:10:50f:cafe::8c) by DU7PR01CA0024.outlook.office365.com
 (2603:10a6:10:50f::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8093.17 via Frontend
 Transport; Wed, 23 Oct 2024 17:01:22 +0000
X-MS-Exchange-Authentication-Results: spf=fail (sender IP is 178.72.21.4)
 smtp.mailfrom=napatech.com; dkim=none (message not signed)
 header.d=none;dmarc=fail action=oreject header.from=napatech.com;
Received-SPF: Fail (protection.outlook.com: domain of napatech.com does not
 designate 178.72.21.4 as permitted sender) receiver=protection.outlook.com;
 client-ip=178.72.21.4; helo=localhost.localdomain;
Received: from localhost.localdomain (178.72.21.4) by
 DB5PEPF00014B9E.mail.protection.outlook.com (10.167.8.171) with Microsoft
 SMTP Server id 15.20.8093.14 via Frontend Transport; Wed, 23 Oct 2024
 17:01:22 +0000
From: Serhii Iliushyk <sil-plv@napatech.com>
To: dev@dpdk.org
Cc: mko-plv@napatech.com, sil-plv@napatech.com, ckm@napatech.com,
 andrew.rybchenko@oktetlabs.ru, ferruh.yigit@amd.com,
 Oleksandr Kolomeiets <okl-plv@napatech.com>
Subject: [PATCH v3 44/73] net/ntnic: add IFR module
Date: Wed, 23 Oct 2024 18:59:52 +0200
Message-ID: <20241023170032.314155-45-sil-plv@napatech.com>
X-Mailer: git-send-email 2.45.0
In-Reply-To: <20241023170032.314155-1-sil-plv@napatech.com>
References: <20241021210527.2075431-1-sil-plv@napatech.com>
 <20241023170032.314155-1-sil-plv@napatech.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DB5PEPF00014B9E:EE_|DU0P190MB1754:EE_
Content-Type: text/plain
X-MS-Office365-Filtering-Correlation-Id: a9fc19bc-2692-41ab-7fc8-08dcf3845273
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
 ARA:13230040|36860700013|376014|1800799024|82310400026; 
X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?stLl5jnmkFHbJxx2rPhkxUnjZVsiSJ5giuKav1cQv+p/A+ZQJdwVQRy1myQ6?=
 =?us-ascii?Q?ZUSzQgaM3Kg6r8zCebcLVRbkTVAMghZlAuab1AReEt3nz42uL5cHlGBj8CGS?=
 =?us-ascii?Q?PQRlBa5fQfuPJK1ox98DWKCc4I8CgGICm7SzkFcE8+ONq0kYTav2oPciV/ou?=
 =?us-ascii?Q?eQy8NpmjZhPTSWLalViKLH18urbz2sZc1Uvt06vtiO9Ls/fYzKbPqRbBcwbF?=
 =?us-ascii?Q?x0MBuCJOYnNTSuCckr6oHJ8iUTNWrFPsN/eLYv141FEQ56BrfgqEYwOswrm+?=
 =?us-ascii?Q?UrLHk5xmdv27vamQJThZl+2IbAIb35ZOwpvgR59zR2hubgp1xKCH8tPtjZGJ?=
 =?us-ascii?Q?VUW6332IJPim+gM0pD6fzL5ZcEm0XAvcB0ZYFq/ClMzfbWJagHuUH+IsUxHl?=
 =?us-ascii?Q?cbKdfiVArMwGkKEbiUt642gX1bMFb6QoevWivuvjChYzriS+iVqDKZk/IIjk?=
 =?us-ascii?Q?amGzYrlEVB7VJa19fncYYloSbwaSnitrf4V1fbpnHatSONLzQlNPW0TQuEjd?=
 =?us-ascii?Q?gfUEWBJWUj9HRG3ZLoKFl6/+YR3giDWyiK4jvVxKhRYV2qEhM/aQKVPeTIxl?=
 =?us-ascii?Q?YFllaX8iYHnittrdjWFaLf06vY5u+QMlFf/FveSQymyd0ZhJsCuwJ79NS5vN?=
 =?us-ascii?Q?OG8EBS0juuJPoHiT15M5qgHOOUL4z6+yJ/npVo4JcC+ajZdxlH2Gu+Y9HASb?=
 =?us-ascii?Q?8RUD7A3AzkQe55cPFxnuuRUdYkssZ548VYDjjkIXzb3uME5tR3fNMYB0Nign?=
 =?us-ascii?Q?8CA9OgLdq+Hu6ivakrvVSDRrOGW7LEf5UdjeEriqd9oH7qrP+1rdToptwBvE?=
 =?us-ascii?Q?/jJY92Hcy0RkwT/0guOBoY+83d5ROXSq+3/LU1xTMMkGSQ85a3k4hVYzcX3P?=
 =?us-ascii?Q?zyyizhwNvtW1Mo5XYz9SKX1V7Pl7dpd8VRAsGbbK6YtZhwm0QZneIvrUfqdd?=
 =?us-ascii?Q?E5GEXxhmJqCX9B7O6aUPPgFGW9hJ2RHoBvPMzwEqc7WEqhlOtA3wuCow1Uw2?=
 =?us-ascii?Q?aL5zs2lutW6/LB4KNjsJD5EycTvS0zVufhaw42NimXqXZPwJesLRm2k2qvEU?=
 =?us-ascii?Q?yH+dg/+tK8pJLq0KB+F4m3rPJ2d/AVGKeGECyBcPZUiwOza/1tcaBSFTJWEj?=
 =?us-ascii?Q?sDAbSNj8Tjhfhi8e5KR/O2Yoqd/iuyhvoxfyhqbyt/4f0E2Hp7RoijxpOdmJ?=
 =?us-ascii?Q?3Lw+UhZpQ519Pg+/b2jN4WNMU63HBuLyC+8oos7kRM047XT62Cc3Fw8g8fIA?=
 =?us-ascii?Q?BeM3WX8rcupUcgsfQudlooCqfwZxhlqHq6x2vkdalVfDV5BA7IQ/QsHrAUGu?=
 =?us-ascii?Q?oTFhjZ3w4jElx8G/zrtogmQwGWnlevxkCQTYov+WR3Ul2VJ2fNJJHFjUGqpb?=
 =?us-ascii?Q?kY//d68WD2gR2d6CZuf/JKE5m1ErIcmjSabVQgqZ0bwNiriEYQ=3D=3D?=
X-Forefront-Antispam-Report: CIP:178.72.21.4; CTRY:DK; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:localhost.localdomain; PTR:InfoDomainNonexistent;
 CAT:NONE; SFS:(13230040)(36860700013)(376014)(1800799024)(82310400026);
 DIR:OUT; SFP:1102; 
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: IdZi+dNEemss97q6AciRrrY1aBMV5WFeK2pmQJImH0pKY5Lv+nQ8TqiKC845ig8YK/wAFQv5eKGc3MoBnoVupBrP69Kf7TZcHLr4NZ3JGskzj70FsHRK+Zf8XW+AOnYd6hgWa4ssoIjzmpDCnKH0u0upOxyaMiEcWZ0YeSIfVHSLrI3OkwJEyJTtgaFiWg+cgSst6DiUqehH38cB7xEt8fuovXHKwpU5IOfYxkUnRZTIAoR4KUK3Q6WtOgAcXJVdtWLKDPrKlESfrznTLWOHN6VnZijI6APgbHPgZkTwFgXimZLxYcgI2QZtNB0E1oFyyE7A1IwAKQS3ltvji2miS1A9CeRwOFatwVom/woyP2/UkdZ+2W1Pjm48+rAPN5zqc6C5N3Kiu7hN2BNIy7t5KEJM8knhkKhr+9e5JZ5GPUcGgITcn14teeeVqwPEoodvCm8oFSLAgJdZilfuoIiaudKRGNcRLsA6rPLGotM0LO0oMTleuOVsZcOsO/Y384jy4BLiawS8iUR4eda8G9M6OnI4ixzyo83WkUIQgEY+c906jeJ6Z9PZfsEV+EeIJgY/WUDuBSEGYI8An9pyM3drhbwDM7paCzDKnDkVXdoydappRK9KOeY9la5GV3gXTEiIs5dTMutvf0hfqbD3KIWz7CbfzADA5k25PWKYU87rymg=
X-OriginatorOrg: napatech.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2024 17:01:22.1645 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a9fc19bc-2692-41ab-7fc8-08dcf3845273
X-MS-Exchange-CrossTenant-Id: c4540d0b-728a-4233-9da5-9ea30c7ec3ed
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=c4540d0b-728a-4233-9da5-9ea30c7ec3ed; Ip=[178.72.21.4];
 Helo=[localhost.localdomain]
X-MS-Exchange-CrossTenant-AuthSource: DB5PEPF00014B9E.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0P190MB1754
X-BESS-ID: 1729702885-303923-12648-44299-2
X-BESS-VER: 2019.1_20241018.1852
X-BESS-Apparent-Source-IP: 104.47.18.108
X-BESS-Parts: H4sIAAAAAAACA4uuVkqtKFGyUioBkjpK+cVKVsbGZuZAVgZQ0MjYwjLFzDAlzS
 Q10SwtOS3RzNDY0iLZ0CDNwCTZyDhNqTYWAL09KdlBAAAA
X-BESS-Outbound-Spam-Score: 0.00
X-BESS-Outbound-Spam-Report: Code version 3.2,
 rules version 3.2.2.259925 [from 
 cloudscan15-19.eu-central-1a.ess.aws.cudaops.com]
 Rule breakdown below
 pts rule name              description
 ---- ---------------------- --------------------------------
 0.00 BSF_BESS_OUTBOUND      META: BESS Outbound 
X-BESS-Outbound-Spam-Status: SCORE=0.00 using account:ESS113687 scores of
 KILL_LEVEL=7.0 tests=BSF_BESS_OUTBOUND
X-BESS-BRTS-Status: 1
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

From: Oleksandr Kolomeiets <okl-plv@napatech.com>

The IP Fragmenter module can fragment outgoing packets
based on a programmable MTU.

Signed-off-by: Oleksandr Kolomeiets <okl-plv@napatech.com>
---
 .../supported/nthw_fpga_9563_055_049_0000.c   | 41 ++++++++++++++++++-
 1 file changed, 40 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ntnic/nthw/supported/nthw_fpga_9563_055_049_0000.c b/drivers/net/ntnic/nthw/supported/nthw_fpga_9563_055_049_0000.c
index 82068746b3..509e1f6860 100644
--- a/drivers/net/ntnic/nthw/supported/nthw_fpga_9563_055_049_0000.c
+++ b/drivers/net/ntnic/nthw/supported/nthw_fpga_9563_055_049_0000.c
@@ -1095,6 +1095,44 @@ static nthw_fpga_register_init_s hsh_registers[] = {
 	{ HSH_RCP_DATA, 1, 743, NTHW_FPGA_REG_TYPE_WO, 0, 23, hsh_rcp_data_fields },
 };
 
+static nthw_fpga_field_init_s ifr_counters_ctrl_fields[] = {
+	{ IFR_COUNTERS_CTRL_ADR, 4, 0, 0x0000 },
+	{ IFR_COUNTERS_CTRL_CNT, 16, 16, 0x0000 },
+};
+
+static nthw_fpga_field_init_s ifr_counters_data_fields[] = {
+	{ IFR_COUNTERS_DATA_DROP, 32, 0, 0x0000 },
+};
+
+static nthw_fpga_field_init_s ifr_df_buf_ctrl_fields[] = {
+	{ IFR_DF_BUF_CTRL_AVAILABLE, 11, 0, 0x0000 },
+	{ IFR_DF_BUF_CTRL_MTU_PROFILE, 16, 11, 0x0000 },
+};
+
+static nthw_fpga_field_init_s ifr_df_buf_data_fields[] = {
+	{ IFR_DF_BUF_DATA_FIFO_DAT, 128, 0, 0x0000 },
+};
+
+static nthw_fpga_field_init_s ifr_rcp_ctrl_fields[] = {
+	{ IFR_RCP_CTRL_ADR, 4, 0, 0x0000 },
+	{ IFR_RCP_CTRL_CNT, 16, 16, 0x0000 },
+};
+
+static nthw_fpga_field_init_s ifr_rcp_data_fields[] = {
+	{ IFR_RCP_DATA_IPV4_DF_DROP, 1, 17, 0x0000 }, { IFR_RCP_DATA_IPV4_EN, 1, 0, 0x0000 },
+	{ IFR_RCP_DATA_IPV6_DROP, 1, 16, 0x0000 }, { IFR_RCP_DATA_IPV6_EN, 1, 1, 0x0000 },
+	{ IFR_RCP_DATA_MTU, 14, 2, 0x0000 },
+};
+
+static nthw_fpga_register_init_s ifr_registers[] = {
+	{ IFR_COUNTERS_CTRL, 4, 32, NTHW_FPGA_REG_TYPE_WO, 0, 2, ifr_counters_ctrl_fields },
+	{ IFR_COUNTERS_DATA, 5, 32, NTHW_FPGA_REG_TYPE_RO, 0, 1, ifr_counters_data_fields },
+	{ IFR_DF_BUF_CTRL, 2, 27, NTHW_FPGA_REG_TYPE_RO, 0, 2, ifr_df_buf_ctrl_fields },
+	{ IFR_DF_BUF_DATA, 3, 128, NTHW_FPGA_REG_TYPE_RO, 0, 1, ifr_df_buf_data_fields },
+	{ IFR_RCP_CTRL, 0, 32, NTHW_FPGA_REG_TYPE_WO, 0, 2, ifr_rcp_ctrl_fields },
+	{ IFR_RCP_DATA, 1, 18, NTHW_FPGA_REG_TYPE_WO, 0, 5, ifr_rcp_data_fields },
+};
+
 static nthw_fpga_field_init_s iic_adr_fields[] = {
 	{ IIC_ADR_SLV_ADR, 7, 1, 0 },
 };
@@ -2071,6 +2109,7 @@ static nthw_fpga_module_init_s fpga_modules[] = {
 	{ MOD_HFU, 0, MOD_HFU, 0, 2, NTHW_FPGA_BUS_TYPE_RAB1, 9472, 2, hfu_registers },
 	{ MOD_HIF, 0, MOD_HIF, 0, 0, NTHW_FPGA_BUS_TYPE_PCI, 0, 18, hif_registers },
 	{ MOD_HSH, 0, MOD_HSH, 0, 5, NTHW_FPGA_BUS_TYPE_RAB1, 1536, 2, hsh_registers },
+	{ MOD_IFR, 0, MOD_IFR, 0, 7, NTHW_FPGA_BUS_TYPE_RAB1, 9984, 6, ifr_registers },
 	{ MOD_IIC, 0, MOD_IIC, 0, 1, NTHW_FPGA_BUS_TYPE_RAB0, 768, 22, iic_registers },
 	{ MOD_IIC, 1, MOD_IIC, 0, 1, NTHW_FPGA_BUS_TYPE_RAB0, 896, 22, iic_registers },
 	{ MOD_IIC, 2, MOD_IIC, 0, 1, NTHW_FPGA_BUS_TYPE_RAB0, 24832, 22, iic_registers },
@@ -2255,5 +2294,5 @@ static nthw_fpga_prod_param_s product_parameters[] = {
 };
 
 nthw_fpga_prod_init_s nthw_fpga_9563_055_049_0000 = {
-	200, 9563, 55, 49, 0, 0, 1726740521, 152, product_parameters, 25, fpga_modules,
+	200, 9563, 55, 49, 0, 0, 1726740521, 152, product_parameters, 26, fpga_modules,
 };
-- 
2.45.0