get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 71150,
    "url": "http://patches.dpdk.org/api/patches/71150/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20200610114427.22146-15-somnath.kotur@broadcom.com/",
    "project": {
        "id": 1,
        "url": "http://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": "<20200610114427.22146-15-somnath.kotur@broadcom.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20200610114427.22146-15-somnath.kotur@broadcom.com",
    "date": "2020-06-10T11:44:05",
    "name": "[14/36] net/bnxt: add support for action bitmap opcode in result field processing",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "35f76e50c7baf275a55d530acd95fefac2dd13c2",
    "submitter": {
        "id": 908,
        "url": "http://patches.dpdk.org/api/people/908/?format=api",
        "name": "Somnath Kotur",
        "email": "somnath.kotur@broadcom.com"
    },
    "delegate": {
        "id": 1766,
        "url": "http://patches.dpdk.org/api/users/1766/?format=api",
        "username": "ajitkhaparde",
        "first_name": "Ajit",
        "last_name": "Khaparde",
        "email": "ajit.khaparde@broadcom.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20200610114427.22146-15-somnath.kotur@broadcom.com/mbox/",
    "series": [
        {
            "id": 10380,
            "url": "http://patches.dpdk.org/api/series/10380/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=10380",
            "date": "2020-06-10T11:43:51",
            "name": "bnxt patches",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/10380/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/71150/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/71150/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 dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 91DA1A051A;\n\tWed, 10 Jun 2020 13:51:28 +0200 (CEST)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id D4B711BEC7;\n\tWed, 10 Jun 2020 13:49:16 +0200 (CEST)",
            "from relay.smtp.broadcom.com (unknown [192.19.232.149])\n by dpdk.org (Postfix) with ESMTP id ADC411BEB0\n for <dev@dpdk.org>; Wed, 10 Jun 2020 13:49:13 +0200 (CEST)",
            "from dhcp-10-123-153-55.dhcp.broadcom.net\n (dhcp-10-123-153-55.dhcp.broadcom.net [10.123.153.55])\n by relay.smtp.broadcom.com (Postfix) with ESMTP id 0E9B01BD53A;\n Wed, 10 Jun 2020 04:49:12 -0700 (PDT)"
        ],
        "DKIM-Filter": "OpenDKIM Filter v2.10.3 relay.smtp.broadcom.com 0E9B01BD53A",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=broadcom.com;\n s=dkimrelay; t=1591789753;\n bh=maXl4C1PihR7XThttsWzGJj1kQdUUBUEUZ4PKHE/wTM=;\n h=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n b=SfkA5VVE+vSTpAo2/ZXYGm5F3G28n4xYLSr0SzI0npAvZoTDQ1X5+bmrGGWd/BzWd\n WyFWONdnqr3Np1UjryYYlbxLqld+0LOEJq22fvIOUVKIFIo2hSFZInb12u/kXtOe7m\n V6xRv6rmNVLfpydzc57Z14ZZNh8msgTVd1G3CrRE=",
        "From": "Somnath Kotur <somnath.kotur@broadcom.com>",
        "To": "dev@dpdk.org",
        "Cc": "ferruh.yigit@intel.com",
        "Date": "Wed, 10 Jun 2020 17:14:05 +0530",
        "Message-Id": "<20200610114427.22146-15-somnath.kotur@broadcom.com>",
        "X-Mailer": "git-send-email 2.10.1.613.g2cc2e70",
        "In-Reply-To": "<20200610114427.22146-1-somnath.kotur@broadcom.com>",
        "References": "<20200610114427.22146-1-somnath.kotur@broadcom.com>",
        "Subject": "[dpdk-dev] [PATCH 14/36] net/bnxt: add support for action bitmap\n\topcode in result field processing",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "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: Kishore Padmanabha <kishore.padmanabha@broadcom.com>\n\nThis enables using the action bitmap to update the action result\nfields in the flow creation instead of using computed header fields.\nAn example would be the usage of the vlan pop action bitmap that is\nused to updated action result field as part of this commit.\n\nSigned-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com>\nReviewed-by: Michael Baucom <michael.baucom@broadcom.com>\nSigned-off-by: Somnath Kotur <somnath.kotur@broadcom.com>\n---\n drivers/net/bnxt/tf_ulp/ulp_mapper.c      | 20 ++++++++++++++++++++\n drivers/net/bnxt/tf_ulp/ulp_template_db.c | 14 +++++++++++---\n drivers/net/bnxt/tf_ulp/ulp_template_db.h | 11 ++++++-----\n 3 files changed, 37 insertions(+), 8 deletions(-)",
    "diff": "diff --git a/drivers/net/bnxt/tf_ulp/ulp_mapper.c b/drivers/net/bnxt/tf_ulp/ulp_mapper.c\nindex 40c515d..a0b77c0 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_mapper.c\n+++ b/drivers/net/bnxt/tf_ulp/ulp_mapper.c\n@@ -611,6 +611,8 @@ ulp_mapper_result_field_process(struct bnxt_ulp_mapper_parms *parms,\n \tuint8_t\t *val = NULL;\n \tuint64_t regval;\n \tuint32_t val_size = 0, field_size = 0;\n+\tuint64_t act_bit;\n+\tuint8_t act_val;\n \n \tswitch (fld->result_opcode) {\n \tcase BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT:\n@@ -644,6 +646,24 @@ ulp_mapper_result_field_process(struct bnxt_ulp_mapper_parms *parms,\n \t\t\treturn -EINVAL;\n \t\t}\n \t\tbreak;\n+\tcase BNXT_ULP_RESULT_OPC_SET_TO_ACT_BIT:\n+\t\tif (!ulp_operand_read(fld->result_operand,\n+\t\t\t\t      (uint8_t *)&act_bit, sizeof(uint64_t))) {\n+\t\t\tBNXT_TF_DBG(ERR, \"%s operand read failed\\n\", name);\n+\t\t\treturn -EINVAL;\n+\t\t}\n+\t\tact_bit = tfp_be_to_cpu_64(act_bit);\n+\t\tact_val = ULP_BITMAP_ISSET(parms->act_bitmap->bits, act_bit);\n+\t\tif (fld->field_bit_size > ULP_BYTE_2_BITS(sizeof(act_val))) {\n+\t\t\tBNXT_TF_DBG(ERR, \"%s field size is incorrect\\n\", name);\n+\t\t\treturn -EINVAL;\n+\t\t}\n+\t\tif (!ulp_blob_push(blob, &act_val, fld->field_bit_size)) {\n+\t\t\tBNXT_TF_DBG(ERR, \"%s push field failed\\n\", name);\n+\t\t\treturn -EINVAL;\n+\t\t}\n+\t\tval = &act_val;\n+\t\tbreak;\n \tcase BNXT_ULP_RESULT_OPC_SET_TO_ENCAP_ACT_PROP_SZ:\n \t\tif (!ulp_operand_read(fld->result_operand,\n \t\t\t\t      (uint8_t *)&idx, sizeof(uint16_t))) {\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_template_db.c b/drivers/net/bnxt/tf_ulp/ulp_template_db.c\nindex 013bc13..cb5e325 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_template_db.c\n+++ b/drivers/net/bnxt/tf_ulp/ulp_template_db.c\n@@ -1774,9 +1774,17 @@ struct bnxt_ulp_mapper_result_field_info ulp_act_result_field_list[] = {\n \t},\n \t{\n \t.field_bit_size = 1,\n-\t.result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_CONSTANT,\n-\t.result_operand = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n-\t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n+\t.result_opcode = BNXT_ULP_RESULT_OPC_SET_TO_ACT_BIT,\n+\t.result_operand = {\n+\t\t((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 56) & 0xff,\n+\t\t((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 48) & 0xff,\n+\t\t((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 40) & 0xff,\n+\t\t((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 32) & 0xff,\n+\t\t((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 24) & 0xff,\n+\t\t((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 16) & 0xff,\n+\t\t((uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN >> 8) & 0xff,\n+\t\t(uint64_t)BNXT_ULP_ACTION_BIT_POP_VLAN & 0xff,\n+\t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n \t.field_bit_size = 2,\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_template_db.h b/drivers/net/bnxt/tf_ulp/ulp_template_db.h\nindex 8554a03..6935072 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_template_db.h\n+++ b/drivers/net/bnxt/tf_ulp/ulp_template_db.h\n@@ -211,11 +211,12 @@ enum bnxt_ulp_regfile_index {\n enum bnxt_ulp_result_opc {\n \tBNXT_ULP_RESULT_OPC_SET_TO_CONSTANT = 0,\n \tBNXT_ULP_RESULT_OPC_SET_TO_ACT_PROP = 1,\n-\tBNXT_ULP_RESULT_OPC_SET_TO_ENCAP_ACT_PROP_SZ = 2,\n-\tBNXT_ULP_RESULT_OPC_SET_TO_REGFILE = 3,\n-\tBNXT_ULP_RESULT_OPC_SET_TO_GLB_REGFILE = 4,\n-\tBNXT_ULP_RESULT_OPC_SET_TO_COMP_FIELD = 5,\n-\tBNXT_ULP_RESULT_OPC_LAST = 6\n+\tBNXT_ULP_RESULT_OPC_SET_TO_ACT_BIT = 2,\n+\tBNXT_ULP_RESULT_OPC_SET_TO_ENCAP_ACT_PROP_SZ = 3,\n+\tBNXT_ULP_RESULT_OPC_SET_TO_REGFILE = 4,\n+\tBNXT_ULP_RESULT_OPC_SET_TO_GLB_REGFILE = 5,\n+\tBNXT_ULP_RESULT_OPC_SET_TO_COMP_FIELD = 6,\n+\tBNXT_ULP_RESULT_OPC_LAST = 7\n };\n \n enum bnxt_ulp_search_before_alloc {\n",
    "prefixes": [
        "14/36"
    ]
}