From patchwork Fri Apr 19 06:43:12 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anoob Joseph X-Patchwork-Id: 877 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 72B0743EAC; Fri, 19 Apr 2024 08:43:26 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5D90C400D6; Fri, 19 Apr 2024 08:43:26 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id 7898C40042 for ; Fri, 19 Apr 2024 08:43:25 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.17.1.24/8.17.1.24) with ESMTP id 43ILYnJd010605; Thu, 18 Apr 2024 23:43:24 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s= pfpt0220; bh=NOwzhajjClm1SB+3UDSvPDJk+GiIf94RgIZfhW1dn1w=; b=O/S jpBA8l7nhpMb6aRF5LR3scWBGYw9HO9v8fagxQtB5N1K35eTuiGxLciGgkO5xBmQ 8Y7P+dTLzDzKWtKzZvzGcA+v48019eC/dPWDh2X2uTLeYR+0nfUtmXuybA2u7khJ bbGyIYzGAfhxvszOIKXiFdcI8n+uXxhxuo3OV096tWHxLDUMlzMNtILScH3HekGf 1OWpMgYjGrCSE7uqbShz9Kjqj+AlTo9ZUkTa0oTVIXP9qHq02ukG55YmiABp6673 DsWezn3V9mM2MfnoQu5WRIZmWDuD6Ur5vtEjZoKacH/QLw8U4MnsUcmhiy323gKv LtqWyjn9YgWes1bd8YA== Received: from dc6wp-exch02.marvell.com ([4.21.29.225]) by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 3xjhecq8sk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 18 Apr 2024 23:43:24 -0700 (PDT) Received: from DC6WP-EXCH02.marvell.com (10.76.176.209) by DC6WP-EXCH02.marvell.com (10.76.176.209) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Thu, 18 Apr 2024 23:43:23 -0700 Received: from maili.marvell.com (10.69.176.80) by DC6WP-EXCH02.marvell.com (10.76.176.209) with Microsoft SMTP Server id 15.2.1544.4 via Frontend Transport; Thu, 18 Apr 2024 23:43:23 -0700 Received: from BG-LT92004.corp.innovium.com (BG-LT92004.marvell.com [10.28.163.189]) by maili.marvell.com (Postfix) with ESMTP id B33D55B6933; Thu, 18 Apr 2024 23:43:20 -0700 (PDT) From: Anoob Joseph To: Chengwen Feng , Kevin Laatz , Bruce Richardson , "Jerin Jacob" , Thomas Monjalon CC: Gowrishankar Muthukrishnan , "Vidya Sagar Velumuri" , Subject: [PATCH v3 0/7] Add ODM DMA device Date: Fri, 19 Apr 2024 12:13:12 +0530 Message-ID: <20240419064319.149-1-anoobj@marvell.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20240417072708.322-1-anoobj@marvell.com> References: <20240417072708.322-1-anoobj@marvell.com> MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: Vu_e_YYiNQpFpkf79ezvL58FB2VsgSRj X-Proofpoint-GUID: Vu_e_YYiNQpFpkf79ezvL58FB2VsgSRj X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-04-19_04,2024-04-17_01,2023-05-22_02 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 Add Odyssey ODM DMA device. This PMD abstracts ODM hardware unit on Odyssey SoC which can perform mem to mem copies. The hardware unit can support upto 32 queues (vchan) and 16 VFs. It supports 'fill' operation with specific values. It also supports SG mode of operation with upto 4 src pointers and 4 destination pointers. The PMD is tested with both unit tests and performance applications. Changes in v3 - Addressed build failure with stdatomic stage in CI Changes in v2 - Addressed build failure in CI - Moved update to usertools as separate patch Anoob Joseph (2): dma/odm: add framework for ODM DMA device dma/odm: add hardware defines Gowrishankar Muthukrishnan (3): dma/odm: add dev init and fini dma/odm: add device ops dma/odm: add stats Vidya Sagar Velumuri (2): dma/odm: add copy and copy sg ops dma/odm: add remaining ops MAINTAINERS | 7 + doc/guides/dmadevs/index.rst | 1 + doc/guides/dmadevs/odm.rst | 92 +++++ drivers/dma/meson.build | 1 + drivers/dma/odm/meson.build | 14 + drivers/dma/odm/odm.c | 237 ++++++++++++ drivers/dma/odm/odm.h | 217 +++++++++++ drivers/dma/odm/odm_dmadev.c | 717 +++++++++++++++++++++++++++++++++++ drivers/dma/odm/odm_priv.h | 49 +++ 9 files changed, 1335 insertions(+) create mode 100644 doc/guides/dmadevs/odm.rst create mode 100644 drivers/dma/odm/meson.build create mode 100644 drivers/dma/odm/odm.c create mode 100644 drivers/dma/odm/odm.h create mode 100644 drivers/dma/odm/odm_dmadev.c create mode 100644 drivers/dma/odm/odm_priv.h