From patchwork Tue Nov 8 00:39:42 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fenghua Yu X-Patchwork-Id: 16791 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp2394787wru; Mon, 7 Nov 2022 16:44:33 -0800 (PST) X-Google-Smtp-Source: AMsMyM7OST3/4quBZUES3e6pfYQ2vbtCLJAQmK/bYiULt3oq/stYihqWpU49eFmkmGbQfeT5H+LO X-Received: by 2002:a05:6402:1d4f:b0:461:d2ed:788c with SMTP id dz15-20020a0564021d4f00b00461d2ed788cmr53006755edb.418.1667868273200; Mon, 07 Nov 2022 16:44:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1667868273; cv=none; d=google.com; s=arc-20160816; b=M4sYnBKa97mtr/JXpOVB3/KX90KjVEXZVkfagn4T7jw/gR3mkILhjXzeXmWowbYBzq cg5zNipMphd7zHIqoHP0nooaFy5nNMjUQGKxUufuMxuTrcBqupt97CAkeV3HZrwMFB/6 xA+sUwqoFAeHDFWtkykql4wFvrAQbv+ufmGnXG3jY/HIArswkpu7cjP7euX9UdTbYX+Y 7bu+3pFfoUb6tpNesL19m2u4nMcic0RtTxnq6UrPGb7nRws2Y7Kc+CqL2uYzENkOXUIr V7wgpXX8x+UoYHLlzLrWClS1jo0poGb96X4muY+rsTxzf7gmY/L4Q4V0jRpAiIf5J6Ex 5zFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=mHT4XkL3gzFUWu0dtZ3CU/Kb62vlfZ+aa6Aszpmngww=; b=aqXE9+RPHhyZdYC08PPMhCZxQEPhQK2qMyBiz8zrRz8ApCgs8sNqyINFBdgBi35i2N Ypf2pMGR0H/igihzm2NyhzuTo6ZVagA6k6sGO7ZjT+P3ja9y3rAAWKYjdU6Sax7gGNxB u3UJfTGkENPgqJywY9oJQJwQ3s/WUheaXH9fGHkEsV85jtnN5IdthjRPzguKBC7Ai0kt X0zvH+45LIv6JSirmDG/YbhRhr28QgR0JmY7y7mFb3lstB35hiRHrgxD/qV+EcjyC8Yf yZPCRiG8IBh68Hh8VPvQSJsXSZxszKkNWgsKqFgvHBkVt2f2eV/NqYKGOGuX0SRxNsti KCqQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=iTZsEW51; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q24-20020aa7d458000000b004627741e339si9740872edr.113.2022.11.07.16.44.10; Mon, 07 Nov 2022 16:44:33 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=iTZsEW51; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233073AbiKHAjz (ORCPT + 99 others); Mon, 7 Nov 2022 19:39:55 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53708 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233019AbiKHAjw (ORCPT ); Mon, 7 Nov 2022 19:39:52 -0500 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CBC2413F6F; Mon, 7 Nov 2022 16:39:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1667867991; x=1699403991; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=p/aKgQPwXxZNULQAZONJmKS+Fb81oYGXbZJp0mJgn80=; b=iTZsEW51SlMoFbkLQjBuu/OIMmyZlT/VW77R1vyxp/sstt+uBfLfkxyt Io50VA/6VP0NlT1b00AIWzXs0Pd3wKY+O8LQnQ1A7/9Qxr6gj7Fcf7rX9 njxGXk5mN2eNN//AzShJzXexX4dX7ONPNwmQCXUV8OatImINvBx9/UrsT YaqG+AutiJq3eufFT9vOdQ0r3Wu7KJBc+p3CnGMzyh8QThLeKaj9NsUo4 zgPQ4OvqMoEs+4Wsh0wpKWy/jsUy53eQeJWnhWVISOBHL6bjoPotKU64O psoUuPWOf2NQhgjhYkp4LyO7DYgGfjmyB19u4Kw81SMhrUjnqWuafF+Mm g==; X-IronPort-AV: E=McAfee;i="6500,9779,10524"; a="374833334" X-IronPort-AV: E=Sophos;i="5.96,145,1665471600"; d="scan'208";a="374833334" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Nov 2022 16:39:50 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10524"; a="811041351" X-IronPort-AV: E=Sophos;i="5.96,145,1665471600"; d="scan'208";a="811041351" Received: from fyu1.sc.intel.com ([172.25.103.126]) by orsmga005.jf.intel.com with ESMTP; 07 Nov 2022 16:39:50 -0800 From: Fenghua Yu To: "Vinod Koul" , "Dave Jiang" Cc: dmaengine@vger.kernel.org, "linux-kernel" , Fenghua Yu Subject: [PATCH 1/3] dmaengine: idxd: Add descriptor definitions for 16 bytes of pattern in memory fill operation Date: Mon, 7 Nov 2022 16:39:42 -0800 Message-Id: <20221108003944.2095567-2-fenghua.yu@intel.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20221108003944.2095567-1-fenghua.yu@intel.com> References: <20221108003944.2095567-1-fenghua.yu@intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1748886642842836906?= X-GMAIL-MSGID: =?utf-8?q?1748886642842836906?= The memory fill operation (0x04) can fill in memory with either 8 bytes or 16 bytes of pattern. To fill in memory with 16 bytes of pattern, the first 8 bytes are provided in pattern lower in bytes 16-23 and the next 8 bytes are in pattern upper in bytes 40-47 in the descriptor. Currently only 8 bytes of pattern is enabled. Add descriptor definitions for pattern lower and pattern upper so that user can use 16 bytes of pattern to fill memory. Signed-off-by: Fenghua Yu Reviewed-by: Dave Jiang --- include/uapi/linux/idxd.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/uapi/linux/idxd.h b/include/uapi/linux/idxd.h index 095299c75828..04a2f6411820 100644 --- a/include/uapi/linux/idxd.h +++ b/include/uapi/linux/idxd.h @@ -179,6 +179,7 @@ struct dsa_hw_desc { uint64_t rdback_addr; uint64_t pattern; uint64_t desc_list_addr; + uint64_t pattern_lower; }; union { uint64_t dst_addr; @@ -243,6 +244,11 @@ struct dsa_hw_desc { uint16_t dest_app_tag_seed; }; + /* Fill */ + struct { + uint64_t pattern_upper; + }; + uint8_t op_specific[24]; }; } __attribute__((packed)); From patchwork Tue Nov 8 00:39:43 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fenghua Yu X-Patchwork-Id: 16793 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp2394833wru; Mon, 7 Nov 2022 16:44:39 -0800 (PST) X-Google-Smtp-Source: AMsMyM4jEJ89oSXQGPIWomLSlHqVrEZ/N+PiPMjItgGWFfDxtLqf5rayt1CWwa+BuOHagwYrRJt4 X-Received: by 2002:a17:906:6a03:b0:7ad:b51d:3a38 with SMTP id qw3-20020a1709066a0300b007adb51d3a38mr49405776ejc.202.1667868279174; Mon, 07 Nov 2022 16:44:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1667868279; cv=none; d=google.com; s=arc-20160816; b=e4EPP+aroT5ULtLdRdFQGWG/XjhW21gHWyICbl/oUo9tAbqcYHljW2WDP4GbqQjC7V tTKXiO68iFtDpDTskQ/ebnBDkOSPKVMEABtg4jPKhH5rkbTP9qhwGCY0vrcjIb3B2y/O O/J+Xr09veoCUOb+H3zhkZEcVL8eJCrOQQW2yFFbLKjEmydyOBKmTG1GVqWdXsmXpNoU SSKf85yKmsHYz9DmlU53cugDELiusMrJZleEzm1YMWknOcMPmgkWuQov93pSheU5Ui1s fB6wZJRkL6CyxIWiQL7o8GPu8qsOM9zBAOOh3BWEQSt1l5A/xx4a5DcctJG4fWgswRpU 8v+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=XhtebB78zB3updML6x7yQc0WYZDGQ+UH11EL5IblF10=; b=DjgNI3ypUMITppkwUpG5HPU7nwtt66OusmVo6+MIpS2McLyAqoq8RLp4XJ4AYXIQt1 lzQbRYA1rBqnAI1VpJ36pquZ3oEnUwnC7apixSTSnNM51LV3B6BPAkrRblZCjFyic4k3 Z4OFEY3U5YT+kjiO+ihgWb9zmltr2SQXBEPF+2dx/JMdcYMYm1GCGq2dOmPWPcFShCLU IAwC9U96a5NCwpvrFrc6SFNJ+KA8p184k3m+0MKZESN8lcnmpdbv6/q+zd0LABEyTjeY 1Tg9pErUTaof99Gd4lGWdXUchqnaKVlMoNSeu94OvCQH4vmsjI/+Neqatb04zWjv0Kru KugQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mGWrUtRz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id b12-20020a056402084c00b0046224241dc7si13241786edz.95.2022.11.07.16.44.16; Mon, 07 Nov 2022 16:44:39 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mGWrUtRz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232851AbiKHAkB (ORCPT + 99 others); Mon, 7 Nov 2022 19:40:01 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53718 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233029AbiKHAjx (ORCPT ); Mon, 7 Nov 2022 19:39:53 -0500 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7FB8913F69; Mon, 7 Nov 2022 16:39:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1667867992; x=1699403992; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Cm9CtBgkoGZKBtJj3uuA4OFX4WUziYGRZEOrJwPTybs=; b=mGWrUtRzzm/rFPi10c8mAwwKnf0pUpFetNeXcPTXS7ua+qrOzcW2+8f9 CcK8jtw18ow1XBqF30u9DKBUyQPJMsHd82aiWs7fUdzWEzBtqvCa5u3e7 /o7ngxVjKyhrNs+vbkHw8KsJA7SUzzDvF87TcB4+WR8YsZJqLWRxE5W+L zUhEyO3IwNpAEvGlM7YUdqdXBxzluK6+zy0T3UMo4ckLGRAPzgRFz8i22 /6HkqDoN2NYDeS0qwei/U5fuFmSwmEpba/YZCX90SUsUNPRpmEmnfRWiY OChtyY+2w2K1yJ0W49YO2xJHYKfV0RJMoDcktTIQNgoPPnBA0qcKVCYQq g==; X-IronPort-AV: E=McAfee;i="6500,9779,10524"; a="374833336" X-IronPort-AV: E=Sophos;i="5.96,145,1665471600"; d="scan'208";a="374833336" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Nov 2022 16:39:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10524"; a="811041354" X-IronPort-AV: E=Sophos;i="5.96,145,1665471600"; d="scan'208";a="811041354" Received: from fyu1.sc.intel.com ([172.25.103.126]) by orsmga005.jf.intel.com with ESMTP; 07 Nov 2022 16:39:50 -0800 From: Fenghua Yu To: "Vinod Koul" , "Dave Jiang" Cc: dmaengine@vger.kernel.org, "linux-kernel" , Fenghua Yu Subject: [PATCH 2/3] dmaengine: idxd: Add descriptor definitions for DIX generate operation Date: Mon, 7 Nov 2022 16:39:43 -0800 Message-Id: <20221108003944.2095567-3-fenghua.yu@intel.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20221108003944.2095567-1-fenghua.yu@intel.com> References: <20221108003944.2095567-1-fenghua.yu@intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1748886648473911672?= X-GMAIL-MSGID: =?utf-8?q?1748886648473911672?= The Data Integrity Extension (DIX) generate operation (0x17) computes the Data Integrity Field (DIF) on the source data and writes only the computed DIF for each source block to the PI destination address. Add descriptor definitions for this operation so that user can use DSA to accelerate DIX generate operation. Signed-off-by: Fenghua Yu Reviewed-by: Dave Jiang --- include/uapi/linux/idxd.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/include/uapi/linux/idxd.h b/include/uapi/linux/idxd.h index 04a2f6411820..34294d99c1cb 100644 --- a/include/uapi/linux/idxd.h +++ b/include/uapi/linux/idxd.h @@ -77,6 +77,7 @@ enum dsa_opcode { DSA_OPCODE_DIF_INS, DSA_OPCODE_DIF_STRP, DSA_OPCODE_DIF_UPDT, + DSA_OPCODE_DIX_GEN = 0x17, DSA_OPCODE_CFLUSH = 0x20, }; @@ -249,6 +250,17 @@ struct dsa_hw_desc { uint64_t pattern_upper; }; + /* DIX generate */ + struct { + uint8_t dix_gen_res; + uint8_t dest_dif_flags; + uint8_t dif_flags; + uint8_t dix_gen_res2[13]; + uint32_t ref_tag_seed; + uint16_t app_tag_mask; + uint16_t app_tag_seed; + }; + uint8_t op_specific[24]; }; } __attribute__((packed)); @@ -327,6 +339,14 @@ struct dsa_completion_record { uint16_t dif_upd_dest_app_tag; }; + /* DIX generate */ + struct { + uint64_t dix_gen_res; + uint32_t dix_ref_tag; + uint16_t dix_app_tag_mask; + uint16_t dix_app_tag; + }; + uint8_t op_specific[16]; }; } __attribute__((packed)); From patchwork Tue Nov 8 00:39:44 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fenghua Yu X-Patchwork-Id: 16792 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp2394811wru; Mon, 7 Nov 2022 16:44:35 -0800 (PST) X-Google-Smtp-Source: AMsMyM4vECa4GudEHkCOwqf3WQ2E9QZ0GtiANHyKbHM3aOm1B4KHO7XNJRyzrCH0FtbPgyc52g5t X-Received: by 2002:a17:907:31c4:b0:78d:9b2f:4e1a with SMTP id xf4-20020a17090731c400b0078d9b2f4e1amr49818390ejb.306.1667868275802; Mon, 07 Nov 2022 16:44:35 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1667868275; cv=none; d=google.com; s=arc-20160816; b=MUh88Hy6fxnKgt0m6L8xluLg0PHxnH6E+I/NsZS9bo5riFlXqMTqAYtqz5YOHuTtZ/ ALTAh+Zc0Zdfc1UTQd32tpyDX8WNw9LqEN7DPv+VgXowRLMFyv/p08F2ANDKPI09IwHN 3WuXMO6jRqHlnfLeaCz8JrpyDDzFbAAvT5mtVR+UOONG+NeMydwiOJ1L6f69euGsmDe5 Kt52wC9M6gfkiKjk0iLCrS/WmRPE7u1m4tIWw6m5O9jwajY7EPwnx8iW0rgLdqmp4FkD jZEXngngTXLAsw8DUr114oEk78MOzmETzvYiQ4idLk349ALmUuOln6D1qU+/dgEL9z+F p0SA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=aFvGka0PKdo3oJZsxZ7wkmR1DYf8Rb2RR3flkJ5GJgQ=; b=JejxyIVh/XxZ9Fb91H7in5D5xOno71CpSkcJtT2VmU9QlW7cXpq0lBKpx0xtsoTAsC aEEtPFcZrx+ex1S8KeTkF42pibLYp+d+5CFi/xaj5toqXk0iGtCBjXqg3ETTa/O7Mr1u iub+jrA11ij8H6/sww4XQp4QxNMiS8z18iFTNJ0zPs8/fQQOn1hLhXjagcJ2ULtUbbXw I4IZqtCzqF7UwbymO7kFVzXxA6WEU39z1AD6dqobIb6EUtt3ay++S+7LmrtsrmE93MSN JXJ4W0NV9XdXRAUJzMPn8qCDWVio6lt6cfgNbrnDwGIY7ulfS+OtY4Frt+NL/P9h67A7 8PZg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=RX8Il+PB; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id hc31-20020a170907169f00b00783698dd8b4si13380723ejc.722.2022.11.07.16.44.12; Mon, 07 Nov 2022 16:44:35 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=RX8Il+PB; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233098AbiKHAj6 (ORCPT + 99 others); Mon, 7 Nov 2022 19:39:58 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53720 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233035AbiKHAjx (ORCPT ); Mon, 7 Nov 2022 19:39:53 -0500 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AB56713F9B; Mon, 7 Nov 2022 16:39:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1667867992; x=1699403992; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=t1uyAqwWGXeZJUcrnlaYpAGlOx/Hw9U2FxLGaHAypWw=; b=RX8Il+PBao4YtLS6+/FKZvboYM74UGCa0P1lWu5zOeLzNMsSTaGeC+ty 747vajoqW9iLe0vvgPd1jJ4Lopa0P3LKJO0W94oM6kEs5MYVczsIkG/Kc qhIJV5DRE8uRCH4Gyx3ryJ2qdXTkxAzDOn045VS8TH3Y5r5Cp37sIywXm nGn7EGccNVSKkaBsEUo8/Mz77AMdDE9+K5amQ1ZlphtVCtHUz1ztgoNiV zDgBvgBjB6aSmiqIDYQxF4mekjp2JXS1VHEJhtqYnujQNQ2cbf/bLsyZG Q+GhaopjKIJNzr/LXyunLYt6vtthTPTgsdzKHdFQ/yYmYKaqQSnIetiLc w==; X-IronPort-AV: E=McAfee;i="6500,9779,10524"; a="374833337" X-IronPort-AV: E=Sophos;i="5.96,145,1665471600"; d="scan'208";a="374833337" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Nov 2022 16:39:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10524"; a="811041357" X-IronPort-AV: E=Sophos;i="5.96,145,1665471600"; d="scan'208";a="811041357" Received: from fyu1.sc.intel.com ([172.25.103.126]) by orsmga005.jf.intel.com with ESMTP; 07 Nov 2022 16:39:50 -0800 From: Fenghua Yu To: "Vinod Koul" , "Dave Jiang" Cc: dmaengine@vger.kernel.org, "linux-kernel" , Fenghua Yu Subject: [PATCH 3/3] dmaengine: idxd: Add descriptor definitions for translation fetch operation Date: Mon, 7 Nov 2022 16:39:44 -0800 Message-Id: <20221108003944.2095567-4-fenghua.yu@intel.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20221108003944.2095567-1-fenghua.yu@intel.com> References: <20221108003944.2095567-1-fenghua.yu@intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1748886645520287128?= X-GMAIL-MSGID: =?utf-8?q?1748886645520287128?= The translation fetch operation (0x0A) fetches address translations for the address range specified in the decriptor by issuing address translation (ATS) requests to the IOMMU. Add descriptor definitions for the operation so that user can use DSA to accelerate translation fetch. Signed-off-by: Fenghua Yu Reviewed-by: Dave Jiang --- include/uapi/linux/idxd.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/include/uapi/linux/idxd.h b/include/uapi/linux/idxd.h index 34294d99c1cb..9de48c561452 100644 --- a/include/uapi/linux/idxd.h +++ b/include/uapi/linux/idxd.h @@ -71,6 +71,7 @@ enum dsa_opcode { DSA_OPCODE_CR_DELTA, DSA_OPCODE_AP_DELTA, DSA_OPCODE_DUALCAST, + DSA_OPCODE_TRANSL_FETCH, DSA_OPCODE_CRCGEN = 0x10, DSA_OPCODE_COPY_CRC, DSA_OPCODE_DIF_CHECK, @@ -181,6 +182,7 @@ struct dsa_hw_desc { uint64_t pattern; uint64_t desc_list_addr; uint64_t pattern_lower; + uint64_t transl_fetch_addr; }; union { uint64_t dst_addr; @@ -191,6 +193,7 @@ struct dsa_hw_desc { union { uint32_t xfer_size; uint32_t desc_count; + uint32_t region_size; }; uint16_t int_handle; uint16_t rsvd1; @@ -250,6 +253,12 @@ struct dsa_hw_desc { uint64_t pattern_upper; }; + /* Translation fetch */ + struct { + uint64_t transl_fetch_res; + uint32_t region_stride; + }; + /* DIX generate */ struct { uint8_t dix_gen_res;