get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/133590/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 133590,
    "url": "http://patchwork.dpdk.org/api/patches/133590/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20231029163202.216450-17-getelson@nvidia.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20231029163202.216450-17-getelson@nvidia.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20231029163202.216450-17-getelson@nvidia.com",
    "date": "2023-10-29T16:31:49",
    "name": "[17/30] net/mlx5/hws: support ASO IPsec action",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "e5f8f0aef94eaaa4bc6dfbfdaa198c965d22d159",
    "submitter": {
        "id": 1882,
        "url": "http://patchwork.dpdk.org/api/people/1882/?format=api",
        "name": "Gregory Etelson",
        "email": "getelson@nvidia.com"
    },
    "delegate": {
        "id": 3268,
        "url": "http://patchwork.dpdk.org/api/users/3268/?format=api",
        "username": "rasland",
        "first_name": "Raslan",
        "last_name": "Darawsheh",
        "email": "rasland@nvidia.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20231029163202.216450-17-getelson@nvidia.com/mbox/",
    "series": [
        {
            "id": 30049,
            "url": "http://patchwork.dpdk.org/api/series/30049/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=30049",
            "date": "2023-10-29T16:31:33",
            "name": "[01/30] net/mlx5/hws: Definer, add mlx5dr context to definer_conv_data",
            "version": 1,
            "mbox": "http://patchwork.dpdk.org/series/30049/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/133590/comments/",
    "check": "success",
    "checks": "http://patchwork.dpdk.org/api/patches/133590/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "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])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 311B243238;\n\tSun, 29 Oct 2023 17:34:58 +0100 (CET)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id CBB0642D2B;\n\tSun, 29 Oct 2023 17:33:28 +0100 (CET)",
            "from NAM04-BN8-obe.outbound.protection.outlook.com\n (mail-bn8nam04on2066.outbound.protection.outlook.com [40.107.100.66])\n by mails.dpdk.org (Postfix) with ESMTP id D7D0240E54\n for <dev@dpdk.org>; Sun, 29 Oct 2023 17:33:26 +0100 (CET)",
            "from BYAPR02CA0069.namprd02.prod.outlook.com (2603:10b6:a03:54::46)\n by DS0PR12MB6629.namprd12.prod.outlook.com (2603:10b6:8:d3::15) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.24; Sun, 29 Oct\n 2023 16:33:23 +0000",
            "from CO1PEPF000044F4.namprd05.prod.outlook.com\n (2603:10b6:a03:54:cafe::7d) by BYAPR02CA0069.outlook.office365.com\n (2603:10b6:a03:54::46) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.26 via Frontend\n Transport; Sun, 29 Oct 2023 16:33:22 +0000",
            "from mail.nvidia.com (216.228.117.160) by\n CO1PEPF000044F4.mail.protection.outlook.com (10.167.241.74) with Microsoft\n SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.6933.22 via Frontend Transport; Sun, 29 Oct 2023 16:33:22 +0000",
            "from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com\n (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Sun, 29 Oct\n 2023 09:33:11 -0700",
            "from nvidia.com (10.126.231.35) by rnnvmail201.nvidia.com\n (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Sun, 29 Oct\n 2023 09:33:08 -0700"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=GnNb5Yl9kzJHUdBUyKrNWmvVUFL7/qu1wlei/fHOXHT6RqMPpamqlWnp0Q633kgIVFUijPEU400ESRqaXmvPMZ8c34CbTDZs9kcbPTV7OO8LQyiwspZUkCNR4D5E6RhsGMzB6pRkvK0OjeBUsHPUi5VPoSStmiCRSKzpUV6LzWrceVLkBrQpLLUvqtFUZck/XGkTsJtE3fIahKB5/FcqPNNTYwXtSMOVkr14iF9YyF+CDcMkeuMI5YjfyjkGLtwFxer3N8Jk/GpMd/6VkLB3Uoo67oh0bU0OfoJhrYWC+IpGubJScsQPBmxput+VoiCNucWyXtpYmL/Fb5Ae0aAjtA==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n 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;\n bh=gmZiSWiQdqjmljkECe/f5+0HEBA3T8CwsdsNSc7scTc=;\n b=VAw6G6NlL5xDzGs/voH6YTXqQs2C0TRJHP+hkmGRq9l+N6I4i9eDpLZZVaf9KVaAs84R5n2XJoJ1S4iOthMpJSjvtxNoKJ/Dz4fpnoU8Eow9PPavXGD/KZhB1zUfqwu3CZQ+zqpdJKzMXVLUMxXra2FD/7bYzbgJgVeQX/+Nq1XK5q70qahLP0ZmMWzsr9wvihc7GAzHROLn5s2hgdxkhHLgr0wKd/ZaR3QA4RDNA+L+LQ5bGsdARtLumaOsHMa1SO8xKQI+FegSyUGFqF57qjOhcLutupnFUhbgoNlFWyITPHbsv3CQgN0RE+KJdmIS5CiuHH9I/ObUXGGP4FQAYQ==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 216.228.117.160) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com;\n dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com;\n dkim=none (message not signed); arc=none (0)",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=gmZiSWiQdqjmljkECe/f5+0HEBA3T8CwsdsNSc7scTc=;\n b=SaBSro2CT+1Y4DYs02lnxaC2Xx0WT27RYUOQfsMFO09lxWAVSLzejHTOpjcxzJ/7ai5JW3p6wYz9AsTKh3u+ZfdjLrO+9VRylPbunvWrcZvpiFgXtpddMgjwpQpE6ZSNLToZpmUga6ZORdruglDGgtH4HuIdSXxK/sAjnEC5uVcNTJ2yNaRd6HCXkAa4fkTvf9Qmvud7nMxji2UjN1yEngVlv9bvmYUR2wZJ8JC6H1QeyH1HYPFYOMRjk64rH68Y30nmKX/ooNDt904fhCROuQmHJiz10T8FlFzhjTkJLm9W9jhnfElOHBnoXReRKC4ZeB8W0Cfq2INfr4kw8fS3SQ==",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 216.228.117.160)\n smtp.mailfrom=nvidia.com;\n dkim=none (message not signed)\n header.d=none;dmarc=pass action=none header.from=nvidia.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of nvidia.com designates\n 216.228.117.160 as permitted sender) receiver=protection.outlook.com;\n client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C",
        "From": "Gregory Etelson <getelson@nvidia.com>",
        "To": "<dev@dpdk.org>",
        "CC": "<getelson@nvidia.com>, <mkashani@nvidia.com>, <rasland@nvidia.com>,\n \"Hamdan Igbaria\" <hamdani@nvidia.com>, Alex Vesker <valex@nvidia.com>, Matan\n Azrad <matan@nvidia.com>, Viacheslav Ovsiienko <viacheslavo@nvidia.com>, Ori\n Kam <orika@nvidia.com>, Suanming Mou <suanmingm@nvidia.com>",
        "Subject": "[PATCH 17/30] net/mlx5/hws: support ASO IPsec action",
        "Date": "Sun, 29 Oct 2023 18:31:49 +0200",
        "Message-ID": "<20231029163202.216450-17-getelson@nvidia.com>",
        "X-Mailer": "git-send-email 2.39.2",
        "In-Reply-To": "<20231029163202.216450-1-getelson@nvidia.com>",
        "References": "<20231029163202.216450-1-getelson@nvidia.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[10.126.231.35]",
        "X-ClientProxiedBy": "rnnvmail203.nvidia.com (10.129.68.9) To\n rnnvmail201.nvidia.com (10.129.68.8)",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "CO1PEPF000044F4:EE_|DS0PR12MB6629:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "47410b70-0adf-4567-bd7c-08dbd89cc48e",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n SCaKlubJlRfBSQflcpXrTxyLuZPpnMqKc/DWOc0CQ6A2MTO5LhhHZgnx5fg/Go7Y0bXHY5puHFdkanX72m/v42wHfybd2b50fKL/PvQ9HxQ+k1lGTlRk1xKJEkBxxHLO8mqu2ImSQ0VQ8hSKJ5KRLeYbMyzTNgbUhyhyWJ6QM8k5/ILHJ2XUBl5vogU47THizimvQLZgdKZjw4D3rIAkpYr9Fzc0qWi53B1XJNZECVMN+2APRl7qLZ3z85vdmkJVLXTKBhBkv+jUAlQfuL6qvMIJ/xYY4qZJXowUa5QW2ORS+ahuRGBVaf2FXiSCstKxk5oZRiVV3+8ngy3VV3eHxCsgBJ2zklgy1vSnuV5UKbW2AyBOGgX94ugXHcdXJmftvgJbVWIF3VTO88SrtlrNHQtVJwLGK+N4VHRBC3uUSR7C05cENUnqVPieFUDMWgS8u3yxBCURjm0cj/dXFy6QYJfdBZX9SHypzPDQMSsaJ6Zz4Trh4/EQInxPbzCAAybbKlrdVFpV8pz3eMUPoZ6cBRmqc3Xd89gjAmtBPPMTIng8pYcqVk8gntMV773q/d+WT3+QbgmbqH+4d12JMCZZ76SAcA0dYcnVsBDik2UYWxcZz7+c4iwsI+ZRTbeg4hQIAhHr1BxIoXMdD8tLvSwosBV/NAHOtZWML3C0nyDK9WBeeIlPDsG1yMrmn/yj1zm4kPqldVWvMqfikZ3TnDzW+Xa3wVMmDCyuKabgbUAHdRkHWhV6ROkt2ZR7/S/iI+gc",
        "X-Forefront-Antispam-Report": "CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1;\n SRV:;\n IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE;\n SFS:(13230031)(4636009)(376002)(39860400002)(346002)(396003)(136003)(230922051799003)(1800799009)(451199024)(82310400011)(186009)(64100799003)(46966006)(40470700004)(36840700001)(47076005)(40480700001)(55016003)(40460700003)(70206006)(1076003)(83380400001)(6286002)(16526019)(26005)(2616005)(5660300002)(7636003)(336012)(82740400003)(36860700001)(426003)(356005)(70586007)(54906003)(316002)(6916009)(6666004)(41300700001)(8676002)(8936002)(7696005)(478600001)(2906002)(4326008)(36756003)(86362001)(107886003);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "29 Oct 2023 16:33:22.6306 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 47410b70-0adf-4567-bd7c-08dbd89cc48e",
        "X-MS-Exchange-CrossTenant-Id": "43083d15-7273-40c1-b7db-39efd9ccc17a",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.160];\n Helo=[mail.nvidia.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n CO1PEPF000044F4.namprd05.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "DS0PR12MB6629",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "From: Hamdan Igbaria <hamdani@nvidia.com>\n\nSupport ASO IPsec action, this action will allow performing\nsome of ipsec full offload operations, for example replay\nprotection and sequence number incrementation.\nIn Tx flow this action used before encrypting the packet to\nincrease the sequence number.\nIn Rx flow this action used after decrypting the packet to\ncheck it against the replay protection window for validity.\n\nSigned-off-by: Hamdan Igbaria <hamdani@nvidia.com>\nReviewed-by: Alex Vesker <valex@nvidia.com>\nAcked-by: Matan Azrad <matan@nvidia.com>\n---\n drivers/common/mlx5/mlx5_prm.h       |  1 +\n drivers/net/mlx5/hws/mlx5dr.h        | 23 ++++++++++++++++++++\n drivers/net/mlx5/hws/mlx5dr_action.c | 32 +++++++++++++++++++++++++---\n drivers/net/mlx5/hws/mlx5dr_debug.c  |  1 +\n 4 files changed, 54 insertions(+), 3 deletions(-)",
    "diff": "diff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5/mlx5_prm.h\nindex 0eecf0691b..31ebec7bcf 100644\n--- a/drivers/common/mlx5/mlx5_prm.h\n+++ b/drivers/common/mlx5/mlx5_prm.h\n@@ -3539,6 +3539,7 @@ struct mlx5_ifc_stc_ste_param_flow_counter_bits {\n enum {\n \tMLX5_ASO_CT_NUM_PER_OBJ = 1,\n \tMLX5_ASO_METER_NUM_PER_OBJ = 2,\n+\tMLX5_ASO_IPSEC_NUM_PER_OBJ = 1,\n };\n \n struct mlx5_ifc_stc_ste_param_execute_aso_bits {\ndiff --git a/drivers/net/mlx5/hws/mlx5dr.h b/drivers/net/mlx5/hws/mlx5dr.h\nindex 74d05229c7..bd352fa26d 100644\n--- a/drivers/net/mlx5/hws/mlx5dr.h\n+++ b/drivers/net/mlx5/hws/mlx5dr.h\n@@ -45,6 +45,7 @@ enum mlx5dr_action_type {\n \tMLX5DR_ACTION_TYP_PUSH_VLAN,\n \tMLX5DR_ACTION_TYP_ASO_METER,\n \tMLX5DR_ACTION_TYP_ASO_CT,\n+\tMLX5DR_ACTION_TYP_ASO_IPSEC,\n \tMLX5DR_ACTION_TYP_CRYPTO_ENCRYPT,\n \tMLX5DR_ACTION_TYP_CRYPTO_DECRYPT,\n \tMLX5DR_ACTION_TYP_DEST_ROOT,\n@@ -235,6 +236,10 @@ struct mlx5dr_rule_action {\n \t\t\tenum mlx5dr_action_aso_ct_flags direction;\n \t\t} aso_ct;\n \n+\t\tstruct {\n+\t\t\tuint32_t offset;\n+\t\t} aso_ipsec;\n+\n \t\tstruct {\n \t\t\tuint32_t offset;\n \t\t} crypto;\n@@ -659,6 +664,24 @@ mlx5dr_action_create_aso_ct(struct mlx5dr_context *ctx,\n \t\t\t    uint8_t return_reg_id,\n \t\t\t    uint32_t flags);\n \n+/* Create direct rule ASO IPSEC action.\n+ *\n+ * @param[in] ctx\n+ *\tThe context in which the new action will be created.\n+ * @param[in] devx_obj\n+ *\tThe DEVX ASO object.\n+ * @param[in] return_reg_id\n+ *\tCopy the ASO object value into this reg_id, after a packet hits a rule with this ASO object.\n+ * @param[in] flags\n+ *\tAction creation flags. (enum mlx5dr_action_flags)\n+ * @return pointer to mlx5dr_action on success NULL otherwise.\n+ */\n+struct mlx5dr_action *\n+mlx5dr_action_create_aso_ipsec(struct mlx5dr_context *ctx,\n+\t\t\t       struct mlx5dr_devx_obj *devx_obj,\n+\t\t\t       uint8_t return_reg_id,\n+\t\t\t       uint32_t flags);\n+\n /* Create direct rule pop vlan action.\n  * @param[in] ctx\n  *\tThe context in which the new action will be created.\ndiff --git a/drivers/net/mlx5/hws/mlx5dr_action.c b/drivers/net/mlx5/hws/mlx5dr_action.c\nindex 4910b4f730..956909a628 100644\n--- a/drivers/net/mlx5/hws/mlx5dr_action.c\n+++ b/drivers/net/mlx5/hws/mlx5dr_action.c\n@@ -9,11 +9,11 @@\n #define MLX5DR_ACTION_METER_INIT_COLOR_OFFSET 1\n \n /* This is the maximum allowed action order for each table type:\n- *\t TX: POP_VLAN, CTR, ASO_METER, AS_CT, PUSH_VLAN, MODIFY, ENCAP, ENCRYPT,\n+ *\t TX: POP_VLAN, CTR, ASO, PUSH_VLAN, MODIFY, ENCAP, ENCRYPT,\n  *\t     Term\n- *\t RX: TAG, DECAP, POP_VLAN, CTR, DECRYPT, ASO_METER, ASO_CT, PUSH_VLAN,\n+ *\t RX: TAG, DECAP, POP_VLAN, CTR, DECRYPT, ASO, PUSH_VLAN,\n  *\t     MODIFY, ENCAP, Term\n- *\tFDB: DECAP, POP_VLAN, CTR, DECRYPT, ASO_METER, ASO_CT, PUSH_VLAN, MODIFY,\n+ *\tFDB: DECAP, POP_VLAN, CTR, DECRYPT, ASO, PUSH_VLAN, MODIFY,\n  *\t     ENCAP, ENCRYPT, Term\n  */\n static const uint32_t action_order_arr[MLX5DR_TABLE_TYPE_MAX][MLX5DR_ACTION_TYP_MAX] = {\n@@ -27,6 +27,7 @@ static const uint32_t action_order_arr[MLX5DR_TABLE_TYPE_MAX][MLX5DR_ACTION_TYP_\n \t\tBIT(MLX5DR_ACTION_TYP_CRYPTO_DECRYPT),\n \t\tBIT(MLX5DR_ACTION_TYP_ASO_METER),\n \t\tBIT(MLX5DR_ACTION_TYP_ASO_CT),\n+\t\tBIT(MLX5DR_ACTION_TYP_ASO_IPSEC),\n \t\tBIT(MLX5DR_ACTION_TYP_PUSH_VLAN),\n \t\tBIT(MLX5DR_ACTION_TYP_PUSH_VLAN),\n \t\tBIT(MLX5DR_ACTION_TYP_MODIFY_HDR),\n@@ -46,6 +47,7 @@ static const uint32_t action_order_arr[MLX5DR_TABLE_TYPE_MAX][MLX5DR_ACTION_TYP_\n \t\tBIT(MLX5DR_ACTION_TYP_CTR),\n \t\tBIT(MLX5DR_ACTION_TYP_ASO_METER),\n \t\tBIT(MLX5DR_ACTION_TYP_ASO_CT),\n+\t\tBIT(MLX5DR_ACTION_TYP_ASO_IPSEC),\n \t\tBIT(MLX5DR_ACTION_TYP_PUSH_VLAN),\n \t\tBIT(MLX5DR_ACTION_TYP_PUSH_VLAN),\n \t\tBIT(MLX5DR_ACTION_TYP_MODIFY_HDR),\n@@ -67,6 +69,7 @@ static const uint32_t action_order_arr[MLX5DR_TABLE_TYPE_MAX][MLX5DR_ACTION_TYP_\n \t\tBIT(MLX5DR_ACTION_TYP_CRYPTO_DECRYPT),\n \t\tBIT(MLX5DR_ACTION_TYP_ASO_METER),\n \t\tBIT(MLX5DR_ACTION_TYP_ASO_CT),\n+\t\tBIT(MLX5DR_ACTION_TYP_ASO_IPSEC),\n \t\tBIT(MLX5DR_ACTION_TYP_PUSH_VLAN),\n \t\tBIT(MLX5DR_ACTION_TYP_PUSH_VLAN),\n \t\tBIT(MLX5DR_ACTION_TYP_MODIFY_HDR),\n@@ -642,6 +645,13 @@ static void mlx5dr_action_fill_stc_attr(struct mlx5dr_action *action,\n \t\tattr->aso.devx_obj_id = obj->id;\n \t\tattr->aso.return_reg_id = action->aso.return_reg_id;\n \t\tbreak;\n+\tcase MLX5DR_ACTION_TYP_ASO_IPSEC:\n+\t\tattr->action_offset = MLX5DR_ACTION_OFFSET_DW6;\n+\t\tattr->action_type = MLX5_IFC_STC_ACTION_TYPE_ASO;\n+\t\tattr->aso.aso_type = ASO_OPC_MOD_IPSEC;\n+\t\tattr->aso.devx_obj_id = obj->id;\n+\t\tattr->aso.return_reg_id = action->aso.return_reg_id;\n+\t\tbreak;\n \tcase MLX5DR_ACTION_TYP_VPORT:\n \t\tattr->action_offset = MLX5DR_ACTION_OFFSET_HIT;\n \t\tattr->action_type = MLX5_IFC_STC_ACTION_TYPE_JUMP_TO_VPORT;\n@@ -1076,6 +1086,16 @@ mlx5dr_action_create_aso_ct(struct mlx5dr_context *ctx,\n \t\t\t\t\tdevx_obj, return_reg_id, flags);\n }\n \n+struct mlx5dr_action *\n+mlx5dr_action_create_aso_ipsec(struct mlx5dr_context *ctx,\n+\t\t\t       struct mlx5dr_devx_obj *devx_obj,\n+\t\t\t       uint8_t return_reg_id,\n+\t\t\t       uint32_t flags)\n+{\n+\treturn mlx5dr_action_create_aso(ctx, MLX5DR_ACTION_TYP_ASO_IPSEC,\n+\t\t\t\t\tdevx_obj, return_reg_id, flags);\n+}\n+\n struct mlx5dr_action *\n mlx5dr_action_create_counter(struct mlx5dr_context *ctx,\n \t\t\t     struct mlx5dr_devx_obj *obj,\n@@ -2079,6 +2099,7 @@ static void mlx5dr_action_destroy_hws(struct mlx5dr_action *action)\n \tcase MLX5DR_ACTION_TYP_REFORMAT_TNL_L2_TO_L2:\n \tcase MLX5DR_ACTION_TYP_ASO_METER:\n \tcase MLX5DR_ACTION_TYP_ASO_CT:\n+\tcase MLX5DR_ACTION_TYP_ASO_IPSEC:\n \tcase MLX5DR_ACTION_TYP_PUSH_VLAN:\n \tcase MLX5DR_ACTION_TYP_CRYPTO_ENCRYPT:\n \tcase MLX5DR_ACTION_TYP_CRYPTO_DECRYPT:\n@@ -2490,6 +2511,10 @@ mlx5dr_action_setter_aso(struct mlx5dr_actions_apply_data *apply,\n \t\toffset = rule_action->aso_ct.offset / MLX5_ASO_CT_NUM_PER_OBJ;\n \t\texe_aso_ctrl = rule_action->aso_ct.direction;\n \t\tbreak;\n+\tcase MLX5DR_ACTION_TYP_ASO_IPSEC:\n+\t\toffset = rule_action->aso_ipsec.offset / MLX5_ASO_IPSEC_NUM_PER_OBJ;\n+\t\texe_aso_ctrl = 0;\n+\t\tbreak;\n \tdefault:\n \t\tDR_LOG(ERR, \"Unsupported ASO action type: %d\", rule_action->action->type);\n \t\trte_errno = ENOTSUP;\n@@ -2679,6 +2704,7 @@ int mlx5dr_action_template_process(struct mlx5dr_action_template *at)\n \n \t\tcase MLX5DR_ACTION_TYP_ASO_METER:\n \t\tcase MLX5DR_ACTION_TYP_ASO_CT:\n+\t\tcase MLX5DR_ACTION_TYP_ASO_IPSEC:\n \t\t\tsetter = mlx5dr_action_setter_find_first(last_setter, ASF_DOUBLE);\n \t\t\tsetter->flags |= ASF_DOUBLE;\n \t\t\tsetter->set_double = &mlx5dr_action_setter_aso;\ndiff --git a/drivers/net/mlx5/hws/mlx5dr_debug.c b/drivers/net/mlx5/hws/mlx5dr_debug.c\nindex 8cf3909606..74893f61fb 100644\n--- a/drivers/net/mlx5/hws/mlx5dr_debug.c\n+++ b/drivers/net/mlx5/hws/mlx5dr_debug.c\n@@ -22,6 +22,7 @@ const char *mlx5dr_debug_action_type_str[] = {\n \t[MLX5DR_ACTION_TYP_PUSH_VLAN] = \"PUSH_VLAN\",\n \t[MLX5DR_ACTION_TYP_ASO_METER] = \"ASO_METER\",\n \t[MLX5DR_ACTION_TYP_ASO_CT] = \"ASO_CT\",\n+\t[MLX5DR_ACTION_TYP_ASO_IPSEC] = \"ASO_IPSEC\",\n \t[MLX5DR_ACTION_TYP_DEST_ROOT] = \"DEST_ROOT\",\n \t[MLX5DR_ACTION_TYP_DEST_ARRAY] = \"DEST_ARRAY\",\n \t[MLX5DR_ACTION_TYP_CRYPTO_ENCRYPT] = \"CRYPTO_ENCRYPT\",\n",
    "prefixes": [
        "17/30"
    ]
}