From patchwork Sat May 25 14:07:50 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhangfei Gao X-Patchwork-Id: 798940 Delivered-To: patch@linaro.org Received: by 2002:a5d:6a47:0:b0:354:fb4b:99cd with SMTP id t7csp1156801wrw; Sat, 25 May 2024 07:08:06 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUuwELxriGEiyNQlXl6YtX+QLRpzT7NQBHJcczYeOL4qcYSpFoZcUZfzxQdN8d+4mQC+1s6uA2pIa0oRoCxhtwx X-Google-Smtp-Source: AGHT+IHgJbPCE0KCkP9EiM2DkL+ugFLLe3YQ1kt3g2/RCQEUMH48ZVrUrrorV/Avxn3Sc5KHGPk+ X-Received: by 2002:a2e:9591:0:b0:2e9:4b33:dd04 with SMTP id 38308e7fff4ca-2e95b0bce53mr30544921fa.1.1716646086354; Sat, 25 May 2024 07:08:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1716646086; cv=none; d=google.com; s=arc-20160816; b=haZ2CLtpjNl9+21pn7EpFHjV48elsNc1VPaF8gTjpQCMOirBQzY424hyupeezq4vd5 IMcykqMJ2f8gOTChGwroL1o9/ixROlT8ChyK37Rbh/DIq+f9Uj1Gmjx/Blkkb4ucsJCR a3FqK1FPngFtSAJGK4M6/qyZn2J0Urcez0AuT4MH5y1Xd1BJxciZZtOEXzqFQ7ByO1Wk Zg2cCqeskKAGKXTx7tP239AlE1RBIu+rKRzotVukoBD0Rz3IrmUpGvV2kZz+dphsddrR ETrz8GsZRwNYTfQHvpwSb68sq52yDiosON7C9Mi78D1j1JPAmsjsaEdtqWneoKQ/hnaE uTvA== 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=WwotNtvPbpxRmMZ2auYCnM+pOaNeOLgHFqsxlf2lsMA=; fh=N6ystvY2g7QTpz2QKkAMt/Nu9xETjtRlVAZxgmiIO6M=; b=DyeEcbNt26+K1LykQC25u9QLy9FwZm5q7+119z/BpAZq8stECR/mhSOGnXU+hD5lxb jPe4GVjZYjDK9shD2RdK5aV1NoDzFo7B03VQTHjT9FvC511Jty9on7gnM/tX25p0Fpmo eWhL6stwccNngOaiJp0OPt3d0Jm/iarusklSffkLeTj8dY/fMDrFDWIU3OnGm8w58Cgp wK08OlKYUBHxaovC5EuaKyEBRRdq6GLqDecekF2ZKCLC13ssqyFGLY72zoTiB9kuW2GK qgKFKmLIB9xgaECJDvB3L70ky1/9Dg1vQYtIzs3Xrap3IDRKvs0OVc7gHiX7Z9uHW33V 4Tcg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=d4tlSxei; 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 38308e7fff4ca-2e95bdb25afsi11503981fa.234.2024.05.25.07.08.06; Sat, 25 May 2024 07:08:06 -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=d4tlSxei; 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 58C0E402BF; Sat, 25 May 2024 16:08:05 +0200 (CEST) Received: from mail-lj1-f171.google.com (mail-lj1-f171.google.com [209.85.208.171]) by mails.dpdk.org (Postfix) with ESMTP id 4429A4027E for ; Sat, 25 May 2024 16:08:04 +0200 (CEST) Received: by mail-lj1-f171.google.com with SMTP id 38308e7fff4ca-2e964acff1aso9054981fa.0 for ; Sat, 25 May 2024 07:08:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1716646083; x=1717250883; 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=WwotNtvPbpxRmMZ2auYCnM+pOaNeOLgHFqsxlf2lsMA=; b=d4tlSxeiNYa8spSzkQw9kEOHVr2lM50ADovpQwScZ+d8bAsJf1uGWuQg0NE5AW0lpa snMqASX8XAdK1BgMjEFQ71u8wEYlllwu9d1DbPd6vZLkHL2pEjUqcKljFCuzbFybIwNR AcEmQlMGoVbZtB76HmIa9OREuTUppu8r207PXvzzooV/0heCwu5Iq/LJBqUmO2yI6o1K Br4Jbw1xb5gGVm/urERmbsRs8JpTgVDLwydhHxAj05x+qHGTVWGdkMP96mmUEfsdunVt 7TsfM5Xjb5boCpSYcQBcUHFJO1GtcqPRZb74JnCX2m00SLDze6Rbnrhiw3yQhhCIcOaH mRzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716646083; x=1717250883; 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=WwotNtvPbpxRmMZ2auYCnM+pOaNeOLgHFqsxlf2lsMA=; b=Ho8rUO2y0iU8vscXnCC1ad4F+3+QtQGtLy6/7qtn0Wf4JXaTuNZLbfFrIw4t0h/0ui eneo3apCFKYmNjfahgDci2nd0G5q04ky78f7kDFYdWQhZgbVtgo0/y3vDFpPxUhbKDOk vXPt5+iaq3MCDzgZRnL5UG9x2e0qSJN1F/MRSDxwtiuzae9Um3MP2H0djwFAiE69nYfx pMJA4547CTUvpTQSSX3c8BBkmxVoxPjxjPxLowK5MzHWgX3IlsFi3tbyPU8sJ+vQqLBS 2+3rAAfPDuyyv+MYVg1p38Czc5IaxJjjf82kTAeevhLMaq+sKJGQ/64Ow8suQAEgRUQX ipnw== X-Gm-Message-State: AOJu0YxLUHdD8PbVLM4pPYhH9E/oAwZZVNP2KPb4ztOsk4gZGzsVKx/v zHapatmEYcB/sWBLzDVUv+KpCbOZXL5XQOnBYi7O1vjiuzgB1RpSC++/k1jHeqM= X-Received: by 2002:a05:651c:1508:b0:2e9:6ea5:6da5 with SMTP id 38308e7fff4ca-2e96ea57304mr457271fa.43.1716646083546; Sat, 25 May 2024 07:08:03 -0700 (PDT) Received: from localhost.localdomain (ec2-54-151-66-232.us-west-1.compute.amazonaws.com. [54.151.66.232]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-42100f134cesm81969625e9.18.2024.05.25.07.08.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 May 2024 07:08:03 -0700 (PDT) From: Zhangfei Gao To: Akhil Goyal , Fan Zhang , Ashish Gupta Cc: dev@dpdk.org, Zhangfei Gao Subject: [PATCH v2 0/3] Introduce UADK compression driver Date: Sat, 25 May 2024 14:07:50 +0000 Message-Id: <20240525140753.122-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 v2: remove mempool and simply use rte_malloc, suggested by Akhil move doc to patch 3 from patch 1 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/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 | 436 ++++++++++++++++++ .../compress/uadk/uadk_compress_pmd_private.h | 36 ++ 8 files changed, 613 insertions(+) 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