From patchwork Mon Apr 22 14:30:59 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhangfei Gao X-Patchwork-Id: 790962 Delivered-To: patch@linaro.org Received: by 2002:adf:e6ca:0:b0:346:15ad:a2a with SMTP id y10csp2390790wrm; Mon, 22 Apr 2024 07:31:19 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVXDm5lCpgV78BBMCbbdCOCZUKjfA/52E5VfvhEO0z7+wnp8iTDPu8A9KeeUoK2dR5hLvpIQJSKIdcgDhEfzKgq X-Google-Smtp-Source: AGHT+IF3V4Wl2NEK/7z1I7u9MDGU9CuzRYBPwV/EvFpyo9z/zI3GTkdt0iL2GJ6kvCl6WcSD51OW X-Received: by 2002:a5d:604d:0:b0:349:8a92:7eda with SMTP id j13-20020a5d604d000000b003498a927edamr6394516wrt.12.1713796279083; Mon, 22 Apr 2024 07:31:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1713796279; cv=none; d=google.com; s=arc-20160816; b=W/mUlQdYtPzJ3f7cxdvDrlhkzyeFmErt2qvaiMOFCDnFLplZQwtzedY4RtCijqDH2G 8aWnTAv75e1T5N6ypi2WoZnrfmofYCdpM/pLs6B29EF7tes7J3bD9bxltzk1ngCpQOMr RgsU0rBJR+zHz74lhyfiBYEI/Wuuq+rTno5AEUVFE164GNAmT0OLMpPsEnUaaxYhHS9Q Rqh2aueeUvWFX6eVypWNSY4FvT1Sf+sW1sbD/iHHirq3+buP/kCIiu2uvpnC8CJhbfWn zU/x3JNt16axMoJO4759KH7pitjtwoI9IH9QLo+nFLFDt2LFwG8ug7oUT3SZm5Tr+n5B ggrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:message-id:date:subject:cc:to:from:dkim-signature; bh=thSol2K5PmtgeMAf6STw6YQT39CLP0pUPdvB+l8boUE=; fh=N6ystvY2g7QTpz2QKkAMt/Nu9xETjtRlVAZxgmiIO6M=; b=nHIjgs5hNn6Ue+6ozHUtCjL95hg2MekvxFkhypNfiWodRPBSiMyxkadHjaXzREY1TE d8y91fKA1iAI2FWx6Lf28YjCcCTVxe1Wwqh9hl5AMCG+hsGvfm59U4rh21Kk1+6MztTa wpgjAo0W1BUTCXpDivxo+4+iRVDgSk+gCcy+RDEaZsfAD4ElwoZMQjja6nDjIM9lMjNL EDIIvOgQ1zEwN4Ecwfh9saTLccnaTQCed18GoHj7kgvYZ/3TjNFlBEJbpK6stmEfBk1j gQWstjXOOR4zu5KGA87slXWve5VXfy5zmOqdE+Pao4QdvwmL3ER5LBle2SwjenCOVdHP GTug==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=FbbxkIFm; spf=pass (google.com: domain of dev-bounces@dpdk.org designates 217.70.189.124 as permitted sender) smtp.mailfrom=dev-bounces@dpdk.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from mails.dpdk.org (mails.dpdk.org. [217.70.189.124]) by mx.google.com with ESMTP id a4-20020a5d4d44000000b0034b0a437644si1138008wru.642.2024.04.22.07.31.18; Mon, 22 Apr 2024 07:31:19 -0700 (PDT) Received-SPF: pass (google.com: domain of dev-bounces@dpdk.org designates 217.70.189.124 as permitted sender) client-ip=217.70.189.124; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=FbbxkIFm; spf=pass (google.com: domain of dev-bounces@dpdk.org designates 217.70.189.124 as permitted sender) smtp.mailfrom=dev-bounces@dpdk.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B85FC40265; Mon, 22 Apr 2024 16:31:18 +0200 (CEST) Received: from mail-pj1-f46.google.com (mail-pj1-f46.google.com [209.85.216.46]) by mails.dpdk.org (Postfix) with ESMTP id 5C96C4021F for ; Mon, 22 Apr 2024 16:31:17 +0200 (CEST) Received: by mail-pj1-f46.google.com with SMTP id 98e67ed59e1d1-2a68a2b3747so2880131a91.3 for ; Mon, 22 Apr 2024 07:31:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1713796276; x=1714401076; darn=dpdk.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=thSol2K5PmtgeMAf6STw6YQT39CLP0pUPdvB+l8boUE=; b=FbbxkIFmU10nXhMIJBW7SXtae/ZvQcyK0RIVFF6PHt5J0PDjNLZK9GFOD6qvilPP6A PG6ZZA2Qgd05/vvt37Svx8yuMiR4PfZful2lXYpjezJFz298okNAPcE0kRbkApCdvjYA LWWvjiaXfWB4KvVwIDbbXZa/jnE1T9SLdz7dDEr7w+7VA6a8YFsxEfhMQF/3TYkJKRtQ QXNKAmBkC+X3/BNtiXm/6bhvKqODwNJ41T8CJW30FhFgY9wufRASpnfpfsP+0/mAAqfS boOSVU6EaaI4rCIJIssqMg6wQ2M0hv0d4afs7Fc6z2ARFEB4+e06nXaYvRt9gjYyaNj6 Oq8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713796276; x=1714401076; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=thSol2K5PmtgeMAf6STw6YQT39CLP0pUPdvB+l8boUE=; b=pBM0kkX4+xvZiuGK3Vjg92gVC04obJHsa4AFGI5kVJ1gv01kvTIV7oAL7vljqu8YAJ vsLLqWOcJeTc+wyFWvwoxHOdIkXss6TDjnR9CzLl7g+tQFHikYUmhi5Ftd6GxIuTdyEg aC4AIf7/I8C/hmdWh4N8eRZINnVv6HI0V6jLDnlpd3NuAQhUq3a7cBdRGOJkdnf5P3Qb GPPbq02yVx0YHAEn7VxLEa3kjiuhqeXZfcDFoh+3swyi3zqWdtfagMosI1CaZ1bwMkN5 oKbSLwWTPS3ITpk6s7dFJvrJ5TQNRjyyUpSnu8o/nkzYl2tTJCpHoIeA3Qq/nYRZcB3f 4tkg== X-Gm-Message-State: AOJu0Yx9sq/r+JfRwcw3KtpVdTFdbR6pIfytz5bYRynD5BX1/K+nK6KF /pnS8og3pmPLZwGLSqn9GJyzLneEatN47clRIRWlv0YKZ5vNu2V0SJ0D15rMvayZztykM0LXyxL 13bTYHg== X-Received: by 2002:a17:90b:3903:b0:2ad:f88d:9fd6 with SMTP id ob3-20020a17090b390300b002adf88d9fd6mr2235542pjb.8.1713796276456; Mon, 22 Apr 2024 07:31:16 -0700 (PDT) Received: from localhost.localdomain ([121.37.54.139]) by smtp.gmail.com with ESMTPSA id v17-20020a17090ad59100b0029c19285192sm9481284pju.44.2024.04.22.07.31.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 22 Apr 2024 07:31:16 -0700 (PDT) From: Zhangfei Gao To: Akhil Goyal , Fan Zhang , Ashish Gupta Cc: dev@dpdk.org, Zhangfei Gao Subject: [PATCH 0/3] Introduce UADK compression driver Date: Mon, 22 Apr 2024 14:30:59 +0000 Message-Id: <20240422143102.251-1-zhangfei.gao@linaro.org> X-Mailer: git-send-email 2.33.0 MIME-Version: 1.0 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 Introduce a new compress PMD for hardware accelerators based on UADK [1]. UADK is a framework for user applications to access hardware accelerators. UADK relies on IOMMU SVA (Shared Virtual Address) feature, which share the same page table between IOMMU and MMU. Thereby user application can directly use virtual address for device dma, which enhances the performance as well as easy usability. Besides, crypto PMD is under drivers/crypto/uadk/ [1] https://github.com/Linaro/uadk Test: sudo dpdk-test --vdev=compress_uadk RTE>>compressdev_autotest RTE>>quit dd if=/dev/random of=data bs=1M count=1; sudo dpdk-test-compress-perf -l 1,2 --vdev compress_uadk \ -- --driver-name compress_uadk --input-file data Zhangfei Gao (3): compress/uadk: Introduce UADK compression driver compress/uadk: support basic operations compress/uadk: support burst enqueue/dequeue MAINTAINERS | 6 + doc/guides/compressdevs/features/uadk.ini | 11 + doc/guides/compressdevs/index.rst | 1 + doc/guides/compressdevs/uadk.rst | 98 ++++ doc/guides/rel_notes/release_24_07.rst | 5 + drivers/compress/meson.build | 1 + drivers/compress/uadk/meson.build | 30 ++ drivers/compress/uadk/uadk_compress_pmd.c | 476 ++++++++++++++++++ .../compress/uadk/uadk_compress_pmd_private.h | 36 ++ 9 files changed, 664 insertions(+) create mode 100644 doc/guides/compressdevs/features/uadk.ini create mode 100644 doc/guides/compressdevs/uadk.rst create mode 100644 drivers/compress/uadk/meson.build create mode 100644 drivers/compress/uadk/uadk_compress_pmd.c create mode 100644 drivers/compress/uadk/uadk_compress_pmd_private.h