Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/94807/?format=api
https://patches.dpdk.org/api/patches/94807/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/patch/1624599410-29689-2-git-send-email-anoobj@marvell.com/", "project": { "id": 1, "url": "https://patches.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": "<1624599410-29689-2-git-send-email-anoobj@marvell.com>", "list_archive_url": "https://inbox.dpdk.org/dev/1624599410-29689-2-git-send-email-anoobj@marvell.com", "date": "2021-06-25T05:36:33", "name": "[v2,01/17] common/cnxk: add CPT HW defines", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "8db5c8c1ddf2206e60f66621aea82bb3f6a8fabe", "submitter": { "id": 1205, "url": "https://patches.dpdk.org/api/people/1205/?format=api", "name": "Anoob Joseph", "email": "anoobj@marvell.com" }, "delegate": { "id": 6690, "url": "https://patches.dpdk.org/api/users/6690/?format=api", "username": "akhil", "first_name": "akhil", "last_name": "goyal", "email": "gakhil@marvell.com" }, "mbox": "https://patches.dpdk.org/project/dpdk/patch/1624599410-29689-2-git-send-email-anoobj@marvell.com/mbox/", "series": [ { "id": 17482, "url": "https://patches.dpdk.org/api/series/17482/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=17482", "date": "2021-06-25T05:36:32", "name": "Add CPT in Marvell CNXK common driver", "version": 2, "mbox": "https://patches.dpdk.org/series/17482/mbox/" } ], "comments": "https://patches.dpdk.org/api/patches/94807/comments/", "check": "success", "checks": "https://patches.dpdk.org/api/patches/94807/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 798F6A0C40;\n\tFri, 25 Jun 2021 07:37:16 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 2E41C40E78;\n\tFri, 25 Jun 2021 07:37:16 +0200 (CEST)", "from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com\n [67.231.148.174])\n by mails.dpdk.org (Postfix) with ESMTP id 0BC4F40E5A\n for <dev@dpdk.org>; Fri, 25 Jun 2021 07:37:14 +0200 (CEST)", "from pps.filterd (m0045849.ppops.net [127.0.0.1])\n by mx0a-0016f401.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id\n 15P5aJiJ018478; Thu, 24 Jun 2021 22:37:14 -0700", "from dc5-exch02.marvell.com ([199.233.59.182])\n by mx0a-0016f401.pphosted.com with ESMTP id 39d24dhh06-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT);\n Thu, 24 Jun 2021 22:37:13 -0700", "from DC5-EXCH01.marvell.com (10.69.176.38) by DC5-EXCH02.marvell.com\n (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.18;\n Thu, 24 Jun 2021 22:37:12 -0700", "from maili.marvell.com (10.69.176.80) by DC5-EXCH01.marvell.com\n (10.69.176.38) with Microsoft SMTP Server id 15.0.1497.18 via Frontend\n Transport; Thu, 24 Jun 2021 22:37:11 -0700", "from HY-LT1002.marvell.com (HY-LT1002.marvell.com [10.28.176.218])\n by maili.marvell.com (Postfix) with ESMTP id D5CF13F7041;\n Thu, 24 Jun 2021 22:37:08 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com;\n h=from : to : cc :\n subject : date : message-id : in-reply-to : references : mime-version :\n content-transfer-encoding : content-type; s=pfpt0220;\n bh=YwiLkTXnb1N/aQj8GVsZvTKDI+SxhYRq3HyB8VWwISE=;\n b=f2YkOCAaEDt7V7K+4b9HH62TQ7jICGjP0ol+vm/r505UQ/B9O0VfMYe3Y/ihyzoIJBuJ\n ZT9m2KKBk5wzsvpcUcyyEX6Mtb0OCb4ZMiULJibmTs6yLGkptZ27vkjx2p0Il3VWcFxD\n c2zKliArsVQ9bcm5oH/HJzsIJMbEWvAS5/qIQfh69IceKk+AiBAK4uCL/R4zQYorPzvY\n VIhSCGL78IxxrDR8SW9Kh4p99lvcVHyfymKRlIvvp7N2nhQS9WpEQcb3P96AlkRlEzzX\n QLfLXAaBmst8TXOGY4nY/z5TpK361YWjF3yydt4De8W8rTu7tAlEJgZPO2IVKzhb3pKm Cw==", "From": "Anoob Joseph <anoobj@marvell.com>", "To": "Akhil Goyal <gakhil@marvell.com>, Thomas Monjalon <thomas@monjalon.net>", "CC": "Vidya Sagar Velumuri <vvelumuri@marvell.com>, Jerin Jacob\n <jerinj@marvell.com>, Ankur Dwivedi <adwivedi@marvell.com>, Tejasree Kondoj\n <ktejasree@marvell.com>, <dev@dpdk.org>, Anoob Joseph <anoobj@marvell.com>", "Date": "Fri, 25 Jun 2021 11:06:33 +0530", "Message-ID": "<1624599410-29689-2-git-send-email-anoobj@marvell.com>", "X-Mailer": "git-send-email 2.7.4", "In-Reply-To": "<1624599410-29689-1-git-send-email-anoobj@marvell.com>", "References": "\n <patches.dpdk.org/project/dpdk/patch/1622649385-22652-1-git-send-email-anoobj@marvell.com/>\n <1624599410-29689-1-git-send-email-anoobj@marvell.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Content-Type": "text/plain", "X-Proofpoint-GUID": "gNwyHqsTYZNvGz6fa9tFCufPlLtnq_4S", "X-Proofpoint-ORIG-GUID": "gNwyHqsTYZNvGz6fa9tFCufPlLtnq_4S", "X-Proofpoint-Virus-Version": "vendor=fsecure engine=2.50.10434:6.0.391, 18.0.790\n definitions=2021-06-25_01:2021-06-24,\n 2021-06-25 signatures=0", "Subject": "[dpdk-dev] [PATCH v2 01/17] common/cnxk: add CPT HW defines", "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", "Sender": "\"dev\" <dev-bounces@dpdk.org>" }, "content": "From: Vidya Sagar Velumuri <vvelumuri@marvell.com>\n\nAdd CPT hardware definitions. CPT is the hardware block on\ncnxk family of processors, that can be used to offload\ncryptographic operations.\n\nSigned-off-by: Anoob Joseph <anoobj@marvell.com>\nSigned-off-by: Vidya Sagar Velumuri <vvelumuri@marvell.com>\n\n---\n drivers/common/cnxk/hw/cpt.h | 291 ++++++++++++++++++++++++++++++++++++++++++\n drivers/common/cnxk/roc_api.h | 6 +\n 2 files changed, 297 insertions(+)\n create mode 100644 drivers/common/cnxk/hw/cpt.h", "diff": "diff --git a/drivers/common/cnxk/hw/cpt.h b/drivers/common/cnxk/hw/cpt.h\nnew file mode 100644\nindex 0000000..84ebf2d\n--- /dev/null\n+++ b/drivers/common/cnxk/hw/cpt.h\n@@ -0,0 +1,291 @@\n+/* SPDX-License-Identifier: BSD-3-Clause\n+ * Copyright(C) 2021 Marvell.\n+ */\n+\n+#ifndef __CPT_HW_H__\n+#define __CPT_HW_H__\n+\n+/* Register offsets */\n+\n+#define CPT_COMP_NOT_DONE (0x0ull)\n+#define CPT_COMP_GOOD\t (0x1ull)\n+#define CPT_COMP_FAULT\t (0x2ull)\n+#define CPT_COMP_SWERR\t (0x3ull)\n+#define CPT_COMP_HWERR\t (0x4ull)\n+#define CPT_COMP_INSTERR (0x5ull)\n+#define CPT_COMP_WARN\t (0x6ull) /* [CN10K, .) */\n+\n+#define CPT_LF_INT_VEC_MISC\t(0x0ull)\n+#define CPT_LF_INT_VEC_DONE\t(0x1ull)\n+#define CPT_LF_CTL\t\t(0x10ull)\n+#define CPT_LF_DONE_WAIT\t(0x30ull)\n+#define CPT_LF_INPROG\t\t(0x40ull)\n+#define CPT_LF_DONE\t\t(0x50ull)\n+#define CPT_LF_DONE_ACK\t\t(0x60ull)\n+#define CPT_LF_DONE_INT_ENA_W1S (0x90ull)\n+#define CPT_LF_DONE_INT_ENA_W1C (0xa0ull)\n+#define CPT_LF_MISC_INT\t\t(0xb0ull)\n+#define CPT_LF_MISC_INT_W1S\t(0xc0ull)\n+#define CPT_LF_MISC_INT_ENA_W1S (0xd0ull)\n+#define CPT_LF_MISC_INT_ENA_W1C (0xe0ull)\n+#define CPT_LF_Q_BASE\t\t(0xf0ull)\n+#define CPT_LF_Q_SIZE\t\t(0x100ull)\n+#define CPT_LF_Q_INST_PTR\t(0x110ull)\n+#define CPT_LF_Q_GRP_PTR\t(0x120ull)\n+#define CPT_LF_NQX(a)\t\t(0x400ull | (uint64_t)(a) << 3)\n+#define CPT_LF_CTX_CTL\t\t(0x500ull)\n+#define CPT_LF_CTX_FLUSH\t(0x510ull)\n+#define CPT_LF_CTX_ERR\t\t(0x520ull)\n+#define CPT_LF_CTX_ENC_BYTE_CNT (0x530ull)\n+#define CPT_LF_CTX_ENC_PKT_CNT\t(0x540ull)\n+#define CPT_LF_CTX_DEC_BYTE_CNT (0x550ull)\n+#define CPT_LF_CTX_DEC_PKT_CNT\t(0x560ull)\n+\n+#define CPT_AF_LFX_CTL(a) (0x27000ull | (uint64_t)(a) << 3)\n+#define CPT_AF_LFX_CTL2(a) (0x29000ull | (uint64_t)(a) << 3)\n+\n+/* Structures definitions */\n+\n+union cpt_lf_ctl {\n+\tuint64_t u;\n+\tstruct cpt_lf_ctl_s {\n+\t\tuint64_t ena : 1;\n+\t\tuint64_t fc_ena : 1;\n+\t\tuint64_t fc_up_crossing : 1;\n+\t\tuint64_t reserved_3_3 : 1;\n+\t\tuint64_t fc_hyst_bits : 4;\n+\t\tuint64_t reserved_8_63 : 56;\n+\t} s;\n+};\n+\n+union cpt_lf_ctx_flush {\n+\tuint64_t u;\n+\tstruct {\n+\t\tuint64_t cptr : 46;\n+\t\tuint64_t inval : 1;\n+\t\tuint64_t res : 1;\n+\t\tuint64_t pf_func : 16;\n+\t} s;\n+};\n+\n+union cpt_lf_inprog {\n+\tuint64_t u;\n+\tstruct cpt_lf_inprog_s {\n+\t\tuint64_t inflight : 9;\n+\t\tuint64_t reserved_9_15 : 7;\n+\t\tuint64_t eena : 1;\n+\t\tuint64_t grp_drp : 1;\n+\t\tuint64_t reserved_18_30 : 13;\n+\t\tuint64_t grb_partial : 1;\n+\t\tuint64_t grb_cnt : 8;\n+\t\tuint64_t gwb_cnt : 8;\n+\t\tuint64_t reserved_48_63 : 16;\n+\t} s;\n+};\n+\n+union cpt_lf_q_base {\n+\tuint64_t u;\n+\tstruct cpt_lf_q_base_s {\n+\t\tuint64_t fault : 1;\n+\t\tuint64_t stopped : 1;\n+\t\tuint64_t reserved_2_6 : 5;\n+\t\tuint64_t addr : 46;\n+\t\tuint64_t reserved_53_63 : 11;\n+\t} s;\n+};\n+\n+union cpt_lf_q_size {\n+\tuint64_t u;\n+\tstruct cpt_lf_q_size_s {\n+\t\tuint64_t size_div40 : 15;\n+\t\tuint64_t reserved_15_63 : 49;\n+\t} s;\n+};\n+\n+union cpt_lf_misc_int {\n+\tuint64_t u;\n+\tstruct cpt_lf_misc_int_s {\n+\t\tuint64_t reserved_0_0 : 1;\n+\t\tuint64_t nqerr : 1;\n+\t\tuint64_t irde : 1;\n+\t\tuint64_t nwrp : 1;\n+\t\tuint64_t reserved_4_4 : 1;\n+\t\tuint64_t hwerr : 1;\n+\t\tuint64_t fault : 1;\n+\t\tuint64_t reserved_7_63 : 57;\n+\t} s;\n+};\n+\n+union cpt_inst_w4 {\n+\tuint64_t u64;\n+\tstruct {\n+\t\tuint64_t dlen : 16;\n+\t\tuint64_t param2 : 16;\n+\t\tuint64_t param1 : 16;\n+\t\tuint64_t opcode_major : 8;\n+\t\tuint64_t opcode_minor : 8;\n+\t} s;\n+};\n+\n+union cpt_inst_w7 {\n+\tuint64_t u64;\n+\tstruct {\n+\t\tuint64_t cptr : 60;\n+\t\tuint64_t ctx_val : 1;\n+\t\tuint64_t egrp : 3;\n+\t} s;\n+};\n+\n+struct cpt_inst_s {\n+\tunion cpt_inst_w0 {\n+\t\tstruct {\n+\t\t\tuint64_t nixtxl : 3;\n+\t\t\tuint64_t doneint : 1;\n+\t\t\tuint64_t nixtx_addr : 60;\n+\t\t} s;\n+\t\tuint64_t u64;\n+\t} w0;\n+\n+\tuint64_t res_addr;\n+\n+\tunion cpt_inst_w2 {\n+\t\tstruct {\n+\t\t\tuint64_t tag : 32;\n+\t\t\tuint64_t tt : 2;\n+\t\t\tuint64_t grp : 10;\n+\t\t\tuint64_t reserved_172_175 : 4;\n+\t\t\tuint64_t rvu_pf_func : 16;\n+\t\t} s;\n+\t\tuint64_t u64;\n+\t} w2;\n+\n+\tunion cpt_inst_w3 {\n+\t\tstruct {\n+\t\t\tuint64_t qord : 1;\n+\t\t\tuint64_t reserved_194_193 : 2;\n+\t\t\tuint64_t wqe_ptr : 61;\n+\t\t} s;\n+\t\tuint64_t u64;\n+\t} w3;\n+\n+\tunion cpt_inst_w4 w4;\n+\n+\tuint64_t dptr;\n+\n+\tuint64_t rptr;\n+\n+\tunion cpt_inst_w7 w7;\n+};\n+\n+union cpt_res_s {\n+\tstruct cpt_cn10k_res_s {\n+\t\tuint64_t compcode : 7;\n+\t\tuint64_t doneint : 1;\n+\t\tuint64_t uc_compcode : 8;\n+\t\tuint64_t rlen : 16;\n+\t\tuint64_t spi : 32;\n+\n+\t\tuint64_t esn;\n+\t} cn10k;\n+\n+\tstruct cpt_cn9k_res_s {\n+\t\tuint64_t compcode : 8;\n+\t\tuint64_t uc_compcode : 8;\n+\t\tuint64_t doneint : 1;\n+\t\tuint64_t reserved_17_63 : 47;\n+\n+\t\tuint64_t reserved_64_127;\n+\t} cn9k;\n+};\n+\n+/* [CN10K, .) */\n+struct cpt_parse_hdr_s {\n+\t/* WORD 0 */\n+\tunion {\n+\t\tuint64_t u64;\n+\t\tstruct {\n+\t\t\tuint8_t pad_len : 3;\n+\t\t\tuint8_t num_frags : 3;\n+\t\t\tuint8_t pkt_out : 2;\n+\n+\t\t\tuint8_t err_sum : 1;\n+\t\t\tuint8_t reas_sts : 4;\n+\t\t\tuint8_t reserved_53 : 1;\n+\t\t\tuint8_t et_owr : 1;\n+\t\t\tuint8_t pkt_fmt : 1;\n+\n+\t\t\tuint16_t match_id : 16;\n+\n+\t\t\tuint32_t cookie : 32;\n+\t\t};\n+\t} w0;\n+\n+\t/* WORD 1 */\n+\tuint64_t wqe_ptr;\n+\n+\t/* WORD 2 */\n+\tunion {\n+\t\tuint64_t u64;\n+\t\tstruct {\n+\t\t\tuint8_t fi_pad : 3;\n+\t\t\tuint8_t fi_offset : 5;\n+\t\t\tuint8_t il3_off;\n+\t\t\tuint16_t orig_pf_func;\n+\t\t\tuint16_t reserved_145_160;\n+\t\t\tuint16_t frag_age;\n+\t\t};\n+\t} w2;\n+\n+\t/* WORD 3 */\n+\tunion {\n+\t\tuint64_t u64;\n+\t\tstruct {\n+\t\t\tuint32_t spi;\n+\t\t\tuint16_t reserved_209_224;\n+\t\t\tuint8_t uc_ccode;\n+\t\t\tuint8_t hw_ccode;\n+\t\t};\n+\t} w3;\n+\n+\t/* WORD 4 */\n+\tunion {\n+\t\tuint64_t u64;\n+\t\tuint64_t esn;\n+\t\tuint64_t frag1_wqe_ptr;\n+\t};\n+};\n+\n+union cpt_frag_info {\n+\tuint16_t info;\n+\tstruct {\n+\t\tuint16_t f_off : 13;\n+\t\tuint16_t f_mf : 1;\n+\t\tuint16_t f_rsv : 2;\n+\t};\n+};\n+\n+struct cpt_frag_info_s {\n+\t/* WORD 0 */\n+\tunion {\n+\t\tuint64_t u64;\n+\t\tstruct {\n+\t\t\tunion cpt_frag_info f3;\n+\t\t\tunion cpt_frag_info f2;\n+\t\t\tunion cpt_frag_info f1;\n+\t\t\tunion cpt_frag_info f0;\n+\t\t};\n+\t} w0;\n+\n+\t/* WORD 1 */\n+\tunion {\n+\t\tuint64_t u64;\n+\t\tstruct {\n+\t\t\tuint16_t frag_size3;\n+\t\t\tuint16_t frag_size2;\n+\t\t\tuint16_t frag_size1;\n+\t\t\tuint16_t frag_size0;\n+\t\t};\n+\t} w1;\n+};\n+\n+#endif /* __CPT_HW_H__ */\ndiff --git a/drivers/common/cnxk/roc_api.h b/drivers/common/cnxk/roc_api.h\nindex 67f5d13..049854d 100644\n--- a/drivers/common/cnxk/roc_api.h\n+++ b/drivers/common/cnxk/roc_api.h\n@@ -54,6 +54,11 @@\n #define PCI_DEVID_CN9K_CGX 0xA059\n #define PCI_DEVID_CN10K_RPM 0xA060\n \n+#define PCI_DEVID_CN9K_RVU_CPT_PF 0xA0FD\n+#define PCI_DEVID_CN9K_RVU_CPT_VF 0xA0FE\n+#define PCI_DEVID_CN10K_RVU_CPT_PF 0xA0F2\n+#define PCI_DEVID_CN10K_RVU_CPT_VF 0xA0F3\n+\n #define PCI_SUBSYSTEM_DEVID_CN10KA 0xB900\n #define PCI_SUBSYSTEM_DEVID_CN10KAS 0xB900\n \n@@ -64,6 +69,7 @@\n #define PCI_SUBSYSTEM_DEVID_CN9KE 0xB100\n \n /* HW structure definition */\n+#include \"hw/cpt.h\"\n #include \"hw/nix.h\"\n #include \"hw/npa.h\"\n #include \"hw/npc.h\"\n", "prefixes": [ "v2", "01/17" ] }{ "id": 94807, "url": "