get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 94169,
    "url": "https://patches.dpdk.org/api/patches/94169/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20210613000652.28191-28-ajit.khaparde@broadcom.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": "<20210613000652.28191-28-ajit.khaparde@broadcom.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20210613000652.28191-28-ajit.khaparde@broadcom.com",
    "date": "2021-06-13T00:06:21",
    "name": "[v2,27/58] net/bnxt: add support for generic table processing",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "820cdf8fcf9da2d7c6e5a0d52794548f0171ec5d",
    "submitter": {
        "id": 501,
        "url": "https://patches.dpdk.org/api/people/501/?format=api",
        "name": "Ajit Khaparde",
        "email": "ajit.khaparde@broadcom.com"
    },
    "delegate": {
        "id": 1766,
        "url": "https://patches.dpdk.org/api/users/1766/?format=api",
        "username": "ajitkhaparde",
        "first_name": "Ajit",
        "last_name": "Khaparde",
        "email": "ajit.khaparde@broadcom.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20210613000652.28191-28-ajit.khaparde@broadcom.com/mbox/",
    "series": [
        {
            "id": 17305,
            "url": "https://patches.dpdk.org/api/series/17305/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=17305",
            "date": "2021-06-13T00:05:54",
            "name": "enhancements to host based flow table management",
            "version": 2,
            "mbox": "https://patches.dpdk.org/series/17305/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/94169/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/94169/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 50481A0C44;\n\tMon, 14 Jun 2021 16:37:14 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 322024068E;\n\tMon, 14 Jun 2021 16:37:14 +0200 (CEST)",
            "from mail-pf1-f182.google.com (mail-pf1-f182.google.com\n [209.85.210.182])\n by mails.dpdk.org (Postfix) with ESMTP id B2D62411E3\n for <dev@dpdk.org>; Sun, 13 Jun 2021 02:07:41 +0200 (CEST)",
            "by mail-pf1-f182.google.com with SMTP id s14so7601424pfd.9\n for <dev@dpdk.org>; Sat, 12 Jun 2021 17:07:41 -0700 (PDT)",
            "from localhost.localdomain ([192.19.223.252])\n by smtp.gmail.com with ESMTPSA id gg22sm12774609pjb.17.2021.06.12.17.07.33\n (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);\n Sat, 12 Jun 2021 17:07:36 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com;\n s=google;\n h=from:to:cc:subject:date:message-id:in-reply-to:references\n :mime-version; bh=h1T2BjruzjGxclivsyIlnQMfFJVvowSkz1dbWcS/D1U=;\n b=ZVEc+r/s00IX+aO/jlumHDqKCaMRpnoMYVoXWFZp1WClhHxZTiFEzlThNPIKpNYcsY\n nbtkcAjZ87gOjg37v4+huCSxQCW0nmoNcc2umh4TuFHcg57Yq9VYmcrxYUZnqM4u+1UM\n Tkxnux5thXVZst4Tg8Y8RYOzLTSdoBLECUlpc=",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20161025;\n h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n :references:mime-version;\n bh=h1T2BjruzjGxclivsyIlnQMfFJVvowSkz1dbWcS/D1U=;\n b=VOG09isDcxTVsmySHGDLLrrjQlEdYd06zKGd8fcNkx4Wsevi7jiMMM4PGxa5wlssS0\n dG1x8jAnBbYYBQVcnVTi5Y+WyWonqpmwfV6ZAk4SovpZLU7SZGlh30mWlKvHCtm7vRc9\n ingTlBrg2uZwwlD2IwJ7viiX2tc1eBXGI5W8NG8GdORzZ7EhauWI2ddfOnYUtQTb40MF\n Xy5lGKS2lISfphHMNNtFkeX6wOfrt10iU55PjYcfb93MzK7EdqCIuR5vrNq1+Fxwdcak\n 2RXPgBhyzOMYc+72346uKVtbYmQgo71OOrds4y7O+ILlchAriA2vgM5uOc975iPtUj2I\n odxA==",
        "X-Gm-Message-State": "AOAM532XaFHmMT54ZBuVw4fBg2Ff99bivX3UvVJKgOQ+KDp50ZH4pkOQ\n 1ZbiBTxnmKDYwEyjh9fQnQxKHTsSffyfmATdvf+rOmEZO2FnSVwibC8FHT7sas1a+P8xKSDuM2t\n BnKsRjVjUi8sqaG7+yHWCv6vKBOvX6VjFI97Zr6pxVdzi+xduEzw2HJhoSIx1J9U=",
        "X-Google-Smtp-Source": "\n ABdhPJwEaKCmC9YZscw24p5uq2E/qBH2NS/c0ikJ4bKjZYCsb1I202EG4DhR/Vx254CayeNu/MYZ/Q==",
        "X-Received": "by 2002:a63:2046:: with SMTP id r6mr8943865pgm.359.1623542858552;\n Sat, 12 Jun 2021 17:07:38 -0700 (PDT)",
        "From": "Ajit Khaparde <ajit.khaparde@broadcom.com>",
        "To": "dev@dpdk.org",
        "Cc": "Kishore Padmanabha <kishore.padmanabha@broadcom.com>,\n Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com>,\n Mike Baucom <michael.baucom@broadcom.com>",
        "Date": "Sat, 12 Jun 2021 17:06:21 -0700",
        "Message-Id": "<20210613000652.28191-28-ajit.khaparde@broadcom.com>",
        "X-Mailer": "git-send-email 2.21.1 (Apple Git-122.3)",
        "In-Reply-To": "<20210613000652.28191-1-ajit.khaparde@broadcom.com>",
        "References": "<20210530085929.29695-1-venkatkumar.duvvuru@broadcom.com>\n <20210613000652.28191-1-ajit.khaparde@broadcom.com>",
        "MIME-Version": "1.0",
        "Content-Type": "multipart/signed; protocol=\"application/pkcs7-signature\";\n micalg=sha-256; boundary=\"00000000000071c7bc05c49a874e\"",
        "X-Mailman-Approved-At": "Mon, 14 Jun 2021 16:37:12 +0200",
        "X-Content-Filtered-By": "Mailman/MimeDel 2.1.29",
        "Subject": "[dpdk-dev] [PATCH v2 27/58] net/bnxt: add support for generic table\n processing",
        "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: Kishore Padmanabha <kishore.padmanabha@broadcom.com>\n\nAdded support for generic table processing, this feature shall\nenable support for shared resource like mirror and TCAM\ncache tables.\n\nSigned-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com>\nSigned-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com>\nReviewed-by: Mike Baucom <michael.baucom@broadcom.com>\nReviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>\n---\n drivers/net/bnxt/tf_ulp/meson.build           |    1 +\n drivers/net/bnxt/tf_ulp/ulp_gen_tbl.c         |  311 ++\n drivers/net/bnxt/tf_ulp/ulp_gen_tbl.h         |  142 +\n drivers/net/bnxt/tf_ulp/ulp_mapper.c          |  637 ++-\n drivers/net/bnxt/tf_ulp/ulp_mapper.h          |   15 +-\n .../net/bnxt/tf_ulp/ulp_template_db_enum.h    |   65 +-\n .../tf_ulp/ulp_template_db_stingray_class.c   | 3509 ++++++++++++++++-\n drivers/net/bnxt/tf_ulp/ulp_template_db_tbl.c |   43 +-\n .../tf_ulp/ulp_template_db_wh_plus_class.c    | 3509 ++++++++++++++++-\n drivers/net/bnxt/tf_ulp/ulp_template_struct.h |   14 +\n drivers/net/bnxt/tf_ulp/ulp_utils.c           |  112 +-\n drivers/net/bnxt/tf_ulp/ulp_utils.h           |   68 +\n 12 files changed, 7666 insertions(+), 760 deletions(-)\n create mode 100644 drivers/net/bnxt/tf_ulp/ulp_gen_tbl.c\n create mode 100644 drivers/net/bnxt/tf_ulp/ulp_gen_tbl.h",
    "diff": "diff --git a/drivers/net/bnxt/tf_ulp/meson.build b/drivers/net/bnxt/tf_ulp/meson.build\nindex 98cbdf3177..611d7ab58e 100644\n--- a/drivers/net/bnxt/tf_ulp/meson.build\n+++ b/drivers/net/bnxt/tf_ulp/meson.build\n@@ -22,6 +22,7 @@ sources += files(\n         'ulp_def_rules.c',\n         'ulp_fc_mgr.c',\n         'ulp_tun.c',\n+        'ulp_gen_tbl.c',\n         'ulp_template_db_wh_plus_act.c',\n         'ulp_template_db_wh_plus_class.c',\n         'ulp_template_db_stingray_act.c',\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_gen_tbl.c b/drivers/net/bnxt/tf_ulp/ulp_gen_tbl.c\nnew file mode 100644\nindex 0000000000..0a15789c4e\n--- /dev/null\n+++ b/drivers/net/bnxt/tf_ulp/ulp_gen_tbl.c\n@@ -0,0 +1,311 @@\n+/* SPDX-License-Identifier: BSD-3-Clause\n+ * Copyright(c) 2014-2021 Broadcom\n+ * All rights reserved.\n+ */\n+\n+#include <rte_log.h>\n+#include <rte_malloc.h>\n+#include \"ulp_mapper.h\"\n+#include \"ulp_flow_db.h\"\n+\n+/* Retrieve the generic table  initialization parameters for the tbl_idx */\n+static struct bnxt_ulp_generic_tbl_params*\n+ulp_mapper_gen_tbl_params_get(uint32_t tbl_idx)\n+{\n+\tif (tbl_idx >= BNXT_ULP_GEN_TBL_MAX_SZ)\n+\t\treturn NULL;\n+\n+\treturn &ulp_generic_tbl_params[tbl_idx];\n+}\n+\n+/*\n+ * Initialize the generic table list\n+ *\n+ * mapper_data [in] Pointer to the mapper data and the generic table is\n+ * part of it\n+ *\n+ * returns 0 on success\n+ */\n+int32_t\n+ulp_mapper_generic_tbl_list_init(struct bnxt_ulp_mapper_data *mapper_data)\n+{\n+\tstruct bnxt_ulp_generic_tbl_params *tbl;\n+\tstruct ulp_mapper_gen_tbl_list *entry;\n+\tuint32_t idx, size;\n+\n+\t/* Allocate the generic tables. */\n+\tfor (idx = 0; idx < BNXT_ULP_GEN_TBL_MAX_SZ; idx++) {\n+\t\ttbl = ulp_mapper_gen_tbl_params_get(idx);\n+\t\tif (!tbl) {\n+\t\t\tBNXT_TF_DBG(ERR, \"Failed to get gen table parms %d\\n\",\n+\t\t\t\t    idx);\n+\t\t\treturn -EINVAL;\n+\t\t}\n+\t\tentry = &mapper_data->gen_tbl_list[idx];\n+\t\tif (tbl->result_num_entries != 0) {\n+\t\t\t/* add 4 bytes for reference count */\n+\t\t\tentry->mem_data_size = (tbl->result_num_entries + 1) *\n+\t\t\t\t(tbl->result_byte_size + sizeof(uint32_t));\n+\n+\t\t\t/* allocate the big chunk of memory */\n+\t\t\tentry->mem_data = rte_zmalloc(\"ulp mapper gen tbl\",\n+\t\t\t\t\t\t      entry->mem_data_size, 0);\n+\t\t\tif (!entry->mem_data) {\n+\t\t\t\tBNXT_TF_DBG(ERR,\n+\t\t\t\t\t    \"Failed to allocate gen table %d\\n\",\n+\t\t\t\t\t    idx);\n+\t\t\t\treturn -ENOMEM;\n+\t\t\t}\n+\t\t\t/* Populate the generic table container */\n+\t\t\tentry->container.num_elem = tbl->result_num_entries;\n+\t\t\tentry->container.byte_data_size = tbl->result_byte_size;\n+\t\t\tentry->container.ref_count =\n+\t\t\t\t(uint32_t *)entry->mem_data;\n+\t\t\tsize = sizeof(uint32_t) * (tbl->result_num_entries + 1);\n+\t\t\tentry->container.byte_data = &entry->mem_data[size];\n+\t\t\tentry->container.byte_order = tbl->result_byte_order;\n+\t\t}\n+\t}\n+\t/* success */\n+\treturn 0;\n+}\n+\n+/*\n+ * Free the generic table list\n+ *\n+ * mapper_data [in] Pointer to the mapper data and the generic table is\n+ * part of it\n+ *\n+ * returns 0 on success\n+ */\n+int32_t\n+ulp_mapper_generic_tbl_list_deinit(struct bnxt_ulp_mapper_data *mapper_data)\n+{\n+\tstruct ulp_mapper_gen_tbl_list *tbl_list;\n+\tuint32_t idx;\n+\n+\t/* iterate the generic table. */\n+\tfor (idx = 0; idx < BNXT_ULP_GEN_TBL_MAX_SZ; idx++) {\n+\t\ttbl_list = &mapper_data->gen_tbl_list[idx];\n+\t\tif (tbl_list->mem_data) {\n+\t\t\trte_free(tbl_list->mem_data);\n+\t\t\ttbl_list->mem_data = NULL;\n+\t\t}\n+\t}\n+\t/* success */\n+\treturn 0;\n+}\n+\n+/*\n+ * Get the generic table list entry\n+ *\n+ * ulp_ctxt [in] - Ptr to ulp_context\n+ * tbl_idx [in] -  Table index to the generic table list\n+ * key [in] - Key index to the table\n+ * entry [out] - output will include the entry if found\n+ *\n+ * returns 0 on success.\n+ */\n+int32_t\n+ulp_mapper_gen_tbl_entry_get(struct bnxt_ulp_context *ulp,\n+\t\t\t     uint32_t tbl_idx,\n+\t\t\t     uint32_t key,\n+\t\t\t     struct ulp_mapper_gen_tbl_entry *entry)\n+{\n+\tstruct bnxt_ulp_mapper_data *mapper_data;\n+\tstruct ulp_mapper_gen_tbl_list *tbl_list;\n+\n+\tmapper_data = bnxt_ulp_cntxt_ptr2_mapper_data_get(ulp);\n+\tif (!mapper_data || tbl_idx >= BNXT_ULP_GEN_TBL_MAX_SZ ||\n+\t    !entry) {\n+\t\tBNXT_TF_DBG(ERR, \"invalid arguments %x:%x\\n\", tbl_idx, key);\n+\t\treturn -EINVAL;\n+\t}\n+\t/* populate the output and return the values */\n+\ttbl_list = &mapper_data->gen_tbl_list[tbl_idx];\n+\tif (key > tbl_list->container.num_elem) {\n+\t\tBNXT_TF_DBG(ERR, \"invalid key %x:%x\\n\", key,\n+\t\t\t    tbl_list->container.num_elem);\n+\t\treturn -EINVAL;\n+\t}\n+\tentry->ref_count = &tbl_list->container.ref_count[key];\n+\tentry->byte_data_size = tbl_list->container.byte_data_size;\n+\tentry->byte_data = &tbl_list->container.byte_data[key *\n+\t\tentry->byte_data_size];\n+\tentry->byte_order = tbl_list->container.byte_order;\n+\treturn 0;\n+}\n+\n+/*\n+ * utility function to calculate the table idx\n+ *\n+ * res_sub_type [in] - Resource sub type\n+ * dir [in] - Direction\n+ *\n+ * returns None\n+ */\n+int32_t\n+ulp_mapper_gen_tbl_idx_calculate(uint32_t res_sub_type, uint32_t dir)\n+{\n+\tint32_t tbl_idx;\n+\n+\t/* Validate for direction */\n+\tif (dir >= TF_DIR_MAX) {\n+\t\tBNXT_TF_DBG(ERR, \"invalid argument %x\\n\", dir);\n+\t\treturn -EINVAL;\n+\t}\n+\ttbl_idx = (res_sub_type << 1) | (dir & 0x1);\n+\tif (tbl_idx >= BNXT_ULP_GEN_TBL_MAX_SZ) {\n+\t\tBNXT_TF_DBG(ERR, \"invalid table index %x\\n\", tbl_idx);\n+\t\treturn -EINVAL;\n+\t}\n+\treturn tbl_idx;\n+}\n+\n+/*\n+ * Set the data in the generic table entry\n+ *\n+ * entry [in] - generic table entry\n+ * offset [in] - The offset in bits where the data has to be set\n+ * len [in] - The length of the data in bits to be set\n+ * data [in] - pointer to the data to be used for setting the value.\n+ *\n+ * returns 0 on success\n+ */\n+int32_t\n+ulp_mapper_gen_tbl_entry_data_set(struct ulp_mapper_gen_tbl_entry *entry,\n+\t\t\t\t  uint32_t offset, uint32_t len, uint8_t *data)\n+{\n+\t/* validate the null arguments */\n+\tif (!entry || !data) {\n+\t\tBNXT_TF_DBG(ERR, \"invalid argument\\n\");\n+\t\treturn -EINVAL;\n+\t}\n+\n+\t/* check the size of the buffer for validation */\n+\tif ((offset + len) > ULP_BYTE_2_BITS(entry->byte_data_size)) {\n+\t\tBNXT_TF_DBG(ERR, \"invalid offset or length %x:%x:%x\\n\",\n+\t\t\t    offset, len, entry->byte_data_size);\n+\t\treturn -EINVAL;\n+\t}\n+\n+\tif (entry->byte_order == BNXT_ULP_BYTE_ORDER_LE) {\n+\t\tif (ulp_bs_push_lsb(entry->byte_data, offset, len, data) !=\n+\t\t    len) {\n+\t\t\tBNXT_TF_DBG(ERR, \"write failed offset = %x, len =%x\\n\",\n+\t\t\t\t    offset, len);\n+\t\t\treturn -EIO;\n+\t\t}\n+\t} else {\n+\t\tif (ulp_bs_push_msb(entry->byte_data, offset, len, data) !=\n+\t\t    len) {\n+\t\t\tBNXT_TF_DBG(ERR, \"write failed offset = %x, len =%x\\n\",\n+\t\t\t\t    offset, len);\n+\t\t\treturn -EIO;\n+\t\t}\n+\t}\n+\treturn 0;\n+}\n+\n+/*\n+ * Get the data in the generic table entry\n+ *\n+ * entry [in] - generic table entry\n+ * offset [in] - The offset in bits where the data has to get\n+ * len [in] - The length of the data in bits to be get\n+ * data [out] - pointer to the data to be used for setting the value.\n+ * data_size [in] - The size of data in bytes\n+ *\n+ * returns 0 on success\n+ */\n+int32_t\n+ulp_mapper_gen_tbl_entry_data_get(struct ulp_mapper_gen_tbl_entry *entry,\n+\t\t\t\t  uint32_t offset, uint32_t len, uint8_t *data,\n+\t\t\t\t  uint32_t data_size)\n+{\n+\t/* validate the null arguments */\n+\tif (!entry || !data) {\n+\t\tBNXT_TF_DBG(ERR, \"invalid argument\\n\");\n+\t\treturn -EINVAL;\n+\t}\n+\n+\t/* check the size of the buffer for validation */\n+\tif ((offset + len) > ULP_BYTE_2_BITS(entry->byte_data_size) ||\n+\t    len > ULP_BYTE_2_BITS(data_size)) {\n+\t\tBNXT_TF_DBG(ERR, \"invalid offset or length %x:%x:%x\\n\",\n+\t\t\t    offset, len, entry->byte_data_size);\n+\t\treturn -EINVAL;\n+\t}\n+\tif (entry->byte_order == BNXT_ULP_BYTE_ORDER_LE)\n+\t\tulp_bs_pull_lsb(entry->byte_data, data, data_size, offset, len);\n+\telse\n+\t\tulp_bs_pull_msb(entry->byte_data, data, offset, len);\n+\n+\treturn 0;\n+}\n+\n+/*\n+ * Free the generic table list entry\n+ *\n+ * ulp_ctx [in] - Pointer to the ulp context\n+ * res [in] - Pointer to flow db resource entry\n+ *\n+ * returns 0 on success\n+ */\n+int32_t\n+ulp_mapper_gen_tbl_res_free(struct bnxt_ulp_context *ulp_ctx,\n+\t\t\t    struct ulp_flow_db_res_params *res)\n+{\n+\tstruct ulp_mapper_gen_tbl_entry entry;\n+\tint32_t tbl_idx;\n+\tuint32_t fid;\n+\n+\t/* Extract the resource sub type and direction */\n+\ttbl_idx = ulp_mapper_gen_tbl_idx_calculate(res->resource_sub_type,\n+\t\t\t\t\t\t   res->direction);\n+\tif (tbl_idx < 0) {\n+\t\tBNXT_TF_DBG(ERR, \"invalid argument %x:%x\\n\",\n+\t\t\t    res->resource_sub_type, res->direction);\n+\t\treturn -EINVAL;\n+\t}\n+\n+\t/* Get the generic table entry*/\n+\tif (ulp_mapper_gen_tbl_entry_get(ulp_ctx, tbl_idx, res->resource_hndl,\n+\t\t\t\t\t &entry)) {\n+\t\tBNXT_TF_DBG(ERR, \"Gen tbl entry get failed %x:%\" PRIX64 \"\\n\",\n+\t\t\t    tbl_idx, res->resource_hndl);\n+\t\treturn -EINVAL;\n+\t}\n+\n+\t/* Decrement the reference count */\n+\tif (!ULP_GEN_TBL_REF_CNT(&entry)) {\n+\t\tBNXT_TF_DBG(ERR, \"generic table corrupt %x:%\" PRIX64 \"\\n\",\n+\t\t\t    tbl_idx, res->resource_hndl);\n+\t\treturn -EINVAL;\n+\t}\n+\tULP_GEN_TBL_REF_CNT_DEC(&entry);\n+\n+\t/* retain the details since there are other users */\n+\tif (ULP_GEN_TBL_REF_CNT(&entry))\n+\t\treturn 0;\n+\n+\t/* Delete the generic table entry. First extract the fid */\n+\tif (ulp_mapper_gen_tbl_entry_data_get(&entry, ULP_GEN_TBL_FID_OFFSET,\n+\t\t\t\t\t      ULP_GEN_TBL_FID_SIZE_BITS,\n+\t\t\t\t\t      (uint8_t *)&fid,\n+\t\t\t\t\t      sizeof(fid))) {\n+\t\tBNXT_TF_DBG(ERR, \"Unable to get fid %x:%\" PRIX64 \"\\n\",\n+\t\t\t    tbl_idx, res->resource_hndl);\n+\t\treturn -EINVAL;\n+\t}\n+\n+\t/* Destroy the flow associated with the shared flow id */\n+\tif (ulp_mapper_flow_destroy(ulp_ctx, BNXT_ULP_FDB_TYPE_REGULAR,\n+\t\t\t\t    fid))\n+\t\tBNXT_TF_DBG(ERR, \"Error in deleting shared flow id %x\\n\", fid);\n+\n+\t/* clear the byte data of the generic table entry */\n+\tmemset(entry.byte_data, 0, entry.byte_data_size);\n+\n+\treturn 0;\n+}\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_gen_tbl.h b/drivers/net/bnxt/tf_ulp/ulp_gen_tbl.h\nnew file mode 100644\nindex 0000000000..c8a1112af4\n--- /dev/null\n+++ b/drivers/net/bnxt/tf_ulp/ulp_gen_tbl.h\n@@ -0,0 +1,142 @@\n+/* SPDX-License-Identifier: BSD-3-Clause\n+ * Copyright(c) 2014-2021 Broadcom\n+ * All rights reserved.\n+ */\n+\n+#ifndef _ULP_GEN_TBL_H_\n+#define _ULP_GEN_TBL_H_\n+\n+/* Macros for reference count manipulation */\n+#define ULP_GEN_TBL_REF_CNT_INC(entry) {*(entry)->ref_count += 1; }\n+#define ULP_GEN_TBL_REF_CNT_DEC(entry) {*(entry)->ref_count -= 1; }\n+#define ULP_GEN_TBL_REF_CNT(entry) (*(entry)->ref_count)\n+\n+#define ULP_GEN_TBL_FID_OFFSET\t\t0\n+#define ULP_GEN_TBL_FID_SIZE_BITS\t32\n+\n+/* Structure to pass the generic table values across APIs */\n+struct ulp_mapper_gen_tbl_entry {\n+\tuint32_t\t\t*ref_count;\n+\tuint32_t\t\tbyte_data_size;\n+\tuint8_t\t\t\t*byte_data;\n+\tenum bnxt_ulp_byte_order\tbyte_order;\n+};\n+\n+/*\n+ * Structure to store the generic tbl container\n+ * The ref count and byte data contain list of \"num_elem\" elements.\n+ * The size of each entry in byte_data is of size byte_data_size.\n+ */\n+struct ulp_mapper_gen_tbl_cont {\n+\tuint32_t\t\t\tnum_elem;\n+\tuint32_t\t\t\tbyte_data_size;\n+\tenum bnxt_ulp_byte_order\tbyte_order;\n+\t/* Reference count to track number of users*/\n+\tuint32_t\t\t\t*ref_count;\n+\t/* First 4 bytes is either tcam_idx or fid and rest are identities */\n+\tuint8_t\t\t\t\t*byte_data;\n+};\n+\n+/* Structure to store the generic tbl container */\n+struct ulp_mapper_gen_tbl_list {\n+\tstruct ulp_mapper_gen_tbl_cont\tcontainer;\n+\tuint32_t\t\t\tmem_data_size;\n+\tuint8_t\t\t\t\t*mem_data;\n+};\n+\n+/* Forward declaration */\n+struct bnxt_ulp_mapper_data;\n+struct ulp_flow_db_res_params;\n+\n+/*\n+ * Initialize the generic table list\n+ *\n+ * mapper_data [in] Pointer to the mapper data and the generic table is\n+ * part of it\n+ *\n+ * returns 0 on success\n+ */\n+int32_t\n+ulp_mapper_generic_tbl_list_init(struct bnxt_ulp_mapper_data *mapper_data);\n+\n+/*\n+ * Free the generic table list\n+ *\n+ * mapper_data [in] Pointer to the mapper data and the generic table is\n+ * part of it\n+ *\n+ * returns 0 on success\n+ */\n+int32_t\n+ulp_mapper_generic_tbl_list_deinit(struct bnxt_ulp_mapper_data *mapper_data);\n+\n+/*\n+ * Get the generic table list entry\n+ *\n+ * ulp_ctxt [in] - Ptr to ulp_context\n+ * tbl_idx [in] -  Table index to the generic table list\n+ * key [in] - Key index to the table\n+ * entry [out] - output will include the entry if found\n+ *\n+ * returns 0 on success.\n+ */\n+int32_t\n+ulp_mapper_gen_tbl_entry_get(struct bnxt_ulp_context *ulp,\n+\t\t\t     uint32_t tbl_idx,\n+\t\t\t     uint32_t key,\n+\t\t\t     struct ulp_mapper_gen_tbl_entry *entry);\n+\n+/*\n+ * utility function to calculate the table idx\n+ *\n+ * res_sub_type [in] - Resource sub type\n+ * dir [in] - direction\n+ *\n+ * returns None\n+ */\n+int32_t\n+ulp_mapper_gen_tbl_idx_calculate(uint32_t res_sub_type, uint32_t dir);\n+\n+/*\n+ * Set the data in the generic table entry\n+ *\n+ * entry [in] - generic table entry\n+ * offset [in] - The offset in bits where the data has to be set\n+ * len [in] - The length of the data in bits to be set\n+ * data [in] - pointer to the data to be used for setting the value.\n+ *\n+ * returns 0 on success\n+ */\n+int32_t\n+ulp_mapper_gen_tbl_entry_data_set(struct ulp_mapper_gen_tbl_entry *entry,\n+\t\t\t\t  uint32_t offset, uint32_t len, uint8_t *data);\n+\n+/*\n+ * Get the data in the generic table entry\n+ *\n+ * entry [in] - generic table entry\n+ * offset [in] - The offset in bits where the data has to get\n+ * len [in] - The length of the data in bits to be get\n+ * data [out] - pointer to the data to be used for setting the value.\n+ * data_size [in] - The size of data in bytes\n+ *\n+ * returns 0 on success\n+ */\n+int32_t\n+ulp_mapper_gen_tbl_entry_data_get(struct ulp_mapper_gen_tbl_entry *entry,\n+\t\t\t\t  uint32_t offset, uint32_t len, uint8_t *data,\n+\t\t\t\t  uint32_t data_size);\n+\n+/*\n+ * Free the generic table list entry\n+ *\n+ * ulp_ctx [in] - Pointer to the ulp context\n+ * res [in] - Pointer to flow db resource entry\n+ *\n+ * returns 0 on success\n+ */\n+int32_t\n+ulp_mapper_gen_tbl_res_free(struct bnxt_ulp_context *ulp_ctx,\n+\t\t\t    struct ulp_flow_db_res_params *res);\n+\n+#endif /* _ULP_EN_TBL_H_ */\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_mapper.c b/drivers/net/bnxt/tf_ulp/ulp_mapper.c\nindex 4e06ae9ca1..7037297922 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_mapper.c\n+++ b/drivers/net/bnxt/tf_ulp/ulp_mapper.c\n@@ -102,7 +102,7 @@ ulp_mapper_resource_ident_allocate(struct bnxt_ulp_context *ulp_ctx,\n \trc = tf_alloc_identifier(tfp, &iparms);\n \tif (rc) {\n \t\tBNXT_TF_DBG(ERR, \"Failed to alloc identifier [%s][%d]\\n\",\n-\t\t\t    (iparms.dir == TF_DIR_RX) ? \"RX\" : \"TX\",\n+\t\t\t    tf_dir_2_str(iparms.dir),\n \t\t\t    iparms.ident_type);\n \t\treturn rc;\n \t}\n@@ -160,8 +160,7 @@ ulp_mapper_resource_index_tbl_alloc(struct bnxt_ulp_context *ulp_ctx,\n \trc = tf_alloc_tbl_entry(tfp, &aparms);\n \tif (rc) {\n \t\tBNXT_TF_DBG(ERR, \"Failed to alloc identifier [%s][%d]\\n\",\n-\t\t\t    (aparms.dir == TF_DIR_RX) ? \"RX\" : \"TX\",\n-\t\t\t    aparms.type);\n+\t\t\t    tf_dir_2_str(aparms.dir), aparms.type);\n \t\treturn rc;\n \t}\n \n@@ -181,16 +180,6 @@ ulp_mapper_resource_index_tbl_alloc(struct bnxt_ulp_context *ulp_ctx,\n \treturn rc;\n }\n \n-/* Retrieve the cache initialization parameters for the tbl_idx */\n-static struct bnxt_ulp_cache_tbl_params *\n-ulp_mapper_cache_tbl_params_get(uint32_t tbl_idx)\n-{\n-\tif (tbl_idx >= BNXT_ULP_CACHE_TBL_MAX_SZ)\n-\t\treturn NULL;\n-\n-\treturn &ulp_cache_tbl_params[tbl_idx];\n-}\n-\n /* Retrieve the global template table */\n static uint32_t *\n ulp_mapper_glb_template_table_get(uint32_t *num_entries)\n@@ -341,121 +330,6 @@ ulp_mapper_ident_fields_get(struct bnxt_ulp_mapper_parms *mparms,\n \treturn &dev_tbls->ident_list[idx];\n }\n \n-static struct bnxt_ulp_mapper_cache_entry *\n-ulp_mapper_cache_entry_get(struct bnxt_ulp_context *ulp,\n-\t\t\t   uint32_t id,\n-\t\t\t   uint16_t key)\n-{\n-\tstruct bnxt_ulp_mapper_data *mapper_data;\n-\n-\tmapper_data = bnxt_ulp_cntxt_ptr2_mapper_data_get(ulp);\n-\tif (!mapper_data || id >= BNXT_ULP_CACHE_TBL_MAX_SZ ||\n-\t    !mapper_data->cache_tbl[id]) {\n-\t\tBNXT_TF_DBG(ERR, \"Unable to acquire the cache tbl (%d)\\n\", id);\n-\t\treturn NULL;\n-\t}\n-\n-\treturn &mapper_data->cache_tbl[id][key];\n-}\n-\n-/*\n- * Concatenates the tbl_type and tbl_id into a 32bit value for storing in the\n- * resource_type.  This is done to conserve memory since both the tbl_type and\n- * tbl_id are 16bit.\n- */\n-static inline void\n-ulp_mapper_cache_res_type_set(struct ulp_flow_db_res_params *res,\n-\t\t\t      uint16_t tbl_type,\n-\t\t\t      uint16_t tbl_id)\n-{\n-\tres->resource_type = tbl_type;\n-\tres->resource_sub_type = tbl_id;\n-}\n-\n-/* Extracts the tbl_type and tbl_id from the 32bit resource type. */\n-static inline void\n-ulp_mapper_cache_res_type_get(struct ulp_flow_db_res_params *res,\n-\t\t\t      uint16_t *tbl_type,\n-\t\t\t      uint16_t *tbl_id)\n-{\n-\t*tbl_type = res->resource_type;\n-\t*tbl_id = res->resource_sub_type;\n-}\n-\n-static int32_t\n-ulp_mapper_cache_entry_free(struct bnxt_ulp_context *ulp,\n-\t\t\t    struct tf *tfp,\n-\t\t\t    struct ulp_flow_db_res_params *res)\n-{\n-\tstruct bnxt_ulp_mapper_cache_entry *cache_entry;\n-\tstruct tf_free_identifier_parms ident_parms;\n-\tstruct tf_free_tcam_entry_parms tcam_parms;\n-\tuint16_t table_id, table_type;\n-\tint32_t rc, trc, i;\n-\n-\t/*\n-\t * The table id, used for cache, and table_type, used for tcam, are\n-\t * both encoded within the resource.  We must first extract them to\n-\t * formulate the args for tf calls.\n-\t */\n-\tulp_mapper_cache_res_type_get(res, &table_type, &table_id);\n-\tcache_entry = ulp_mapper_cache_entry_get(ulp, table_id,\n-\t\t\t\t\t\t (uint16_t)res->resource_hndl);\n-\tif (!cache_entry || !cache_entry->ref_count) {\n-\t\tBNXT_TF_DBG(ERR, \"Cache entry (%d:%d) not valid on free.\\n\",\n-\t\t\t    table_id, (uint16_t)res->resource_hndl);\n-\t\treturn -EINVAL;\n-\t}\n-\n-\t/*\n-\t * See if we need to delete the entry.  The tcam and identifiers are all\n-\t * tracked by the cached entries reference count.  All are deleted when\n-\t * the reference count hit zero.\n-\t */\n-\tcache_entry->ref_count--;\n-\tif (cache_entry->ref_count)\n-\t\treturn 0;\n-\n-\t/*\n-\t * Need to delete the tcam entry and the allocated identifiers.\n-\t * In the event of a failure, need to try to delete the remaining\n-\t * resources before returning error.\n-\t */\n-\ttcam_parms.dir = res->direction;\n-\ttcam_parms.tcam_tbl_type = table_type;\n-\ttcam_parms.idx = cache_entry->tcam_idx;\n-\trc = tf_free_tcam_entry(tfp, &tcam_parms);\n-\tif (rc)\n-\t\tBNXT_TF_DBG(ERR, \"Failed to free tcam [%d][%s][0x%04x] rc=%d\\n\",\n-\t\t\t    table_type,\n-\t\t\t    (res->direction == TF_DIR_RX) ? \"RX\" : \"TX\",\n-\t\t\t    tcam_parms.idx, rc);\n-\n-\t/*\n-\t * Free the identifiers associated with the tcam entry.  Entries with\n-\t * negative one are considered uninitialized.\n-\t */\n-\tfor (i = 0; i < BNXT_ULP_CACHE_TBL_IDENT_MAX_NUM; i++) {\n-\t\tif (cache_entry->idents[i] == ULP_IDENTS_INVALID)\n-\t\t\tcontinue;\n-\n-\t\tident_parms.dir = res->direction;\n-\t\tident_parms.ident_type = cache_entry->ident_types[i];\n-\t\tident_parms.id = cache_entry->idents[i];\n-\t\ttrc = tf_free_identifier(tfp, &ident_parms);\n-\t\tif (trc) {\n-\t\t\tBNXT_TF_DBG(ERR, \"Failed to free identifier \"\n-\t\t\t\t    \"[%d][%s][0x%04x] rc=%d\\n\",\n-\t\t\t\t    ident_parms.ident_type,\n-\t\t\t\t    (res->direction == TF_DIR_RX) ? \"RX\" : \"TX\",\n-\t\t\t\t    ident_parms.id, trc);\n-\t\t\trc = trc;\n-\t\t}\n-\t}\n-\n-\treturn rc;\n-}\n-\n static inline int32_t\n ulp_mapper_tcam_entry_free(struct bnxt_ulp_context *ulp  __rte_unused,\n \t\t\t   struct tf *tfp,\n@@ -537,7 +411,6 @@ ulp_mapper_mark_free(struct bnxt_ulp_context *ulp,\n \t\t\t\t    res->resource_hndl);\n }\n \n-\n static inline int32_t\n ulp_mapper_parent_flow_free(struct bnxt_ulp_context *ulp,\n \t\t\t    uint32_t parent_fid,\n@@ -628,9 +501,9 @@ ulp_mapper_ident_process(struct bnxt_ulp_mapper_parms *parms,\n \n \trc = tf_alloc_identifier(tfp, &iparms);\n \tif (rc) {\n-\t\tBNXT_TF_DBG(ERR, \"Alloc ident %s:%d failed.\\n\",\n-\t\t\t    (iparms.dir == TF_DIR_RX) ? \"RX\" : \"TX\",\n-\t\t\t    iparms.ident_type);\n+\t\tBNXT_TF_DBG(ERR, \"Alloc ident %s:%s failed.\\n\",\n+\t\t\t    tf_dir_2_str(iparms.dir),\n+\t\t\t    tf_ident_2_str(iparms.ident_type));\n \t\treturn rc;\n \t}\n \n@@ -664,7 +537,6 @@ ulp_mapper_ident_process(struct bnxt_ulp_mapper_parms *parms,\n \t} else {\n \t\t*val = iparms.id;\n \t}\n-\n \treturn 0;\n \n error:\n@@ -677,7 +549,7 @@ ulp_mapper_ident_process(struct bnxt_ulp_mapper_parms *parms,\n \n \tBNXT_TF_DBG(ERR, \"Ident process failed for %s:%s\\n\",\n \t\t    ident->description,\n-\t\t    (tbl->direction == TF_DIR_RX) ? \"RX\" : \"TX\");\n+\t\t    tf_dir_2_str(tbl->direction));\n \treturn rc;\n }\n \n@@ -723,14 +595,12 @@ ulp_mapper_ident_extract(struct bnxt_ulp_mapper_parms *parms,\n \t/* Search identifier also increase the reference count */\n \trc = tf_search_identifier(tfp, &sparms);\n \tif (rc) {\n-\t\tBNXT_TF_DBG(ERR, \"Search ident %s:%x failed.\\n\",\n+\t\tBNXT_TF_DBG(ERR, \"Search ident %s:%s:%x failed.\\n\",\n \t\t\t    tf_dir_2_str(sparms.dir),\n+\t\t\t    tf_ident_2_str(sparms.ident_type),\n \t\t\t    sparms.search_id);\n \t\treturn rc;\n \t}\n-\tBNXT_TF_DBG(INFO, \"Search ident %s:%x.success.\\n\",\n-\t\t    tf_dir_2_str(sparms.dir),\n-\t\t    sparms.search_id);\n \n \t/* Write it to the regfile */\n \tid = (uint64_t)tfp_cpu_to_be_64(sparms.search_id);\n@@ -782,6 +652,7 @@ ulp_mapper_result_field_process(struct bnxt_ulp_mapper_parms *parms,\n {\n \tuint16_t idx, size_idx;\n \tuint8_t\t *val = NULL;\n+\tuint16_t write_idx = blob->write_idx;\n \tuint64_t regval;\n \tuint32_t val_size = 0, field_size = 0;\n \tuint64_t act_bit;\n@@ -1057,8 +928,8 @@ ulp_mapper_result_field_process(struct bnxt_ulp_mapper_parms *parms,\n \t\t}\n \t\tbreak;\n \tdefault:\n-\t\tBNXT_TF_DBG(ERR, \"invalid result mapper opcode 0x%x\\n\",\n-\t\t\t    fld->result_opcode);\n+\t\tBNXT_TF_DBG(ERR, \"invalid result mapper opcode 0x%x at %d\\n\",\n+\t\t\t    fld->result_opcode, write_idx);\n \t\treturn -EINVAL;\n \t}\n \treturn 0;\n@@ -1193,9 +1064,7 @@ ulp_mapper_keymask_field_process(struct bnxt_ulp_mapper_parms *parms,\n \t\tBNXT_TF_DBG(ERR, \"invalid keymask mapper opcode 0x%x\\n\",\n \t\t\t    opcode);\n \t\treturn -EINVAL;\n-\t\tbreak;\n \t}\n-\n \treturn 0;\n }\n \n@@ -1204,15 +1073,15 @@ ulp_mapper_mark_gfid_process(struct bnxt_ulp_mapper_parms *parms,\n \t\t\t     struct bnxt_ulp_mapper_tbl_info *tbl,\n \t\t\t     uint64_t flow_id)\n {\n-\tenum bnxt_ulp_mark_db_opcode mark_op = tbl->mark_db_opcode;\n \tstruct ulp_flow_db_res_params fid_parms;\n \tuint32_t mark, gfid, mark_flag;\n+\tenum bnxt_ulp_mark_db_opcode mark_op = tbl->mark_db_opcode;\n \tint32_t rc = 0;\n \n \tif (mark_op == BNXT_ULP_MARK_DB_OPCODE_NOP ||\n \t    !(mark_op == BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION &&\n-\t      ULP_BITMAP_ISSET(parms->act_bitmap->bits,\n-\t\t\t       BNXT_ULP_ACTION_BIT_MARK)))\n+\t     ULP_BITMAP_ISSET(parms->act_bitmap->bits,\n+\t\t\t      BNXT_ULP_ACTION_BIT_MARK)))\n \t\treturn rc; /* no need to perform gfid process */\n \n \t/* Get the mark id details from action property */\n@@ -1222,6 +1091,7 @@ ulp_mapper_mark_gfid_process(struct bnxt_ulp_mapper_parms *parms,\n \n \tTF_GET_GFID_FROM_FLOW_ID(flow_id, gfid);\n \tmark_flag  = BNXT_ULP_MARK_GLOBAL_HW_FID;\n+\n \trc = ulp_mark_db_mark_add(parms->ulp_ctx, mark_flag,\n \t\t\t\t  gfid, mark);\n \tif (rc) {\n@@ -1246,16 +1116,16 @@ static int32_t\n ulp_mapper_mark_act_ptr_process(struct bnxt_ulp_mapper_parms *parms,\n \t\t\t\tstruct bnxt_ulp_mapper_tbl_info *tbl)\n {\n-\tenum bnxt_ulp_mark_db_opcode mark_op = tbl->mark_db_opcode;\n \tstruct ulp_flow_db_res_params fid_parms;\n \tuint32_t act_idx, mark, mark_flag;\n \tuint64_t val64;\n+\tenum bnxt_ulp_mark_db_opcode mark_op = tbl->mark_db_opcode;\n \tint32_t rc = 0;\n \n \tif (mark_op == BNXT_ULP_MARK_DB_OPCODE_NOP ||\n \t    !(mark_op == BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION &&\n-\t      ULP_BITMAP_ISSET(parms->act_bitmap->bits,\n-\t\t\t       BNXT_ULP_ACTION_BIT_MARK)))\n+\t     ULP_BITMAP_ISSET(parms->act_bitmap->bits,\n+\t\t\t      BNXT_ULP_ACTION_BIT_MARK)))\n \t\treturn rc; /* no need to perform mark action process */\n \n \t/* Get the mark id details from action property */\n@@ -1473,19 +1343,6 @@ ulp_mapper_tcam_tbl_entry_write(struct bnxt_ulp_mapper_parms *parms,\n \t\t\t    tf_dir_2_str(sparms.dir), sparms.idx);\n \t\treturn -EIO;\n \t}\n-\tBNXT_TF_DBG(INFO, \"tcam[%s][%s][%x] write success.\\n\",\n-\t\t    tf_tcam_tbl_2_str(sparms.tcam_tbl_type),\n-\t\t    tf_dir_2_str(sparms.dir), sparms.idx);\n-\n-\t/* Update cache with TCAM index if the was cache allocated. */\n-\tif (parms->tcam_tbl_opc ==\n-\t    BNXT_ULP_MAPPER_TCAM_TBL_OPC_CACHE_ALLOC) {\n-\t\tif (!parms->cache_ptr) {\n-\t\t\tBNXT_TF_DBG(ERR, \"Unable to update cache\");\n-\t\t\treturn -EINVAL;\n-\t\t}\n-\t\tparms->cache_ptr->tcam_idx = idx;\n-\t}\n \n \t/* Mark action */\n \trc = ulp_mapper_mark_act_ptr_process(parms, tbl);\n@@ -1713,7 +1570,6 @@ ulp_mapper_tcam_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \t}\n \tif (rc)\n \t\tgoto error;\n-\n \t/*\n \t * Only link the entry to the flow db in the event that cache was not\n \t * used.\n@@ -1741,7 +1597,6 @@ ulp_mapper_tcam_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \t\t * entry does not use cache.\n \t\t */\n \t\tparms->tcam_tbl_opc = BNXT_ULP_MAPPER_TCAM_TBL_OPC_NORMAL;\n-\t\tparms->cache_ptr = NULL;\n \t}\n \n \treturn 0;\n@@ -1837,7 +1692,6 @@ ulp_mapper_em_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \t\t\treturn rc;\n \t\t}\n \t}\n-\n \t/* do the transpose for the internal EM keys */\n \tif (tbl->resource_func == BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE)\n \t\tulp_blob_perform_byte_reverse(&key);\n@@ -1964,7 +1818,7 @@ ulp_mapper_index_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \tfor (i = 0; i < (num_flds + encap_flds); i++) {\n \t\t/* set the swap index if encap swap bit is enabled */\n \t\tif (parms->device_params->encap_byte_swap && encap_flds &&\n-\t\t    (i == num_flds))\n+\t\t    i == num_flds)\n \t\t\tulp_blob_encap_swap_idx_set(&data);\n \n \t\t/* Process the result fields */\n@@ -2011,11 +1865,10 @@ ulp_mapper_index_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \t\trc = tf_set_tbl_entry(tfp, &sparms);\n \t\tif (rc) {\n \t\t\tBNXT_TF_DBG(ERR,\n-\t\t\t\t    \"Glbl Set table[%d][%s][%d] failed rc=%d\\n\",\n-\t\t\t\t    sparms.type,\n-\t\t\t\t    (sparms.dir == TF_DIR_RX) ? \"RX\" : \"TX\",\n-\t\t\t\t    sparms.idx,\n-\t\t\t\t    rc);\n+\t\t\t\t    \"Glbl Index table[%s][%s][%x] failed rc=%d\\n\",\n+\t\t\t\t    tf_tbl_type_2_str(sparms.type),\n+\t\t\t\t    tf_dir_2_str(sparms.dir),\n+\t\t\t\t    sparms.idx, rc);\n \t\t\treturn rc;\n \t\t}\n \t\treturn 0; /* success */\n@@ -2065,6 +1918,7 @@ ulp_mapper_index_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \t\t}\n \t\tindex = aparms.idx;\n \t}\n+\n \t/*\n \t * calculate the idx for the result record, for external EM the offset\n \t * needs to be shifted accordingly. If external non-inline table types\n@@ -2097,11 +1951,10 @@ ulp_mapper_index_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \n \t\trc = tf_set_tbl_entry(tfp, &sparms);\n \t\tif (rc) {\n-\t\t\tBNXT_TF_DBG(ERR, \"Set table[%d][%s][%d] failed rc=%d\\n\",\n-\t\t\t\t    sparms.type,\n-\t\t\t\t    (sparms.dir == TF_DIR_RX) ? \"RX\" : \"TX\",\n-\t\t\t\t    sparms.idx,\n-\t\t\t\t    rc);\n+\t\t\tBNXT_TF_DBG(ERR, \"Set table[%s][%s][%x] failed rc=%d\\n\",\n+\t\t\t\t    tf_tbl_type_2_str(sparms.type),\n+\t\t\t\t    tf_dir_2_str(sparms.dir),\n+\t\t\t\t    sparms.idx, rc);\n \t\t\tgoto error;\n \t\t}\n \t}\n@@ -2149,162 +2002,6 @@ ulp_mapper_index_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \treturn rc;\n }\n \n-static int32_t\n-ulp_mapper_cache_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n-\t\t\t     struct bnxt_ulp_mapper_tbl_info *tbl)\n-{\n-\tstruct bnxt_ulp_mapper_key_field_info *kflds;\n-\tstruct bnxt_ulp_mapper_cache_entry *cache_entry;\n-\tstruct bnxt_ulp_mapper_ident_info *idents;\n-\tuint32_t i, num_kflds = 0, num_idents = 0;\n-\tstruct ulp_flow_db_res_params fid_parms;\n-\tstruct tf_free_identifier_parms fparms;\n-\tuint16_t tmplen, tmp_ident;\n-\tstruct ulp_blob key;\n-\tuint8_t *cache_key;\n-\tuint64_t regval;\n-\tuint16_t *ckey;\n-\tint32_t rc;\n-\n-\t/* Get the key fields list and build the key. */\n-\tkflds = ulp_mapper_key_fields_get(parms, tbl, &num_kflds);\n-\tif (!kflds || !num_kflds) {\n-\t\tBNXT_TF_DBG(ERR, \"Failed to get key fields\\n\");\n-\t\treturn -EINVAL;\n-\t}\n-\tif (!ulp_blob_init(&key, tbl->key_bit_size,\n-\t\t\t   parms->device_params->byte_order)) {\n-\t\tBNXT_TF_DBG(ERR, \"Failed to alloc blob\\n\");\n-\t\treturn -EINVAL;\n-\t}\n-\tfor (i = 0; i < num_kflds; i++) {\n-\t\t/* Setup the key */\n-\t\trc = ulp_mapper_keymask_field_process(parms, tbl->direction,\n-\t\t\t\t\t\t      &kflds[i],\n-\t\t\t\t\t\t      &key, 1, \"Cache Key\");\n-\t\tif (rc) {\n-\t\t\tBNXT_TF_DBG(ERR,\n-\t\t\t\t    \"Failed to create key for Cache rc=%d\\n\",\n-\t\t\t\t    rc);\n-\t\t\treturn -EINVAL;\n-\t\t}\n-\t}\n-\n-\t/*\n-\t * Perform the lookup in the cache table with constructed key.  The\n-\t * cache_key is a byte array of tmplen, it needs to be converted to a\n-\t * index for the cache table.\n-\t */\n-\tcache_key = ulp_blob_data_get(&key, &tmplen);\n-\tckey = (uint16_t *)cache_key;\n-\n-\t/*\n-\t * The id computed based on resource sub type and direction where\n-\t * dir is the bit0 and rest of the bits come from resource\n-\t * sub type.\n-\t */\n-\tcache_entry = ulp_mapper_cache_entry_get(parms->ulp_ctx,\n-\t\t\t\t\t\t (tbl->resource_sub_type << 1 |\n-\t\t\t\t\t\t (tbl->direction & 0x1)),\n-\t\t\t\t\t\t *ckey);\n-\n-\t/*\n-\t * Get the identifier list for processing by both the hit and miss\n-\t * processing.\n-\t */\n-\tidents = ulp_mapper_ident_fields_get(parms, tbl, &num_idents);\n-\n-\tif (!cache_entry->ref_count) {\n-\t\t/* Initialize the cache entry */\n-\t\tcache_entry->tcam_idx = 0;\n-\t\tcache_entry->ref_count = 0;\n-\t\tfor (i = 0; i < BNXT_ULP_CACHE_TBL_IDENT_MAX_NUM; i++)\n-\t\t\tcache_entry->idents[i] = ULP_IDENTS_INVALID;\n-\n-\t\t/* Need to allocate identifiers for storing in the cache. */\n-\t\tfor (i = 0; i < num_idents; i++) {\n-\t\t\t/*\n-\t\t\t * Since we are using the cache, the identifier does not\n-\t\t\t * get added to the flow db.  Pass in the pointer to the\n-\t\t\t * tmp_ident.\n-\t\t\t */\n-\t\t\trc = ulp_mapper_ident_process(parms, tbl,\n-\t\t\t\t\t\t      &idents[i], &tmp_ident);\n-\t\t\tif (rc)\n-\t\t\t\tgoto error;\n-\n-\t\t\tcache_entry->ident_types[i] = idents[i].ident_type;\n-\t\t\tcache_entry->idents[i] = tmp_ident;\n-\t\t}\n-\n-\t\t/* Tell the TCAM processor to alloc an entry */\n-\t\tparms->tcam_tbl_opc = BNXT_ULP_MAPPER_TCAM_TBL_OPC_CACHE_ALLOC;\n-\t\t/* Store the cache key for use by the tcam process code */\n-\t\tparms->cache_ptr = cache_entry;\n-\t} else {\n-\t\t/* Cache hit, get values from result. */\n-\t\tfor (i = 0; i < num_idents; i++) {\n-\t\t\tregval = (uint64_t)cache_entry->idents[i];\n-\t\t\tif (!ulp_regfile_write(parms->regfile,\n-\t\t\t\t\t       idents[i].regfile_idx,\n-\t\t\t\t\t       tfp_cpu_to_be_64(regval))) {\n-\t\t\t\tBNXT_TF_DBG(ERR,\n-\t\t\t\t\t    \"Failed to write to regfile\\n\");\n-\t\t\t\treturn -EINVAL;\n-\t\t\t}\n-\t\t}\n-\t\t/*\n-\t\t * The cached entry is being used, so let the tcam processing\n-\t\t * know not to process this table.\n-\t\t */\n-\t\tparms->tcam_tbl_opc = BNXT_ULP_MAPPER_TCAM_TBL_OPC_CACHE_SKIP;\n-\t}\n-\n-\t/* Made through the cache processing, increment the reference count. */\n-\tcache_entry->ref_count++;\n-\n-\t/* Link the cache to the flow db. */\n-\tmemset(&fid_parms, 0, sizeof(fid_parms));\n-\tfid_parms.direction = tbl->direction;\n-\tfid_parms.resource_func\t= tbl->resource_func;\n-\n-\t/*\n-\t * Cache resource type is composed of table_type, resource\n-\t * sub type and direction, it needs to set appropriately via setter.\n-\t */\n-\tulp_mapper_cache_res_type_set(&fid_parms,\n-\t\t\t\t      tbl->resource_type,\n-\t\t\t\t      (tbl->resource_sub_type << 1 |\n-\t\t\t\t       (tbl->direction & 0x1)));\n-\tfid_parms.resource_hndl\t= (uint64_t)*ckey;\n-\tfid_parms.critical_resource = tbl->critical_resource;\n-\trc = ulp_flow_db_resource_add(parms->ulp_ctx,\n-\t\t\t\t      parms->flow_type,\n-\t\t\t\t      parms->fid,\n-\t\t\t\t      &fid_parms);\n-\tif (rc)\n-\t\tBNXT_TF_DBG(ERR, \"Failed to add cache to flow db.\\n\");\n-\n-\treturn rc;\n-error:\n-\t/*\n-\t * This error handling only gets called when the idents are being\n-\t * allocated for the cache on misses.  Using the num_idents that was\n-\t * previously set.\n-\t */\n-\tfor (i = 0; i < num_idents; i++) {\n-\t\tif (cache_entry->idents[i] == ULP_IDENTS_INVALID)\n-\t\t\tcontinue;\n-\n-\t\tfparms.dir = tbl->direction;\n-\t\tfparms.ident_type = idents[i].ident_type;\n-\t\tfparms.id = cache_entry->idents[i];\n-\t\ttf_free_identifier(parms->tfp, &fparms);\n-\t}\n-\n-\treturn rc;\n-}\n-\n static int32_t\n ulp_mapper_if_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \t\t\t  struct bnxt_ulp_mapper_tbl_info *tbl)\n@@ -2367,11 +2064,10 @@ ulp_mapper_if_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \n \trc = tf_set_if_tbl_entry(tfp, &iftbl_params);\n \tif (rc) {\n-\t\tBNXT_TF_DBG(ERR, \"Set table[%d][%s][%d] failed rc=%d\\n\",\n-\t\t\t    iftbl_params.type,\n-\t\t\t    (iftbl_params.dir == TF_DIR_RX) ? \"RX\" : \"TX\",\n-\t\t\t    iftbl_params.idx,\n-\t\t\t    rc);\n+\t\tBNXT_TF_DBG(ERR, \"Set table[%d][%s][%x] failed rc=%d\\n\",\n+\t\t\t    iftbl_params.type,/* TBD: add tf_if_tbl_2_str */\n+\t\t\t    tf_dir_2_str(iftbl_params.dir),\n+\t\t\t    iftbl_params.idx, rc);\n \t\treturn rc;\n \t}\n \n@@ -2382,6 +2078,218 @@ ulp_mapper_if_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n \treturn rc;\n }\n \n+/*\n+ * Process the identifier list in the generic table.\n+ * Extract the ident from the generic table entry and\n+ * write it to the reg file.\n+ */\n+static int32_t\n+ulp_mapper_gen_tbl_ident_scan(struct bnxt_ulp_mapper_parms *parms,\n+\t\t\t      struct bnxt_ulp_mapper_tbl_info *tbl,\n+\t\t\t      struct ulp_mapper_gen_tbl_entry *gen_tbl_ent)\n+{\n+\tstruct bnxt_ulp_mapper_ident_info *idents;\n+\tuint32_t i, idx, num_idents = 0;\n+\tint32_t rc = 0;\n+\n+\t/* Get the ident list */\n+\tidents = ulp_mapper_ident_fields_get(parms, tbl, &num_idents);\n+\n+\tfor (i = 0; i < num_idents; i++) {\n+\t\t/* Extract the index from the result byte data array */\n+\t\trc = ulp_mapper_gen_tbl_entry_data_get(gen_tbl_ent,\n+\t\t\t\t\t\t       idents[i].ident_bit_pos,\n+\t\t\t\t\t\t       idents[i].ident_bit_size,\n+\t\t\t\t\t\t       (uint8_t *)&idx,\n+\t\t\t\t\t\t       sizeof(idx));\n+\n+\t\t/* validate the extraction */\n+\t\tif (rc) {\n+\t\t\tBNXT_TF_DBG(ERR, \"failed to read %s:%x:%x\\n\",\n+\t\t\t\t    idents[i].description,\n+\t\t\t\t    idents[i].ident_bit_pos,\n+\t\t\t\t    idents[i].ident_bit_size);\n+\t\t\treturn -EINVAL;\n+\t\t}\n+\n+\t\t/* Write it to the regfile */\n+\t\tif (!ulp_regfile_write(parms->regfile,\n+\t\t\t\t       idents[i].regfile_idx, idx)) {\n+\t\t\tBNXT_TF_DBG(ERR, \"Regfile[%d] write failed.\\n\",\n+\t\t\t\t    idents[i].regfile_idx);\n+\t\t\treturn -EINVAL;\n+\t\t}\n+\t}\n+\treturn 0;\n+}\n+\n+/*\n+ * Process the identifier list in the generic table.\n+ * Write the ident to the generic table entry\n+ */\n+static int32_t\n+ulp_mapper_gen_tbl_ident_write(struct bnxt_ulp_mapper_parms *parms,\n+\t\t\t       struct bnxt_ulp_mapper_tbl_info *tbl,\n+\t\t\t       struct ulp_mapper_gen_tbl_entry *gen_tbl_ent)\n+{\n+\tstruct bnxt_ulp_mapper_ident_info *idents;\n+\tuint32_t i, num_idents = 0;\n+\tuint64_t idx;\n+\n+\t/* Get the ident list */\n+\tidents = ulp_mapper_ident_fields_get(parms, tbl, &num_idents);\n+\n+\tfor (i = 0; i < num_idents; i++) {\n+\t\t/* read from the regfile */\n+\t\tif (!ulp_regfile_read(parms->regfile, idents[i].regfile_idx,\n+\t\t\t\t      &idx)) {\n+\t\t\tBNXT_TF_DBG(ERR, \"Regfile[%d] write failed.\\n\",\n+\t\t\t\t    idents[i].regfile_idx);\n+\t\t\treturn -EINVAL;\n+\t\t}\n+\n+\t\t/* Update the gen tbl entry with the new data */\n+\t\tulp_mapper_gen_tbl_entry_data_set(gen_tbl_ent,\n+\t\t\t\t\t\t  idents[i].ident_bit_pos,\n+\t\t\t\t\t\t  idents[i].ident_bit_size,\n+\t\t\t\t\t\t  (uint8_t *)&idx);\n+\t}\n+\treturn 0;\n+}\n+\n+static int32_t\n+ulp_mapper_gen_tbl_process(struct bnxt_ulp_mapper_parms *parms,\n+\t\t\t   struct bnxt_ulp_mapper_tbl_info *tbl)\n+{\n+\tstruct bnxt_ulp_mapper_key_field_info *kflds;\n+\tstruct ulp_flow_db_res_params fid_parms;\n+\tstruct ulp_mapper_gen_tbl_entry gen_tbl_ent;\n+\tuint16_t tmplen;\n+\tstruct ulp_blob key;\n+\tuint8_t *cache_key;\n+\tint32_t tbl_idx;\n+\tuint32_t i, ckey, num_kflds = 0;\n+\tuint32_t gen_tbl_hit = 0, fdb_write = 0;\n+\tint32_t rc = 0;\n+\n+\t/* Get the key fields list and build the key. */\n+\tkflds = ulp_mapper_key_fields_get(parms, tbl, &num_kflds);\n+\tif (!kflds || !num_kflds) {\n+\t\tBNXT_TF_DBG(ERR, \"Failed to get key fields\\n\");\n+\t\treturn -EINVAL;\n+\t}\n+\tif (!ulp_blob_init(&key, tbl->key_bit_size,\n+\t\t\t   parms->device_params->byte_order)) {\n+\t\tBNXT_TF_DBG(ERR, \"Failed to alloc blob\\n\");\n+\t\treturn -EINVAL;\n+\t}\n+\tfor (i = 0; i < num_kflds; i++) {\n+\t\t/* Setup the key */\n+\t\trc = ulp_mapper_keymask_field_process(parms, tbl->direction,\n+\t\t\t\t\t\t      &kflds[i],\n+\t\t\t\t\t\t      &key, 1, \"Gen Tbl Key\");\n+\t\tif (rc) {\n+\t\t\tBNXT_TF_DBG(ERR,\n+\t\t\t\t    \"Failed to create key for Gen tbl rc=%d\\n\",\n+\t\t\t\t    rc);\n+\t\t\treturn -EINVAL;\n+\t\t}\n+\t}\n+\n+\t/* Calculate the table index for the generic table*/\n+\ttbl_idx = ulp_mapper_gen_tbl_idx_calculate(tbl->resource_sub_type,\n+\t\t\t\t\t\t   tbl->direction);\n+\tif (tbl_idx < 0) {\n+\t\tBNXT_TF_DBG(ERR, \"Invalid table index %x:%x\\n\",\n+\t\t\t    tbl->resource_sub_type, tbl->direction);\n+\t\treturn -EINVAL;\n+\t}\n+\n+\t/* The_key is a byte array convert it to a search index */\n+\tcache_key = ulp_blob_data_get(&key, &tmplen);\n+\tmemcpy(&ckey, cache_key, sizeof(ckey));\n+\t/* Get the generic table entry */\n+\trc = ulp_mapper_gen_tbl_entry_get(parms->ulp_ctx,\n+\t\t\t\t\t  tbl_idx, ckey, &gen_tbl_ent);\n+\tif (rc) {\n+\t\tBNXT_TF_DBG(ERR,\n+\t\t\t    \"Failed to create key for Gen tbl rc=%d\\n\", rc);\n+\t\treturn -EINVAL;\n+\t}\n+\tswitch (tbl->tbl_opcode) {\n+\tcase BNXT_ULP_GENERIC_TBL_OPC_READ:\n+\t\t/* check the reference count */\n+\t\tif (ULP_GEN_TBL_REF_CNT(&gen_tbl_ent)) {\n+\t\t\t/* Scan ident list and create the result blob*/\n+\t\t\trc = ulp_mapper_gen_tbl_ident_scan(parms, tbl,\n+\t\t\t\t\t\t\t   &gen_tbl_ent);\n+\t\t\tif (rc) {\n+\t\t\t\tBNXT_TF_DBG(ERR,\n+\t\t\t\t\t    \"Failed to scan ident list\\n\");\n+\t\t\t\treturn -EINVAL;\n+\t\t\t}\n+\t\t\t/* increment the reference count */\n+\t\t\tULP_GEN_TBL_REF_CNT_INC(&gen_tbl_ent);\n+\n+\t\t\t/* it is a hit */\n+\t\t\tgen_tbl_hit = 1;\n+\t\t\tfdb_write = 1;\n+\t\t}\n+\t\tbreak;\n+\tcase BNXT_ULP_GENERIC_TBL_OPC_WRITE:\n+\t\t/* check the reference count */\n+\t\tif (ULP_GEN_TBL_REF_CNT(&gen_tbl_ent)) {\n+\t\t\t/* a hit then error */\n+\t\t\tBNXT_TF_DBG(ERR, \"generic entry already present %x\\n\",\n+\t\t\t\t    ckey);\n+\t\t\treturn -EINVAL; /* success */\n+\t\t}\n+\n+\t\t/* Create the result blob from the ident list */\n+\t\trc = ulp_mapper_gen_tbl_ident_write(parms, tbl, &gen_tbl_ent);\n+\t\tif (rc) {\n+\t\t\tBNXT_TF_DBG(ERR,\n+\t\t\t\t    \"Failed to write  ident list\\n\");\n+\t\t\treturn -EINVAL;\n+\t\t}\n+\n+\t\t/* increment the reference count */\n+\t\tULP_GEN_TBL_REF_CNT_INC(&gen_tbl_ent);\n+\t\tfdb_write = 1;\n+\t\tbreak;\n+\tdefault:\n+\t\tBNXT_TF_DBG(ERR, \"Invalid table opcode %x\\n\", tbl->tbl_opcode);\n+\t\treturn -EINVAL;\n+\t}\n+\n+\t/* Set the generic entry hit */\n+\trc = ulp_regfile_write(parms->regfile,\n+\t\t\t       BNXT_ULP_REGFILE_INDEX_GENERIC_TBL_HIT,\n+\t\t\t       gen_tbl_hit);\n+\tif (!rc) {\n+\t\tBNXT_TF_DBG(ERR, \"Write regfile[%d] failed\\n\",\n+\t\t\t    tbl->index_operand);\n+\t\treturn -EIO;\n+\t}\n+\n+\t/* add the entry to the flow database */\n+\tif (fdb_write) {\n+\t\tmemset(&fid_parms, 0, sizeof(fid_parms));\n+\t\tfid_parms.direction = tbl->direction;\n+\t\tfid_parms.resource_func\t= tbl->resource_func;\n+\t\tfid_parms.resource_sub_type = tbl->resource_sub_type;\n+\t\tfid_parms.resource_hndl\t= ckey;\n+\t\tfid_parms.critical_resource = tbl->critical_resource;\n+\t\trc = ulp_flow_db_resource_add(parms->ulp_ctx,\n+\t\t\t\t\t      parms->flow_type,\n+\t\t\t\t\t      parms->fid,\n+\t\t\t\t\t      &fid_parms);\n+\t\tif (rc)\n+\t\t\tBNXT_TF_DBG(ERR, \"Fail to add gen ent flowdb %d\\n\", rc);\n+\t}\n+\treturn rc;\n+}\n+\n static int32_t\n ulp_mapper_glb_resource_info_init(struct bnxt_ulp_context *ulp_ctx,\n \t\t\t\t  struct bnxt_ulp_mapper_data *mapper_data)\n@@ -2522,7 +2430,7 @@ ulp_mapper_tbls_process(struct bnxt_ulp_mapper_parms *parms, uint32_t tid)\n \ttbls = ulp_mapper_tbl_list_get(parms, tid, &num_tbls);\n \tif (!tbls || !num_tbls) {\n \t\tBNXT_TF_DBG(ERR, \"No %s tables for %d:%d\\n\",\n-\t\t\t    (parms->tmpl_type == BNXT_ULP_TEMPLATE_TYPE_CLASS) ?\n+\t\t\t    (parms->tmpl_type = BNXT_ULP_TEMPLATE_TYPE_CLASS) ?\n \t\t\t    \"class\" : \"action\", parms->dev_id, tid);\n \t\treturn -EINVAL;\n \t}\n@@ -2546,12 +2454,15 @@ ulp_mapper_tbls_process(struct bnxt_ulp_mapper_parms *parms, uint32_t tid)\n \t\tcase BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE:\n \t\t\trc = ulp_mapper_index_tbl_process(parms, tbl);\n \t\t\tbreak;\n-\t\tcase BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE:\n-\t\t\trc = ulp_mapper_cache_tbl_process(parms, tbl);\n-\t\t\tbreak;\n \t\tcase BNXT_ULP_RESOURCE_FUNC_IF_TABLE:\n \t\t\trc = ulp_mapper_if_tbl_process(parms, tbl);\n \t\t\tbreak;\n+\t\tcase BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE:\n+\t\t\trc = ulp_mapper_gen_tbl_process(parms, tbl);\n+\t\t\tbreak;\n+\t\tcase BNXT_ULP_RESOURCE_FUNC_INVALID:\n+\t\t\trc = 0;\n+\t\t\tbreak;\n \t\tdefault:\n \t\t\tBNXT_TF_DBG(ERR, \"Unexpected mapper resource %d\\n\",\n \t\t\t\t    tbl->resource_func);\n@@ -2569,7 +2480,7 @@ ulp_mapper_tbls_process(struct bnxt_ulp_mapper_parms *parms, uint32_t tid)\n \treturn rc;\n error:\n \tBNXT_TF_DBG(ERR, \"%s tables failed creation for %d:%d\\n\",\n-\t\t    (parms->tmpl_type == BNXT_ULP_TEMPLATE_TYPE_CLASS) ?\n+\t\t    (parms->tmpl_type = BNXT_ULP_TEMPLATE_TYPE_CLASS) ?\n \t\t    \"class\" : \"action\", parms->dev_id, tid);\n \treturn rc;\n }\n@@ -2594,9 +2505,6 @@ ulp_mapper_resource_free(struct bnxt_ulp_context *ulp,\n \t}\n \n \tswitch (res->resource_func) {\n-\tcase BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE:\n-\t\trc = ulp_mapper_cache_entry_free(ulp, tfp, res);\n-\t\tbreak;\n \tcase BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE:\n \t\trc = ulp_mapper_tcam_entry_free(ulp, tfp, res);\n \t\tbreak;\n@@ -2619,6 +2527,9 @@ ulp_mapper_resource_free(struct bnxt_ulp_context *ulp,\n \tcase BNXT_ULP_RESOURCE_FUNC_CHILD_FLOW:\n \t\trc = ulp_mapper_child_flow_free(ulp, fid, res);\n \t\tbreak;\n+\tcase BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE:\n+\t\trc = ulp_mapper_gen_tbl_res_free(ulp, res);\n+\t\tbreak;\n \tdefault:\n \t\tbreak;\n \t}\n@@ -2902,11 +2813,9 @@ ulp_mapper_flow_create(struct bnxt_ulp_context *ulp_ctx,\n int32_t\n ulp_mapper_init(struct bnxt_ulp_context *ulp_ctx)\n {\n-\tstruct bnxt_ulp_cache_tbl_params *tbl;\n \tstruct bnxt_ulp_mapper_data *data;\n-\tuint32_t i;\n \tstruct tf *tfp;\n-\tint32_t rc, csize;\n+\tint32_t rc;\n \n \tif (!ulp_ctx)\n \t\treturn -EINVAL;\n@@ -2936,28 +2845,14 @@ ulp_mapper_init(struct bnxt_ulp_context *ulp_ctx)\n \t\tgoto error;\n \t}\n \n-\t/* Allocate the ulp cache tables. */\n-\tfor (i = 0; i < BNXT_ULP_CACHE_TBL_MAX_SZ; i++) {\n-\t\ttbl = ulp_mapper_cache_tbl_params_get(i);\n-\t\tif (!tbl) {\n-\t\t\tBNXT_TF_DBG(ERR, \"Failed to get cache table parms (%d)\",\n-\t\t\t\t    i);\n-\t\t\tgoto error;\n-\t\t}\n-\t\tif (tbl->num_entries != 0) {\n-\t\t\tcsize = sizeof(struct bnxt_ulp_mapper_cache_entry) *\n-\t\t\t\ttbl->num_entries;\n-\t\t\tdata->cache_tbl[i] = rte_zmalloc(\"ulp mapper cache tbl\",\n-\t\t\t\t\t\t\t csize, 0);\n-\t\t\tif (!data->cache_tbl[i]) {\n-\t\t\t\tBNXT_TF_DBG(ERR, \"Failed to allocate Cache \"\n-\t\t\t\t\t    \"table %d.\\n\", i);\n-\t\t\t\trc = -ENOMEM;\n-\t\t\t\tgoto error;\n-\t\t\t}\n-\t\t}\n+\t/* Allocate the generic table list */\n+\trc = ulp_mapper_generic_tbl_list_init(data);\n+\tif (rc) {\n+\t\tBNXT_TF_DBG(ERR, \"Failed to initialize generic tbl list\\n\");\n+\t\tgoto error;\n \t}\n \n+\t/* Allocate global template table entries */\n \trc = ulp_mapper_glb_template_table_init(ulp_ctx);\n \tif (rc) {\n \t\tBNXT_TF_DBG(ERR, \"Failed to initialize global templates\\n\");\n@@ -2975,7 +2870,6 @@ void\n ulp_mapper_deinit(struct bnxt_ulp_context *ulp_ctx)\n {\n \tstruct bnxt_ulp_mapper_data *data;\n-\tuint32_t i;\n \tstruct tf *tfp;\n \n \tif (!ulp_ctx) {\n@@ -3004,11 +2898,8 @@ ulp_mapper_deinit(struct bnxt_ulp_context *ulp_ctx)\n \tulp_mapper_glb_resource_info_deinit(ulp_ctx, data);\n \n free_mapper_data:\n-\t/* Free the ulp cache tables */\n-\tfor (i = 0; i < BNXT_ULP_CACHE_TBL_MAX_SZ; i++) {\n-\t\trte_free(data->cache_tbl[i]);\n-\t\tdata->cache_tbl[i] = NULL;\n-\t}\n+\t/* Free the generic table */\n+\t(void)ulp_mapper_generic_tbl_list_deinit(data);\n \n \trte_free(data);\n \t/* Reset the data pointer within the ulp_ctx. */\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_mapper.h b/drivers/net/bnxt/tf_ulp/ulp_mapper.h\nindex 4ce19cc88d..8422f44026 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_mapper.h\n+++ b/drivers/net/bnxt/tf_ulp/ulp_mapper.h\n@@ -14,6 +14,7 @@\n #include \"ulp_template_struct.h\"\n #include \"bnxt_ulp.h\"\n #include \"ulp_utils.h\"\n+#include \"ulp_gen_tbl.h\"\n \n #define ULP_IDENTS_INVALID ((uint16_t)0xffff)\n \n@@ -31,13 +32,6 @@ enum bnxt_ulp_cache_table_opc {\n \tBNXT_ULP_MAPPER_TCAM_TBL_OPC_CACHE_ALLOC\n };\n \n-struct bnxt_ulp_mapper_cache_entry {\n-\tuint32_t ref_count;\n-\tuint16_t tcam_idx;\n-\tuint16_t idents[BNXT_ULP_CACHE_TBL_IDENT_MAX_NUM];\n-\tuint8_t ident_types[BNXT_ULP_CACHE_TBL_IDENT_MAX_NUM];\n-};\n-\n struct bnxt_ulp_mapper_glb_resource_entry {\n \tenum bnxt_ulp_resource_func\tresource_func;\n \tuint32_t\t\t\tresource_type; /* TF_ enum type */\n@@ -47,8 +41,7 @@ struct bnxt_ulp_mapper_glb_resource_entry {\n struct bnxt_ulp_mapper_data {\n \tstruct bnxt_ulp_mapper_glb_resource_entry\n \t\tglb_res_tbl[TF_DIR_MAX][BNXT_ULP_GLB_RESOURCE_TBL_MAX_SZ];\n-\tstruct bnxt_ulp_mapper_cache_entry\n-\t\t*cache_tbl[BNXT_ULP_CACHE_TBL_MAX_SZ];\n+\tstruct ulp_mapper_gen_tbl_list gen_tbl_list[BNXT_ULP_GEN_TBL_MAX_SZ];\n };\n \n /* Internal Structure for passing the arguments around */\n@@ -69,13 +62,11 @@ struct bnxt_ulp_mapper_parms {\n \tstruct ulp_regfile\t\t\t*regfile;\n \tstruct tf\t\t\t\t*tfp;\n \tstruct bnxt_ulp_context\t\t\t*ulp_ctx;\n-\tuint8_t\t\t\t\t\tencap_byte_swap;\n \tuint32_t\t\t\t\tfid;\n \tenum bnxt_ulp_fdb_type\t\t\tflow_type;\n \tstruct bnxt_ulp_mapper_data\t\t*mapper_data;\n \tenum bnxt_ulp_cache_table_opc\t\ttcam_tbl_opc;\n-\tstruct bnxt_ulp_mapper_cache_entry\t*cache_ptr;\n-\tstruct bnxt_ulp_device_params           *device_params;\n+\tstruct bnxt_ulp_device_params\t\t*device_params;\n \tuint32_t\t\t\t\tparent_fid;\n \tuint32_t\t\t\t\tparent_flow;\n \tuint8_t\t\t\t\t\ttun_idx;\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_template_db_enum.h b/drivers/net/bnxt/tf_ulp/ulp_template_db_enum.h\nindex 5deb7b9236..2a9a290eea 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_template_db_enum.h\n+++ b/drivers/net/bnxt/tf_ulp/ulp_template_db_enum.h\n@@ -9,7 +9,7 @@\n #define BNXT_ULP_REGFILE_MAX_SZ 19\n #define BNXT_ULP_MAX_NUM_DEVICES 4\n #define BNXT_ULP_LOG2_MAX_NUM_DEV 2\n-#define BNXT_ULP_CACHE_TBL_MAX_SZ 4\n+#define BNXT_ULP_GEN_TBL_MAX_SZ 4\n #define BNXT_ULP_CLASS_SIG_TBL_MAX_SZ 2048\n #define BNXT_ULP_CLASS_MATCH_LIST_MAX_SZ 217\n #define BNXT_ULP_CLASS_HID_LOW_PRIME 7919\n@@ -53,7 +53,10 @@ enum bnxt_ulp_action_bit {\n \tBNXT_ULP_ACTION_BIT_SET_TP_DST       = 0x0000000000200000,\n \tBNXT_ULP_ACTION_BIT_VXLAN_ENCAP      = 0x0000000000400000,\n \tBNXT_ULP_ACTION_BIT_JUMP             = 0x0000000000800000,\n-\tBNXT_ULP_ACTION_BIT_LAST             = 0x0000000001000000\n+\tBNXT_ULP_ACTION_BIT_SHARED           = 0x0000000001000000,\n+\tBNXT_ULP_ACTION_BIT_SAMPLE           = 0x0000000002000000,\n+\tBNXT_ULP_ACTION_BIT_SHARED_SAMPLE    = 0x0000000004000000,\n+\tBNXT_ULP_ACTION_BIT_LAST             = 0x0000000008000000\n };\n \n enum bnxt_ulp_hdr_bit {\n@@ -183,6 +186,13 @@ enum bnxt_ulp_flow_mem_type {\n \tBNXT_ULP_FLOW_MEM_TYPE_LAST = 3\n };\n \n+enum bnxt_ulp_generic_tbl_opc {\n+\tBNXT_ULP_GENERIC_TBL_OPC_NOT_USED = 0,\n+\tBNXT_ULP_GENERIC_TBL_OPC_READ = 1,\n+\tBNXT_ULP_GENERIC_TBL_OPC_WRITE = 2,\n+\tBNXT_ULP_GENERIC_TBL_OPC_LAST = 3\n+};\n+\n enum bnxt_ulp_glb_regfile_index {\n \tBNXT_ULP_GLB_REGFILE_INDEX_NOT_USED = 0,\n \tBNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID = 1,\n@@ -261,25 +271,36 @@ enum bnxt_ulp_priority {\n \n enum bnxt_ulp_regfile_index {\n \tBNXT_ULP_REGFILE_INDEX_NOT_USED = 0,\n-\tBNXT_ULP_REGFILE_INDEX_CLASS_TID = 1,\n-\tBNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 = 2,\n-\tBNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_1 = 3,\n-\tBNXT_ULP_REGFILE_INDEX_PROF_FUNC_ID_0 = 4,\n-\tBNXT_ULP_REGFILE_INDEX_PROF_FUNC_ID_1 = 5,\n-\tBNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 = 6,\n-\tBNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_1 = 7,\n-\tBNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 = 8,\n-\tBNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_1 = 9,\n-\tBNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR = 10,\n-\tBNXT_ULP_REGFILE_INDEX_ACTION_PTR_0 = 11,\n-\tBNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 = 12,\n-\tBNXT_ULP_REGFILE_INDEX_ENCAP_PTR_1 = 13,\n-\tBNXT_ULP_REGFILE_INDEX_CRITICAL_RESOURCE = 14,\n-\tBNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 = 15,\n-\tBNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR = 16,\n-\tBNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_SRC_PTR_0 = 17,\n-\tBNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_DST_PTR_0 = 18,\n-\tBNXT_ULP_REGFILE_INDEX_LAST = 19\n+\tBNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 = 1,\n+\tBNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_1 = 2,\n+\tBNXT_ULP_REGFILE_INDEX_PROF_FUNC_ID_0 = 3,\n+\tBNXT_ULP_REGFILE_INDEX_PROF_FUNC_ID_1 = 4,\n+\tBNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 = 5,\n+\tBNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_1 = 6,\n+\tBNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 = 7,\n+\tBNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_1 = 8,\n+\tBNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR = 9,\n+\tBNXT_ULP_REGFILE_INDEX_ACTION_PTR_0 = 10,\n+\tBNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 = 11,\n+\tBNXT_ULP_REGFILE_INDEX_ENCAP_PTR_1 = 12,\n+\tBNXT_ULP_REGFILE_INDEX_CRITICAL_RESOURCE = 13,\n+\tBNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0 = 14,\n+\tBNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR = 15,\n+\tBNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_SRC_PTR_0 = 16,\n+\tBNXT_ULP_REGFILE_INDEX_MODIFY_IPV4_DST_PTR_0 = 17,\n+\tBNXT_ULP_REGFILE_INDEX_ACTION_REC_SIZE = 18,\n+\tBNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0 = 19,\n+\tBNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_1 = 20,\n+\tBNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0 = 21,\n+\tBNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_1 = 22,\n+\tBNXT_ULP_REGFILE_INDEX_WC_TCAM_INDEX_0 = 23,\n+\tBNXT_ULP_REGFILE_INDEX_WC_TCAM_INDEX_1 = 24,\n+\tBNXT_ULP_REGFILE_INDEX_SRC_PROPERTY_PTR = 25,\n+\tBNXT_ULP_REGFILE_INDEX_GENERIC_TBL_HIT = 26,\n+\tBNXT_ULP_REGFILE_INDEX_MIRROR_PTR_0 = 27,\n+\tBNXT_ULP_REGFILE_INDEX_CLASS_TID = 28,\n+\tBNXT_ULP_REGFILE_INDEX_FID = 29,\n+\tBNXT_ULP_REGFILE_INDEX_LAST = 30\n };\n \n enum bnxt_ulp_search_before_alloc {\n@@ -322,7 +343,7 @@ enum bnxt_ulp_resource_func {\n \tBNXT_ULP_RESOURCE_FUNC_RSVD2 = 0x60,\n \tBNXT_ULP_RESOURCE_FUNC_TCAM_TABLE = 0x80,\n \tBNXT_ULP_RESOURCE_FUNC_INDEX_TABLE = 0x81,\n-\tBNXT_ULP_RESOURCE_FUNC_CACHE_TABLE = 0x82,\n+\tBNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE = 0x82,\n \tBNXT_ULP_RESOURCE_FUNC_IDENTIFIER = 0x83,\n \tBNXT_ULP_RESOURCE_FUNC_IF_TABLE = 0x84,\n \tBNXT_ULP_RESOURCE_FUNC_HW_FID = 0x85,\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_template_db_stingray_class.c b/drivers/net/bnxt/tf_ulp/ulp_template_db_stingray_class.c\nindex 3c868fdf00..a8f26e8c51 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_template_db_stingray_class.c\n+++ b/drivers/net/bnxt/tf_ulp/ulp_template_db_stingray_class.c\n@@ -3,132 +3,185 @@\n  * All rights reserved.\n  */\n \n+/* date: Thu Oct 15 17:28:37 2020 */\n+\n #include \"ulp_template_db_enum.h\"\n #include \"ulp_template_db_field.h\"\n #include \"ulp_template_struct.h\"\n #include \"ulp_rte_parser.h\"\n \n+/* Mapper templates for header class list */\n struct bnxt_ulp_mapper_tbl_list_info ulp_stingray_class_tmpl_list[] = {\n+\t/* default-vfr-[port_to_vs]:1 */\n+\t/* class_tid: 1, stingray, ingress */\n \t[1] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 0\n \t},\n+\t/* default-vfr-[vs_to_port]:2 */\n+\t/* class_tid: 2, stingray, egress */\n \t[2] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 7,\n \t.start_tbl_idx = 6\n \t},\n+\t/* default-vfr-[vfrep_to_vf]:3 */\n+\t/* class_tid: 3, stingray, egress */\n \t[3] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 7,\n \t.start_tbl_idx = 13\n \t},\n+\t/* default-vfr-[vf_to_vfrep]:4 */\n+\t/* class_tid: 4, stingray, egress */\n \t[4] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 7,\n \t.start_tbl_idx = 20\n \t},\n+\t/* default-egr-[loopback_action_rec]:5 */\n+\t/* class_tid: 5, stingray, egress */\n \t[5] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 1,\n \t.start_tbl_idx = 27\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv4]-[smac, dmac, (vid)]:6 */\n+\t/* class_tid: 6, stingray, ingress */\n \t[6] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 28\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv6]-[smac, dmac, (vid)]:7 */\n+\t/* class_tid: 7, stingray, ingress */\n \t[7] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 33\n \t},\n+\t/* class-ing-em-[eth, ipv4, udp]-[sip, dip, sp, dp]:8 */\n+\t/* class_tid: 8, stingray, ingress */\n \t[8] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 38\n \t},\n+\t/* class-ing-em-[eth, ipv4, tcp]-[sip, dip, sp, dp]:9 */\n+\t/* class_tid: 9, stingray, ingress */\n \t[9] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 44\n \t},\n+\t/* class-ing-em-[eth,ipv6, udp]-[sip, dip, sp, dp]:10 */\n+\t/* class_tid: 10, stingray, ingress */\n \t[10] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 50\n \t},\n+\t/* class-ing-em-[eth, ipv6, tcp]-[sip, dip, sp, dp]:11 */\n+\t/* class_tid: 11, stingray, ingress */\n \t[11] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 56\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv4, udp]-[dmac, (vid), sip, dip, sp, dp]:12 */\n+\t/* class_tid: 12, stingray, ingress */\n \t[12] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 62\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv4, tcp]-[dmac, (vid), sip, dip, sp, dp]:13 */\n+\t/* class_tid: 13, stingray, ingress */\n \t[13] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 67\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv6, udp]-[dmac, (vid), sip, dip, sp, dp]:14 */\n+\t/* class_tid: 14, stingray, ingress */\n \t[14] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 72\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv6, tcp]-[dmac, (vid), sip, dip, sp, dp]:15 */\n+\t/* class_tid: 15, stingray, ingress */\n \t[15] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 77\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv4, udp, vxlan]-[dmac, (vid), dip, dp]:16 */\n+\t/* class_tid: 16, stingray, ingress */\n \t[16] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 82\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv6, udp, vxlan]-[t_dmac, (vid), t_dip, t_dp]:17 */\n+\t/* class_tid: 17, stingray, ingress */\n \t[17] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 87\n \t},\n+\t/* class-ing-em-f1-[eth, ipv4, udp, vxlan]-[t_dmac]:18 */\n+\t/* class_tid: 18, stingray, ingress */\n \t[18] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 92\n \t},\n+\t/* class-ing-em-f2-[ipv4, udp, vxlan]-[vni, i_dmac]:19 */\n+\t/* class_tid: 19, stingray, ingress */\n \t[19] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 97\n \t},\n+\t/* class-egr-em-[eth, ipv4, udp]-[sip, dip, sp, dp]:20 */\n+\t/* class_tid: 20, stingray, egress */\n \t[20] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 102\n \t},\n+\t/* class-egr-em-[eth, ipv4, tcp]-[sip, dip, sp, dp]:21 */\n+\t/* class_tid: 21, stingray, egress */\n \t[21] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 108\n \t},\n+\t/* class-egr-em-[eth-ipv6-udp]-[sip-dip-sp-dp]:22 */\n+\t/* class_tid: 22, stingray, egress */\n \t[22] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 114\n \t},\n+\t/* class-egr-em-[eth, ipv6, tcp]-[sip, dip, sp, dp]:23 */\n+\t/* class_tid: 23, stingray, egress */\n \t[23] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 120\n \t},\n+\t/* class-egr-em-[eth, (vlan), ipv4]-[smac, dmac, type]:24 */\n+\t/* class_tid: 24, stingray, egress */\n \t[24] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 126\n \t},\n+\t/* class-egr-em-[eth, (vlan), ipv6]-[smac, dmac, type]:25 */\n+\t/* class_tid: 25, stingray, egress */\n \t[25] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_STINGRAY,\n \t.num_tbls = 5,\n@@ -137,7 +190,7 @@ struct bnxt_ulp_mapper_tbl_list_info ulp_stingray_class_tmpl_list[] = {\n };\n \n struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n-\t{\n+\t{ /* class_tid: 1, stingray, table: int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -152,8 +205,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 1, stingray, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -169,7 +222,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 0,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 1, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_RX,\n@@ -188,7 +241,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 1, stingray, table: parif_def_lkup_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_RX,\n@@ -199,7 +252,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 1, stingray, table: parif_def_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_RX,\n@@ -210,7 +263,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 1, stingray, table: parif_def_err_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,\n \t.direction = TF_DIR_RX,\n@@ -221,7 +274,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 2, stingray, table: int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -236,7 +289,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR\n \t},\n-\t{\n+\t{ /* class_tid: 2, stingray, table: l2_cntxt_tcam_vfr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.cond_opcode = BNXT_ULP_COND_OPCODE_COMP_FIELD_IS_SET,\n@@ -257,8 +310,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 2, stingray, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -276,7 +329,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 1,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 2, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.cond_opcode = BNXT_ULP_COND_OPCODE_COMP_FIELD_NOT_SET,\n@@ -297,7 +350,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 2, stingray, table: parif_def_lkup_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -308,7 +361,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 2, stingray, table: parif_def_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -319,7 +372,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 2, stingray, table: parif_def_err_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -330,7 +383,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 3, stingray, table: egr_int_vtag_encap_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_ACT_ENCAP_8B,\n \t.resource_sub_type =\n@@ -345,7 +398,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0\n \t},\n-\t{\n+\t{ /* class_tid: 3, stingray, table: egr_int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -360,8 +413,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 3, stingray, table: egr_l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -377,7 +430,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 2,\n \t.ident_nums = 0\n \t},\n-\t{\n+\t{ /* class_tid: 3, stingray, table: egr_l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -396,7 +449,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 3, stingray, table: ing_int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -411,7 +464,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR\n \t},\n-\t{\n+\t{ /* class_tid: 3, stingray, table: ing_l2_cntxt_dtagged_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -430,7 +483,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 3, stingray, table: ing_l2_cntxt_stagged_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -449,8 +502,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 4, stingray, table: egr_l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -466,7 +519,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 2,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 4, stingray, table: egr_l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -485,7 +538,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 4, stingray, table: egr_parif_def_lkup_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -496,7 +549,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,\n \t.index_operand = BNXT_ULP_SYM_VF_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 4, stingray, table: egr_parif_def_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -507,7 +560,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,\n \t.index_operand = BNXT_ULP_SYM_VF_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 4, stingray, table: egr_parif_def_err_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -518,7 +571,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,\n \t.index_operand = BNXT_ULP_SYM_VF_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 4, stingray, table: ing_int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -533,7 +586,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR\n \t},\n-\t{\n+\t{ /* class_tid: 4, stingray, table: ing_l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -552,7 +605,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 5, stingray, table: int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -567,7 +620,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_GLOBAL,\n \t.index_operand = BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR\n \t},\n-\t{\n+\t{ /* class_tid: 6, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -586,8 +639,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 6, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -603,7 +656,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 4,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 6, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -622,7 +675,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 6, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -640,7 +693,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 6, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -658,7 +711,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 7, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -677,8 +730,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 7, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -694,7 +747,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 6,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 7, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -713,7 +766,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 7, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -731,7 +784,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 7, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -749,8 +802,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 8, stingray, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -766,7 +819,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 7,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 8, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_RX,\n@@ -785,8 +838,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 8, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -802,7 +855,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 8,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 8, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -821,7 +874,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 8, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -839,7 +892,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 8, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -857,8 +910,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 9, stingray, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -874,7 +927,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 9,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 9, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_RX,\n@@ -893,8 +946,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 9, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -910,7 +963,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 10,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 9, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -929,7 +982,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 9, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -947,7 +1000,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 9, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -965,8 +1018,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 10, stingray, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -982,7 +1035,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 11,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 10, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_RX,\n@@ -1001,8 +1054,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 10, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1018,7 +1071,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 12,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 10, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1037,7 +1090,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 10, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1055,7 +1108,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 10, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1073,8 +1126,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 11, stingray, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -1090,7 +1143,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 13,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 11, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_RX,\n@@ -1109,8 +1162,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 11, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1126,7 +1179,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 14,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 11, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1145,7 +1198,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 11, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1163,7 +1216,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 11, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1181,7 +1234,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 12, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1200,8 +1253,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 12, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1217,7 +1270,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 16,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 12, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1236,7 +1289,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 12, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1254,7 +1307,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 12, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1272,7 +1325,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 13, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1291,8 +1344,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 13, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1308,7 +1361,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 18,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 13, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1327,7 +1380,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 13, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1345,7 +1398,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 13, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1363,7 +1416,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 14, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1382,8 +1435,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 14, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1399,7 +1452,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 20,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 14, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1418,7 +1471,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 14, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1436,7 +1489,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 14, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1454,7 +1507,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 15, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1473,8 +1526,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 15, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1490,7 +1543,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 22,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 15, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1509,7 +1562,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 15, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1527,7 +1580,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 15, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1545,7 +1598,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 16, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1564,8 +1617,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 16, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1581,7 +1634,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 24,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 16, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1600,7 +1653,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 16, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1618,7 +1671,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 16, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1636,7 +1689,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 17, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1655,8 +1708,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 17, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1672,7 +1725,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 26,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 17, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1691,7 +1744,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 17, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1709,7 +1762,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 17, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1727,7 +1780,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 18, stingray, table: int_flow_counter_tbl_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_ACT_STATS_64,\n \t.resource_sub_type =\n@@ -1744,7 +1797,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0\n \t},\n-\t{\n+\t{ /* class_tid: 18, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1763,8 +1816,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 18, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1780,7 +1833,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 28,\n \t.ident_nums = 2\n \t},\n-\t{\n+\t{ /* class_tid: 18, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1799,7 +1852,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 18, stingray, table: wm_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1818,7 +1871,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 19, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1837,8 +1890,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 19, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1854,7 +1907,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 31,\n \t.ident_nums = 2\n \t},\n-\t{\n+\t{ /* class_tid: 19, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1873,7 +1926,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 19, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1891,7 +1944,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 19, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1909,8 +1962,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 20, stingray, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -1926,7 +1979,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 33,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 20, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -1945,8 +1998,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 20, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1962,7 +2015,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 34,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 20, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -1981,7 +2034,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 20, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1999,7 +2052,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 20, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2017,8 +2070,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 21, stingray, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -2034,7 +2087,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 35,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 21, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -2053,8 +2106,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 21, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -2070,7 +2123,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 36,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 21, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -2089,7 +2142,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 21, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -2107,7 +2160,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 21, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2125,8 +2178,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 22, stingray, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -2142,7 +2195,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 37,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 22, stingray, table: l2_cntxt_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -2161,8 +2214,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 22, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -2178,7 +2231,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 38,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 22, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -2197,7 +2250,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 22, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -2215,7 +2268,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 22, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2233,8 +2286,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 23, stingray, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -2250,7 +2303,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 39,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 23, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -2269,8 +2322,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 23, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -2286,7 +2339,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 40,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 23, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -2305,7 +2358,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 23, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -2323,7 +2376,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 23, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2341,7 +2394,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 24, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_TX,\n@@ -2360,8 +2413,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 24, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -2377,7 +2430,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 42,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 24, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -2396,7 +2449,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 24, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -2414,7 +2467,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 24, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2432,7 +2485,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 25, stingray, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_TX,\n@@ -2451,8 +2504,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 25, stingray, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -2468,7 +2521,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.ident_start_idx = 44,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 25, stingray, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -2487,7 +2540,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 25, stingray, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -2505,7 +2558,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 25, stingray, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2526,7 +2579,9 @@ struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {\n };\n \n struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n+\t/* class_tid: 1, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n@@ -2536,22 +2591,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 1, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2564,46 +2624,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2612,22 +2681,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, stingray, table: l2_cntxt_tcam_vfr_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2640,46 +2714,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2688,7 +2771,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n@@ -2698,22 +2783,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2726,46 +2816,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2774,7 +2873,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 3, stingray, table: egr_l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n@@ -2784,22 +2885,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 3, stingray, table: egr_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2812,46 +2918,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2860,12 +2975,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 3, stingray, table: ing_l2_cntxt_dtagged_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2878,11 +2996,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2895,21 +3015,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2919,11 +3043,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2935,16 +3061,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2953,7 +3082,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 3, stingray, table: ing_l2_cntxt_stagged_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2966,16 +3097,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2988,21 +3122,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3012,11 +3150,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3028,16 +3168,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3046,7 +3189,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, stingray, table: egr_l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n@@ -3056,22 +3201,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, stingray, table: egr_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3084,46 +3234,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3132,22 +3291,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, stingray, table: ing_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3160,46 +3324,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3208,7 +3381,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3224,11 +3399,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3244,6 +3421,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3259,21 +3437,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3286,16 +3468,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3303,11 +3488,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3316,12 +3503,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -3332,6 +3522,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3341,42 +3532,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3384,6 +3584,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3391,6 +3592,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3402,16 +3604,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3419,6 +3624,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3426,6 +3632,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3433,6 +3640,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3444,21 +3652,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3466,21 +3678,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3488,31 +3704,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3520,26 +3742,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3547,16 +3774,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3569,11 +3799,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3581,11 +3813,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3593,6 +3827,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3601,42 +3836,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -3647,11 +3891,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3662,6 +3908,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3671,42 +3918,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -3717,11 +3973,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3732,6 +3990,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3741,7 +4000,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3757,11 +4018,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3777,6 +4040,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3792,21 +4056,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3819,16 +4087,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3836,11 +4107,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3849,12 +4122,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -3865,6 +4141,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3874,42 +4151,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3921,6 +4207,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3928,6 +4215,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3939,16 +4227,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3956,6 +4247,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3963,6 +4255,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3970,6 +4263,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3981,21 +4275,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4003,21 +4301,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4025,31 +4327,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4057,26 +4365,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4084,16 +4397,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4106,11 +4422,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4118,11 +4436,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4130,6 +4450,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4138,42 +4459,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4184,11 +4514,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4199,6 +4531,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4208,42 +4541,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4254,11 +4596,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4269,6 +4613,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4278,7 +4623,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4288,22 +4635,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -4319,46 +4671,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4367,12 +4728,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -4383,6 +4747,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4392,12 +4757,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4409,6 +4777,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4416,6 +4785,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4427,21 +4797,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4449,6 +4823,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4456,6 +4831,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4467,16 +4843,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4484,6 +4863,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4491,6 +4871,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4498,6 +4879,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4509,21 +4891,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4531,21 +4917,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4553,31 +4943,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4585,26 +4981,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4612,16 +5013,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4634,11 +5038,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4646,11 +5052,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4658,6 +5066,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4666,17 +5075,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4687,6 +5100,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4697,6 +5111,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -4706,6 +5121,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4716,6 +5132,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4726,16 +5143,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4746,6 +5166,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4755,17 +5176,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4776,6 +5201,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4786,6 +5212,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -4795,6 +5222,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4805,6 +5233,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4815,16 +5244,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4835,6 +5267,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4844,7 +5277,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4854,22 +5289,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -4885,46 +5325,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4933,12 +5382,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -4949,6 +5401,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4958,12 +5411,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4971,6 +5427,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4978,6 +5435,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4989,21 +5447,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5011,6 +5473,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5018,6 +5481,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5029,16 +5493,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5046,6 +5513,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5053,6 +5521,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5060,6 +5529,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5071,21 +5541,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5093,21 +5567,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5115,31 +5593,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5147,26 +5631,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5174,16 +5663,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5196,11 +5688,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5208,11 +5702,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5220,6 +5716,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5228,17 +5725,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5249,6 +5750,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5259,6 +5761,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -5268,6 +5771,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5278,6 +5782,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5288,16 +5793,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5308,6 +5816,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5317,17 +5826,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5338,6 +5851,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5348,6 +5862,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -5357,6 +5872,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5367,6 +5883,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5377,16 +5894,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5397,6 +5917,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5406,7 +5927,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5416,22 +5939,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -5447,46 +5975,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5495,12 +6032,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -5511,6 +6051,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5520,12 +6061,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5537,6 +6081,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5544,6 +6089,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5555,21 +6101,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5581,6 +6131,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5588,6 +6139,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5599,16 +6151,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5616,6 +6171,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5623,6 +6179,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5630,6 +6187,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5641,21 +6199,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5663,21 +6225,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5685,31 +6251,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5717,26 +6289,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5744,16 +6321,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5766,11 +6346,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5778,11 +6360,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5790,6 +6374,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5798,17 +6383,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5819,6 +6408,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5829,6 +6419,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -5838,6 +6429,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5848,6 +6440,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5858,16 +6451,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5878,6 +6474,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5887,17 +6484,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5908,6 +6509,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5918,6 +6520,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -5927,6 +6530,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5937,6 +6541,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5947,16 +6552,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5967,6 +6575,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5976,7 +6585,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5986,22 +6597,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -6017,46 +6633,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6065,12 +6690,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -6081,6 +6709,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6090,12 +6719,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6103,6 +6735,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6110,6 +6743,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6121,21 +6755,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6147,6 +6785,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6154,6 +6793,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6165,16 +6805,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6182,6 +6825,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6189,6 +6833,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6196,6 +6841,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6207,21 +6853,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6229,21 +6879,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6251,31 +6905,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6283,26 +6943,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6310,16 +6975,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6332,11 +7000,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6344,11 +7014,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6356,6 +7028,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6364,17 +7037,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6385,6 +7062,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6395,6 +7073,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -6404,6 +7083,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6414,6 +7094,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6424,16 +7105,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6444,6 +7128,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6453,17 +7138,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6474,6 +7163,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6484,6 +7174,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -6493,6 +7184,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6503,6 +7195,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6513,16 +7206,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6533,6 +7229,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6542,7 +7239,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -6558,11 +7257,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -6578,6 +7279,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -6593,21 +7295,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6620,16 +7326,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6637,11 +7346,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6650,12 +7361,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -6666,6 +7380,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6675,12 +7390,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6692,6 +7410,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6699,6 +7418,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6710,21 +7430,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6732,6 +7456,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6739,6 +7464,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6750,16 +7476,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6767,6 +7496,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6774,6 +7504,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6781,6 +7512,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6792,21 +7524,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6814,21 +7550,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6836,31 +7576,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6868,26 +7614,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6895,16 +7646,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6917,11 +7671,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6929,11 +7685,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6941,6 +7699,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6949,17 +7708,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6970,6 +7733,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6980,6 +7744,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -6989,6 +7754,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6999,6 +7765,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7009,16 +7776,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7029,6 +7799,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7038,17 +7809,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7059,6 +7834,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7069,6 +7845,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -7078,6 +7855,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7088,6 +7866,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7098,16 +7877,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7118,6 +7900,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7127,7 +7910,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7143,11 +7928,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7163,6 +7950,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7178,21 +7966,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7205,16 +7997,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7222,11 +8017,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7235,12 +8032,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -7251,6 +8051,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7260,12 +8061,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7273,6 +8077,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7280,6 +8085,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7291,21 +8097,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7313,6 +8123,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7320,6 +8131,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7331,16 +8143,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7348,6 +8163,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7355,6 +8171,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7362,6 +8179,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7373,21 +8191,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7395,21 +8217,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7417,31 +8243,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7449,26 +8281,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7476,16 +8313,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7498,11 +8338,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7510,11 +8352,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7522,6 +8366,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7530,17 +8375,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7551,6 +8400,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7561,6 +8411,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -7570,6 +8421,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7580,6 +8432,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7590,16 +8443,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7610,6 +8466,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7619,17 +8476,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7640,6 +8501,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7650,6 +8512,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -7659,6 +8522,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7669,6 +8533,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7679,16 +8544,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7699,6 +8567,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7708,7 +8577,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7724,11 +8595,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7744,6 +8617,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7759,21 +8633,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7786,16 +8664,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7803,11 +8684,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7816,12 +8699,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -7832,6 +8718,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7841,12 +8728,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7858,6 +8748,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7865,6 +8756,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7876,21 +8768,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7902,6 +8798,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7909,6 +8806,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7920,16 +8818,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7937,6 +8838,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7944,6 +8846,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7951,6 +8854,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7962,21 +8866,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7984,21 +8892,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8006,31 +8918,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8038,26 +8956,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8065,16 +8988,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8087,11 +9013,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8099,11 +9027,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8111,6 +9041,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8119,17 +9050,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8140,6 +9075,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8150,6 +9086,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -8159,6 +9096,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8169,6 +9107,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8179,16 +9118,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8199,6 +9141,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8208,17 +9151,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8229,6 +9176,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8239,6 +9187,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -8248,6 +9197,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8258,6 +9208,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8268,16 +9219,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8288,6 +9242,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8297,7 +9252,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -8313,11 +9270,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -8333,6 +9292,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -8348,21 +9308,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8375,16 +9339,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8392,11 +9359,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8405,12 +9374,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -8421,6 +9393,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8430,12 +9403,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8443,6 +9419,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8450,6 +9427,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8461,21 +9439,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8487,6 +9469,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8494,6 +9477,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8505,16 +9489,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8522,6 +9509,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8529,6 +9517,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8536,6 +9525,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8547,21 +9537,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8569,21 +9563,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8591,31 +9589,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8623,26 +9627,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8650,16 +9659,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8672,11 +9684,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8684,11 +9698,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8696,6 +9712,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8704,17 +9721,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8725,6 +9746,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8735,6 +9757,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -8744,6 +9767,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8754,6 +9778,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8764,16 +9789,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8784,6 +9812,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8793,17 +9822,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8814,6 +9847,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8824,6 +9858,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -8833,6 +9868,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8843,6 +9879,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8853,16 +9890,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8873,6 +9913,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8882,17 +9923,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8905,6 +9950,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -8920,6 +9966,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -8935,21 +9982,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8962,6 +10013,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8969,16 +10021,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8987,12 +10042,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -9003,6 +10061,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9012,92 +10071,111 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9105,6 +10183,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9112,6 +10191,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9123,11 +10203,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9139,6 +10221,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9146,6 +10229,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9157,21 +10241,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9179,6 +10267,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9186,6 +10275,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9197,16 +10287,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9214,6 +10307,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9221,6 +10315,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9232,16 +10327,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9254,11 +10352,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9266,11 +10366,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9278,6 +10380,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9286,27 +10389,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -9316,6 +10425,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"t_ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -9326,21 +10436,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"t_ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9351,6 +10465,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9360,27 +10475,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -9390,6 +10511,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"t_ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -9400,21 +10522,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"t_ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9425,6 +10551,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9434,17 +10561,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9457,6 +10588,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -9472,6 +10604,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -9487,21 +10620,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9514,6 +10651,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9521,16 +10659,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9539,12 +10680,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -9555,6 +10699,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9564,92 +10709,111 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9657,6 +10821,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9664,6 +10829,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9675,11 +10841,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9691,6 +10859,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9698,6 +10867,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9709,21 +10879,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9735,6 +10909,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9742,6 +10917,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9753,16 +10929,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9770,6 +10949,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9777,6 +10957,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9788,16 +10969,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9810,11 +10994,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9822,11 +11008,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9834,6 +11022,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9842,27 +11031,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -9872,6 +11067,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -9882,21 +11078,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9907,6 +11107,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9916,27 +11117,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -9946,6 +11153,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -9956,21 +11164,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9981,6 +11193,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9990,17 +11203,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 18, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10013,6 +11230,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -10028,26 +11246,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10055,6 +11278,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10062,16 +11286,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10080,12 +11307,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 18, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -10096,96 +11326,116 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 18, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10193,6 +11443,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10200,6 +11451,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10211,11 +11463,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10227,6 +11481,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10234,6 +11489,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10245,21 +11501,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10267,6 +11527,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10274,6 +11535,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10285,16 +11547,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10302,6 +11567,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10309,6 +11575,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10320,16 +11587,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10342,11 +11612,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10354,11 +11626,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10366,6 +11640,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10374,7 +11649,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 18, stingray, table: wm_0 */\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10387,11 +11664,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10404,6 +11683,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10411,21 +11691,26 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"others\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 19, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10438,6 +11723,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -10453,31 +11739,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10485,6 +11777,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10492,11 +11785,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10505,12 +11800,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -10521,96 +11819,116 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 19, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10618,6 +11936,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10625,6 +11944,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10636,11 +11956,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10652,6 +11974,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10659,6 +11982,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10670,21 +11994,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10692,6 +12020,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10699,6 +12028,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10710,16 +12040,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10727,6 +12060,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10734,6 +12068,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10745,16 +12080,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10767,11 +12105,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10779,11 +12119,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10791,6 +12133,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10799,17 +12142,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dst_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -10820,6 +12167,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -10830,16 +12178,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -10850,6 +12201,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -10859,17 +12211,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 339,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dst_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -10880,6 +12236,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -10890,16 +12247,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -10910,6 +12270,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -10919,7 +12280,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -10929,22 +12292,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -10960,31 +12328,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10996,16 +12370,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11014,12 +12391,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -11030,6 +12410,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11039,12 +12420,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11056,6 +12440,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11063,6 +12448,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11074,21 +12460,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11096,6 +12486,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11103,6 +12494,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11114,21 +12506,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11136,6 +12532,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11143,6 +12540,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11154,111 +12552,133 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11271,11 +12691,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11283,11 +12705,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11295,6 +12719,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11303,17 +12728,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11324,6 +12753,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11334,6 +12764,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -11343,6 +12774,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11353,6 +12785,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11363,16 +12796,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11383,6 +12819,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11392,17 +12829,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11413,6 +12854,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11423,6 +12865,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -11432,6 +12875,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11442,6 +12886,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11452,16 +12897,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11472,6 +12920,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11481,7 +12930,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11491,22 +12942,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -11522,31 +12978,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11558,16 +13020,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11576,12 +13041,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -11592,6 +13060,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11601,12 +13070,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11614,6 +13086,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11621,6 +13094,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11632,21 +13106,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11654,6 +13132,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11661,6 +13140,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11672,21 +13152,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11694,6 +13178,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11701,6 +13186,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11712,111 +13198,133 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11829,11 +13337,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11841,11 +13351,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11853,6 +13365,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11861,17 +13374,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11882,6 +13399,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11892,6 +13410,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -11901,6 +13420,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11911,6 +13431,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11921,16 +13442,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11941,6 +13465,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11950,17 +13475,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11971,6 +13500,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11981,6 +13511,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -11990,6 +13521,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12000,6 +13532,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12010,16 +13543,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12030,6 +13566,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12039,7 +13576,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12049,22 +13588,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, stingray, table: l2_cntxt_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -12080,31 +13624,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12116,16 +13666,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12134,12 +13687,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -12150,6 +13706,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12159,12 +13716,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12176,6 +13736,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12183,6 +13744,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12194,21 +13756,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12220,6 +13786,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12227,6 +13794,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12238,21 +13806,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12260,6 +13832,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12267,6 +13840,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12278,111 +13852,133 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12395,11 +13991,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12407,11 +14005,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12419,6 +14019,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12427,17 +14028,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12448,6 +14053,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12458,6 +14064,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -12467,6 +14074,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12477,6 +14085,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12487,16 +14096,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12507,6 +14119,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12516,17 +14129,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12537,6 +14154,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12547,6 +14165,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -12556,6 +14175,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12566,6 +14186,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12576,16 +14197,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12596,6 +14220,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12605,7 +14230,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12615,22 +14242,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -12646,31 +14278,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12682,16 +14320,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12700,12 +14341,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -12716,6 +14360,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12725,12 +14370,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12738,6 +14386,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12745,6 +14394,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12756,21 +14406,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12782,6 +14436,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12789,6 +14444,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12800,21 +14456,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12822,6 +14482,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12829,6 +14490,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12840,111 +14502,133 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12957,11 +14641,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12969,11 +14655,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12981,6 +14669,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12989,17 +14678,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13010,6 +14703,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13020,6 +14714,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -13029,6 +14724,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13039,6 +14735,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13049,16 +14746,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13069,6 +14769,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13078,17 +14779,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13099,6 +14804,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13109,6 +14815,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -13118,6 +14825,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13128,6 +14836,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13138,16 +14847,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13158,6 +14870,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13167,7 +14880,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13183,11 +14898,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13203,6 +14920,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13218,21 +14936,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13245,11 +14967,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13261,6 +14985,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13270,11 +14995,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13283,12 +15010,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -13299,6 +15029,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13308,42 +15039,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13351,6 +15091,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13358,6 +15099,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13369,16 +15111,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13386,6 +15131,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13393,6 +15139,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13400,6 +15147,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13411,21 +15159,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13433,21 +15185,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13455,31 +15211,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13487,26 +15249,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13514,16 +15281,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13536,11 +15306,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13548,11 +15320,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13560,6 +15334,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13568,27 +15343,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 351,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_eth_type\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dmac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13599,6 +15380,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13609,6 +15391,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13618,27 +15401,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_eth_type\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dmac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13649,6 +15438,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13659,6 +15449,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13668,7 +15459,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13684,11 +15477,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13704,6 +15499,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13719,21 +15515,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13746,11 +15546,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13762,6 +15564,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13771,11 +15574,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13784,12 +15589,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -13800,6 +15608,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13809,42 +15618,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13856,6 +15674,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13863,6 +15682,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13874,16 +15694,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13891,6 +15714,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13898,6 +15722,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13905,6 +15730,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13916,21 +15742,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13938,21 +15768,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13960,31 +15794,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13992,26 +15832,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -14019,16 +15864,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -14041,11 +15889,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -14053,11 +15903,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -14065,6 +15917,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -14073,27 +15926,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 351,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_eth_type\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dmac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -14104,6 +15963,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -14114,6 +15974,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -14123,27 +15984,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, stingray, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_eth_type\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dmac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -14154,6 +16021,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -14164,6 +16032,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -14176,83 +16045,104 @@ struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {\n };\n \n struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[] = {\n+\t/* class_tid: 1, stingray, table: int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14262,30 +16152,38 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 1, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14294,7 +16192,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 1, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14304,6 +16204,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -14313,10 +16214,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14326,44 +16229,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 1, stingray, table: parif_def_lkup_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14372,7 +16286,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 1, stingray, table: parif_def_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14381,7 +16297,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 1, stingray, table: parif_def_err_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14390,83 +16308,104 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, stingray, table: int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14476,44 +16415,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 2, stingray, table: l2_cntxt_tcam_vfr_0 */\n \t{\n+\t.description = \"act_record_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14523,46 +16473,57 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 2, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14571,7 +16532,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14581,6 +16544,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -14590,10 +16554,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14603,44 +16569,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 2, stingray, table: parif_def_lkup_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14649,7 +16626,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, stingray, table: parif_def_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14658,7 +16637,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, stingray, table: parif_def_err_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14667,23 +16648,29 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 3, stingray, table: egr_int_vtag_encap_record_0 */\n \t{\n+\t.description = \"ecv_tun_type\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ecv_l4_type\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ecv_l3_type\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ecv_l2_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ecv_vtag_type\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -14692,21 +16679,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ecv_custom_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ecv_valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"vtag_tpid\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x81, 0x00}\n \t},\n \t{\n+\t.description = \"vtag_vid\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14716,50 +16707,63 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"vtag_de\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vtag_pcp\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 3, stingray, table: egr_int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14769,46 +16773,57 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -14818,164 +16833,206 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 3, stingray, table: egr_l2_cntxt_cache_0 */\n+\t/* class_tid: 3, stingray, table: egr_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"act_record_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 3, stingray, table: ing_int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14985,32 +17042,40 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 3, stingray, table: ing_l2_cntxt_dtagged_0 */\n \t{\n+\t.description = \"act_record_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15020,58 +17085,72 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 3, stingray, table: ing_l2_cntxt_stagged_0 */\n \t{\n+\t.description = \"act_record_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15081,58 +17160,72 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 4, stingray, table: egr_l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15141,7 +17234,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, stingray, table: egr_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15151,6 +17246,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15160,10 +17256,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15172,44 +17270,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 4, stingray, table: egr_parif_def_lkup_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15218,7 +17327,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, stingray, table: egr_parif_def_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15227,7 +17338,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, stingray, table: egr_parif_def_err_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15236,83 +17349,104 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, stingray, table: ing_int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -15322,30 +17456,38 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 4, stingray, table: ing_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"act_record_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15355,134 +17497,167 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 5, stingray, table: int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15492,30 +17667,38 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 6, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15525,6 +17708,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15534,10 +17718,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -15547,44 +17733,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 6, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15593,19 +17790,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15615,12 +17817,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15630,16 +17834,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 6, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15649,22 +17857,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15674,26 +17886,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15703,22 +17921,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15728,26 +17950,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15757,6 +17985,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15766,10 +17995,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -15779,44 +18010,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 7, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15825,19 +18067,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15847,12 +18094,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15862,16 +18111,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 7, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15881,22 +18134,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15906,26 +18163,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15935,22 +18198,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15960,26 +18227,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15988,7 +18261,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15998,6 +18273,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -16007,10 +18283,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -16020,44 +18298,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 8, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16066,19 +18355,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16088,12 +18382,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16103,16 +18399,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 8, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16122,22 +18422,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16147,26 +18451,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16176,22 +18486,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16201,26 +18515,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16229,7 +18549,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16239,6 +18561,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -16248,10 +18571,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -16261,44 +18586,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 9, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16307,19 +18643,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16329,12 +18670,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16344,16 +18687,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 9, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16363,22 +18710,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16388,26 +18739,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16417,22 +18774,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16442,26 +18803,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16470,7 +18837,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16480,6 +18849,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -16489,10 +18859,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -16502,44 +18874,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 10, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16548,19 +18931,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16570,12 +18958,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16585,16 +18975,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 10, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16604,22 +18998,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16629,26 +19027,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16658,22 +19062,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16683,26 +19091,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16711,7 +19125,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16721,6 +19137,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -16730,10 +19147,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -16743,44 +19162,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 11, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16789,19 +19219,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16811,12 +19246,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16826,16 +19263,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 11, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16845,22 +19286,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16870,26 +19315,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16899,22 +19350,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16924,26 +19379,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16953,6 +19414,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -16962,10 +19424,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -16975,44 +19439,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 12, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17021,19 +19496,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17043,12 +19523,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17058,16 +19540,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 12, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17077,22 +19563,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17102,26 +19592,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17131,22 +19627,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17156,26 +19656,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17185,6 +19691,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -17194,10 +19701,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -17207,44 +19716,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 13, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17253,19 +19773,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17275,12 +19800,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17290,16 +19817,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 13, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17309,22 +19840,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17334,26 +19869,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17363,22 +19904,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17388,26 +19933,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17417,6 +19968,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -17426,10 +19978,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -17439,44 +19993,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 14, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17485,19 +20050,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17507,12 +20077,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17522,16 +20094,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 14, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17541,22 +20117,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17566,26 +20146,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17595,22 +20181,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17620,26 +20210,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17649,6 +20245,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -17658,10 +20255,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -17671,44 +20270,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 15, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17717,19 +20327,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17739,12 +20354,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17754,16 +20371,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 15, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17773,22 +20394,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17798,26 +20423,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17827,22 +20458,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17852,26 +20487,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17881,6 +20522,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -17890,10 +20532,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -17903,44 +20547,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 16, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17949,19 +20604,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17971,12 +20631,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x14, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17986,16 +20648,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 16, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18005,22 +20671,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18030,26 +20700,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18059,22 +20735,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18084,26 +20764,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18113,6 +20799,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -18122,10 +20809,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -18135,44 +20824,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 17, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18181,19 +20881,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18203,12 +20908,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x18, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18218,16 +20925,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 17, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18237,22 +20948,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18262,26 +20977,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18291,22 +21012,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18316,30 +21041,38 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 18, stingray, table: int_flow_counter_tbl_0 */\n \t{\n+\t.description = \"count\",\n \t.field_bit_size = 64,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 18, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18349,6 +21082,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -18358,10 +21092,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -18371,44 +21107,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 18, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18418,6 +21165,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18426,11 +21174,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 18, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18440,12 +21191,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18455,12 +21208,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x08, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18470,22 +21225,27 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 18, stingray, table: wm_0 */\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18495,12 +21255,15 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18510,6 +21273,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -18519,10 +21283,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -18532,44 +21298,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 19, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18579,6 +21356,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18587,39 +21365,50 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 19, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18629,22 +21418,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18654,26 +21447,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18683,22 +21482,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18708,26 +21511,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18736,7 +21545,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18746,6 +21557,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -18755,10 +21567,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -18778,26 +21592,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18807,20 +21627,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 20, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18829,19 +21654,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18851,12 +21681,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18866,16 +21698,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 20, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18885,22 +21721,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18910,26 +21750,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18939,22 +21785,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18964,26 +21814,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18992,7 +21848,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19002,6 +21860,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -19011,10 +21870,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -19034,26 +21895,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19063,20 +21930,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 21, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19085,19 +21957,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19107,12 +21984,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19122,16 +22001,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 21, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19141,22 +22024,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19166,26 +22053,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19195,22 +22088,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19220,26 +22117,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19248,7 +22151,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, stingray, table: l2_cntxt_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19258,6 +22163,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -19267,10 +22173,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -19290,26 +22198,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19319,20 +22233,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 22, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19341,19 +22260,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19363,12 +22287,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19378,16 +22304,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 22, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19397,22 +22327,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19422,26 +22356,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19451,22 +22391,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19476,26 +22420,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19504,7 +22454,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19514,6 +22466,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -19523,10 +22476,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -19546,26 +22501,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19575,20 +22536,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 23, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19597,19 +22563,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19619,12 +22590,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19634,16 +22607,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 23, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19653,22 +22630,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19678,26 +22659,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19707,22 +22694,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19732,26 +22723,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19761,6 +22758,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -19770,10 +22768,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -19793,26 +22793,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19822,20 +22828,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 24, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19844,19 +22855,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19866,12 +22882,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19881,16 +22899,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 24, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19900,22 +22922,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19925,26 +22951,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19954,22 +22986,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19979,26 +23015,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20008,6 +23050,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -20017,10 +23060,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -20040,26 +23085,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20069,20 +23120,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 25, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20091,19 +23147,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, stingray, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -20113,12 +23174,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20128,16 +23191,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 25, stingray, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20147,22 +23214,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -20172,26 +23243,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, stingray, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20201,22 +23278,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -20226,20 +23307,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n@@ -20248,203 +23333,261 @@ struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[]\n };\n \n struct bnxt_ulp_mapper_ident_info ulp_stingray_class_ident_list[] = {\n+\t/* class_tid: 1, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 2, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 4, stingray, table: egr_l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 6, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 6, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 7, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 7, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 8, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 8, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 9, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 9, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 10, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 10, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 11, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 11, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 12, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 12, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 13, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 13, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 14, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 14, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 15, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 15, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 16, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 16, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 17, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 17, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 18, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 18, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n@@ -20452,20 +23595,25 @@ struct bnxt_ulp_mapper_ident_info ulp_stingray_class_ident_list[] = {\n \t.ident_bit_pos = 0\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 19, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 19, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n@@ -20473,90 +23621,115 @@ struct bnxt_ulp_mapper_ident_info ulp_stingray_class_ident_list[] = {\n \t.ident_bit_pos = 0\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 20, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 20, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 21, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 21, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 22, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 22, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 23, stingray, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 23, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 24, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 24, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 25, stingray, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 25, stingray, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_template_db_tbl.c b/drivers/net/bnxt/tf_ulp/ulp_template_db_tbl.c\nindex c65b6dc159..3a66d59b5d 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_template_db_tbl.c\n+++ b/drivers/net/bnxt/tf_ulp/ulp_template_db_tbl.c\n@@ -3,6 +3,8 @@\n  * All rights reserved.\n  */\n \n+/* date: Thu Oct 15 17:28:37 2020 */\n+\n #include \"ulp_template_db_enum.h\"\n #include \"ulp_template_db_field.h\"\n #include \"ulp_template_struct.h\"\n@@ -96,6 +98,11 @@ uint32_t ulp_act_prop_map_table[] = {\n \t\tBNXT_ULP_ACT_PROP_SZ_LAST\n };\n \n+/*\n+ * This structure has to be indexed based on the rte_flow_action_type that is\n+ * part of DPDK. The below array is list of parsing functions for each of the\n+ * flow actions that are supported.\n+ */\n struct bnxt_ulp_rte_act_info ulp_act_info[] = {\n \t[RTE_FLOW_ACTION_TYPE_END] = {\n \t.act_type                = BNXT_ULP_ACT_TYPE_END,\n@@ -295,25 +302,36 @@ struct bnxt_ulp_rte_act_info ulp_act_info[] = {\n \t}\n };\n \n-struct bnxt_ulp_cache_tbl_params ulp_cache_tbl_params[] = {\n+/* Specifies parameters for the generic tables */\n+struct bnxt_ulp_generic_tbl_params ulp_generic_tbl_params[] = {\n \t[BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM << 1 |\n \t\tTF_DIR_RX] = {\n-\t.num_entries             = 16384\n+\t.result_num_entries\t= 16384,\n+\t.result_byte_size\t= 6,\n+\t.result_byte_order\t= BNXT_ULP_BYTE_ORDER_LE\n \t},\n \t[BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM << 1 |\n \t\tTF_DIR_TX] = {\n-\t.num_entries             = 16384\n+\t.result_num_entries\t= 16384,\n+\t.result_byte_size\t= 6,\n+\t.result_byte_order\t= BNXT_ULP_BYTE_ORDER_LE\n+\n \t},\n \t[BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM << 1 |\n \t\tTF_DIR_RX] = {\n-\t.num_entries             = 16384\n+\t.result_num_entries\t= 16384,\n+\t.result_byte_size\t= 6,\n+\t.result_byte_order\t= BNXT_ULP_BYTE_ORDER_LE\n \t},\n \t[BNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM << 1 |\n \t\tTF_DIR_TX] = {\n-\t.num_entries             = 16384\n+\t.result_num_entries\t= 16384,\n+\t.result_byte_size\t= 6,\n+\t.result_byte_order\t= BNXT_ULP_BYTE_ORDER_LE\n \t}\n };\n \n+/* device tables */\n const struct ulp_template_device_tbls ulp_template_stingray_tbls[] = {\n \t[BNXT_ULP_TEMPLATE_TYPE_CLASS] = {\n \t.tmpl_list               = ulp_stingray_class_tmpl_list,\n@@ -329,6 +347,7 @@ const struct ulp_template_device_tbls ulp_template_stingray_tbls[] = {\n \t}\n };\n \n+/* device tables */\n const struct ulp_template_device_tbls ulp_template_wh_plus_tbls[] = {\n \t[BNXT_ULP_TEMPLATE_TYPE_CLASS] = {\n \t.tmpl_list               = ulp_wh_plus_class_tmpl_list,\n@@ -344,8 +363,10 @@ const struct ulp_template_device_tbls ulp_template_wh_plus_tbls[] = {\n \t}\n };\n \n+/* List of device specific parameters */\n struct bnxt_ulp_device_params ulp_device_params[BNXT_ULP_DEVICE_ID_LAST] = {\n \t[BNXT_ULP_DEVICE_ID_WH_PLUS] = {\n+\t.description             = \"Whitney_Plus\",\n \t.byte_order              = BNXT_ULP_BYTE_ORDER_LE,\n \t.encap_byte_swap         = 1,\n \t.int_flow_db_num_entries = 16384,\n@@ -364,6 +385,7 @@ struct bnxt_ulp_device_params ulp_device_params[BNXT_ULP_DEVICE_ID_LAST] = {\n \t.dev_tbls                = ulp_template_wh_plus_tbls\n \t},\n \t[BNXT_ULP_DEVICE_ID_STINGRAY] = {\n+\t.description             = \"Stingray\",\n \t.byte_order              = BNXT_ULP_BYTE_ORDER_LE,\n \t.encap_byte_swap         = 1,\n \t.int_flow_db_num_entries = 16384,\n@@ -383,6 +405,7 @@ struct bnxt_ulp_device_params ulp_device_params[BNXT_ULP_DEVICE_ID_LAST] = {\n \t}\n };\n \n+/* List of device specific parameters */\n struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = {\n \t[0] = {\n \t.resource_func           = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n@@ -434,6 +457,11 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = {\n \t}\n };\n \n+/*\n+ * This table has to be indexed based on the rte_flow_item_type that is part of\n+ * DPDK. The below array is list of parsing functions for each of the flow items\n+ * that are supported.\n+ */\n struct bnxt_ulp_rte_hdr_info ulp_hdr_info[] = {\n \t[RTE_FLOW_ITEM_TYPE_END] = {\n \t.hdr_type                = BNXT_ULP_HDR_TYPE_END,\n@@ -629,12 +657,17 @@ struct bnxt_ulp_rte_hdr_info ulp_hdr_info[] = {\n \t}\n };\n \n+/*\n+ * The parser uses this table to map vtags_num to CFA encapsulation VTAG\n+ * encoding. It then takes the result and stores it in act_prop[encap_vtag_type]\n+ */\n uint32_t bnxt_ulp_encap_vtag_map[] = {\n \tBNXT_ULP_SYM_ECV_VTAG_TYPE_NOP,\n \tBNXT_ULP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI,\n \tBNXT_ULP_SYM_ECV_VTAG_TYPE_ADD_2_ENCAP_PRI\n };\n \n+/* Lists global action records */\n uint32_t ulp_glb_template_tbl[] = {\n \tBNXT_ULP_DF_TPL_LOOPBACK_ACTION_REC\n };\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_template_db_wh_plus_class.c b/drivers/net/bnxt/tf_ulp/ulp_template_db_wh_plus_class.c\nindex d9266abd3a..1abc8ecdd4 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_template_db_wh_plus_class.c\n+++ b/drivers/net/bnxt/tf_ulp/ulp_template_db_wh_plus_class.c\n@@ -3,132 +3,185 @@\n  * All rights reserved.\n  */\n \n+/* date: Thu Oct 15 17:28:37 2020 */\n+\n #include \"ulp_template_db_enum.h\"\n #include \"ulp_template_db_field.h\"\n #include \"ulp_template_struct.h\"\n #include \"ulp_rte_parser.h\"\n \n+/* Mapper templates for header class list */\n struct bnxt_ulp_mapper_tbl_list_info ulp_wh_plus_class_tmpl_list[] = {\n+\t/* default-vfr-[port_to_vs]:1 */\n+\t/* class_tid: 1, wh_plus, ingress */\n \t[1] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 0\n \t},\n+\t/* default-vfr-[vs_to_port]:2 */\n+\t/* class_tid: 2, wh_plus, egress */\n \t[2] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 7,\n \t.start_tbl_idx = 6\n \t},\n+\t/* default-vfr-[vfrep_to_vf]:3 */\n+\t/* class_tid: 3, wh_plus, egress */\n \t[3] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 7,\n \t.start_tbl_idx = 13\n \t},\n+\t/* default-vfr-[vf_to_vfrep]:4 */\n+\t/* class_tid: 4, wh_plus, egress */\n \t[4] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 7,\n \t.start_tbl_idx = 20\n \t},\n+\t/* default-egr-[loopback_action_rec]:5 */\n+\t/* class_tid: 5, wh_plus, egress */\n \t[5] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 1,\n \t.start_tbl_idx = 27\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv4]-[smac, dmac, (vid)]:6 */\n+\t/* class_tid: 6, wh_plus, ingress */\n \t[6] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 28\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv6]-[smac, dmac, (vid)]:7 */\n+\t/* class_tid: 7, wh_plus, ingress */\n \t[7] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 33\n \t},\n+\t/* class-ing-em-[eth, ipv4, udp]-[sip, dip, sp, dp]:8 */\n+\t/* class_tid: 8, wh_plus, ingress */\n \t[8] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 38\n \t},\n+\t/* class-ing-em-[eth, ipv4, tcp]-[sip, dip, sp, dp]:9 */\n+\t/* class_tid: 9, wh_plus, ingress */\n \t[9] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 44\n \t},\n+\t/* class-ing-em-[eth,ipv6, udp]-[sip, dip, sp, dp]:10 */\n+\t/* class_tid: 10, wh_plus, ingress */\n \t[10] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 50\n \t},\n+\t/* class-ing-em-[eth, ipv6, tcp]-[sip, dip, sp, dp]:11 */\n+\t/* class_tid: 11, wh_plus, ingress */\n \t[11] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 56\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv4, udp]-[dmac, (vid), sip, dip, sp, dp]:12 */\n+\t/* class_tid: 12, wh_plus, ingress */\n \t[12] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 62\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv4, tcp]-[dmac, (vid), sip, dip, sp, dp]:13 */\n+\t/* class_tid: 13, wh_plus, ingress */\n \t[13] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 67\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv6, udp]-[dmac, (vid), sip, dip, sp, dp]:14 */\n+\t/* class_tid: 14, wh_plus, ingress */\n \t[14] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 72\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv6, tcp]-[dmac, (vid), sip, dip, sp, dp]:15 */\n+\t/* class_tid: 15, wh_plus, ingress */\n \t[15] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 77\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv4, udp, vxlan]-[dmac, (vid), dip, dp]:16 */\n+\t/* class_tid: 16, wh_plus, ingress */\n \t[16] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 82\n \t},\n+\t/* class-ing-em-[eth, (vlan), ipv6, udp, vxlan]-[t_dmac, (vid), t_dip, t_dp]:17 */\n+\t/* class_tid: 17, wh_plus, ingress */\n \t[17] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 87\n \t},\n+\t/* class-ing-em-f1-[eth, ipv4, udp, vxlan]-[t_dmac]:18 */\n+\t/* class_tid: 18, wh_plus, ingress */\n \t[18] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 92\n \t},\n+\t/* class-ing-em-f2-[ipv4, udp, vxlan]-[vni, i_dmac]:19 */\n+\t/* class_tid: 19, wh_plus, ingress */\n \t[19] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 97\n \t},\n+\t/* class-egr-em-[eth, ipv4, udp]-[sip, dip, sp, dp]:20 */\n+\t/* class_tid: 20, wh_plus, egress */\n \t[20] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 102\n \t},\n+\t/* class-egr-em-[eth, ipv4, tcp]-[sip, dip, sp, dp]:21 */\n+\t/* class_tid: 21, wh_plus, egress */\n \t[21] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 108\n \t},\n+\t/* class-egr-em-[eth-ipv6-udp]-[sip-dip-sp-dp]:22 */\n+\t/* class_tid: 22, wh_plus, egress */\n \t[22] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 114\n \t},\n+\t/* class-egr-em-[eth, ipv6, tcp]-[sip, dip, sp, dp]:23 */\n+\t/* class_tid: 23, wh_plus, egress */\n \t[23] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 6,\n \t.start_tbl_idx = 120\n \t},\n+\t/* class-egr-em-[eth, (vlan), ipv4]-[smac, dmac, type]:24 */\n+\t/* class_tid: 24, wh_plus, egress */\n \t[24] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n \t.start_tbl_idx = 126\n \t},\n+\t/* class-egr-em-[eth, (vlan), ipv6]-[smac, dmac, type]:25 */\n+\t/* class_tid: 25, wh_plus, egress */\n \t[25] = {\n \t.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,\n \t.num_tbls = 5,\n@@ -137,7 +190,7 @@ struct bnxt_ulp_mapper_tbl_list_info ulp_wh_plus_class_tmpl_list[] = {\n };\n \n struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n-\t{\n+\t{ /* class_tid: 1, wh_plus, table: int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -152,8 +205,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -169,7 +222,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 0,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 1, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_RX,\n@@ -188,7 +241,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 1, wh_plus, table: parif_def_lkup_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_RX,\n@@ -199,7 +252,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 1, wh_plus, table: parif_def_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_RX,\n@@ -210,7 +263,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 1, wh_plus, table: parif_def_err_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,\n \t.direction = TF_DIR_RX,\n@@ -221,7 +274,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 2, wh_plus, table: int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -236,7 +289,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR\n \t},\n-\t{\n+\t{ /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.cond_opcode = BNXT_ULP_COND_OPCODE_COMP_FIELD_IS_SET,\n@@ -257,8 +310,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -276,7 +329,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 1,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.cond_opcode = BNXT_ULP_COND_OPCODE_COMP_FIELD_NOT_SET,\n@@ -297,7 +350,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 2, wh_plus, table: parif_def_lkup_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -308,7 +361,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 2, wh_plus, table: parif_def_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -319,7 +372,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 2, wh_plus, table: parif_def_err_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -330,7 +383,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_COMP_FIELD,\n \t.index_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 3, wh_plus, table: egr_int_vtag_encap_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_ACT_ENCAP_8B,\n \t.resource_sub_type =\n@@ -345,7 +398,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0\n \t},\n-\t{\n+\t{ /* class_tid: 3, wh_plus, table: egr_int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -360,8 +413,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -377,7 +430,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 2,\n \t.ident_nums = 0\n \t},\n-\t{\n+\t{ /* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -396,7 +449,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 3, wh_plus, table: ing_int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -411,7 +464,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR\n \t},\n-\t{\n+\t{ /* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -430,7 +483,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -449,8 +502,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -466,7 +519,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 2,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -485,7 +538,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 4, wh_plus, table: egr_parif_def_lkup_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -496,7 +549,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,\n \t.index_operand = BNXT_ULP_SYM_VF_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 4, wh_plus, table: egr_parif_def_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -507,7 +560,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,\n \t.index_operand = BNXT_ULP_SYM_VF_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 4, wh_plus, table: egr_parif_def_err_arec_ptr_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,\n \t.resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,\n \t.direction = TF_DIR_TX,\n@@ -518,7 +571,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_CONSTANT,\n \t.index_operand = BNXT_ULP_SYM_VF_FUNC_PARIF\n \t},\n-\t{\n+\t{ /* class_tid: 4, wh_plus, table: ing_int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -533,7 +586,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR\n \t},\n-\t{\n+\t{ /* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -552,7 +605,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 5, wh_plus, table: int_full_act_record_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,\n \t.resource_sub_type =\n@@ -567,7 +620,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_GLOBAL,\n \t.index_operand = BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR\n \t},\n-\t{\n+\t{ /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -586,8 +639,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -603,7 +656,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 4,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 6, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -622,7 +675,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 6, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -640,7 +693,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 6, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -658,7 +711,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -677,8 +730,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -694,7 +747,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 6,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 7, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -713,7 +766,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 7, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -731,7 +784,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 7, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -749,8 +802,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -766,7 +819,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 7,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_RX,\n@@ -785,8 +838,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -802,7 +855,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 8,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 8, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -821,7 +874,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 8, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -839,7 +892,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 8, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -857,8 +910,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -874,7 +927,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 9,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_RX,\n@@ -893,8 +946,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -910,7 +963,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 10,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 9, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -929,7 +982,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 9, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -947,7 +1000,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 9, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -965,8 +1018,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -982,7 +1035,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 11,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_RX,\n@@ -1001,8 +1054,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1018,7 +1071,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 12,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 10, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1037,7 +1090,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 10, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1055,7 +1108,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 10, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1073,8 +1126,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -1090,7 +1143,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 13,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_RX,\n@@ -1109,8 +1162,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1126,7 +1179,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 14,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 11, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1145,7 +1198,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 11, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1163,7 +1216,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 11, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1181,7 +1234,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1200,8 +1253,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1217,7 +1270,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 16,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 12, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1236,7 +1289,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 12, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1254,7 +1307,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 12, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1272,7 +1325,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1291,8 +1344,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1308,7 +1361,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 18,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 13, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1327,7 +1380,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 13, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1345,7 +1398,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 13, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1363,7 +1416,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1382,8 +1435,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1399,7 +1452,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 20,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 14, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1418,7 +1471,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 14, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1436,7 +1489,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 14, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1454,7 +1507,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1473,8 +1526,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1490,7 +1543,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 22,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 15, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1509,7 +1562,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 15, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1527,7 +1580,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 15, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1545,7 +1598,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1564,8 +1617,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1581,7 +1634,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 24,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 16, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1600,7 +1653,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 16, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1618,7 +1671,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 16, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1636,7 +1689,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1655,8 +1708,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1672,7 +1725,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 26,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 17, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1691,7 +1744,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 17, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1709,7 +1762,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 17, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1727,7 +1780,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 18, wh_plus, table: int_flow_counter_tbl_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,\n \t.resource_type = TF_TBL_TYPE_ACT_STATS_64,\n \t.resource_sub_type =\n@@ -1744,7 +1797,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.index_opcode = BNXT_ULP_INDEX_OPCODE_ALLOCATE,\n \t.index_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0\n \t},\n-\t{\n+\t{ /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1763,8 +1816,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1780,7 +1833,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 28,\n \t.ident_nums = 2\n \t},\n-\t{\n+\t{ /* class_tid: 18, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1799,7 +1852,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 18, wh_plus, table: wm_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1818,7 +1871,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_RX,\n@@ -1837,8 +1890,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1854,7 +1907,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 31,\n \t.ident_nums = 2\n \t},\n-\t{\n+\t{ /* class_tid: 19, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_RX,\n@@ -1873,7 +1926,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 19, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -1891,7 +1944,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 19, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1909,8 +1962,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -1926,7 +1979,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 33,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -1945,8 +1998,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -1962,7 +2015,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 34,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 20, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -1981,7 +2034,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 20, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -1999,7 +2052,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 20, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2017,8 +2070,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -2034,7 +2087,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 35,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -2053,8 +2106,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -2070,7 +2123,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 36,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 21, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -2089,7 +2142,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 21, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -2107,7 +2160,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 21, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2125,8 +2178,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -2142,7 +2195,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 37,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 22, wh_plus, table: l2_cntxt_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -2161,8 +2214,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -2178,7 +2231,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 38,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 22, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -2197,7 +2250,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 22, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -2215,7 +2268,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 22, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2233,8 +2286,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_L2_CNTXT_TCAM,\n@@ -2250,7 +2303,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 39,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,\n \t.direction = TF_DIR_TX,\n@@ -2269,8 +2322,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -2286,7 +2339,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 40,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 23, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -2305,7 +2358,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 23, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -2323,7 +2376,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 23, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2341,7 +2394,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_SET_IF_MARK_ACTION,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_TX,\n@@ -2360,8 +2413,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -2377,7 +2430,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 42,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 24, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -2396,7 +2449,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 24, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -2414,7 +2467,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 24, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2432,7 +2485,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,\n \t.direction = TF_DIR_TX,\n@@ -2451,8 +2504,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n-\t.resource_func = BNXT_ULP_RESOURCE_FUNC_CACHE_TABLE,\n+\t{ /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */\n+\t.resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.resource_sub_type =\n \t\tBNXT_ULP_RESOURCE_SUB_TYPE_CACHE_TYPE_PROFILE_TCAM,\n@@ -2468,7 +2521,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.ident_start_idx = 44,\n \t.ident_nums = 1\n \t},\n-\t{\n+\t{ /* class_tid: 25, wh_plus, table: profile_tcam_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,\n \t.resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,\n \t.direction = TF_DIR_TX,\n@@ -2487,7 +2540,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO\n \t},\n-\t{\n+\t{ /* class_tid: 25, wh_plus, table: ext_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,\n \t.resource_type = TF_MEM_EXTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_EXT,\n@@ -2505,7 +2558,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n \t.mark_db_opcode = BNXT_ULP_MARK_DB_OPCODE_NOP,\n \t.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES\n \t},\n-\t{\n+\t{ /* class_tid: 25, wh_plus, table: int_em_0 */\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,\n \t.resource_type = TF_MEM_INTERNAL,\n \t.mem_type_opcode = BNXT_ULP_MEM_TYPE_OPCODE_EXECUTE_IF_INT,\n@@ -2526,7 +2579,9 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {\n };\n \n struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n+\t/* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n@@ -2536,22 +2591,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 1, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2564,46 +2624,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2612,22 +2681,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2640,46 +2714,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2688,7 +2771,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n@@ -2698,22 +2783,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2726,46 +2816,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2774,7 +2873,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n@@ -2784,22 +2885,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2812,46 +2918,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2860,12 +2975,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2878,11 +2996,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2895,26 +3015,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2924,11 +3049,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2940,11 +3067,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2953,7 +3082,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2966,16 +3097,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -2988,26 +3122,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3017,11 +3156,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3033,11 +3174,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3046,7 +3189,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n@@ -3056,22 +3201,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3084,46 +3234,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3132,22 +3291,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3160,46 +3324,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3208,7 +3381,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3224,11 +3399,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3244,6 +3421,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3259,26 +3437,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3291,16 +3474,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3308,6 +3494,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3316,12 +3503,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -3332,6 +3522,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3341,42 +3532,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3384,6 +3584,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3391,6 +3592,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3402,16 +3604,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3419,6 +3624,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3426,6 +3632,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3433,6 +3640,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3444,21 +3652,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3466,21 +3678,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3488,31 +3704,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3520,26 +3742,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3547,16 +3774,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3569,11 +3799,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3581,11 +3813,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3593,6 +3827,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3601,42 +3836,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -3647,11 +3891,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3662,6 +3908,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3671,42 +3918,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -3717,11 +3973,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3732,6 +3990,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3741,7 +4000,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3757,11 +4018,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3777,6 +4040,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -3792,26 +4056,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3824,16 +4093,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3841,6 +4113,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3849,12 +4122,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -3865,6 +4141,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -3874,42 +4151,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3921,6 +4207,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3928,6 +4215,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3939,16 +4227,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3956,6 +4247,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3963,6 +4255,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3970,6 +4263,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -3981,21 +4275,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4003,21 +4301,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4025,31 +4327,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4057,26 +4365,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4084,16 +4397,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4106,11 +4422,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4118,11 +4436,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4130,6 +4450,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4138,42 +4459,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4184,11 +4514,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4199,6 +4531,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4208,42 +4541,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4254,11 +4596,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4269,6 +4613,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4278,7 +4623,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4288,22 +4635,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -4319,46 +4671,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4367,12 +4728,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -4383,6 +4747,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4392,12 +4757,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4409,6 +4777,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4416,6 +4785,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4427,21 +4797,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4449,6 +4823,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4456,6 +4831,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4467,16 +4843,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4484,6 +4863,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4491,6 +4871,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4498,6 +4879,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4509,21 +4891,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4531,21 +4917,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4553,31 +4943,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4585,26 +4981,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4612,16 +5013,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4634,11 +5038,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4646,11 +5052,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4658,6 +5066,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4666,17 +5075,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4687,6 +5100,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4697,6 +5111,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -4706,6 +5121,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4716,6 +5132,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4726,16 +5143,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4746,6 +5166,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4755,17 +5176,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4776,6 +5201,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4786,6 +5212,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -4795,6 +5222,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4805,6 +5233,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4815,16 +5244,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4835,6 +5267,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4844,7 +5277,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -4854,22 +5289,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -4885,46 +5325,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4933,12 +5382,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -4949,6 +5401,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -4958,12 +5411,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4971,6 +5427,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4978,6 +5435,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -4989,21 +5447,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5011,6 +5473,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5018,6 +5481,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5029,16 +5493,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5046,6 +5513,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5053,6 +5521,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5060,6 +5529,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5071,21 +5541,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5093,21 +5567,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5115,31 +5593,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5147,26 +5631,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5174,16 +5663,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5196,11 +5688,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5208,11 +5702,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5220,6 +5716,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5228,17 +5725,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5249,6 +5750,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5259,6 +5761,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -5268,6 +5771,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5278,6 +5782,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5288,16 +5793,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5308,6 +5816,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5317,17 +5826,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5338,6 +5851,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5348,6 +5862,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -5357,6 +5872,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5367,6 +5883,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5377,16 +5894,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5397,6 +5917,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5406,7 +5927,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5416,22 +5939,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -5447,46 +5975,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5495,12 +6032,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -5511,6 +6051,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5520,12 +6061,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5537,6 +6081,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5544,6 +6089,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5555,21 +6101,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5581,6 +6131,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5588,6 +6139,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5599,16 +6151,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5616,6 +6171,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5623,6 +6179,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5630,6 +6187,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5641,21 +6199,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5663,21 +6225,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5685,31 +6251,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5717,26 +6289,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5744,16 +6321,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5766,11 +6346,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5778,11 +6360,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5790,6 +6374,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -5798,17 +6383,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5819,6 +6408,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5829,6 +6419,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -5838,6 +6429,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5848,6 +6440,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5858,16 +6451,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5878,6 +6474,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5887,17 +6484,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5908,6 +6509,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5918,6 +6520,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -5927,6 +6530,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5937,6 +6541,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5947,16 +6552,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5967,6 +6575,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -5976,7 +6585,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -5986,22 +6597,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -6017,46 +6633,55 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6065,12 +6690,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -6081,6 +6709,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6090,12 +6719,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6103,6 +6735,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6110,6 +6743,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6121,21 +6755,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6147,6 +6785,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6154,6 +6793,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6165,16 +6805,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6182,6 +6825,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6189,6 +6833,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6196,6 +6841,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6207,21 +6853,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6229,21 +6879,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6251,31 +6905,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6283,26 +6943,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6310,16 +6975,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6332,11 +7000,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6344,11 +7014,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6356,6 +7028,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6364,17 +7037,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6385,6 +7062,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6395,6 +7073,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -6404,6 +7083,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6414,6 +7094,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6424,16 +7105,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6444,6 +7128,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6453,17 +7138,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6474,6 +7163,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6484,6 +7174,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -6493,6 +7184,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6503,6 +7195,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6513,16 +7206,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6533,6 +7229,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6542,7 +7239,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -6558,11 +7257,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -6578,6 +7279,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -6593,26 +7295,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6625,16 +7332,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6642,6 +7352,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6650,12 +7361,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -6666,6 +7380,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -6675,12 +7390,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6692,6 +7410,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6699,6 +7418,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6710,21 +7430,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6732,6 +7456,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6739,6 +7464,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6750,16 +7476,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6767,6 +7496,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6774,6 +7504,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6781,6 +7512,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6792,21 +7524,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6814,21 +7550,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6836,31 +7576,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6868,26 +7614,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6895,16 +7646,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6917,11 +7671,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6929,11 +7685,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6941,6 +7699,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -6949,17 +7708,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6970,6 +7733,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6980,6 +7744,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -6989,6 +7754,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -6999,6 +7765,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7009,16 +7776,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7029,6 +7799,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7038,17 +7809,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7059,6 +7834,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7069,6 +7845,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -7078,6 +7855,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7088,6 +7866,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7098,16 +7877,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7118,6 +7900,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7127,7 +7910,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7143,11 +7928,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7163,6 +7950,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7178,26 +7966,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7210,16 +8003,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7227,6 +8023,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7235,12 +8032,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -7251,6 +8051,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7260,12 +8061,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7273,6 +8077,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7280,6 +8085,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7291,21 +8097,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7313,6 +8123,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7320,6 +8131,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7331,16 +8143,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7348,6 +8163,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7355,6 +8171,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7362,6 +8179,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7373,21 +8191,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7395,21 +8217,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7417,31 +8243,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7449,26 +8281,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7476,16 +8313,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7498,11 +8338,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7510,11 +8352,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7522,6 +8366,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7530,17 +8375,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7551,6 +8400,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7561,6 +8411,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -7570,6 +8421,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7580,6 +8432,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7590,16 +8443,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7610,6 +8466,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7619,17 +8476,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7640,6 +8501,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7650,6 +8512,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -7659,6 +8522,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7669,6 +8533,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -7679,16 +8544,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7699,6 +8567,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7708,7 +8577,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7724,11 +8595,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7744,6 +8617,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -7759,26 +8633,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7791,16 +8670,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7808,6 +8690,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7816,12 +8699,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -7832,6 +8718,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -7841,12 +8728,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7858,6 +8748,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7865,6 +8756,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7876,21 +8768,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7902,6 +8798,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7909,6 +8806,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7920,16 +8818,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7937,6 +8838,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7944,6 +8846,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7951,6 +8854,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7962,21 +8866,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -7984,21 +8892,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8006,31 +8918,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8038,26 +8956,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8065,16 +8988,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8087,11 +9013,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8099,11 +9027,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8111,6 +9041,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8119,17 +9050,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8140,6 +9075,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8150,6 +9086,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -8159,6 +9096,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8169,6 +9107,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8179,16 +9118,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8199,6 +9141,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8208,17 +9151,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8229,6 +9176,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8239,6 +9187,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -8248,6 +9197,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8258,6 +9208,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8268,16 +9219,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8288,6 +9242,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8297,7 +9252,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -8313,11 +9270,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -8333,6 +9292,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -8348,26 +9308,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8380,16 +9345,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8397,6 +9365,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8405,12 +9374,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -8421,6 +9393,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8430,12 +9403,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8443,6 +9419,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8450,6 +9427,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8461,21 +9439,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8487,6 +9469,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8494,6 +9477,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8505,16 +9489,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8522,6 +9509,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8529,6 +9517,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8536,6 +9525,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8547,21 +9537,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8569,21 +9563,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8591,31 +9589,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8623,26 +9627,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8650,16 +9659,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8672,11 +9684,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8684,11 +9698,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8696,6 +9712,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8704,17 +9721,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8725,6 +9746,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8735,6 +9757,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -8744,6 +9767,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8754,6 +9778,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8764,16 +9789,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8784,6 +9812,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8793,17 +9822,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8814,6 +9847,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8824,6 +9858,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -8833,6 +9868,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8843,6 +9879,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -8853,16 +9890,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8873,6 +9913,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -8882,17 +9923,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8905,6 +9950,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -8920,11 +9966,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -8940,21 +9988,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8967,6 +10019,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8974,11 +10027,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -8987,12 +10042,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -9003,6 +10061,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9012,92 +10071,111 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9105,6 +10183,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9112,6 +10191,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9123,11 +10203,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9139,6 +10221,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9146,6 +10229,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9157,21 +10241,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9179,6 +10267,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9186,6 +10275,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9197,16 +10287,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9214,6 +10307,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9221,6 +10315,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9232,16 +10327,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9254,11 +10352,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9266,11 +10366,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9278,6 +10380,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9286,27 +10389,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -9316,6 +10425,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"t_ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -9326,21 +10436,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"t_ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9351,6 +10465,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9360,27 +10475,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -9390,6 +10511,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"t_ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -9400,21 +10522,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"t_ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"t_l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9425,6 +10551,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9434,17 +10561,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9457,6 +10588,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -9472,11 +10604,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -9492,21 +10626,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9519,6 +10657,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9526,11 +10665,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9539,12 +10680,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -9555,6 +10699,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9564,92 +10709,111 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9657,6 +10821,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9664,6 +10829,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9675,11 +10841,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9691,6 +10859,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9698,6 +10867,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9709,21 +10879,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9735,6 +10909,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9742,6 +10917,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9753,16 +10929,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9770,6 +10949,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9777,6 +10957,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9788,16 +10969,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9810,11 +10994,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9822,11 +11008,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9834,6 +11022,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -9842,27 +11031,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -9872,6 +11067,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -9882,21 +11078,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9907,6 +11107,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9916,27 +11117,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -9946,6 +11153,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -9956,21 +11164,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9981,6 +11193,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -9990,17 +11203,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10013,6 +11230,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -10028,31 +11246,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10060,6 +11284,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10067,11 +11292,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10080,12 +11307,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -10096,96 +11326,116 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 18, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10193,6 +11443,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10200,6 +11451,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10211,11 +11463,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10227,6 +11481,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10234,6 +11489,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10245,21 +11501,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10267,6 +11527,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10274,6 +11535,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10285,16 +11547,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10302,6 +11567,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10309,6 +11575,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10320,16 +11587,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10342,11 +11612,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10354,11 +11626,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10366,6 +11640,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10374,7 +11649,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 18, wh_plus, table: wm_0 */\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10387,11 +11664,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10404,6 +11683,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10411,21 +11691,26 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"others\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10438,6 +11723,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -10453,31 +11739,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10485,6 +11777,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10492,11 +11785,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10505,12 +11800,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -10521,96 +11819,116 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 19, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10618,6 +11936,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10625,6 +11944,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10636,11 +11956,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10652,6 +11974,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10659,6 +11982,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10670,21 +11994,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10692,6 +12020,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10699,6 +12028,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10710,16 +12040,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10727,6 +12060,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10734,6 +12068,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10745,16 +12080,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10767,11 +12105,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10779,11 +12119,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10791,6 +12133,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -10799,17 +12142,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dst_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -10820,6 +12167,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -10830,16 +12178,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -10850,6 +12201,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -10859,17 +12211,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 339,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dst_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -10880,6 +12236,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -10890,16 +12247,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -10910,6 +12270,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -10919,7 +12280,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -10929,22 +12292,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -10960,36 +12328,43 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11001,11 +12376,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11014,12 +12391,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -11030,6 +12410,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11039,12 +12420,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11056,6 +12440,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11063,6 +12448,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11074,21 +12460,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11096,6 +12486,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11103,6 +12494,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11114,21 +12506,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11136,6 +12532,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11143,6 +12540,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11154,111 +12552,133 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11271,11 +12691,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11283,11 +12705,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11295,6 +12719,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11303,17 +12728,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11324,6 +12753,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11334,6 +12764,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -11343,6 +12774,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11353,6 +12785,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11363,16 +12796,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11383,6 +12819,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11392,17 +12829,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11413,6 +12854,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11423,6 +12865,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -11432,6 +12875,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11442,6 +12886,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11452,16 +12897,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11472,6 +12920,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11481,7 +12930,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11491,22 +12942,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -11522,36 +12978,43 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11563,11 +13026,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11576,12 +13041,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -11592,6 +13060,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11601,12 +13070,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11614,6 +13086,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11621,6 +13094,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11632,21 +13106,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11654,6 +13132,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11661,6 +13140,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11672,21 +13152,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11694,6 +13178,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11701,6 +13186,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11712,111 +13198,133 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11829,11 +13337,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11841,11 +13351,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11853,6 +13365,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -11861,17 +13374,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 251,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11882,6 +13399,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11892,6 +13410,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -11901,6 +13420,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11911,6 +13431,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11921,16 +13442,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11941,6 +13465,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -11950,17 +13475,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11971,6 +13500,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -11981,6 +13511,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -11990,6 +13521,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_dst_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12000,6 +13532,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv4_src_addr\",\n \t.field_bit_size = 32,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12010,16 +13543,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12030,6 +13566,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12039,7 +13576,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12049,22 +13588,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, wh_plus, table: l2_cntxt_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -12080,36 +13624,43 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12121,11 +13672,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12134,12 +13687,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -12150,6 +13706,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12159,12 +13716,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12176,6 +13736,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12183,6 +13744,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12194,21 +13756,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12220,6 +13786,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12227,6 +13794,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12238,21 +13806,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12260,6 +13832,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12267,6 +13840,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12278,111 +13852,133 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12395,11 +13991,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12407,11 +14005,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12419,6 +14019,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12427,17 +14028,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12448,6 +14053,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12458,6 +14064,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -12467,6 +14074,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12477,6 +14085,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12487,16 +14096,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12507,6 +14119,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12516,17 +14129,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12537,6 +14154,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12547,6 +14165,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -12556,6 +14175,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12566,6 +14186,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12576,16 +14197,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12596,6 +14220,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12605,7 +14230,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -12615,22 +14242,27 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -12646,36 +14278,43 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_tl2_dst\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12687,11 +14326,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12700,12 +14341,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -12716,6 +14360,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -12725,12 +14370,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12738,6 +14386,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12745,6 +14394,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12756,21 +14406,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12782,6 +14436,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12789,6 +14444,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12800,21 +14456,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12822,6 +14482,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12829,6 +14490,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12840,111 +14502,133 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12957,11 +14641,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12969,11 +14655,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12981,6 +14669,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -12989,17 +14678,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 59,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13010,6 +14703,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13020,6 +14714,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -13029,6 +14724,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13039,6 +14735,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13049,16 +14746,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13069,6 +14769,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13078,17 +14779,21 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_dst_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13099,6 +14804,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l4_src_port\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13109,6 +14815,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ip_proto\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n@@ -13118,6 +14825,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_dst_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13128,6 +14836,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ipv6_src_addr\",\n \t.field_bit_size = 128,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13138,16 +14847,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_src_mac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_id\",\n \t.field_bit_size = 24,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13158,6 +14870,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13167,7 +14880,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13183,11 +14898,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13203,6 +14920,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13218,26 +14936,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13250,11 +14973,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13266,6 +14991,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13275,6 +15001,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13283,12 +15010,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -13299,6 +15029,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13308,42 +15039,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13351,6 +15091,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13358,6 +15099,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13369,16 +15111,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13386,6 +15131,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13393,6 +15139,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13400,6 +15147,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13411,21 +15159,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13433,21 +15185,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13455,31 +15211,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13487,26 +15249,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13514,16 +15281,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13536,11 +15306,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13548,11 +15320,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13560,6 +15334,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13568,27 +15343,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 351,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_eth_type\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dmac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13599,6 +15380,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13609,6 +15391,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13618,27 +15401,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_eth_type\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dmac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -13649,6 +15438,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13659,6 +15449,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13668,7 +15459,9 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13684,11 +15477,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac0_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13704,6 +15499,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"svif\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n \t.mask_operand = {\n@@ -13719,26 +15515,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sparif\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ivlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_ovlan_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mac1_l2_addr\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13751,11 +15552,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tl2_num_vtags\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13767,6 +15570,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13776,6 +15580,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13784,12 +15589,15 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"recycle\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n@@ -13800,6 +15608,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"class_tid\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -13809,42 +15618,51 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"l4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13856,6 +15674,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13863,6 +15682,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13874,16 +15694,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13891,6 +15714,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13898,6 +15722,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13905,6 +15730,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13916,21 +15742,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"tun_hdr_flags\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tun_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13938,21 +15768,25 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_is_udp_tcp\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl4_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13960,31 +15794,37 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_dst\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ipv6_cmp_src\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_isIP\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_type\",\n \t.field_bit_size = 4,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -13992,26 +15832,31 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_two_vtags\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_vtag_present\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_uc_mc_bc\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_type\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl2_hdr_valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -14019,16 +15864,19 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hrec_next\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 9,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -14041,11 +15889,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"agg_error\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"recycle_cnt\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -14053,11 +15903,13 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_0\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pkt_type_1\",\n \t.field_bit_size = 2,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -14065,6 +15917,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n@@ -14073,27 +15926,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t.spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 351,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_eth_type\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dmac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -14104,6 +15963,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -14114,6 +15974,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -14123,27 +15984,33 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 7,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"local_cos\",\n \t.field_bit_size = 3,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_eth_type\",\n \t.field_bit_size = 16,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_inner_vid\",\n \t.field_bit_size = 12,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_dmac\",\n \t.field_bit_size = 48,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,\n@@ -14154,6 +16021,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -14164,6 +16032,7 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,\n \t.spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n@@ -14176,83 +16045,104 @@ struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {\n };\n \n struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] = {\n+\t/* class_tid: 1, wh_plus, table: int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14262,30 +16152,38 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14294,7 +16192,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 1, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14304,6 +16204,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -14313,10 +16214,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14326,44 +16229,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 1, wh_plus, table: parif_def_lkup_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14372,7 +16286,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 1, wh_plus, table: parif_def_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14381,7 +16297,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 1, wh_plus, table: parif_def_err_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14390,83 +16308,104 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, wh_plus, table: int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14476,44 +16415,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */\n \t{\n+\t.description = \"act_record_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14523,46 +16473,57 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14571,7 +16532,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14581,6 +16544,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -14590,10 +16554,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14603,44 +16569,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 2, wh_plus, table: parif_def_lkup_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14649,7 +16626,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, wh_plus, table: parif_def_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14658,7 +16637,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 2, wh_plus, table: parif_def_err_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14667,23 +16648,29 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 3, wh_plus, table: egr_int_vtag_encap_record_0 */\n \t{\n+\t.description = \"ecv_tun_type\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ecv_l4_type\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ecv_l3_type\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ecv_l2_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ecv_vtag_type\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -14692,21 +16679,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ecv_custom_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"ecv_valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"vtag_tpid\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x81, 0x00}\n \t},\n \t{\n+\t.description = \"vtag_vid\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14716,50 +16707,63 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"vtag_de\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vtag_pcp\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"spare\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 3, wh_plus, table: egr_int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -14769,46 +16773,57 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -14818,164 +16833,206 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */\n+\t/* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"act_record_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 3, wh_plus, table: ing_int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -14985,32 +17042,40 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */\n \t{\n+\t.description = \"act_record_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15020,58 +17085,72 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */\n \t{\n+\t.description = \"act_record_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15081,58 +17160,72 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15141,7 +17234,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15151,6 +17246,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15160,10 +17256,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15172,44 +17270,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 4, wh_plus, table: egr_parif_def_lkup_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15218,7 +17327,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, wh_plus, table: egr_parif_def_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15227,7 +17338,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, wh_plus, table: egr_parif_def_err_arec_ptr_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 32,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15236,83 +17349,104 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 4, wh_plus, table: ing_int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -15322,30 +17456,38 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"act_record_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15355,134 +17497,167 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 5, wh_plus, table: int_full_act_record_0 */\n \t{\n+\t.description = \"flow_cntr_ptr\",\n \t.field_bit_size = 14,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"age_enable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"agg_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"rate_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"flow_cntr_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_key\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_mir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcpflags_match\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"encap_ptr\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"dst_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_dst_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"src_ip_ptr\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tcp_src_port\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_rdir\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"l3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tl3_ttl_dec\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"decap_func\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"vnic_or_vport\",\n \t.field_bit_size = 12,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15492,30 +17667,38 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pop_vlan\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"meter\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"mirror\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"drop\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"hit\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"type\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15525,6 +17708,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15534,10 +17718,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -15547,44 +17733,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15593,19 +17790,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15615,12 +17817,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15630,16 +17834,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 6, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15649,22 +17857,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15674,26 +17886,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 6, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15703,22 +17921,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15728,26 +17950,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15757,6 +17985,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -15766,10 +17995,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -15779,44 +18010,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15825,19 +18067,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15847,12 +18094,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15862,16 +18111,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 7, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15881,22 +18134,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15906,26 +18163,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 7, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15935,22 +18198,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -15960,26 +18227,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15988,7 +18261,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -15998,6 +18273,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -16007,10 +18283,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -16020,44 +18298,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16066,19 +18355,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16088,12 +18382,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16103,16 +18399,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 8, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16122,22 +18422,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16147,26 +18451,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 8, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16176,22 +18486,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16201,26 +18515,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16229,7 +18549,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16239,6 +18561,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -16248,10 +18571,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -16261,44 +18586,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16307,19 +18643,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16329,12 +18670,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16344,16 +18687,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 9, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16363,22 +18710,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16388,26 +18739,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 9, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16417,22 +18774,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16442,26 +18803,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16470,7 +18837,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16480,6 +18849,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -16489,10 +18859,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -16502,44 +18874,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16548,19 +18931,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16570,12 +18958,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16585,16 +18975,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 10, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16604,22 +18998,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16629,26 +19027,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 10, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16658,22 +19062,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16683,26 +19091,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16711,7 +19125,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16721,6 +19137,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -16730,10 +19147,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -16743,44 +19162,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16789,19 +19219,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16811,12 +19246,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16826,16 +19263,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 11, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16845,22 +19286,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16870,26 +19315,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 11, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16899,22 +19350,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -16924,26 +19379,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -16953,6 +19414,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -16962,10 +19424,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -16975,44 +19439,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17021,19 +19496,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17043,12 +19523,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17058,16 +19540,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 12, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17077,22 +19563,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17102,26 +19592,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 12, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17131,22 +19627,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17156,26 +19656,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17185,6 +19691,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -17194,10 +19701,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -17207,44 +19716,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17253,19 +19773,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17275,12 +19800,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17290,16 +19817,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 13, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17309,22 +19840,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17334,26 +19869,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 13, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17363,22 +19904,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17388,26 +19933,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17417,6 +19968,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -17426,10 +19978,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -17439,44 +19993,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17485,19 +20050,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17507,12 +20077,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17522,16 +20094,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 14, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17541,22 +20117,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17566,26 +20146,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 14, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17595,22 +20181,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17620,26 +20210,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17649,6 +20245,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -17658,10 +20255,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -17671,44 +20270,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17717,19 +20327,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17739,12 +20354,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17754,16 +20371,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 15, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17773,22 +20394,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17798,26 +20423,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 15, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17827,22 +20458,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17852,26 +20487,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17881,6 +20522,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -17890,10 +20532,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -17903,44 +20547,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17949,19 +20604,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -17971,12 +20631,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x14, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -17986,16 +20648,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 16, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18005,22 +20671,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18030,26 +20700,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 16, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18059,22 +20735,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18084,26 +20764,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18113,6 +20799,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -18122,10 +20809,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -18135,44 +20824,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18181,19 +20881,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18203,12 +20908,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x18, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18218,16 +20925,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 17, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18237,22 +20948,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18262,26 +20977,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 17, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18291,22 +21012,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18316,30 +21041,38 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 18, wh_plus, table: int_flow_counter_tbl_0 */\n \t{\n+\t.description = \"count\",\n \t.field_bit_size = 64,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18349,6 +21082,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -18358,10 +21092,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -18371,44 +21107,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18418,6 +21165,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18426,11 +21174,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 18, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18440,12 +21191,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18455,12 +21208,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x08, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18470,22 +21225,27 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 18, wh_plus, table: wm_0 */\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18495,12 +21255,15 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18510,6 +21273,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -18519,10 +21283,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,\n \t.result_operand = {\n@@ -18532,44 +21298,55 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18579,6 +21356,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18587,39 +21365,50 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 19, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18629,22 +21418,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18654,26 +21447,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 19, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18683,22 +21482,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18708,26 +21511,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18736,7 +21545,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18746,6 +21557,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -18755,10 +21567,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -18778,26 +21592,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18807,20 +21627,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18829,19 +21654,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18851,12 +21681,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18866,16 +21698,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 20, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18885,22 +21721,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18910,26 +21750,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 20, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18939,22 +21785,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -18964,26 +21814,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -18992,7 +21848,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19002,6 +21860,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -19011,10 +21870,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -19034,26 +21895,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19063,20 +21930,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19085,19 +21957,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19107,12 +21984,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19122,16 +22001,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 21, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19141,22 +22024,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19166,26 +22053,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 21, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19195,22 +22088,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19220,26 +22117,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19248,7 +22151,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, wh_plus, table: l2_cntxt_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19258,6 +22163,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -19267,10 +22173,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -19290,26 +22198,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19319,20 +22233,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19341,19 +22260,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19363,12 +22287,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19378,16 +22304,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 22, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19397,22 +22327,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19422,26 +22356,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 22, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19451,22 +22391,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19476,26 +22420,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19504,7 +22454,9 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19514,6 +22466,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -19523,10 +22476,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -19546,26 +22501,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19575,20 +22536,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19597,19 +22563,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19619,12 +22590,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19634,16 +22607,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 23, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19653,22 +22630,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19678,26 +22659,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 23, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19707,22 +22694,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19732,26 +22723,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19761,6 +22758,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -19770,10 +22768,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -19793,26 +22793,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19822,20 +22828,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19844,19 +22855,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19866,12 +22882,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19881,16 +22899,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 24, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19900,22 +22922,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19925,26 +22951,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 24, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -19954,22 +22986,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -19979,26 +23015,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20008,6 +23050,7 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"prof_func_id\",\n \t.field_bit_size = 7,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,\n \t.result_operand = {\n@@ -20017,10 +23060,12 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l2_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"parif\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,\n \t.result_operand = {\n@@ -20040,26 +23085,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"allowed_pri\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_pri\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"allowed_tpid\",\n \t.field_bit_size = 6,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"default_tpid\",\n \t.field_bit_size = 3,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"bd_act_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"sp_rec_ptr\",\n \t.field_bit_size = 16,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20069,20 +23120,25 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"byp_sp_lkup\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pri_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"tpid_anti_spoof_ctl\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20091,19 +23147,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, wh_plus, table: profile_tcam_0 */\n \t{\n+\t.description = \"wc_key_id\",\n \t.field_bit_size = 4,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"wc_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"em_key_mask\",\n \t.field_bit_size = 10,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -20113,12 +23174,14 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_key_id\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.field_bit_size = 8,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20128,16 +23191,20 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"em_search_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"pl_byp_lkup_en\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n+\t/* class_tid: 25, wh_plus, table: ext_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20147,22 +23214,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -20172,26 +23243,32 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n+\t/* class_tid: 25, wh_plus, table: int_em_0 */\n \t{\n+\t.description = \"act_rec_ptr\",\n \t.field_bit_size = 33,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,\n \t.result_operand = {\n@@ -20201,22 +23278,26 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"ext_flow_ctr\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"act_rec_int\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"act_rec_size\",\n \t.field_bit_size = 5,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"key_size\",\n \t.field_bit_size = 9,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {\n@@ -20226,20 +23307,24 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"reserved\",\n \t.field_bit_size = 11,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"strength\",\n \t.field_bit_size = 2,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,\n \t\t0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}\n \t},\n \t{\n+\t.description = \"l1_cacheable\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO\n \t},\n \t{\n+\t.description = \"valid\",\n \t.field_bit_size = 1,\n \t.result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,\n \t.result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,\n@@ -20248,203 +23333,261 @@ struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] =\n };\n \n struct bnxt_ulp_mapper_ident_info ulp_wh_plus_class_ident_list[] = {\n+\t/* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n@@ -20452,20 +23595,25 @@ struct bnxt_ulp_mapper_ident_info ulp_wh_plus_class_ident_list[] = {\n \t.ident_bit_pos = 0\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n@@ -20473,90 +23621,115 @@ struct bnxt_ulp_mapper_ident_info ulp_wh_plus_class_ident_list[] = {\n \t.ident_bit_pos = 0\n \t},\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */\n \t{\n+\t.description = \"l2_cntxt_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,\n \t.ident_bit_size = 10,\n \t.ident_bit_pos = 0\n \t},\n+\t/* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */\n \t{\n+\t.description = \"em_profile_id\",\n \t.resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,\n \t.ident_type = TF_IDENT_TYPE_EM_PROF,\n \t.regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_template_struct.h b/drivers/net/bnxt/tf_ulp/ulp_template_struct.h\nindex a539ec0c84..67308f1cf1 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_template_struct.h\n+++ b/drivers/net/bnxt/tf_ulp/ulp_template_struct.h\n@@ -217,6 +217,9 @@ struct bnxt_ulp_mapper_tbl_info {\n \tenum bnxt_ulp_mark_db_opcode\tmark_db_opcode;\n \tenum bnxt_ulp_index_opcode\tindex_opcode;\n \tuint32_t\t\t\tindex_operand;\n+\n+\t/* Table opcode for table operations */\n+\tuint32_t\t\t\ttbl_opcode;\n };\n \n struct bnxt_ulp_mapper_key_field_info {\n@@ -258,6 +261,12 @@ struct bnxt_ulp_cache_tbl_params {\n \tuint16_t num_entries;\n };\n \n+struct bnxt_ulp_generic_tbl_params {\n+\tuint16_t\t\t\tresult_num_entries;\n+\tuint16_t\t\t\tresult_byte_size;\n+\tenum bnxt_ulp_byte_order\tresult_byte_order;\n+};\n+\n /*\n  * Flow Mapper Static Data Externs:\n  * Access to the below static data should be done through access functions and\n@@ -288,6 +297,11 @@ extern struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[];\n  */\n extern struct bnxt_ulp_cache_tbl_params ulp_cache_tbl_params[];\n \n+/*\n+ * The ulp_generic_tbl_parms table provides the sizes of the generic tables the\n+ * mapper must dynamically allocate during initialization.\n+ */\n+extern struct bnxt_ulp_generic_tbl_params ulp_generic_tbl_params[];\n /*\n  * The ulp_global template table is used to initialize default entries\n  * that could be reused by other templates.\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_utils.c b/drivers/net/bnxt/tf_ulp/ulp_utils.c\nindex 7214e9c889..ff8eabd3f3 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_utils.c\n+++ b/drivers/net/bnxt/tf_ulp/ulp_utils.c\n@@ -146,8 +146,20 @@ ulp_bs_put_lsb(uint8_t *bs, uint16_t bitpos, uint8_t bitlen, uint8_t val)\n \t}\n }\n \n-/* Assuming that val is in Big-Endian Format */\n-static uint32_t\n+/*\n+ * Add data to the byte array in Little endian format.\n+ *\n+ * bs [in] The byte array where data is pushed\n+ *\n+ * pos [in] The offset where data is pushed\n+ *\n+ * len [in] The number of bits to be added to the data array.\n+ *\n+ * val [in] The data to be added to the data array.\n+ *\n+ * returns the number of bits pushed.\n+ */\n+uint32_t\n ulp_bs_push_lsb(uint8_t *bs, uint16_t pos, uint8_t len, uint8_t *val)\n {\n \tint i;\n@@ -169,8 +181,20 @@ ulp_bs_push_lsb(uint8_t *bs, uint16_t pos, uint8_t len, uint8_t *val)\n \treturn len;\n }\n \n-/* Assuming that val is in Big-Endian Format */\n-static uint32_t\n+/*\n+ * Add data to the byte array in Big endian format.\n+ *\n+ * bs [in] The byte array where data is pushed\n+ *\n+ * pos [in] The offset where data is pushed\n+ *\n+ * len [in] The number of bits to be added to the data array.\n+ *\n+ * val [in] The data to be added to the data array.\n+ *\n+ * returns the number of bits pushed.\n+ */\n+uint32_t\n ulp_bs_push_msb(uint8_t *bs, uint16_t pos, uint8_t len, uint8_t *val)\n {\n \tint i;\n@@ -474,7 +498,7 @@ ulp_blob_pad_push(struct ulp_blob *blob,\n {\n \tif (datalen > (uint32_t)(blob->bitlen - blob->write_idx)) {\n \t\tBNXT_TF_DBG(ERR, \"Pad too large for blob\\n\");\n-\t\treturn 0;\n+\t\treturn -1;\n \t}\n \n \tblob->write_idx += datalen;\n@@ -504,8 +528,22 @@ ulp_bs_get_lsb(uint8_t *src, uint16_t bitpos, uint8_t bitlen, uint8_t *dst)\n \t}\n }\n \n-/* Assuming that src is in little-Endian Format */\n-static void\n+/*\n+ * Get data from the byte array in Little endian format.\n+ *\n+ * src [in] The byte array where data is extracted from\n+ *\n+ * dst [out] The byte array where data is pulled into\n+ *\n+ * size [in] The size of dst array in bytes\n+ *\n+ * offset [in] The offset where data is pulled\n+ *\n+ * len [in] The number of bits to be extracted from the data array\n+ *\n+ * returns None.\n+ */\n+void\n ulp_bs_pull_lsb(uint8_t *src, uint8_t *dst, uint32_t size,\n \t\tuint32_t offset, uint32_t len)\n {\n@@ -525,6 +563,57 @@ ulp_bs_pull_lsb(uint8_t *src, uint8_t *dst, uint32_t size,\n \t\tulp_bs_get_lsb(src, offset, len, &dst[size - 1 - idx]);\n }\n \n+/* Get data from src and put into dst using big-endian format */\n+static void\n+ulp_bs_get_msb(uint8_t *src, uint16_t bitpos, uint8_t bitlen, uint8_t *dst)\n+{\n+\tuint8_t bitoffs = bitpos % ULP_BLOB_BYTE;\n+\tuint16_t index  = ULP_BITS_2_BYTE_NR(bitpos);\n+\tuint8_t mask;\n+\tint32_t shift;\n+\n+\tshift = ULP_BLOB_BYTE - bitoffs - bitlen;\n+\tif (shift >= 0) {\n+\t\tmask = 0xFF >> -bitlen;\n+\t\t*dst = (src[index] >> shift) & mask;\n+\t} else {\n+\t\t*dst = (src[index] & (0xFF >> bitoffs)) << -shift;\n+\t\t*dst |= src[index + 1] >> -shift;\n+\t}\n+}\n+\n+/*\n+ * Get data from the byte array in Big endian format.\n+ *\n+ * src [in] The byte array where data is extracted from\n+ *\n+ * dst [out] The byte array where data is pulled into\n+ *\n+ * offset [in] The offset where data is pulled\n+ *\n+ * len [in] The number of bits to be extracted from the data array\n+ *\n+ * returns None.\n+ */\n+void\n+ulp_bs_pull_msb(uint8_t *src, uint8_t *dst,\n+\t\tuint32_t offset, uint32_t len)\n+{\n+\tuint32_t idx;\n+\tuint32_t cnt = ULP_BITS_2_BYTE_NR(len);\n+\n+\t/* iterate bytewise to get data */\n+\tfor (idx = 0; idx < cnt; idx++) {\n+\t\tulp_bs_get_msb(src, offset, ULP_BLOB_BYTE, &dst[idx]);\n+\t\toffset += ULP_BLOB_BYTE;\n+\t\tlen -= ULP_BLOB_BYTE;\n+\t}\n+\n+\t/* Extract the last reminder data that is not 8 byte boundary */\n+\tif (len)\n+\t\tulp_bs_get_msb(src, offset, len, &dst[idx]);\n+}\n+\n /*\n  * Extract data from the binary blob using given offset.\n  *\n@@ -549,11 +638,10 @@ ulp_blob_pull(struct ulp_blob *blob, uint8_t *data, uint32_t data_size,\n \t\treturn -1; /* failure */\n \t}\n \n-\tif (blob->byte_order == BNXT_ULP_BYTE_ORDER_BE) {\n-\t\tBNXT_TF_DBG(ERR, \"Big endian pull not implemented\\n\");\n-\t\treturn -1; /* failure */\n-\t}\n-\tulp_bs_pull_lsb(blob->data, data, data_size, offset, len);\n+\tif (blob->byte_order == BNXT_ULP_BYTE_ORDER_BE)\n+\t\tulp_bs_pull_msb(blob->data, data, offset, len);\n+\telse\n+\t\tulp_bs_pull_lsb(blob->data, data, data_size, offset, len);\n \treturn 0;\n }\n \ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_utils.h b/drivers/net/bnxt/tf_ulp/ulp_utils.h\nindex d3f0da049b..bbd8c16407 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_utils.h\n+++ b/drivers/net/bnxt/tf_ulp/ulp_utils.h\n@@ -135,6 +135,38 @@ ulp_regfile_write(struct ulp_regfile *regfile,\n \t\t  enum bnxt_ulp_regfile_index field,\n \t\t  uint64_t data);\n \n+/*\n+ * Add data to the byte array in Little endian format.\n+ *\n+ * bs [in] The byte array where data is pushed\n+ *\n+ * pos [in] The offset where data is pushed\n+ *\n+ * len [in] The number of bits to be added to the data array.\n+ *\n+ * val [in] The data to be added to the data array.\n+ *\n+ * returns the number of bits pushed.\n+ */\n+uint32_t\n+ulp_bs_push_lsb(uint8_t *bs, uint16_t pos, uint8_t len, uint8_t *val);\n+\n+/*\n+ * Add data to the byte array in Big endian format.\n+ *\n+ * bs [in] The byte array where data is pushed\n+ *\n+ * pos [in] The offset where data is pushed\n+ *\n+ * len [in] The number of bits to be added to the data array.\n+ *\n+ * val [in] The data to be added to the data array.\n+ *\n+ * returns the number of bits pushed.\n+ */\n+uint32_t\n+ulp_bs_push_msb(uint8_t *bs, uint16_t pos, uint8_t len, uint8_t *val);\n+\n /*\n  * Initializes the blob structure for creating binary blob\n  *\n@@ -257,6 +289,42 @@ uint8_t *\n ulp_blob_data_get(struct ulp_blob *blob,\n \t\t  uint16_t *datalen);\n \n+/*\n+ * Get data from the byte array in Little endian format.\n+ *\n+ * src [in] The byte array where data is extracted from\n+ *\n+ * dst [out] The byte array where data is pulled into\n+ *\n+ * size [in] The size of dst array in bytes\n+ *\n+ * offset [in] The offset where data is pulled\n+ *\n+ * len [in] The number of bits to be extracted from the data array\n+ *\n+ * returns None.\n+ */\n+void\n+ulp_bs_pull_lsb(uint8_t *src, uint8_t *dst, uint32_t size,\n+\t\tuint32_t offset, uint32_t len);\n+\n+/*\n+ * Get data from the byte array in Big endian format.\n+ *\n+ * src [in] The byte array where data is extracted from\n+ *\n+ * dst [out] The byte array where data is pulled into\n+ *\n+ * offset [in] The offset where data is pulled\n+ *\n+ * len [in] The number of bits to be extracted from the data array\n+ *\n+ * returns None.\n+ */\n+void\n+ulp_bs_pull_msb(uint8_t *src, uint8_t *dst,\n+\t\tuint32_t offset, uint32_t len);\n+\n /*\n  * Extract data from the binary blob using given offset.\n  *\n",
    "prefixes": [
        "v2",
        "27/58"
    ]
}