From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 288AC45BC0; Tue, 29 Oct 2024 17:42:56 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B056842EA0; Tue, 29 Oct 2024 17:42:55 +0100 (CET) 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 8A51E42E48 for ; Tue, 29 Oct 2024 17:42:54 +0100 (CET) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05lp2107.outbound.protection.outlook.com [104.47.17.107]) by mx-outbound12-25.eu-central-1a.ess.aws.cudaops.com (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Tue, 29 Oct 2024 16:42:50 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=i3Q6XV8j/RnKw3Y63Y7p3sgudQvsp8Dni3hI7UTUtDwCwXoG8KOn+9DdZbAeRYE4nKCvr6XtWQSbJ5ulnaTgWlR4bubkrCtDJlodlnNEmjpBUSlNIjp658lyZ9E76/RHJnA3rWhUIoZ+nw5t/3HG1p91KTgDWIs9mQlEIsj5ONhNfy6aSSjimnJrEq93IGNbG5AHQSc+1+5O33NwchrUxwt/yzC9uW7WkhwPYRoWumNZfduA/yn8sXUez1Xbz55pO8VD6Sij1e52KptyOr8+v8JZ8q+6Euk88SsdK3KH4LYUg8VD64dF8tsz8CKLvArAB8dhJ88iRQ8z3YzckFssiw== 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=X/ARAWHaoPFCpgpAXepZO5B0eOI6P5RELDK8lCqHD+s=; b=DfqRE/E8/kN20Gr2oy23bDll19nUGQ9tWtt9JnzV75nI1nPG/c6xnRGtiKrgCxcmQYgN+vEqHHx+V9NksfB2phTXghVjQb123RFrrRKTsMgGQXnSqdCAo4G4Jdy5+fHp2nErh3/cjJ6sXwt/LenrPBIDDmuick+IicHivRTW72E6JlxbOUtbIxRTsLP+A9dIgkxZFpvvh/T77HqWdazVrWvT3Y6b4g6iIvA72oKz472qyoyxk+wPABYycanFlc6BbniOW9iwfzFa1XBVJ+hEj6QQ7nDCSHDbpHv7BQ46berdb8/vELPD5KAw2wNGpM7+6s0BCHA0eCV21/f2RZ+OkQ== 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=X/ARAWHaoPFCpgpAXepZO5B0eOI6P5RELDK8lCqHD+s=; b=n4GD0wK1ri1OtsN74HWr2sVTuHeYoaIfIkJJmlKA7gr3CadJO/RJdcVt+KbbeF8PeWrc/Fa4ae+psXIebJrnujO+1r2A/XaeGOzIA8+bw49736mgrgR1g5q3SEGdkAGGQ4qThJq04yjCgCQMIGKFvKMXey/VQ7xFLY2jURN08ZE= Received: from DUZPR01CA0199.eurprd01.prod.exchangelabs.com (2603:10a6:10:4b6::28) by AM8P190MB1009.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:1dc::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8093.29; Tue, 29 Oct 2024 16:42:48 +0000 Received: from DU2PEPF00028D06.eurprd03.prod.outlook.com (2603:10a6:10:4b6:cafe::bb) by DUZPR01CA0199.outlook.office365.com (2603:10a6:10:4b6::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8093.29 via Frontend Transport; Tue, 29 Oct 2024 16:42:48 +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 DU2PEPF00028D06.mail.protection.outlook.com (10.167.242.166) with Microsoft SMTP Server id 15.20.8114.16 via Frontend Transport; Tue, 29 Oct 2024 16:42:47 +0000 From: Serhii Iliushyk To: dev@dpdk.org Cc: mko-plv@napatech.com, sil-plv@napatech.com, ckm@napatech.com, andrew.rybchenko@oktetlabs.ru, ferruh.yigit@amd.com, stephen@networkplumber.org Subject: [PATCH v4 00/86] Provide flow filter API and statistics Date: Tue, 29 Oct 2024 17:41:04 +0100 Message-ID: <20241029164243.1648775-1-sil-plv@napatech.com> X-Mailer: git-send-email 2.45.0 In-Reply-To: <20241021210527.2075431-1-sil-plv@napatech.com> References: <20241021210527.2075431-1-sil-plv@napatech.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PEPF00028D06:EE_|AM8P190MB1009:EE_ X-MS-Office365-Filtering-Correlation-Id: f2715709-76e3-4784-0ed5-08dcf838b889 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|1800799024|36860700013|82310400026; X-Microsoft-Antispam-Message-Info: =?utf-8?B?alQweWs1QUI1b1p1ZXloS2I2UjJWNUVadDkremNuMFVNTStUR2tCa014OXM0?= =?utf-8?B?MjB4dkNwTjRpSStwaXI2amJiMDd2S25HUEdhQ0gyTGVDbE1hRUJtRHZBY1By?= =?utf-8?B?a1gwSjhzL0hCTnJuUldNbGJaV2FHOGhscnp1djExTDUwUmp5ZjBZU3VIckpr?= =?utf-8?B?cFFaSTlKWWpiRS9tZTZSak9CSE9mWFN5WEJhcWZkZmJ0MGF4ZDIxVmVFUUx6?= =?utf-8?B?c0cyZ0ZyUVMxSm53WHBPU2N2TFpkTzFLanc4M3ZMc3VlaDhBaXBqWVRPSk81?= =?utf-8?B?ei9kaGQya0k2QTEzZ2JKVlhmckhkYlVwcVJsamFwNjBHT05odXF6aG0zdTZK?= =?utf-8?B?dTY1VjU3L3REeWltc0poMURUcno4WTFRcS90aVE0eG5rdHBSRmJxRHBSRFUw?= =?utf-8?B?MmlOWi9QSmxXUjB2QyswTXlMeG5tMHJWdE5iZTFIMGU1Z3BtS29YY0Izb21C?= =?utf-8?B?TGFsd1Vva3VNS3l1RmptSkFTeFRxUVpPS2krVzVGMXkrUW5KMndCRUI1dEYv?= =?utf-8?B?d29iOFlOT2dZeUJwSUVOV0RWSC9lWWZBUnZUQnhkWFI1dGVPWk95SWFVUlho?= =?utf-8?B?QjZ0TnZkbHBZVklISlRpdU0zQzF6aUJHbHZkaHFxbzhvZlBMYko3ZlB0dnVX?= =?utf-8?B?NTBZWGRHTjI4SThxTy9Hajg0b3V1RnQzN0hVODRoTGpZbU1wVFhIZmdjL1FK?= =?utf-8?B?aUNqd3FhTjdLckNQTURwT3RLMVdSZng0QjlDOHZUTFVtSTdBN3RybFNFSTZu?= =?utf-8?B?dlVuNExWK3dVeHJiR25ULytkREsza2xic0sxWTVXNTZGY3c3OGEvYkR6dEJ3?= =?utf-8?B?MmVkYmdsNWtiZmlhN1BlUitmdDZONGxXWVdiaDEvMlhxemFkSFNtMWt1R0Er?= =?utf-8?B?UW0zTHEyYWNOMXg2a1JQTHZ2MEF6WlZBMmh5bElhNGxZZ1VxYjhsSXdEMGpk?= =?utf-8?B?bktnK0g1U2JJZzhoaGltblkzdzJhRWt1dVVZaFZEbWFMdHNmaUxJM1lsNUN1?= =?utf-8?B?cjYxYmE2dVpGUlgzOWxxZnQwWlZMSDgyYi9xckgwTTZLNTdtNVNMc2hZcWZY?= =?utf-8?B?QWZ2MmF1U1V0dGhoWVVmUGV3UzloeERoSWQ5djQ1cmFuVHk3LytPeExUaUZv?= =?utf-8?B?UFZPeGdqVmlYVkZIZzZRUDAvZXlMVVJZeTBRcTI4bVh5MkNDTjA4UnhHZk5t?= =?utf-8?B?VjdkWExIaC9tdkhBSjVQdmNJVWJnekVHWlZQaDlIdFhMY2JqclMrTFlNNU1P?= =?utf-8?B?dmRZOWtpcmV2YU5mYVlEbWlwQjJNUm4yeE51a3V1czAzbnIxTjY3bHVMWGRN?= =?utf-8?B?VkdYcEx1SFlnMWNvcjVOMjdLZFhLSTNEdEVyZnFFaldSTnExcVo3NTdmQVJ4?= =?utf-8?B?MWdhRnFVYjFST1NuOGN6cXc4cUlsSFVpenBpbUlxTERaNDk2NW1tMUhlanpz?= =?utf-8?B?eHdCRWVxMExNcnRnckt4cnNzM0F6dGhUUWVTUDRVUU5xTTM1aUx2N012b2pZ?= =?utf-8?B?L0lBM1VMNkRlK2I5cTROaituZTFlV3R3QWVwTmRzMzhZMWFSc1NFZWtMKzB1?= =?utf-8?B?djlYSktuTWVaamVsaE4zemhhQThTQ2NqQ2ZoSFlScW5yV3Q4U0ZBQUdxRUsy?= =?utf-8?B?ME1oYzFNcGtDcmFhM2JFbUlxUFEwT0pwZVNYTVBrcGtaajVIR013d2FRZWlQ?= =?utf-8?B?eDlIMS9tbHYrYkM3emtCaTRFWEZLa2Zjeld6SStaZml3UFFGVDlSK2dxL0xj?= =?utf-8?B?WkdIcE1QU0tMQXZ2MWwrdFdhOWlrRW5PaUxFZjVUdWg5cHFhc0VUd05Uckha?= =?utf-8?B?UnEwc3p1b2tsTHc3VnlJNTZxMkttQm54WEFiTDhuWWlJL1F3UHZodlg1enFC?= =?utf-8?B?eVJCeW9BTnAzMVZ4NldFV3RJV2RKMDRIUmRYT29sRndWVHc9PQ==?= 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)(376014)(1800799024)(36860700013)(82310400026); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: SlVXduQ2UITglQFE9Ew9oPrGkzG9MUC3/2MN6CZj16QeV6mAt8EvxIGhju5vjhcJvbak3s20zmzTOuKaC40aKhMucYP8Lz787UkO033RflB7hEHCBqThBWbcbQ6x+pEefVeDbk3heZI1J4hNzdhQSDWP/xZsBvSy06Cw/RA6pbXp8I3kye8z0a+JIYbZnJREgB6YbUcG+vpsJNYilJyBwN+Rd+ffpgJDZS/S3/Vawvl/SM7dzvSg+r2Eo5mmCfJmbBmp96Fd3MjMzQ1kH2Bw5CzC7Oif62Qt05Yw5qpMC86Yj+0cpA881AYZ1/mNVsj3SsH5D5o4v1wx/fkA0Ufogj2NmIvhR25h9XPbyTWfr8La6hRocA65D8xXozrZX2MKXAIFjfqXVLs/UmyWYiJ8O+9hSe48f42WUNdYE1Ocm5IIMeFHm+KJRKbLckWdxz4esk6UX3v4Tm9rbzMQDgP3XgtS1UdbwBUdNrrDlDGqOa90HRpiSPJfJIlEuM/0qHwgewM4N8vN8RybkXEZgp0q4O2h4Wh2kBoPCR9dPuIqrGOXaA+N9ZFsAOgyhslqnTaFrmFX4nvcGlzRyEmudfWwuF7qJaQ2My/uV7Q81TBTOmfQ+XzbFCjNN4KdmiskjD2jhA4L2e1mMUwNVNQPRv/oX8og/JnY0rChDvWqGiB2avY= X-OriginatorOrg: napatech.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Oct 2024 16:42:47.4802 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f2715709-76e3-4784-0ed5-08dcf838b889 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: DU2PEPF00028D06.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8P190MB1009 X-BESS-ID: 1730220170-303097-12762-29312-1 X-BESS-VER: 2019.1_20241018.1852 X-BESS-Apparent-Source-IP: 104.47.17.107 X-BESS-Parts: H4sIAAAAAAACA4uuVkqtKFGyUioBkjpK+cVKVoZGBibGQGYGUDTV0MDYwNLMwi jNwCAt0SDZwCLZ2CDV0iQ50djU1NTSTKk2FgBZ/SRMQgAAAA== X-BESS-Outbound-Spam-Score: 0.00 X-BESS-Outbound-Spam-Report: Code version 3.2, rules version 3.2.2.260063 [from cloudscan20-98.eu-central-1b.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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org The list of updates provided by the patchset: - FW version - Speed capabilities - Link status (Link update only) - Unicast MAC filter - Multicast MAC filter - Promiscuous mode (Enable only. The device always run promiscuous mode) - Multiple TX and RX queues. - Scattered and gather for TX and RX. - RSS hash - RSS key update - RSS based on VLAN or 5-tuple. - RSS using different combinations of fields: L3 only, L4 only or both, and source only, destination only or both. - Several RSS hash keys, one for each flow type. - Default RSS operation with no hash key specification. - VLAN filtering. - RX VLAN stripping via raw decap. - TX VLAN insertion via raw encap. - Flow API. - Multiple process. - Tunnel types: GTP. - Tunnel HW offload: Packet type, inner/outer RSS, IP and UDP checksum verification. - Support for multiple rte_flow groups. - Encapsulation and decapsulation of GTP data. - Packet modification: NAT, TTL decrement, DSCP tagging - Traffic mirroring. - Jumbo frame support. - Port and queue statistics. - RMON statistics in extended stats. - Flow metering, including meter policy API. - Link state information. - CAM and TCAM based matching. - Exact match of 140 million flows and policies. - Basic stats - Extended stats - Flow metering, including meter policy API. - Flow update. Update of the action list for specific flow - Asynchronous flow API - MTU update Update: the pthread API was replaced with RTE spinlock in the separate patch. Danylo Vodopianov (43): net/ntnic: add API for configuration NT flow dev net/ntnic: add item UDP net/ntnic: add action TCP net/ntnic: add action VLAN net/ntnic: add item SCTP net/ntnic: add items IPv6 and ICMPv6 net/ntnic: add action modify filed net/ntnic: add items gtp and actions raw encap/decap net/ntnic: add cat module net/ntnic: add SLC LR module net/ntnic: add PDB module net/ntnic: add QSL module net/ntnic: add KM module net/ntnic: add hash API net/ntnic: add TPE module net/ntnic: add FLM module net/ntnic: add flm rcp module net/ntnic: add learn flow queue handling net/ntnic: match and action db attributes were added net/ntnic: add statistics API net/ntnic: add rpf module net/ntnic: add statistics poll net/ntnic: added flm stat interface net/ntnic: add tsm module net/ntnic: add xstats net/ntnic: added flow statistics net/ntnic: add scrub registers net/ntnic: add flow aging API net/ntnic: add aging API to the inline profile net/ntnic: add flow info and flow configure APIs net/ntnic: add flow aging event net/ntnic: add termination thread net/ntnic: add aging documentation net/ntnic: add meter API net/ntnic: add meter module net/ntnic: update meter documentation net/ntnic: add action update net/ntnic: add flow action update net/ntnic: flow update was added net/ntnic: add async create/destroy API declaration net/ntnic: add async template API declaration net/ntnic: add async flow create/delete API implementation net/ntnic: add async template APIs implementation Oleksandr Kolomeiets (18): net/ntnic: add flow dump feature net/ntnic: add flow flush net/ntnic: sort FPGA registers alphanumerically net/ntnic: add CSU module registers net/ntnic: add FLM module registers net/ntnic: add HFU module registers net/ntnic: add IFR module registers net/ntnic: add MAC Rx module registers net/ntnic: add MAC Tx module registers net/ntnic: add RPP LR module registers net/ntnic: add SLC LR module registers net/ntnic: add Tx CPY module registers net/ntnic: add Tx INS module registers net/ntnic: add Tx RPL module registers net/ntnic: add STA module net/ntnic: add TSM module net/ntnic: update documentation net/ntnic: add MTU configuration Serhii Iliushyk (25): net/ntnic: add flow filter API net/ntnic: add minimal create/destroy flow operations net/ntnic: add internal flow create/destroy API net/ntnic: add minimal NT flow inline profile net/ntnic: add management API for NT flow profile net/ntnic: add NT flow profile management implementation net/ntnic: add create/destroy implementation for NT flows net/ntnic: add infrastructure for for flow actions and items net/ntnic: add action queue net/ntnic: add action mark net/ntnic: add ation jump net/ntnic: add action drop net/ntnic: add item eth net/ntnic: add item IPv4 net/ntnic: add item ICMP net/ntnic: add item port ID net/ntnic: add item void net/ntnic: add GMF (Generic MAC Feeder) module net/ntnic: update alignment for virt queue structs net/ntnic: enable RSS feature net/ntnic: update documentation for flow actions update net/ntnic: migrate to the RTE spinlock net/ntnic: remove unnecessary type cast net/ntnic: update async flow API documentation net/ntnic: update documentation for set MTU doc/guides/nics/features/ntnic.ini | 33 + doc/guides/nics/ntnic.rst | 52 + doc/guides/rel_notes/release_24_11.rst | 7 + drivers/net/ntnic/adapter/nt4ga_adapter.c | 29 +- .../net/ntnic/adapter/nt4ga_stat/nt4ga_stat.c | 598 ++ drivers/net/ntnic/dbsconfig/ntnic_dbsconfig.c | 7 +- .../net/ntnic/include/common_adapter_defs.h | 15 + drivers/net/ntnic/include/create_elements.h | 73 + drivers/net/ntnic/include/flow_api.h | 142 +- drivers/net/ntnic/include/flow_api_engine.h | 380 + drivers/net/ntnic/include/flow_filter.h | 1 + drivers/net/ntnic/include/hw_mod_backend.h | 256 + drivers/net/ntnic/include/nt4ga_adapter.h | 2 + drivers/net/ntnic/include/ntdrv_4ga.h | 5 + drivers/net/ntnic/include/ntnic_stat.h | 265 + drivers/net/ntnic/include/ntos_drv.h | 24 + .../ntnic/include/stream_binary_flow_api.h | 67 + .../link_mgmt/link_100g/nt4ga_link_100g.c | 8 + drivers/net/ntnic/meson.build | 20 + .../net/ntnic/nthw/core/include/nthw_core.h | 1 + .../net/ntnic/nthw/core/include/nthw_gmf.h | 64 + .../net/ntnic/nthw/core/include/nthw_i2cm.h | 4 +- .../net/ntnic/nthw/core/include/nthw_rmc.h | 6 + .../net/ntnic/nthw/core/include/nthw_rpf.h | 49 + .../net/ntnic/nthw/core/include/nthw_tsm.h | 56 + drivers/net/ntnic/nthw/core/nthw_fpga.c | 47 + drivers/net/ntnic/nthw/core/nthw_gmf.c | 133 + drivers/net/ntnic/nthw/core/nthw_rmc.c | 30 + drivers/net/ntnic/nthw/core/nthw_rpf.c | 120 + drivers/net/ntnic/nthw/core/nthw_tsm.c | 167 + drivers/net/ntnic/nthw/flow_api/flow_api.c | 935 ++- drivers/net/ntnic/nthw/flow_api/flow_group.c | 99 + drivers/net/ntnic/nthw/flow_api/flow_hasher.c | 156 + drivers/net/ntnic/nthw/flow_api/flow_hasher.h | 21 + .../net/ntnic/nthw/flow_api/flow_id_table.c | 145 + .../net/ntnic/nthw/flow_api/flow_id_table.h | 26 + drivers/net/ntnic/nthw/flow_api/flow_km.c | 1171 ++++ .../ntnic/nthw/flow_api/hw_mod/hw_mod_cat.c | 457 ++ .../ntnic/nthw/flow_api/hw_mod/hw_mod_flm.c | 723 ++ .../ntnic/nthw/flow_api/hw_mod/hw_mod_hsh.c | 179 + .../ntnic/nthw/flow_api/hw_mod/hw_mod_km.c | 380 + .../ntnic/nthw/flow_api/hw_mod/hw_mod_pdb.c | 144 + .../ntnic/nthw/flow_api/hw_mod/hw_mod_qsl.c | 218 + .../nthw/flow_api/hw_mod/hw_mod_slc_lr.c | 100 + .../ntnic/nthw/flow_api/hw_mod/hw_mod_tpe.c | 853 +++ .../flow_api/profile_inline/flm_age_queue.c | 164 + .../flow_api/profile_inline/flm_age_queue.h | 42 + .../flow_api/profile_inline/flm_evt_queue.c | 293 + .../flow_api/profile_inline/flm_evt_queue.h | 55 + .../flow_api/profile_inline/flm_lrn_queue.c | 70 + .../flow_api/profile_inline/flm_lrn_queue.h | 25 + .../profile_inline/flow_api_hw_db_inline.c | 3000 ++++++++ .../profile_inline/flow_api_hw_db_inline.h | 394 ++ .../profile_inline/flow_api_profile_inline.c | 6086 +++++++++++++++++ .../profile_inline/flow_api_profile_inline.h | 132 + .../flow_api_profile_inline_config.h | 127 + .../ntnic/nthw/flow_filter/flow_nthw_flm.c | 47 +- .../net/ntnic/nthw/model/nthw_fpga_model.c | 12 + .../net/ntnic/nthw/model/nthw_fpga_model.h | 1 + drivers/net/ntnic/nthw/nthw_rac.c | 38 +- drivers/net/ntnic/nthw/nthw_rac.h | 2 +- .../net/ntnic/nthw/ntnic_meter/ntnic_meter.c | 483 ++ drivers/net/ntnic/nthw/rte_pmd_ntnic.h | 43 + drivers/net/ntnic/nthw/stat/nthw_stat.c | 498 ++ .../supported/nthw_fpga_9563_055_049_0000.c | 3317 ++++++--- .../ntnic/nthw/supported/nthw_fpga_mod_defs.h | 11 +- .../nthw/supported/nthw_fpga_mod_str_map.c | 2 + .../ntnic/nthw/supported/nthw_fpga_reg_defs.h | 5 + .../supported/nthw_fpga_reg_defs_mac_rx.h | 29 + .../supported/nthw_fpga_reg_defs_mac_tx.h | 21 + .../nthw/supported/nthw_fpga_reg_defs_rpf.h | 19 + .../nthw/supported/nthw_fpga_reg_defs_sta.h | 48 + .../nthw/supported/nthw_fpga_reg_defs_tsm.h | 205 + drivers/net/ntnic/ntnic_ethdev.c | 813 ++- drivers/net/ntnic/ntnic_filter/ntnic_filter.c | 1348 ++++ drivers/net/ntnic/ntnic_mod_reg.c | 111 + drivers/net/ntnic/ntnic_mod_reg.h | 331 + drivers/net/ntnic/ntnic_xstats/ntnic_xstats.c | 829 +++ drivers/net/ntnic/ntutil/nt_util.h | 12 + 79 files changed, 25772 insertions(+), 1109 deletions(-) create mode 100644 drivers/net/ntnic/adapter/nt4ga_stat/nt4ga_stat.c create mode 100644 drivers/net/ntnic/include/common_adapter_defs.h create mode 100644 drivers/net/ntnic/include/create_elements.h create mode 100644 drivers/net/ntnic/nthw/core/include/nthw_gmf.h create mode 100644 drivers/net/ntnic/nthw/core/include/nthw_rpf.h create mode 100644 drivers/net/ntnic/nthw/core/include/nthw_tsm.h create mode 100644 drivers/net/ntnic/nthw/core/nthw_gmf.c create mode 100644 drivers/net/ntnic/nthw/core/nthw_rpf.c create mode 100644 drivers/net/ntnic/nthw/core/nthw_tsm.c create mode 100644 drivers/net/ntnic/nthw/flow_api/flow_group.c create mode 100644 drivers/net/ntnic/nthw/flow_api/flow_hasher.c create mode 100644 drivers/net/ntnic/nthw/flow_api/flow_hasher.h create mode 100644 drivers/net/ntnic/nthw/flow_api/flow_id_table.c create mode 100644 drivers/net/ntnic/nthw/flow_api/flow_id_table.h create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flm_age_queue.c create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flm_age_queue.h create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flm_evt_queue.c create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flm_evt_queue.h create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flm_lrn_queue.c create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flm_lrn_queue.h create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_hw_db_inline.c create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_hw_db_inline.h create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_profile_inline.c create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_profile_inline.h create mode 100644 drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_profile_inline_config.h create mode 100644 drivers/net/ntnic/nthw/ntnic_meter/ntnic_meter.c create mode 100644 drivers/net/ntnic/nthw/rte_pmd_ntnic.h create mode 100644 drivers/net/ntnic/nthw/stat/nthw_stat.c create mode 100644 drivers/net/ntnic/nthw/supported/nthw_fpga_reg_defs_mac_rx.h create mode 100644 drivers/net/ntnic/nthw/supported/nthw_fpga_reg_defs_mac_tx.h create mode 100644 drivers/net/ntnic/nthw/supported/nthw_fpga_reg_defs_rpf.h create mode 100644 drivers/net/ntnic/nthw/supported/nthw_fpga_reg_defs_sta.h create mode 100644 drivers/net/ntnic/nthw/supported/nthw_fpga_reg_defs_tsm.h create mode 100644 drivers/net/ntnic/ntnic_filter/ntnic_filter.c create mode 100644 drivers/net/ntnic/ntnic_xstats/ntnic_xstats.c -- 2.45.0