From patchwork Thu Nov 4 21:58:25 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103787 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 81B83A0C5E; Thu, 4 Nov 2021 22:59:01 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4068142795; Thu, 4 Nov 2021 22:58:56 +0100 (CET) Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) by mails.dpdk.org (Postfix) with ESMTP id BCD754273B for ; Thu, 4 Nov 2021 22:58:54 +0100 (CET) Received: by mail-pl1-f182.google.com with SMTP id t21so9566188plr.6 for ; Thu, 04 Nov 2021 14:58:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=5sx1S2pbfaE3tGXKPQcHzVKquCvocIw314QMua2j1UY=; b=I9LgMpBvqRv6juhHoslmwfmPSSdsqqDCqoMGtCaryvsfYeKAFil4m/7TvNu/0b9y5b 9Cyl/ECOx3CHKOCDgfop+PFYrVo6nCuIqwvKuAfE0r83Nyyb6h4Kuq5DgKR0SIQnNRYQ UfZrPEKbo6KipY2dXejNN9UuN1nKUZwa/o5cg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=5sx1S2pbfaE3tGXKPQcHzVKquCvocIw314QMua2j1UY=; b=jqIPwISpnQF1EdUhFTZ0aeyoO/dQjzl6LXZJ4GlN3VvP4O9qc7CtTaEO4tRJ63YVH5 9QLhfPgUeWG37Fj8pI2uVSXjeDzdmo3sUrMxwINEveRVuyzILgkvG3xLiH0eiIQZclTd 34pxpiysC7VXimEjYtEInTDCuWxGwIyJ0RhPD1YabND9hfdGDvjjy309PpSvLi9IQcFV knbN+ELVP1pEYENpxIWTDzMlIllEdrFXcql68qQmOHEqekKC/PF7SN7O9jYMj/VmLz9F +aeDxYf8C+5MhbAszP+8lw0OjrFKsaC/JzSLEuWuPbtR4WSMfN8YCwlzHzrSPTPmIYt2 gDpQ== X-Gm-Message-State: AOAM533YRwKZwIH3gCbrO5ixmbRXytWjfS37ez52mHslodla1UU/dGUX BJqDu5x+7BhrFFAAVsT2xnQPG7CqnIuOdidJPNFolPbVUblILBYbZLKZhVYkxZQSMHZyUQ+VBKz JSblbQroPj/WfsPYyoLd5xGc6lkamLu8leKdH5Ty/v39K9r2ysrvzs7gKpFCD3jc= X-Google-Smtp-Source: ABdhPJz9s//L6vBB1deCi1I/qKnGmACgkzfZRJgrGAJdOhxzYEDljY77TweUrygcLXDpGfparogmpw== X-Received: by 2002:a17:90b:4d84:: with SMTP id oj4mr20829372pjb.90.1636063133117; Thu, 04 Nov 2021 14:58:53 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.58.51 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:58:51 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Venkat Duvvuru , Shahaji Bhosle , Mike Baucom , Randy Schacher Date: Thu, 4 Nov 2021 14:58:25 -0700 Message-Id: <20211104215846.58672-2-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 01/22] net/bnxt: add NAT support for dest IP and port combination X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha * Added support for NAT action for destination IP and port combination for Thor devices. * Consolidated the encapsulation and NAT entries for scaling flows with NAT actions. Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Shahaji Bhosle Reviewed-by: Mike Baucom Reviewed-by: Randy Schacher Acked-by: Ajit Khaparde --- .../generic_templates/ulp_template_db_act.c | 376 +++++++++++------- .../generic_templates/ulp_template_db_enum.h | 18 +- .../generic_templates/ulp_template_db_tbl.c | 14 +- .../ulp_template_db_thor_class.c | 2 +- .../ulp_template_db_wh_plus_act.c | 96 +++-- 5 files changed, 317 insertions(+), 189 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c index 0da6070d7d..ce878d8e02 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Mon May 17 15:30:41 2021 */ +/* date: Wed Aug 25 14:37:06 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -47,59 +47,67 @@ uint16_t ulp_act_sig_tbl[BNXT_ULP_ACT_SIG_TBL_MAX_SZ] = { [BNXT_ULP_ACT_HID_04bc] = 30, [BNXT_ULP_ACT_HID_00a9] = 31, [BNXT_ULP_ACT_HID_020f] = 32, - [BNXT_ULP_ACT_HID_04a9] = 33, - [BNXT_ULP_ACT_HID_01fc] = 34, - [BNXT_ULP_ACT_HID_04be] = 35, - [BNXT_ULP_ACT_HID_00ab] = 36, - [BNXT_ULP_ACT_HID_0211] = 37, - [BNXT_ULP_ACT_HID_04ab] = 38, - [BNXT_ULP_ACT_HID_01fe] = 39, - [BNXT_ULP_ACT_HID_0667] = 40, - [BNXT_ULP_ACT_HID_0254] = 41, - [BNXT_ULP_ACT_HID_03ba] = 42, - [BNXT_ULP_ACT_HID_0654] = 43, - [BNXT_ULP_ACT_HID_03a7] = 44, - [BNXT_ULP_ACT_HID_0669] = 45, - [BNXT_ULP_ACT_HID_0256] = 46, - [BNXT_ULP_ACT_HID_03bc] = 47, - [BNXT_ULP_ACT_HID_0656] = 48, - [BNXT_ULP_ACT_HID_03a9] = 49, - [BNXT_ULP_ACT_HID_021b] = 50, - [BNXT_ULP_ACT_HID_021c] = 51, - [BNXT_ULP_ACT_HID_021e] = 52, - [BNXT_ULP_ACT_HID_063f] = 53, - [BNXT_ULP_ACT_HID_0510] = 54, - [BNXT_ULP_ACT_HID_03c6] = 55, - [BNXT_ULP_ACT_HID_0082] = 56, - [BNXT_ULP_ACT_HID_06bb] = 57, - [BNXT_ULP_ACT_HID_021d] = 58, - [BNXT_ULP_ACT_HID_0641] = 59, - [BNXT_ULP_ACT_HID_0512] = 60, - [BNXT_ULP_ACT_HID_03c8] = 61, - [BNXT_ULP_ACT_HID_0084] = 62, - [BNXT_ULP_ACT_HID_06bd] = 63, - [BNXT_ULP_ACT_HID_06d7] = 64, - [BNXT_ULP_ACT_HID_02c4] = 65, - [BNXT_ULP_ACT_HID_042a] = 66, - [BNXT_ULP_ACT_HID_06c4] = 67, - [BNXT_ULP_ACT_HID_0417] = 68, - [BNXT_ULP_ACT_HID_06d9] = 69, - [BNXT_ULP_ACT_HID_02c6] = 70, - [BNXT_ULP_ACT_HID_042c] = 71, - [BNXT_ULP_ACT_HID_06c6] = 72, - [BNXT_ULP_ACT_HID_0419] = 73, - [BNXT_ULP_ACT_HID_0119] = 74, - [BNXT_ULP_ACT_HID_046f] = 75, - [BNXT_ULP_ACT_HID_05d5] = 76, - [BNXT_ULP_ACT_HID_0106] = 77, - [BNXT_ULP_ACT_HID_05c2] = 78, - [BNXT_ULP_ACT_HID_011b] = 79, - [BNXT_ULP_ACT_HID_0471] = 80, - [BNXT_ULP_ACT_HID_05d7] = 81, - [BNXT_ULP_ACT_HID_0108] = 82, - [BNXT_ULP_ACT_HID_05c4] = 83, - [BNXT_ULP_ACT_HID_00a2] = 84, - [BNXT_ULP_ACT_HID_00a4] = 85 + [BNXT_ULP_ACT_HID_0153] = 33, + [BNXT_ULP_ACT_HID_04a9] = 34, + [BNXT_ULP_ACT_HID_01fc] = 35, + [BNXT_ULP_ACT_HID_04be] = 36, + [BNXT_ULP_ACT_HID_00ab] = 37, + [BNXT_ULP_ACT_HID_0211] = 38, + [BNXT_ULP_ACT_HID_0155] = 39, + [BNXT_ULP_ACT_HID_04ab] = 40, + [BNXT_ULP_ACT_HID_01fe] = 41, + [BNXT_ULP_ACT_HID_0667] = 42, + [BNXT_ULP_ACT_HID_0254] = 43, + [BNXT_ULP_ACT_HID_03ba] = 44, + [BNXT_ULP_ACT_HID_02fe] = 45, + [BNXT_ULP_ACT_HID_0654] = 46, + [BNXT_ULP_ACT_HID_03a7] = 47, + [BNXT_ULP_ACT_HID_0669] = 48, + [BNXT_ULP_ACT_HID_0256] = 49, + [BNXT_ULP_ACT_HID_03bc] = 50, + [BNXT_ULP_ACT_HID_0300] = 51, + [BNXT_ULP_ACT_HID_0656] = 52, + [BNXT_ULP_ACT_HID_03a9] = 53, + [BNXT_ULP_ACT_HID_021b] = 54, + [BNXT_ULP_ACT_HID_021c] = 55, + [BNXT_ULP_ACT_HID_021e] = 56, + [BNXT_ULP_ACT_HID_063f] = 57, + [BNXT_ULP_ACT_HID_0510] = 58, + [BNXT_ULP_ACT_HID_03c6] = 59, + [BNXT_ULP_ACT_HID_0082] = 60, + [BNXT_ULP_ACT_HID_06bb] = 61, + [BNXT_ULP_ACT_HID_021d] = 62, + [BNXT_ULP_ACT_HID_0641] = 63, + [BNXT_ULP_ACT_HID_0512] = 64, + [BNXT_ULP_ACT_HID_03c8] = 65, + [BNXT_ULP_ACT_HID_0084] = 66, + [BNXT_ULP_ACT_HID_06bd] = 67, + [BNXT_ULP_ACT_HID_06d7] = 68, + [BNXT_ULP_ACT_HID_02c4] = 69, + [BNXT_ULP_ACT_HID_042a] = 70, + [BNXT_ULP_ACT_HID_036e] = 71, + [BNXT_ULP_ACT_HID_06c4] = 72, + [BNXT_ULP_ACT_HID_0417] = 73, + [BNXT_ULP_ACT_HID_06d9] = 74, + [BNXT_ULP_ACT_HID_02c6] = 75, + [BNXT_ULP_ACT_HID_042c] = 76, + [BNXT_ULP_ACT_HID_0370] = 77, + [BNXT_ULP_ACT_HID_06c6] = 78, + [BNXT_ULP_ACT_HID_0419] = 79, + [BNXT_ULP_ACT_HID_0119] = 80, + [BNXT_ULP_ACT_HID_046f] = 81, + [BNXT_ULP_ACT_HID_05d5] = 82, + [BNXT_ULP_ACT_HID_0519] = 83, + [BNXT_ULP_ACT_HID_0106] = 84, + [BNXT_ULP_ACT_HID_05c2] = 85, + [BNXT_ULP_ACT_HID_011b] = 86, + [BNXT_ULP_ACT_HID_0471] = 87, + [BNXT_ULP_ACT_HID_05d7] = 88, + [BNXT_ULP_ACT_HID_051b] = 89, + [BNXT_ULP_ACT_HID_0108] = 90, + [BNXT_ULP_ACT_HID_05c4] = 91, + [BNXT_ULP_ACT_HID_00a2] = 92, + [BNXT_ULP_ACT_HID_00a4] = 93 }; /* Array for the act matcher list */ @@ -429,22 +437,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { .act_tid = 3 }, [33] = { - .act_hid = BNXT_ULP_ACT_HID_04a9, + .act_hid = BNXT_ULP_ACT_HID_0153, .act_pattern_id = 3, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_SET_IPV4_DST | - BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_ACT_BIT_SET_TP_DST | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, [34] = { - .act_hid = BNXT_ULP_ACT_HID_01fc, + .act_hid = BNXT_ULP_ACT_HID_04a9, .act_pattern_id = 4, .app_sig = 0, .act_sig = { .bits = - BNXT_ULP_ACT_BIT_SET_IPV4_SRC | BNXT_ULP_ACT_BIT_SET_IPV4_DST | BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_ACT_BIT_SET_TP_DST | @@ -452,40 +458,63 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { .act_tid = 3 }, [35] = { - .act_hid = BNXT_ULP_ACT_HID_04be, + .act_hid = BNXT_ULP_ACT_HID_01fc, .act_pattern_id = 5, .app_sig = 0, .act_sig = { .bits = - BNXT_ULP_ACT_BIT_COUNT | BNXT_ULP_ACT_BIT_SET_IPV4_SRC | + BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_ACT_BIT_SET_TP_SRC | + BNXT_ULP_ACT_BIT_SET_TP_DST | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, [36] = { - .act_hid = BNXT_ULP_ACT_HID_00ab, + .act_hid = BNXT_ULP_ACT_HID_04be, .act_pattern_id = 6, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT | BNXT_ULP_ACT_BIT_SET_IPV4_SRC | - BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, [37] = { - .act_hid = BNXT_ULP_ACT_HID_0211, + .act_hid = BNXT_ULP_ACT_HID_00ab, .act_pattern_id = 7, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT | - BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_ACT_BIT_SET_IPV4_SRC | + BNXT_ULP_ACT_BIT_SET_TP_SRC | BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, [38] = { - .act_hid = BNXT_ULP_ACT_HID_04ab, + .act_hid = BNXT_ULP_ACT_HID_0211, .act_pattern_id = 8, .app_sig = 0, + .act_sig = { .bits = + BNXT_ULP_ACT_BIT_COUNT | + BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid = 3 + }, + [39] = { + .act_hid = BNXT_ULP_ACT_HID_0155, + .act_pattern_id = 9, + .app_sig = 0, + .act_sig = { .bits = + BNXT_ULP_ACT_BIT_COUNT | + BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid = 3 + }, + [40] = { + .act_hid = BNXT_ULP_ACT_HID_04ab, + .act_pattern_id = 10, + .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT | BNXT_ULP_ACT_BIT_SET_IPV4_DST | @@ -494,9 +523,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [39] = { + [41] = { .act_hid = BNXT_ULP_ACT_HID_01fe, - .act_pattern_id = 9, + .act_pattern_id = 11, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT | @@ -507,9 +536,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [40] = { + [42] = { .act_hid = BNXT_ULP_ACT_HID_0667, - .act_pattern_id = 10, + .act_pattern_id = 12, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -517,9 +546,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [41] = { + [43] = { .act_hid = BNXT_ULP_ACT_HID_0254, - .act_pattern_id = 11, + .act_pattern_id = 13, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -528,9 +557,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [42] = { + [44] = { .act_hid = BNXT_ULP_ACT_HID_03ba, - .act_pattern_id = 12, + .act_pattern_id = 14, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -538,9 +567,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [43] = { + [45] = { + .act_hid = BNXT_ULP_ACT_HID_02fe, + .act_pattern_id = 15, + .app_sig = 0, + .act_sig = { .bits = + BNXT_ULP_ACT_BIT_DEC_TTL | + BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid = 3 + }, + [46] = { .act_hid = BNXT_ULP_ACT_HID_0654, - .act_pattern_id = 13, + .act_pattern_id = 16, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -550,9 +590,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [44] = { + [47] = { .act_hid = BNXT_ULP_ACT_HID_03a7, - .act_pattern_id = 14, + .act_pattern_id = 17, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -563,9 +603,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [45] = { + [48] = { .act_hid = BNXT_ULP_ACT_HID_0669, - .act_pattern_id = 15, + .act_pattern_id = 18, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -574,9 +614,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [46] = { + [49] = { .act_hid = BNXT_ULP_ACT_HID_0256, - .act_pattern_id = 16, + .act_pattern_id = 19, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -586,9 +626,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [47] = { + [50] = { .act_hid = BNXT_ULP_ACT_HID_03bc, - .act_pattern_id = 17, + .act_pattern_id = 20, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -597,9 +637,21 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [48] = { + [51] = { + .act_hid = BNXT_ULP_ACT_HID_0300, + .act_pattern_id = 21, + .app_sig = 0, + .act_sig = { .bits = + BNXT_ULP_ACT_BIT_DEC_TTL | + BNXT_ULP_ACT_BIT_COUNT | + BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_ING }, + .act_tid = 3 + }, + [52] = { .act_hid = BNXT_ULP_ACT_HID_0656, - .act_pattern_id = 18, + .act_pattern_id = 22, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -610,9 +662,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [49] = { + [53] = { .act_hid = BNXT_ULP_ACT_HID_03a9, - .act_pattern_id = 19, + .act_pattern_id = 23, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -624,7 +676,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_ING }, .act_tid = 3 }, - [50] = { + [54] = { .act_hid = BNXT_ULP_ACT_HID_021b, .act_pattern_id = 0, .app_sig = 0, @@ -632,7 +684,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [51] = { + [55] = { .act_hid = BNXT_ULP_ACT_HID_021c, .act_pattern_id = 1, .app_sig = 0, @@ -641,7 +693,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [52] = { + [56] = { .act_hid = BNXT_ULP_ACT_HID_021e, .act_pattern_id = 2, .app_sig = 0, @@ -651,7 +703,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [53] = { + [57] = { .act_hid = BNXT_ULP_ACT_HID_063f, .act_pattern_id = 3, .app_sig = 0, @@ -662,7 +714,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [54] = { + [58] = { .act_hid = BNXT_ULP_ACT_HID_0510, .act_pattern_id = 4, .app_sig = 0, @@ -672,7 +724,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [55] = { + [59] = { .act_hid = BNXT_ULP_ACT_HID_03c6, .act_pattern_id = 5, .app_sig = 0, @@ -681,7 +733,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [56] = { + [60] = { .act_hid = BNXT_ULP_ACT_HID_0082, .act_pattern_id = 6, .app_sig = 0, @@ -693,7 +745,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [57] = { + [61] = { .act_hid = BNXT_ULP_ACT_HID_06bb, .act_pattern_id = 7, .app_sig = 0, @@ -704,7 +756,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [58] = { + [62] = { .act_hid = BNXT_ULP_ACT_HID_021d, .act_pattern_id = 8, .app_sig = 0, @@ -713,7 +765,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [59] = { + [63] = { .act_hid = BNXT_ULP_ACT_HID_0641, .act_pattern_id = 9, .app_sig = 0, @@ -725,7 +777,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [60] = { + [64] = { .act_hid = BNXT_ULP_ACT_HID_0512, .act_pattern_id = 10, .app_sig = 0, @@ -736,7 +788,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [61] = { + [65] = { .act_hid = BNXT_ULP_ACT_HID_03c8, .act_pattern_id = 11, .app_sig = 0, @@ -746,7 +798,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [62] = { + [66] = { .act_hid = BNXT_ULP_ACT_HID_0084, .act_pattern_id = 12, .app_sig = 0, @@ -759,7 +811,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [63] = { + [67] = { .act_hid = BNXT_ULP_ACT_HID_06bd, .act_pattern_id = 13, .app_sig = 0, @@ -771,7 +823,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 4 }, - [64] = { + [68] = { .act_hid = BNXT_ULP_ACT_HID_06d7, .act_pattern_id = 0, .app_sig = 0, @@ -780,7 +832,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [65] = { + [69] = { .act_hid = BNXT_ULP_ACT_HID_02c4, .act_pattern_id = 1, .app_sig = 0, @@ -790,7 +842,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [66] = { + [70] = { .act_hid = BNXT_ULP_ACT_HID_042a, .act_pattern_id = 2, .app_sig = 0, @@ -799,10 +851,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [67] = { - .act_hid = BNXT_ULP_ACT_HID_06c4, + [71] = { + .act_hid = BNXT_ULP_ACT_HID_036e, .act_pattern_id = 3, .app_sig = 0, + .act_sig = { .bits = + BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid = 5 + }, + [72] = { + .act_hid = BNXT_ULP_ACT_HID_06c4, + .act_pattern_id = 4, + .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_SET_IPV4_DST | BNXT_ULP_ACT_BIT_SET_TP_SRC | @@ -810,9 +872,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [68] = { + [73] = { .act_hid = BNXT_ULP_ACT_HID_0417, - .act_pattern_id = 4, + .act_pattern_id = 5, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_SET_IPV4_SRC | @@ -822,9 +884,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [69] = { + [74] = { .act_hid = BNXT_ULP_ACT_HID_06d9, - .act_pattern_id = 5, + .act_pattern_id = 6, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT | @@ -832,9 +894,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [70] = { + [75] = { .act_hid = BNXT_ULP_ACT_HID_02c6, - .act_pattern_id = 6, + .act_pattern_id = 7, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT | @@ -843,9 +905,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [71] = { + [76] = { .act_hid = BNXT_ULP_ACT_HID_042c, - .act_pattern_id = 7, + .act_pattern_id = 8, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT | @@ -853,9 +915,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [72] = { + [77] = { + .act_hid = BNXT_ULP_ACT_HID_0370, + .act_pattern_id = 9, + .app_sig = 0, + .act_sig = { .bits = + BNXT_ULP_ACT_BIT_COUNT | + BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid = 5 + }, + [78] = { .act_hid = BNXT_ULP_ACT_HID_06c6, - .act_pattern_id = 8, + .act_pattern_id = 10, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT | @@ -865,9 +938,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [73] = { + [79] = { .act_hid = BNXT_ULP_ACT_HID_0419, - .act_pattern_id = 9, + .act_pattern_id = 11, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_COUNT | @@ -878,9 +951,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [74] = { + [80] = { .act_hid = BNXT_ULP_ACT_HID_0119, - .act_pattern_id = 10, + .act_pattern_id = 12, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -888,9 +961,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [75] = { + [81] = { .act_hid = BNXT_ULP_ACT_HID_046f, - .act_pattern_id = 11, + .act_pattern_id = 13, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -899,9 +972,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [76] = { + [82] = { .act_hid = BNXT_ULP_ACT_HID_05d5, - .act_pattern_id = 12, + .act_pattern_id = 14, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -909,9 +982,20 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [77] = { + [83] = { + .act_hid = BNXT_ULP_ACT_HID_0519, + .act_pattern_id = 15, + .app_sig = 0, + .act_sig = { .bits = + BNXT_ULP_ACT_BIT_DEC_TTL | + BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid = 5 + }, + [84] = { .act_hid = BNXT_ULP_ACT_HID_0106, - .act_pattern_id = 13, + .act_pattern_id = 16, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -921,9 +1005,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [78] = { + [85] = { .act_hid = BNXT_ULP_ACT_HID_05c2, - .act_pattern_id = 14, + .act_pattern_id = 17, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -934,9 +1018,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [79] = { + [86] = { .act_hid = BNXT_ULP_ACT_HID_011b, - .act_pattern_id = 15, + .act_pattern_id = 18, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -945,9 +1029,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [80] = { + [87] = { .act_hid = BNXT_ULP_ACT_HID_0471, - .act_pattern_id = 16, + .act_pattern_id = 19, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -957,9 +1041,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [81] = { + [88] = { .act_hid = BNXT_ULP_ACT_HID_05d7, - .act_pattern_id = 17, + .act_pattern_id = 20, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -968,9 +1052,21 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [82] = { + [89] = { + .act_hid = BNXT_ULP_ACT_HID_051b, + .act_pattern_id = 21, + .app_sig = 0, + .act_sig = { .bits = + BNXT_ULP_ACT_BIT_DEC_TTL | + BNXT_ULP_ACT_BIT_COUNT | + BNXT_ULP_ACT_BIT_SET_IPV4_DST | + BNXT_ULP_ACT_BIT_SET_TP_DST | + BNXT_ULP_FLOW_DIR_BITMASK_EGR }, + .act_tid = 5 + }, + [90] = { .act_hid = BNXT_ULP_ACT_HID_0108, - .act_pattern_id = 18, + .act_pattern_id = 22, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -981,9 +1077,9 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [83] = { + [91] = { .act_hid = BNXT_ULP_ACT_HID_05c4, - .act_pattern_id = 19, + .act_pattern_id = 23, .app_sig = 0, .act_sig = { .bits = BNXT_ULP_ACT_BIT_DEC_TTL | @@ -995,7 +1091,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 5 }, - [84] = { + [92] = { .act_hid = BNXT_ULP_ACT_HID_00a2, .act_pattern_id = 0, .app_sig = 0, @@ -1004,7 +1100,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = { BNXT_ULP_FLOW_DIR_BITMASK_EGR }, .act_tid = 6 }, - [85] = { + [93] = { .act_hid = BNXT_ULP_ACT_HID_00a4, .act_pattern_id = 1, .app_sig = 0, diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h index c016e1940a..fcd460e707 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Fri Aug 20 17:59:14 2021 */ +/* date: Thu Aug 26 17:43:36 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_ @@ -20,7 +20,7 @@ #define BNXT_ULP_CLASS_HID_SHFTL 28 #define BNXT_ULP_CLASS_HID_MASK 65535 #define BNXT_ULP_ACT_SIG_TBL_MAX_SZ 2048 -#define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 86 +#define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 94 #define BNXT_ULP_ACT_HID_LOW_PRIME 7919 #define BNXT_ULP_ACT_HID_HIGH_PRIME 3793 #define BNXT_ULP_ACT_HID_SHFTR 27 @@ -29,7 +29,7 @@ #define BNXT_ULP_APP_RESOURCE_RESV_LIST_MAX_SZ 8 #define BNXT_ULP_GLB_RESOURCE_TBL_MAX_SZ 110 #define BNXT_ULP_APP_GLB_RESOURCE_TBL_MAX_SZ 50 -#define BNXT_ULP_RESOURCE_RESV_LIST_MAX_SZ 278 +#define BNXT_ULP_RESOURCE_RESV_LIST_MAX_SZ 277 #define BNXT_ULP_APP_CAP_TBL_MAX_SZ 8 #define BNXT_ULP_COND_GOTO_REJECT 1023 #define BNXT_ULP_COND_GOTO_RF 0x10000 @@ -50,11 +50,11 @@ #define ULP_THOR_CLASS_RESULT_FIELD_LIST_SIZE 1313 #define ULP_THOR_CLASS_COND_LIST_SIZE 55 #define ULP_WH_PLUS_ACT_TMPL_LIST_SIZE 7 -#define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 35 +#define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 37 #define ULP_WH_PLUS_ACT_KEY_INFO_LIST_SIZE 2 #define ULP_WH_PLUS_ACT_IDENT_LIST_SIZE 1 #define ULP_WH_PLUS_ACT_RESULT_FIELD_LIST_SIZE 536 -#define ULP_WH_PLUS_ACT_COND_LIST_SIZE 39 +#define ULP_WH_PLUS_ACT_COND_LIST_SIZE 41 #define ULP_THOR_ACT_TMPL_LIST_SIZE 7 #define ULP_THOR_ACT_TBL_LIST_SIZE 36 #define ULP_THOR_ACT_KEY_INFO_LIST_SIZE 16 @@ -2224,21 +2224,25 @@ enum bnxt_ulp_act_hid { BNXT_ULP_ACT_HID_04bc = 0x04bc, BNXT_ULP_ACT_HID_00a9 = 0x00a9, BNXT_ULP_ACT_HID_020f = 0x020f, + BNXT_ULP_ACT_HID_0153 = 0x0153, BNXT_ULP_ACT_HID_04a9 = 0x04a9, BNXT_ULP_ACT_HID_01fc = 0x01fc, BNXT_ULP_ACT_HID_04be = 0x04be, BNXT_ULP_ACT_HID_00ab = 0x00ab, BNXT_ULP_ACT_HID_0211 = 0x0211, + BNXT_ULP_ACT_HID_0155 = 0x0155, BNXT_ULP_ACT_HID_04ab = 0x04ab, BNXT_ULP_ACT_HID_01fe = 0x01fe, BNXT_ULP_ACT_HID_0667 = 0x0667, BNXT_ULP_ACT_HID_0254 = 0x0254, BNXT_ULP_ACT_HID_03ba = 0x03ba, + BNXT_ULP_ACT_HID_02fe = 0x02fe, BNXT_ULP_ACT_HID_0654 = 0x0654, BNXT_ULP_ACT_HID_03a7 = 0x03a7, BNXT_ULP_ACT_HID_0669 = 0x0669, BNXT_ULP_ACT_HID_0256 = 0x0256, BNXT_ULP_ACT_HID_03bc = 0x03bc, + BNXT_ULP_ACT_HID_0300 = 0x0300, BNXT_ULP_ACT_HID_0656 = 0x0656, BNXT_ULP_ACT_HID_03a9 = 0x03a9, BNXT_ULP_ACT_HID_021b = 0x021b, @@ -2258,21 +2262,25 @@ enum bnxt_ulp_act_hid { BNXT_ULP_ACT_HID_06d7 = 0x06d7, BNXT_ULP_ACT_HID_02c4 = 0x02c4, BNXT_ULP_ACT_HID_042a = 0x042a, + BNXT_ULP_ACT_HID_036e = 0x036e, BNXT_ULP_ACT_HID_06c4 = 0x06c4, BNXT_ULP_ACT_HID_0417 = 0x0417, BNXT_ULP_ACT_HID_06d9 = 0x06d9, BNXT_ULP_ACT_HID_02c6 = 0x02c6, BNXT_ULP_ACT_HID_042c = 0x042c, + BNXT_ULP_ACT_HID_0370 = 0x0370, BNXT_ULP_ACT_HID_06c6 = 0x06c6, BNXT_ULP_ACT_HID_0419 = 0x0419, BNXT_ULP_ACT_HID_0119 = 0x0119, BNXT_ULP_ACT_HID_046f = 0x046f, BNXT_ULP_ACT_HID_05d5 = 0x05d5, + BNXT_ULP_ACT_HID_0519 = 0x0519, BNXT_ULP_ACT_HID_0106 = 0x0106, BNXT_ULP_ACT_HID_05c2 = 0x05c2, BNXT_ULP_ACT_HID_011b = 0x011b, BNXT_ULP_ACT_HID_0471 = 0x0471, BNXT_ULP_ACT_HID_05d7 = 0x05d7, + BNXT_ULP_ACT_HID_051b = 0x051b, BNXT_ULP_ACT_HID_0108 = 0x0108, BNXT_ULP_ACT_HID_05c4 = 0x05c4, BNXT_ULP_ACT_HID_00a2 = 0x00a2, diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c index 684fa66f48..84be09b368 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Tue Aug 17 12:16:42 2021 */ +/* date: Thu Aug 26 17:43:36 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -2121,7 +2121,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 64 + .count = 2048 }, { .app_id = 0, @@ -2249,7 +2249,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 64 + .count = 2048 }, { .app_id = 0, @@ -2263,14 +2263,6 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_MODIFY_64B, - .count = 32 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, .count = 272 diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c index 68c1e292b2..95205a2421 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Fri Aug 20 18:05:25 2021 */ +/* date: Wed Aug 25 16:41:37 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c index 578ede8bba..4a2d201c2d 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Tue Jun 1 16:05:30 2021 */ +/* date: Wed Aug 25 14:37:06 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -35,7 +35,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[] = { /* act_tid: 3, ingress */ [3] = { .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS, - .num_tbls = 6, + .num_tbls = 7, .start_tbl_idx = 12, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, @@ -46,30 +46,30 @@ struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[] = { [4] = { .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS, .num_tbls = 5, - .start_tbl_idx = 18, + .start_tbl_idx = 19, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 20, + .cond_start_idx = 21, .cond_nums = 0 } }, /* act_tid: 5, egress */ [5] = { .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS, - .num_tbls = 6, - .start_tbl_idx = 23, + .num_tbls = 7, + .start_tbl_idx = 24, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 28, + .cond_start_idx = 29, .cond_nums = 0 } }, /* act_tid: 6, egress */ [6] = { .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS, .num_tbls = 6, - .start_tbl_idx = 29, + .start_tbl_idx = 31, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 33, + .cond_start_idx = 35, .cond_nums = 0 } } }; @@ -322,6 +322,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .result_bit_size = 34, .result_num_fields = 2 }, + { /* act_tid: 3, , table: control.0 */ + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1023, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 15, + .cond_nums = 1 }, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, { /* act_tid: 3, , table: int_flow_counter_tbl.0 */ .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, @@ -332,7 +343,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 15, + .cond_start_idx = 16, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0, @@ -351,7 +362,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 16, + .cond_start_idx = 17, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0, @@ -370,7 +381,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 17, + .cond_start_idx = 18, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0, @@ -389,7 +400,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 18, + .cond_start_idx = 19, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, @@ -410,7 +421,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 18, + .cond_start_idx = 19, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -429,7 +440,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 19, + .cond_start_idx = 20, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -449,7 +460,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 20, + .cond_start_idx = 21, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0, @@ -468,7 +479,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 21, + .cond_start_idx = 22, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0, @@ -489,7 +500,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 23, + .cond_start_idx = 24, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -508,7 +519,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 24, + .cond_start_idx = 25, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -528,7 +539,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 26, + .cond_start_idx = 27, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -538,6 +549,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .result_num_fields = 26, .encap_num_fields = 11 }, + { /* act_tid: 5, , table: control.0 */ + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1023, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 29, + .cond_nums = 1 }, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, { /* act_tid: 5, , table: int_flow_counter_tbl.0 */ .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, @@ -548,7 +570,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 28, + .cond_start_idx = 30, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0, @@ -567,7 +589,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 29, + .cond_start_idx = 31, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0, @@ -586,7 +608,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 30, + .cond_start_idx = 32, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0, @@ -605,7 +627,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 31, + .cond_start_idx = 33, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, @@ -626,7 +648,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 31, + .cond_start_idx = 33, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -645,7 +667,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 32, + .cond_start_idx = 34, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -665,7 +687,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 33, + .cond_start_idx = 35, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0, @@ -684,7 +706,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 34, + .cond_start_idx = 36, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_SP_PTR, @@ -705,7 +727,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 35, + .cond_start_idx = 37, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_SP_PTR, @@ -726,7 +748,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 36, + .cond_start_idx = 38, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0, @@ -747,7 +769,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 37, + .cond_start_idx = 39, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -766,7 +788,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 38, + .cond_start_idx = 40, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -844,6 +866,11 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_COUNT }, + /* cond_execute: act_tid: 3, control.0 */ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS + }, /* cond_execute: act_tid: 3, int_flow_counter_tbl.0 */ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, @@ -900,6 +927,11 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN }, + /* cond_execute: act_tid: 5, control.0 */ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS + }, /* cond_execute: act_tid: 5, int_flow_counter_tbl.0 */ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, From patchwork Thu Nov 4 21:58:26 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103790 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 58AF6A0C5E; Thu, 4 Nov 2021 22:59:23 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 81639427AA; Thu, 4 Nov 2021 22:59:03 +0100 (CET) Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by mails.dpdk.org (Postfix) with ESMTP id DC2E1427A4 for ; Thu, 4 Nov 2021 22:58:58 +0100 (CET) Received: by mail-pl1-f180.google.com with SMTP id u17so9544040plg.9 for ; Thu, 04 Nov 2021 14:58:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=WkAsJXybyzgf6LYYZLOZTgBQNcCkDADe28GqNhxaOB8=; b=HnjkRQWjJDJxx2spq9RtkQ3rMC/fAGtBCF0vr1vBO8lTMYiogkjoJQH6tM5tkqUl/l QKFkOkScjTSSjdZKga1BJnPeymJGb9aNsHmHL9oQJAmvF3zM1ML581K+fK2mmhIlU8qU tmiweXKd2I/PBEfi5G9Eu9f2T9lp/vyNryJHs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=WkAsJXybyzgf6LYYZLOZTgBQNcCkDADe28GqNhxaOB8=; b=lhohmcoq+rO/fwuzNx50Fnv/4BMu9O+cx6a/JVVIpjmNI9xew41WRudBM/poP4sCHS j9FRPqgEzoTtWVqo0ldKl/yP56QzCHcwHDibh9BG+9NF2lDDE+cZnlwExbC9w2RkTn3c /ddgQNdnWcDpM1CepDYVNMtWum3sjjN+PgEY+72/admB1J9oxZgBO5i2gr3TGZcHxRrx 5fkUB9zrrnLaUoj21cmexkVhSvwht5L6IVF+nCAMnVNvU0EiaHocK7JLhhSlAvN7qYt1 BuK9JZ8xsKZ0far2xgTvaZd/vpOztj6rXj08jZ+BfTLDaCSkZjPn9LAFzUpcTp/HtM89 1Osg== X-Gm-Message-State: AOAM531nld66RA3CZWpqp9YamYZ1x69Jz9LoE1oBKf19kxHoWu4/S87g 2FTJDQyt2ATXXVRwmaMzy+Qol5tkzepXjdZ/of6NQ3wFu6ocwhGgHNmhn71ihLTCmwCitGD+puq b8nRcWytLTyzBU7JRaGeP4jvkB/x51WMCnjLpddRUbW2+AHkUBqJ7bsAXrhKDC1Y= X-Google-Smtp-Source: ABdhPJxyiFHLw+dvm2uDXMT6lPIm5bhppbh8RMwVQob5pd1i16TQg1V5wN2gxLQ1QN9At8xG3khCOA== X-Received: by 2002:a17:90b:1c0b:: with SMTP id oc11mr25434279pjb.237.1636063135240; Thu, 04 Nov 2021 14:58:55 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.58.53 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:58:54 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Venkat Duvvuru , Mike Baucom , Randy Schacher Date: Thu, 4 Nov 2021 14:58:26 -0700 Message-Id: <20211104215846.58672-3-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 02/22] net/bnxt: add support for multi root capability X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha Update driver to read the multi root capability and ignore pci address check while creating ulp session when multi root capability is enabled in the hardware. DPDK HSI version updated from 1.10.2.44 to 1.10.2.68. Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Mike Baucom Reviewed-by: Randy Schacher Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/bnxt.h | 3 + drivers/net/bnxt/bnxt_hwrm.c | 8 + drivers/net/bnxt/hsi_struct_def_dpdk.h | 4061 ++++++++++++++++++++---- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 10 +- 4 files changed, 3523 insertions(+), 559 deletions(-) diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h index 39bd739c7b..97e281a2fc 100644 --- a/drivers/net/bnxt/bnxt.h +++ b/drivers/net/bnxt/bnxt.h @@ -723,6 +723,9 @@ struct bnxt { uint16_t chip_num; #define CHIP_NUM_58818 0xd818 #define BNXT_CHIP_SR2(bp) ((bp)->chip_num == CHIP_NUM_58818) +#define BNXT_FLAGS2_MULTIROOT_EN BIT(4) +#define BNXT_MULTIROOT_EN(bp) \ + ((bp)->flags2 & BNXT_FLAGS2_MULTIROOT_EN) uint32_t fw_cap; #define BNXT_FW_CAP_HOT_RESET BIT(0) diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c index 3fefd558d8..94a7daf632 100644 --- a/drivers/net/bnxt/bnxt_hwrm.c +++ b/drivers/net/bnxt/bnxt_hwrm.c @@ -3363,6 +3363,7 @@ int bnxt_hwrm_parent_pf_qcfg(struct bnxt *bp) { struct hwrm_func_qcfg_input req = {0}; struct hwrm_func_qcfg_output *resp = bp->hwrm_cmd_resp_addr; + uint16_t flags; int rc; if (!BNXT_VF_IS_TRUSTED(bp)) @@ -3386,6 +3387,13 @@ int bnxt_hwrm_parent_pf_qcfg(struct bnxt *bp) bp->parent->fid = rte_le_to_cpu_16(resp->fid); bp->parent->port_id = rte_le_to_cpu_16(resp->port_id); + flags = rte_le_to_cpu_16(resp->flags); + /* check for the multi-root support */ + if (flags & HWRM_FUNC_QCFG_OUTPUT_FLAGS_MULTI_ROOT) { + bp->flags2 |= BNXT_FLAGS2_MULTIROOT_EN; + PMD_DRV_LOG(DEBUG, "PF enabled with multi root capability\n"); + } + HWRM_UNLOCK(); return 0; diff --git a/drivers/net/bnxt/hsi_struct_def_dpdk.h b/drivers/net/bnxt/hsi_struct_def_dpdk.h index 4d7efb19f4..0c08171dec 100644 --- a/drivers/net/bnxt/hsi_struct_def_dpdk.h +++ b/drivers/net/bnxt/hsi_struct_def_dpdk.h @@ -657,6 +657,12 @@ struct cmd_nums { #define HWRM_FUNC_PTP_EXT_CFG UINT32_C(0x1a0) /* PTP - Query extended PTP configuration. */ #define HWRM_FUNC_PTP_EXT_QCFG UINT32_C(0x1a1) + /* The command is used to allocate KTLS crypto key contexts. */ + #define HWRM_FUNC_KEY_CTX_ALLOC UINT32_C(0x1a2) + /* The is the new API to configure backing stores. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2 UINT32_C(0x1a3) + /* The is the new API to query backing store configurations. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2 UINT32_C(0x1a4) /* Experimental */ #define HWRM_SELFTEST_QLIST UINT32_C(0x200) /* Experimental */ @@ -714,6 +720,18 @@ struct cmd_nums { * calculated during firmware boot. */ #define HWRM_MFG_GET_NVM_MEASUREMENT UINT32_C(0x214) + /* Retrieves the PSOC status and provisioning information. */ + #define HWRM_MFG_PSOC_QSTATUS UINT32_C(0x215) + /* + * This command allows manufacturing tool to determine which selftests + * are available to be run. + */ + #define HWRM_MFG_SELFTEST_QLIST UINT32_C(0x216) + /* + * This command allows manufacturing tool to request which selftests + * to run. + */ + #define HWRM_MFG_SELFTEST_EXEC UINT32_C(0x217) /* Experimental */ #define HWRM_TF UINT32_C(0x2bc) /* Experimental */ @@ -1056,8 +1074,8 @@ struct hwrm_err_output { #define HWRM_VERSION_MINOR 10 #define HWRM_VERSION_UPDATE 2 /* non-zero means beta version */ -#define HWRM_VERSION_RSVD 44 -#define HWRM_VERSION_STR "1.10.2.44" +#define HWRM_VERSION_RSVD 68 +#define HWRM_VERSION_STR "1.10.2.68" /**************** * hwrm_ver_get * @@ -1357,6 +1375,12 @@ struct hwrm_ver_get_output { */ #define HWRM_VER_GET_OUTPUT_DEV_CAPS_CFG_CFA_TRUFLOW_SUPPORTED \ UINT32_C(0x4000) + /* + * If set to 1, then firmware supports secure boot. + * If set to 0, then firmware doesn't support secure boot. + */ + #define HWRM_VER_GET_OUTPUT_DEV_CAPS_CFG_SECURE_BOOT_CAPABLE \ + UINT32_C(0x8000) /* * This field represents the major version of RoCE firmware. * A change in major version represents a major release. @@ -1449,7 +1473,7 @@ struct hwrm_ver_get_output { * backing store not been available. * For Example, PCIe hot-plug: * Hot plug timing is system dependent. It generally takes up to - * 600 miliseconds for firmware to clear DEV_NOT_RDY flag. + * 600 milliseconds for firmware to clear DEV_NOT_RDY flag. * If set to 0, device is ready to accept all HWRM commands. */ #define HWRM_VER_GET_OUTPUT_FLAGS_DEV_NOT_RDY \ @@ -2263,7 +2287,7 @@ struct crypto_presync_bd_cmd { uint32_t end_tcp_seq_num; /* * For TLS1.2, an explicit nonce is used as part of the IV (concatenated - * with the SALT). For retans packets, this field is extracted from the + * with the SALT). For retrans packets, this field is extracted from the * TLS record, field right after the TLS Header and stored in the * context. This field needs to be stored in context as TCP segmentation * could have split the field into multiple TCP packets. This value is @@ -3497,10 +3521,10 @@ struct cfa_cmpls_cmp_data_msg { #define CFA_CMPLS_CMP_DATA_MSG_MP_CLIENT_MASK \ UINT32_C(0xf0000000) #define CFA_CMPLS_CMP_DATA_MSG_MP_CLIENT_SFT 28 - /* TX configrable flow processing block. */ + /* TX configurable flow processing block. */ #define CFA_CMPLS_CMP_DATA_MSG_MP_CLIENT_TE_CFA \ (UINT32_C(0x2) << 28) - /* RX configrable flow processing block. */ + /* RX configurable flow processing block. */ #define CFA_CMPLS_CMP_DATA_MSG_MP_CLIENT_RE_CFA \ (UINT32_C(0x3) << 28) #define CFA_CMPLS_CMP_DATA_MSG_MP_CLIENT_LAST \ @@ -8283,8 +8307,14 @@ struct hwrm_async_event_cmpl_reset_notify { /* Fast reset */ #define HWRM_ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_FAST_RESET \ (UINT32_C(0x4) << 8) + /* + * Reset was a result of a firmware activation. That is, the + * fw_activation flag was set in a FW_RESET operation. + */ + #define HWRM_ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_FW_ACTIVATION \ + (UINT32_C(0x5) << 8) #define HWRM_ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_LAST \ - HWRM_ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_FAST_RESET + HWRM_ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_FW_ACTIVATION /* * Minimum time before driver should attempt access - units 100ms ticks. * Range 0-65535 @@ -10244,8 +10274,21 @@ struct hwrm_async_event_cmpl_error_report_base { */ #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_INVALID_SIGNAL \ UINT32_C(0x2) + /* + * There was a low level error with an NVM write or erase. + * See nvm_err_type for more details. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_NVM \ + UINT32_C(0x3) + /* + * This indicates doorbell drop threshold was hit. When this + * threshold is crossed, it indicates one or more doorbells for + * the function were dropped by hardware. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_DOORBELL_DROP_THRESHOLD \ + UINT32_C(0x4) #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_LAST \ - HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_INVALID_SIGNAL + HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_DOORBELL_DROP_THRESHOLD } __rte_packed; /* hwrm_async_event_cmpl_error_report_pause_storm (size:128b/16B) */ @@ -10386,6 +10429,162 @@ struct hwrm_async_event_cmpl_error_report_invalid_signal { HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_DATA1_ERROR_TYPE_INVALID_SIGNAL } __rte_packed; +/* hwrm_async_event_cmpl_error_report_nvm (size:128b/16B) */ +struct hwrm_async_event_cmpl_error_report_nvm { + uint16_t type; + /* + * This field indicates the exact type of the completion. + * By convention, the LSB identifies the length of the + * record in 16B units. Even values indicate 16B + * records. Odd values indicate 32B + * records. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_TYPE_MASK \ + UINT32_C(0x3f) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_TYPE_SFT 0 + /* HWRM Asynchronous Event Information */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_TYPE_HWRM_ASYNC_EVENT \ + UINT32_C(0x2e) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_TYPE_LAST \ + HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_TYPE_HWRM_ASYNC_EVENT + /* Identifiers of events. */ + uint16_t event_id; + /* + * This async notification message is used to inform + * the driver that an error has occurred which may need + * the attention of the administrator. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_ID_ERROR_REPORT \ + UINT32_C(0x45) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_ID_LAST \ + HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_ID_ERROR_REPORT + /* Event specific data. */ + uint32_t event_data2; + /* Indicates the address where error was detected */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA2_ERR_ADDR_MASK \ + UINT32_C(0xffffffff) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA2_ERR_ADDR_SFT \ + 0 + uint8_t opaque_v; + /* + * This value is written by the NIC such that it will be different + * for each pass through the completion queue. The even passes + * will write 1. The odd passes will write 0. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_V UINT32_C(0x1) + /* opaque is 7 b */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_OPAQUE_MASK \ + UINT32_C(0xfe) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_OPAQUE_SFT 1 + /* 8-lsb timestamp (100-msec resolution) */ + uint8_t timestamp_lo; + /* 16-lsb timestamp (100-msec resolution) */ + uint16_t timestamp_hi; + /* Event specific data */ + uint32_t event_data1; + /* Indicates the type of error being reported. */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_ERROR_TYPE_MASK \ + UINT32_C(0xff) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_ERROR_TYPE_SFT \ + 0 + /* + * There was a low level error with an NVM operation. + * See nvm_err_type for more details. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_ERROR_TYPE_NVM_ERROR \ + UINT32_C(0x3) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_ERROR_TYPE_LAST \ + HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_ERROR_TYPE_NVM_ERROR + /* The specific type of NVM error */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_MASK \ + UINT32_C(0xff00) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_SFT \ + 8 + /* + * There was a low level error with an NVM write operation. + * Verification of written data did not match. + * event_data2 will be the failing address. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_WRITE \ + (UINT32_C(0x1) << 8) + /* + * There was a low level error with an NVM erase operation. + * All the bits were not erased. + * event_data2 will be the failing address. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_ERASE \ + (UINT32_C(0x2) << 8) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_LAST \ + HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_ERASE +} __rte_packed; + +/* hwrm_async_event_cmpl_error_report_doorbell_drop_threshold (size:128b/16B) */ +struct hwrm_async_event_cmpl_error_report_doorbell_drop_threshold { + uint16_t type; + /* + * This field indicates the exact type of the completion. + * By convention, the LSB identifies the length of the + * record in 16B units. Even values indicate 16B + * records. Odd values indicate 32B + * records. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_TYPE_MASK \ + UINT32_C(0x3f) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_TYPE_SFT \ + 0 + /* HWRM Asynchronous Event Information */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_TYPE_HWRM_ASYNC_EVENT \ + UINT32_C(0x2e) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_TYPE_LAST \ + HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_TYPE_HWRM_ASYNC_EVENT + /* Identifiers of events. */ + uint16_t event_id; + /* + * This async notification message is used to inform + * the driver that an error has occurred which may need + * the attention of the administrator. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_ID_ERROR_REPORT \ + UINT32_C(0x45) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_ID_LAST \ + HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_ID_ERROR_REPORT + /* Event specific data. */ + uint32_t event_data2; + uint8_t opaque_v; + /* + * This value is written by the NIC such that it will be different + * for each pass through the completion queue. The even passes + * will write 1. The odd passes will write 0. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_V \ + UINT32_C(0x1) + /* opaque is 7 b */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_OPAQUE_MASK \ + UINT32_C(0xfe) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_OPAQUE_SFT \ + 1 + /* 8-lsb timestamp (100-msec resolution) */ + uint8_t timestamp_lo; + /* 16-lsb timestamp (100-msec resolution) */ + uint16_t timestamp_hi; + /* Event specific data */ + uint32_t event_data1; + /* Indicates the type of error being reported. */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_ERROR_TYPE_MASK \ + UINT32_C(0xff) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_ERROR_TYPE_SFT \ + 0 + /* + * This indicates doorbell drop threshold was hit. When this + * threshold is crossed, it indicates one or more doorbells for + * the function were dropped by hardware. + */ + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_ERROR_TYPE_DOORBELL_DROP_THRESHOLD \ + UINT32_C(0x4) + #define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_ERROR_TYPE_LAST \ + HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_ERROR_TYPE_DOORBELL_DROP_THRESHOLD +} __rte_packed; + /* metadata_base_msg (size:64b/8B) */ struct metadata_base_msg { uint16_t md_type_link; @@ -11204,6 +11403,18 @@ struct hwrm_func_vf_cfg_input { */ #define HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_HW_RING_GRPS \ UINT32_C(0x800) + /* + * This bit must be '1' for the num_tx_key_ctxs field to be + * configured. + */ + #define HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_TX_KEY_CTXS \ + UINT32_C(0x1000) + /* + * This bit must be '1' for the num_rx_key_ctxs field to be + * configured. + */ + #define HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_RX_KEY_CTXS \ + UINT32_C(0x2000) /* * The maximum transmission unit requested on the function. * The HWRM should make sure that the mtu of @@ -11353,7 +11564,10 @@ struct hwrm_func_vf_cfg_input { uint16_t num_stat_ctxs; /* The number of HW ring groups requested for the VF. */ uint16_t num_hw_ring_grps; - uint8_t unused_0[4]; + /* Number of Tx Key Contexts requested. */ + uint16_t num_tx_key_ctxs; + /* Number of Rx Key Contexts requested. */ + uint16_t num_rx_key_ctxs; } __rte_packed; /* hwrm_func_vf_cfg_output (size:128b/16B) */ @@ -11423,7 +11637,7 @@ struct hwrm_func_qcaps_input { uint8_t unused_0[6]; } __rte_packed; -/* hwrm_func_qcaps_output (size:704b/88B) */ +/* hwrm_func_qcaps_output (size:768b/96B) */ struct hwrm_func_qcaps_output { /* The specific error status for the command. */ uint16_t error_code; @@ -11787,7 +12001,13 @@ struct hwrm_func_qcaps_output { * (max_tx_rings) to the function. */ uint16_t max_sp_tx_rings; - uint8_t unused_0[2]; + /* + * The maximum number of MSI-X vectors that may be allocated across + * all VFs for the function. This is valid only on the PF with SR-IOV + * enabled. Returns zero if this command is called on a PF with + * SR-IOV disabled or on a VF. + */ + uint16_t max_msix_vfs; uint32_t flags_ext; /* * If 1, the device can be configured to set the ECN bits in the @@ -11911,7 +12131,9 @@ struct hwrm_func_qcaps_output { UINT32_C(0x80000) /* * When this bit is '1', the NIC supports configuration of - * partition_min_bw and partition_max_bw. + * partition_min_bw and partition_max_bw. Configuration of a + * minimum guaranteed bandwidth is only supported if the + * min_bw_supported flag is also set. */ #define HWRM_FUNC_QCAPS_OUTPUT_FLAGS_EXT_PARTITION_BW_SUPPORTED \ UINT32_C(0x100000) @@ -11928,10 +12150,39 @@ struct hwrm_func_qcaps_output { * When this bit is '1', the firmware supports HWRM_PORT_EP_TX_CFG * and HWRM_PORT_EP_TX_QCFG for endpoint rate control, and additions * to HWRM_QUEUE_GLOBAL_CFG and HWRM_QUEUE_GLOBAL_QCFG for receive - * rate control. + * rate control. Configuration of a minimum guaranteed bandwidth + * is only supported if the min_bw_supported flag is also set. */ #define HWRM_FUNC_QCAPS_OUTPUT_FLAGS_EXT_EP_RATE_CONTROL \ UINT32_C(0x800000) + /* + * When this bit is '1', the firmware supports enforcement of + * minimum guaranteed bandwidth. A minimum guaranteed bandwidth + * could be configured for a partition or for an endpoint. Firmware + * only sets this flag if one or both of the ep_rate_control and + * partition_bw_supported flags are set. + */ + #define HWRM_FUNC_QCAPS_OUTPUT_FLAGS_EXT_MIN_BW_SUPPORTED \ + UINT32_C(0x1000000) + /* + * When this bit is '1', HW supports TX coalesced completion + * records. + */ + #define HWRM_FUNC_QCAPS_OUTPUT_FLAGS_EXT_TX_COAL_CMPL_CAP \ + UINT32_C(0x2000000) + /* + * When this bit is '1', it indicates the FW has full support + * for all backing store types with the BACKING_STORE_CFG/QCFG + * V2 APIs. + */ + #define HWRM_FUNC_QCAPS_OUTPUT_FLAGS_EXT_BS_V2_SUPPORTED \ + UINT32_C(0x4000000) + /* + * When this bit is '1', it indicates the FW forces to use the + * BACKING_STORE_CFG/QCFG V2 APIs. + */ + #define HWRM_FUNC_QCAPS_OUTPUT_FLAGS_EXT_BS_V2_REQUIRED \ + UINT32_C(0x8000000) /* The maximum number of SCHQs supported by this device. */ uint8_t max_schqs; uint8_t mpc_chnls_cap; @@ -11965,7 +12216,12 @@ struct hwrm_func_qcaps_output { * to the primate processor block. */ #define HWRM_FUNC_QCAPS_OUTPUT_MPC_CHNLS_CAP_PRIMATE UINT32_C(0x10) - uint8_t unused_1; + /* + * Maximum number of Key Contexts supported per HWRM + * function call for allocating Key Contexts. + */ + uint16_t max_key_ctxs_alloc; + uint8_t unused_1[7]; /* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1' @@ -12023,7 +12279,7 @@ struct hwrm_func_qcfg_input { uint8_t unused_0[6]; } __rte_packed; -/* hwrm_func_qcfg_output (size:832b/104B) */ +/* hwrm_func_qcfg_output (size:896b/112B) */ struct hwrm_func_qcfg_output { /* The specific error status for the command. */ uint16_t error_code; @@ -12614,7 +12870,11 @@ struct hwrm_func_qcfg_output { * value is used if ring MTU is not specified. */ uint16_t host_mtu; - uint8_t unused_3; + /* Number of Tx Key Contexts allocated. */ + uint16_t alloc_tx_key_ctxs; + /* Number of Rx Key Contexts allocated. */ + uint16_t alloc_rx_key_ctxs; + uint8_t unused_3[5]; /* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1' @@ -12630,7 +12890,7 @@ struct hwrm_func_qcfg_output { *****************/ -/* hwrm_func_cfg_input (size:832b/104B) */ +/* hwrm_func_cfg_input (size:896b/112B) */ struct hwrm_func_cfg_input { /* The HWRM command request type. */ uint16_t req_type; @@ -13076,6 +13336,18 @@ struct hwrm_func_cfg_input { */ #define HWRM_FUNC_CFG_INPUT_ENABLES_HOST_MTU \ UINT32_C(0x20000000) + /* + * This bit must be '1' for the number of Tx Key Contexts + * field to be configured. + */ + #define HWRM_FUNC_CFG_INPUT_ENABLES_TX_KEY_CTXS \ + UINT32_C(0x40000000) + /* + * This bit must be '1' for the number of Rx Key Contexts + * field to be configured. + */ + #define HWRM_FUNC_CFG_INPUT_ENABLES_RX_KEY_CTXS \ + UINT32_C(0x80000000) /* * This field can be used by the admin PF to configure * mtu of foster PFs. @@ -13527,6 +13799,11 @@ struct hwrm_func_cfg_input { * ring that is assigned to a function has a valid mtu. */ uint16_t host_mtu; + /* Number of Tx Key Contexts requested. */ + uint16_t num_tx_key_ctxs; + /* Number of Rx Key Contexts requested. */ + uint16_t num_rx_key_ctxs; + uint8_t unused_0[4]; } __rte_packed; /* hwrm_func_cfg_output (size:128b/16B) */ @@ -13550,6 +13827,33 @@ struct hwrm_func_cfg_output { uint8_t valid; } __rte_packed; +/* hwrm_func_cfg_cmd_err (size:64b/8B) */ +struct hwrm_func_cfg_cmd_err { + /* command specific error codes for the cmd_err field in hwrm_err_output */ + uint8_t code; + /* Unknown error. */ + #define HWRM_FUNC_CFG_CMD_ERR_CODE_UNKNOWN \ + UINT32_C(0x0) + /* The partition minimum bandwidth is out of range. */ + #define HWRM_FUNC_CFG_CMD_ERR_CODE_PARTITION_MIN_BW_RANGE \ + UINT32_C(0x1) + /* The minimum bandwidth is more than the maximum bandwidth. */ + #define HWRM_FUNC_CFG_CMD_ERR_CODE_PARTITION_MIN_MORE_THAN_MAX \ + UINT32_C(0x2) + /* + * The NIC does not support enforcement of a minimum guaranteed + * bandwidth for a partition. + */ + #define HWRM_FUNC_CFG_CMD_ERR_CODE_PARTITION_MIN_BW_UNSUPPORTED \ + UINT32_C(0x3) + /* Partition bandwidths must be specified as a percentage. */ + #define HWRM_FUNC_CFG_CMD_ERR_CODE_PARTITION_BW_PERCENT \ + UINT32_C(0x4) + #define HWRM_FUNC_CFG_CMD_ERR_CODE_LAST \ + HWRM_FUNC_CFG_CMD_ERR_CODE_PARTITION_BW_PERCENT + uint8_t unused_0[7]; +} __rte_packed; + /******************** * hwrm_func_qstats * ********************/ @@ -14103,6 +14407,13 @@ struct hwrm_func_drv_rgtr_input { */ #define HWRM_FUNC_DRV_RGTR_INPUT_FLAGS_RSS_STRICT_HASH_TYPE_SUPPORT \ UINT32_C(0x100) + /* + * When this bit is 1, the function's driver is indicating the + * support of handling the NPAR 1.2 feature where the s-tag may be + * a value other than 0x8100 or 0x88a8. + */ + #define HWRM_FUNC_DRV_RGTR_INPUT_FLAGS_NPAR_1_2_SUPPORT \ + UINT32_C(0x200) uint32_t enables; /* * This bit must be '1' for the os_type field to be @@ -14664,7 +14975,7 @@ struct hwrm_func_resource_qcaps_input { uint8_t unused_0[6]; } __rte_packed; -/* hwrm_func_resource_qcaps_output (size:448b/56B) */ +/* hwrm_func_resource_qcaps_output (size:512b/64B) */ struct hwrm_func_resource_qcaps_output { /* The specific error status for the command. */ uint16_t error_code; @@ -14739,6 +15050,14 @@ struct hwrm_func_resource_qcaps_output { */ #define HWRM_FUNC_RESOURCE_QCAPS_OUTPUT_FLAGS_MIN_GUARANTEED \ UINT32_C(0x1) + /* Minimum guaranteed number of Tx Key Contexts */ + uint16_t min_tx_key_ctxs; + /* Maximum non-guaranteed number of Tx Key Contexts */ + uint16_t max_tx_key_ctxs; + /* Minimum guaranteed number of Rx Key Contexts */ + uint16_t min_rx_key_ctxs; + /* Maximum non-guaranteed number of Rx Key Contexts */ + uint16_t max_rx_key_ctxs; uint8_t unused_0[5]; /* * This field is used in Output records to indicate that the output @@ -14755,7 +15074,7 @@ struct hwrm_func_resource_qcaps_output { *****************************/ -/* hwrm_func_vf_resource_cfg_input (size:448b/56B) */ +/* hwrm_func_vf_resource_cfg_input (size:512b/64B) */ struct hwrm_func_vf_resource_cfg_input { /* The HWRM command request type. */ uint16_t req_type; @@ -14829,6 +15148,14 @@ struct hwrm_func_vf_resource_cfg_input { */ #define HWRM_FUNC_VF_RESOURCE_CFG_INPUT_FLAGS_MIN_GUARANTEED \ UINT32_C(0x1) + /* Minimum guaranteed number of Tx Key Contexts */ + uint16_t min_tx_key_ctxs; + /* Maximum non-guaranteed number of Tx Key Contexts */ + uint16_t max_tx_key_ctxs; + /* Minimum guaranteed number of Rx Key Contexts */ + uint16_t min_rx_key_ctxs; + /* Maximum non-guaranteed number of Rx Key Contexts */ + uint16_t max_rx_key_ctxs; uint8_t unused_0[2]; } __rte_packed; @@ -14858,7 +15185,11 @@ struct hwrm_func_vf_resource_cfg_output { uint16_t reserved_stat_ctx; /* Reserved number of ring groups */ uint16_t reserved_hw_ring_grps; - uint8_t unused_0[7]; + /* Actual number of Tx Key Contexts reserved */ + uint16_t reserved_tx_key_ctxs; + /* Actual number of Rx Key Contexts reserved */ + uint16_t reserved_rx_key_ctxs; + uint8_t unused_0[3]; /* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1' @@ -14924,7 +15255,10 @@ struct hwrm_func_backing_store_qcaps_output { * this many QP context entries, even if RoCE will not be used. */ uint16_t qp_min_qp1_entries; - /* Maximum number of QP context entries that can be used for L2. */ + /* + * Maximum number of QP context entries that can be used for L2 and + * mid-path. + */ uint16_t qp_max_l2_entries; /* Number of bytes that must be allocated for each context entry. */ uint16_t qp_entry_size; @@ -15141,8 +15475,13 @@ struct hwrm_func_backing_store_qcaps_output { * function. */ uint32_t rkc_max_entries; + /* + * Number of mid-path TQM rings to be used for allocating + * backing stores. + */ + uint8_t mp_tqm_rings_count; /* Reserved for future. */ - uint8_t rsvd[7]; + uint8_t rsvd1[6]; /* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1' @@ -18132,7 +18471,7 @@ struct hwrm_error_recovery_qcfg_output { /*************************** * hwrm_func_echo_response * - ****************************/ + ***************************/ /* hwrm_func_echo_response_input (size:192b/24B) */ @@ -18152,10 +18491,10 @@ struct hwrm_func_echo_response_input { uint16_t seq_id; /* * The target ID of the command: - * 0x0-0xFFF8 - The function ID - * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors - * 0xFFFD - Reserved for user-space HWRM interface - * 0xFFFF - HWRM + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM */ uint16_t target_id; /* @@ -18190,104 +18529,1400 @@ struct hwrm_func_echo_response_output { uint8_t valid; } __rte_packed; -/*********************** - * hwrm_func_vlan_qcfg * - ***********************/ - - -/* hwrm_func_vlan_qcfg_input (size:192b/24B) */ -struct hwrm_func_vlan_qcfg_input { - /* The HWRM command request type. */ - uint16_t req_type; - /* - * The completion ring to send the completion event on. This should - * be the NQ ID returned from the `nq_alloc` HWRM command. - */ - uint16_t cmpl_ring; - /* - * The sequence ID is used by the driver for tracking multiple - * commands. This ID is treated as opaque data by the firmware and - * the value is returned in the `hwrm_resp_hdr` upon completion. - */ - uint16_t seq_id; - /* - * The target ID of the command: - * * 0x0-0xFFF8 - The function ID - * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors - * * 0xFFFD - Reserved for user-space HWRM interface - * * 0xFFFF - HWRM - */ - uint16_t target_id; - /* - * A physical address pointer pointing to a host buffer that the - * command's response data will be written. This can be either a host - * physical address (HPA) or a guest physical address (GPA) and must - * point to a physically contiguous block of memory. - */ - uint64_t resp_addr; - /* - * Function ID of the function that is being - * configured. - * If set to 0xFF... (All Fs), then the configuration is - * for the requesting function. - */ - uint16_t fid; - uint8_t unused_0[6]; -} __rte_packed; - -/* hwrm_func_vlan_qcfg_output (size:320b/40B) */ -struct hwrm_func_vlan_qcfg_output { - /* The specific error status for the command. */ - uint16_t error_code; - /* The HWRM command request type. */ - uint16_t req_type; - /* The sequence ID from the original command. */ - uint16_t seq_id; - /* The length of the response data in number of bytes. */ - uint16_t resp_len; - uint64_t unused_0; - /* S-TAG VLAN identifier configured for the function. */ - uint16_t stag_vid; - /* S-TAG PCP value configured for the function. */ - uint8_t stag_pcp; - uint8_t unused_1; - /* - * S-TAG TPID value configured for the function. This field is specified in - * network byte order. - */ - uint16_t stag_tpid; - /* C-TAG VLAN identifier configured for the function. */ - uint16_t ctag_vid; - /* C-TAG PCP value configured for the function. */ - uint8_t ctag_pcp; - uint8_t unused_2; - /* - * C-TAG TPID value configured for the function. This field is specified in - * network byte order. - */ - uint16_t ctag_tpid; - /* Future use. */ - uint32_t rsvd2; - /* Future use. */ - uint32_t rsvd3; - uint8_t unused_3[3]; - /* - * This field is used in Output records to indicate that the output - * is completely written to RAM. This field should be read as '1' - * to indicate that the output has been completely written. - * When writing a command completion or response to an internal processor, - * the order of writes has to be such that this field is written last. - */ - uint8_t valid; -} __rte_packed; - -/********************** - * hwrm_func_vlan_cfg * - **********************/ +/************************** + * hwrm_func_ptp_pin_qcfg * + **************************/ -/* hwrm_func_vlan_cfg_input (size:384b/48B) */ -struct hwrm_func_vlan_cfg_input { +/* hwrm_func_ptp_pin_qcfg_input (size:192b/24B) */ +struct hwrm_func_ptp_pin_qcfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + uint8_t unused_0[8]; +} __rte_packed; + +/* hwrm_func_ptp_pin_qcfg_output (size:128b/16B) */ +struct hwrm_func_ptp_pin_qcfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + /* + * The number of TSIO pins that are configured on this board + * Up to 4 pins can be returned in the response. + */ + uint8_t num_pins; + /* Pin state */ + uint8_t state; + /* + * When this bit is '1', TSIO pin 0 is enabled. + * When this bit is '0', TSIO pin 0 is disabled. + */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_STATE_PIN0_ENABLED \ + UINT32_C(0x1) + /* + * When this bit is '1', TSIO pin 1 is enabled. + * When this bit is '0', TSIO pin 1 is disabled. + */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_STATE_PIN1_ENABLED \ + UINT32_C(0x2) + /* + * When this bit is '1', TSIO pin 2 is enabled. + * When this bit is '0', TSIO pin 2 is disabled. + */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_STATE_PIN2_ENABLED \ + UINT32_C(0x4) + /* + * When this bit is '1', TSIO pin 3 is enabled. + * When this bit is '0', TSIO pin 3 is disabled. + */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_STATE_PIN3_ENABLED \ + UINT32_C(0x8) + /* Type of function for Pin #0. */ + uint8_t pin0_usage; + /* No function is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN0_USAGE_NONE UINT32_C(0x0) + /* PPS IN is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN0_USAGE_PPS_IN UINT32_C(0x1) + /* PPS OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN0_USAGE_PPS_OUT UINT32_C(0x2) + /* SYNC IN is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN0_USAGE_SYNC_IN UINT32_C(0x3) + /* SYNC OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN0_USAGE_SYNC_OUT UINT32_C(0x4) + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN0_USAGE_LAST \ + HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN0_USAGE_SYNC_OUT + /* Type of function for Pin #1. */ + uint8_t pin1_usage; + /* No function is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN1_USAGE_NONE UINT32_C(0x0) + /* PPS IN is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN1_USAGE_PPS_IN UINT32_C(0x1) + /* PPS OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN1_USAGE_PPS_OUT UINT32_C(0x2) + /* SYNC IN is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN1_USAGE_SYNC_IN UINT32_C(0x3) + /* SYNC OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN1_USAGE_SYNC_OUT UINT32_C(0x4) + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN1_USAGE_LAST \ + HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN1_USAGE_SYNC_OUT + /* Type of function for Pin #2. */ + uint8_t pin2_usage; + /* No function is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN2_USAGE_NONE UINT32_C(0x0) + /* PPS IN is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN2_USAGE_PPS_IN UINT32_C(0x1) + /* PPS OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN2_USAGE_PPS_OUT UINT32_C(0x2) + /* SYNC IN is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN2_USAGE_SYNC_IN UINT32_C(0x3) + /* SYNC OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN2_USAGE_SYNC_OUT UINT32_C(0x4) + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN2_USAGE_LAST \ + HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN2_USAGE_SYNC_OUT + /* Type of function for Pin #3. */ + uint8_t pin3_usage; + /* No function is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN3_USAGE_NONE UINT32_C(0x0) + /* PPS IN is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN3_USAGE_PPS_IN UINT32_C(0x1) + /* PPS OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN3_USAGE_PPS_OUT UINT32_C(0x2) + /* SYNC IN is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN3_USAGE_SYNC_IN UINT32_C(0x3) + /* SYNC OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN3_USAGE_SYNC_OUT UINT32_C(0x4) + #define HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN3_USAGE_LAST \ + HWRM_FUNC_PTP_PIN_QCFG_OUTPUT_PIN3_USAGE_SYNC_OUT + uint8_t unused_0; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/************************* + * hwrm_func_ptp_pin_cfg * + *************************/ + + +/* hwrm_func_ptp_pin_cfg_input (size:256b/32B) */ +struct hwrm_func_ptp_pin_cfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + uint32_t enables; + /* + * This bit must be '1' for the pin0_state field to be + * configured. + */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_ENABLES_PIN0_STATE \ + UINT32_C(0x1) + /* + * This bit must be '1' for the pin0_usage field to be + * configured. + */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_ENABLES_PIN0_USAGE \ + UINT32_C(0x2) + /* + * This bit must be '1' for the pin1_state field to be + * configured. + */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_ENABLES_PIN1_STATE \ + UINT32_C(0x4) + /* + * This bit must be '1' for the pin1_usage field to be + * configured. + */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_ENABLES_PIN1_USAGE \ + UINT32_C(0x8) + /* + * This bit must be '1' for the pin2_state field to be + * configured. + */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_ENABLES_PIN2_STATE \ + UINT32_C(0x10) + /* + * This bit must be '1' for the pin2_usage field to be + * configured. + */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_ENABLES_PIN2_USAGE \ + UINT32_C(0x20) + /* + * This bit must be '1' for the pin3_state field to be + * configured. + */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_ENABLES_PIN3_STATE \ + UINT32_C(0x40) + /* + * This bit must be '1' for the pin3_usage field to be + * configured. + */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_ENABLES_PIN3_USAGE \ + UINT32_C(0x80) + /* Enable or disable functionality of Pin #0. */ + uint8_t pin0_state; + /* Disabled */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_STATE_DISABLED UINT32_C(0x0) + /* Enabled */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_STATE_ENABLED UINT32_C(0x1) + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_STATE_LAST \ + HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_STATE_ENABLED + /* Configure function for TSIO pin#0. */ + uint8_t pin0_usage; + /* No function is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_USAGE_NONE UINT32_C(0x0) + /* PPS IN is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_USAGE_PPS_IN UINT32_C(0x1) + /* PPS OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_USAGE_PPS_OUT UINT32_C(0x2) + /* SYNC IN is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_USAGE_SYNC_IN UINT32_C(0x3) + /* SYNC OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_USAGE_SYNC_OUT UINT32_C(0x4) + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_USAGE_LAST \ + HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN0_USAGE_SYNC_OUT + /* Enable or disable functionality of Pin #1. */ + uint8_t pin1_state; + /* Disabled */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_STATE_DISABLED UINT32_C(0x0) + /* Enabled */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_STATE_ENABLED UINT32_C(0x1) + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_STATE_LAST \ + HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_STATE_ENABLED + /* Configure function for TSIO pin#1. */ + uint8_t pin1_usage; + /* No function is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_USAGE_NONE UINT32_C(0x0) + /* PPS IN is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_USAGE_PPS_IN UINT32_C(0x1) + /* PPS OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_USAGE_PPS_OUT UINT32_C(0x2) + /* SYNC IN is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_USAGE_SYNC_IN UINT32_C(0x3) + /* SYNC OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_USAGE_SYNC_OUT UINT32_C(0x4) + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_USAGE_LAST \ + HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN1_USAGE_SYNC_OUT + /* Enable or disable functionality of Pin #2. */ + uint8_t pin2_state; + /* Disabled */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_STATE_DISABLED UINT32_C(0x0) + /* Enabled */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_STATE_ENABLED UINT32_C(0x1) + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_STATE_LAST \ + HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_STATE_ENABLED + /* Configure function for TSIO pin#2. */ + uint8_t pin2_usage; + /* No function is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_USAGE_NONE UINT32_C(0x0) + /* PPS IN is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_USAGE_PPS_IN UINT32_C(0x1) + /* PPS OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_USAGE_PPS_OUT UINT32_C(0x2) + /* SYNC IN is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_USAGE_SYNC_IN UINT32_C(0x3) + /* SYNC OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_USAGE_SYNC_OUT UINT32_C(0x4) + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_USAGE_LAST \ + HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN2_USAGE_SYNC_OUT + /* Enable or disable functionality of Pin #3. */ + uint8_t pin3_state; + /* Disabled */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_STATE_DISABLED UINT32_C(0x0) + /* Enabled */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_STATE_ENABLED UINT32_C(0x1) + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_STATE_LAST \ + HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_STATE_ENABLED + /* Configure function for TSIO pin#3. */ + uint8_t pin3_usage; + /* No function is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_USAGE_NONE UINT32_C(0x0) + /* PPS IN is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_USAGE_PPS_IN UINT32_C(0x1) + /* PPS OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_USAGE_PPS_OUT UINT32_C(0x2) + /* SYNC IN is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_USAGE_SYNC_IN UINT32_C(0x3) + /* SYNC OUT is configured. */ + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_USAGE_SYNC_OUT UINT32_C(0x4) + #define HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_USAGE_LAST \ + HWRM_FUNC_PTP_PIN_CFG_INPUT_PIN3_USAGE_SYNC_OUT + uint8_t unused_0[4]; +} __rte_packed; + +/* hwrm_func_ptp_pin_cfg_output (size:128b/16B) */ +struct hwrm_func_ptp_pin_cfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + uint8_t unused_0[7]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/********************* + * hwrm_func_ptp_cfg * + *********************/ + + +/* hwrm_func_ptp_cfg_input (size:320b/40B) */ +struct hwrm_func_ptp_cfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + uint16_t enables; + /* + * This bit must be '1' for the ptp_pps_event field to be + * configured. + */ + #define HWRM_FUNC_PTP_CFG_INPUT_ENABLES_PTP_PPS_EVENT \ + UINT32_C(0x1) + /* + * This bit must be '1' for the ptp_freq_adj_dll_source field to be + * configured. + */ + #define HWRM_FUNC_PTP_CFG_INPUT_ENABLES_PTP_FREQ_ADJ_DLL_SOURCE \ + UINT32_C(0x2) + /* + * This bit must be '1' for the ptp_freq_adj_dll_phase field to be + * configured. + */ + #define HWRM_FUNC_PTP_CFG_INPUT_ENABLES_PTP_FREQ_ADJ_DLL_PHASE \ + UINT32_C(0x4) + /* + * This bit must be '1' for the ptp_freq_adj_ext_period field to be + * configured. + */ + #define HWRM_FUNC_PTP_CFG_INPUT_ENABLES_PTP_FREQ_ADJ_EXT_PERIOD \ + UINT32_C(0x8) + /* + * This bit must be '1' for the ptp_freq_adj_ext_up field to be + * configured. + */ + #define HWRM_FUNC_PTP_CFG_INPUT_ENABLES_PTP_FREQ_ADJ_EXT_UP \ + UINT32_C(0x10) + /* + * This bit must be '1' for the ptp_freq_adj_ext_phase field to be + * configured. + */ + #define HWRM_FUNC_PTP_CFG_INPUT_ENABLES_PTP_FREQ_ADJ_EXT_PHASE \ + UINT32_C(0x20) + /* This field is used to enable interrupt for a specific PPS event. */ + uint8_t ptp_pps_event; + /* + * When this bit is set to '1', interrupt is enabled for internal + * PPS event. Latches timestamp on PPS_OUT TSIO Pin. If user does + * not configure PPS_OUT on a TSIO pin, then firmware will allocate + * PPS_OUT to an unallocated pin. + */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_PPS_EVENT_INTERNAL \ + UINT32_C(0x1) + /* + * When this bit is set to '1', interrupt is enabled for external + * PPS event. Latches timestamp on PPS_IN TSIO pin. + */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_PPS_EVENT_EXTERNAL \ + UINT32_C(0x2) + /* + * This field is used to set the source signal used to discipline + * PHC (PTP Hardware Clock) + */ + uint8_t ptp_freq_adj_dll_source; + /* No source is selected. Use servo to discipline PHC */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_NONE \ + UINT32_C(0x0) + /* TSIO Pin #0 is selected as source signal. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_TSIO_0 \ + UINT32_C(0x1) + /* TSIO Pin #1 is selected as source signal. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_TSIO_1 \ + UINT32_C(0x2) + /* TSIO Pin #2 is selected as source signal. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_TSIO_2 \ + UINT32_C(0x3) + /* TSIO Pin #3 is selected as source signal. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_TSIO_3 \ + UINT32_C(0x4) + /* Port #0 is selected as source signal. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_PORT_0 \ + UINT32_C(0x5) + /* Port #1 is selected as source signal. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_PORT_1 \ + UINT32_C(0x6) + /* Port #2 is selected as source signal. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_PORT_2 \ + UINT32_C(0x7) + /* Port #3 is selected as source signal. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_PORT_3 \ + UINT32_C(0x8) + /* Invalid signal. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_INVALID \ + UINT32_C(0xff) + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_LAST \ + HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_SOURCE_INVALID + /* + * This field is used to provide phase adjustment for DLL + * used to discipline PHC (PTP Hardware clock) + */ + uint8_t ptp_freq_adj_dll_phase; + /* No Phase adjustment. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_PHASE_NONE \ + UINT32_C(0x0) + /* 4Khz sync in frequency. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_PHASE_4K \ + UINT32_C(0x1) + /* 8Khz sync in frequency. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_PHASE_8K \ + UINT32_C(0x2) + /* 10Mhz sync in frequency. */ + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_PHASE_10M \ + UINT32_C(0x3) + #define HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_PHASE_LAST \ + HWRM_FUNC_PTP_CFG_INPUT_PTP_FREQ_ADJ_DLL_PHASE_10M + uint8_t unused_0[3]; + /* + * Period in nanoseconds (ns) for external signal + * input. + */ + uint32_t ptp_freq_adj_ext_period; + /* + * Up time in nanoseconds (ns) of the duty cycle + * of the external signal. This value should be + * less than ptp_freq_adj_ext_period. + */ + uint32_t ptp_freq_adj_ext_up; + /* + * Phase value is provided. This field provides the + * least significant 32 bits of the phase input. The + * most significant 16 bits come from + * ptp_freq_adj_ext_phase_upper field. Setting this + * field requires setting ptp_freq_adj_ext_period + * field as well to identify the external signal + * pin. + */ + uint32_t ptp_freq_adj_ext_phase_lower; + /* + * Phase value is provided. The lower 16 bits of this field is used + * with the 32 bit value from ptp_freq_adj_ext_phase_lower + * to provide a 48 bit value input for Phase. + */ + uint32_t ptp_freq_adj_ext_phase_upper; +} __rte_packed; + +/* hwrm_func_ptp_cfg_output (size:128b/16B) */ +struct hwrm_func_ptp_cfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + uint8_t unused_0[7]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/************************** + * hwrm_func_ptp_ts_query * + **************************/ + + +/* hwrm_func_ptp_ts_query_input (size:192b/24B) */ +struct hwrm_func_ptp_ts_query_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + uint32_t flags; + /* If set, the response includes PPS event timestamps */ + #define HWRM_FUNC_PTP_TS_QUERY_INPUT_FLAGS_PPS_TIME UINT32_C(0x1) + /* If set, the response includes PTM timestamps */ + #define HWRM_FUNC_PTP_TS_QUERY_INPUT_FLAGS_PTM_TIME UINT32_C(0x2) + uint8_t unused_0[4]; +} __rte_packed; + +/* hwrm_func_ptp_ts_query_output (size:320b/40B) */ +struct hwrm_func_ptp_ts_query_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + /* Timestamp value of last PPS event latched. */ + uint64_t pps_event_ts; + /* PTM local timestamp value. */ + uint64_t ptm_res_local_ts; + /* PTM Master timestamp value. */ + uint64_t ptm_pmstr_ts; + /* PTM Master propagation delay */ + uint32_t ptm_mstr_prop_dly; + uint8_t unused_0[3]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/************************* + * hwrm_func_ptp_ext_cfg * + *************************/ + + +/* hwrm_func_ptp_ext_cfg_input (size:256b/32B) */ +struct hwrm_func_ptp_ext_cfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + uint16_t enables; + /* + * This bit must be '1' for the phc_master_fid field to be + * configured. + */ + #define HWRM_FUNC_PTP_EXT_CFG_INPUT_ENABLES_PHC_MASTER_FID \ + UINT32_C(0x1) + /* + * This bit must be '1' for the phc_sec_fid field to be + * configured. + */ + #define HWRM_FUNC_PTP_EXT_CFG_INPUT_ENABLES_PHC_SEC_FID \ + UINT32_C(0x2) + /* + * This bit must be '1' for the phc_sec_mode field to be + * configured. + */ + #define HWRM_FUNC_PTP_EXT_CFG_INPUT_ENABLES_PHC_SEC_MODE \ + UINT32_C(0x4) + /* + * This bit must be '1' for the failover_timer field to be + * configured. + */ + #define HWRM_FUNC_PTP_EXT_CFG_INPUT_ENABLES_FAILOVER_TIMER \ + UINT32_C(0x8) + /* + * This field is used to configure the Master function. Only this + * function can modify or condition the PHC. Only driver calls from + * this function are allowed to adjust frequency of PHC or configure + * PPS functionality. + * If driver does not specify this FID, then firmware will auto select + * the first function that makes the call to modify PHC as the Master. + */ + uint16_t phc_master_fid; + /* + * This field is used to configure the secondary function. This + * function becomes the Master function in case of failover from + * Master function. + * If driver does not specify this FID, firmware will auto select + * the last non-master function to make a call to condition PHC as + * secondary. + */ + uint16_t phc_sec_fid; + /* + * This field is used to configure conditions under which a function + * can become a secondary function. + */ + uint8_t phc_sec_mode; + /* + * Immediately failover to the current secondary function. If there + * is no secondary function available, failover does not happen. + */ + #define HWRM_FUNC_PTP_EXT_CFG_INPUT_PHC_SEC_MODE_SWITCH UINT32_C(0x0) + /* + * All functions (PF and VF) can be used during auto selection + * of a secondary function. This is not used in case of admin + * configured secondary function. + */ + #define HWRM_FUNC_PTP_EXT_CFG_INPUT_PHC_SEC_MODE_ALL UINT32_C(0x1) + /* + * Only PF's can be selected as a secondary function during auto + * selection. This is not used in case of admin configured secondary + * function. + */ + #define HWRM_FUNC_PTP_EXT_CFG_INPUT_PHC_SEC_MODE_PF_ONLY UINT32_C(0x2) + #define HWRM_FUNC_PTP_EXT_CFG_INPUT_PHC_SEC_MODE_LAST \ + HWRM_FUNC_PTP_EXT_CFG_INPUT_PHC_SEC_MODE_PF_ONLY + uint8_t unused_0; + /* + * This field indicates the failover time is milliseconds. If the + * timeout expires, firmware will failover PTP configurability from + * current master to secondary fid. + * 0 - Failover timer is automatically selected based on the last + * adjFreq() call. If adjFreq() is not called for 3 * (last interval) + * the failover kicks in. For example, if last interval between + * adjFreq() calls was 2 seconds and the next adjFreq() is not made for + * at least 6 seconds, then secondary takes over as master to condition + * PHC. Firmware rounds up the failover timer to be a multiple of 250 + * ms. Firmware checks every 250 ms to see if timer expired. + * 0xFFFFFFFF - If driver specifies this value, then failover never + * happens. Admin or auto selected Master will always be used for + * conditioning PHC. + * X - If driver specifies any other value, this is admin indicated + * failover timeout. If no adjFreq() call is made within this timeout + * value, then failover happens. This value should be a multiple of + * 250 ms. Firmware checks every 250 ms to see if timer expired. + */ + uint32_t failover_timer; + uint8_t unused_1[4]; +} __rte_packed; + +/* hwrm_func_ptp_ext_cfg_output (size:128b/16B) */ +struct hwrm_func_ptp_ext_cfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + uint8_t unused_0[7]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/************************** + * hwrm_func_ptp_ext_qcfg * + **************************/ + + +/* hwrm_func_ptp_ext_qcfg_input (size:192b/24B) */ +struct hwrm_func_ptp_ext_qcfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + uint8_t unused_0[8]; +} __rte_packed; + +/* hwrm_func_ptp_ext_qcfg_output (size:256b/32B) */ +struct hwrm_func_ptp_ext_qcfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + /* + * Firmware returns the current PHC master function. This function + * could either be admin selected or auto selected. + */ + uint16_t phc_master_fid; + /* + * Firmware returns the current PHC secondary function. This function + * could either be admin selected or auto selected. + */ + uint16_t phc_sec_fid; + /* + * Firmware returns the last non-master/non-secondary function to + * make a call to condition PHC. + */ + uint16_t phc_active_fid0; + /* + * Firmware returns the second last non-master/non-secondary function + * to make a call to condition PHC. + */ + uint16_t phc_active_fid1; + /* + * Timestamp indicating the last time a failover happened. The master + * and secondary functions in the failover event is indicated in the + * next two fields. + */ + uint32_t last_failover_event; + /* + * Last failover happened from this function. This was the master + * function at the time of failover. + */ + uint16_t from_fid; + /* + * Last failover happened to this function. This was the secondary + * function at the time of failover. + */ + uint16_t to_fid; + uint8_t unused_0[7]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/*************************** + * hwrm_func_key_ctx_alloc * + ***************************/ + + +/* hwrm_func_key_ctx_alloc_input (size:320b/40B) */ +struct hwrm_func_key_ctx_alloc_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + /* Function ID. */ + uint16_t fid; + /* Number of Key Contexts to be allocated. */ + uint16_t num_key_ctxs; + /* DMA buffer size in bytes. */ + uint32_t dma_bufr_size_bytes; + /* Key Context type. */ + uint8_t key_ctx_type; + /* Tx Key Context. */ + #define HWRM_FUNC_KEY_CTX_ALLOC_INPUT_KEY_CTX_TYPE_TX UINT32_C(0x0) + /* Rx KTLS Context. */ + #define HWRM_FUNC_KEY_CTX_ALLOC_INPUT_KEY_CTX_TYPE_RX UINT32_C(0x1) + #define HWRM_FUNC_KEY_CTX_ALLOC_INPUT_KEY_CTX_TYPE_LAST \ + HWRM_FUNC_KEY_CTX_ALLOC_INPUT_KEY_CTX_TYPE_RX + uint8_t unused_0[7]; + /* Host DMA address to send back KTLS context IDs. */ + uint64_t host_dma_addr; +} __rte_packed; + +/* hwrm_func_key_ctx_alloc_output (size:128b/16B) */ +struct hwrm_func_key_ctx_alloc_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + /* Actual number of Key Contexts allocated. */ + uint16_t num_key_ctxs_allocated; + uint8_t unused_0[5]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/********************************** + * hwrm_func_backing_store_cfg_v2 * + **********************************/ + + +/* hwrm_func_backing_store_cfg_v2_input (size:320b/40B) */ +struct hwrm_func_backing_store_cfg_v2_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + /* Type of backing store to be configured. */ + uint16_t type; + /* Queue pair. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_QP \ + UINT32_C(0x0) + /* Shared receive queue. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_SRQ \ + UINT32_C(0x1) + /* Completion queue. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_CQ \ + UINT32_C(0x2) + /* Virtual NIC. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_VNIC \ + UINT32_C(0x3) + /* Statistic context. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_STAT \ + UINT32_C(0x4) + /* Slow-path TQM ring. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_SP_TQM_RING \ + UINT32_C(0x5) + /* Fast-path TQM ring. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_FP_TQM_RING \ + UINT32_C(0x6) + /* MRAV. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_MRAV \ + UINT32_C(0xe) + /* TIM. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_TIM \ + UINT32_C(0xf) + /* Tx key context. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_TKC \ + UINT32_C(0x13) + /* Rx key context. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_RKC \ + UINT32_C(0x14) + /* Mid-path TQM ring. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_MP_TQM_RING \ + UINT32_C(0x15) + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_LAST \ + HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_TYPE_MP_TQM_RING + /* + * Instance of the backing store type. It is zero-based, + * which means "0" indicates the first instance. For backing + * stores with single instance only, leave this field to 0. + */ + uint16_t instance; + /* Control flags. */ + uint32_t flags; + /* + * When set, the firmware only uses on-chip resources and + * does not expect any backing store to be provided by the + * host driver. This mode provides minimal L2 functionality + * (e.g. limited L2 resources, no RoCE). + */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_FLAGS_PREBOOT_MODE \ + UINT32_C(0x1) + /* Page directory. */ + uint64_t page_dir; + /* Number of entries */ + uint32_t num_entries; + /* Number of bytes allocated for each entry */ + uint16_t entry_size; + /* Page size and pbl level. */ + uint8_t page_size_pbl_level; + /* PBL indirect levels. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PBL_LEVEL_MASK \ + UINT32_C(0xf) + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PBL_LEVEL_SFT 0 + /* PBL pointer is physical start address. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PBL_LEVEL_LVL_0 \ + UINT32_C(0x0) + /* PBL pointer points to PTE table. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PBL_LEVEL_LVL_1 \ + UINT32_C(0x1) + /* + * PBL pointer points to PDE table with each entry pointing to + * PTE tables. + */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PBL_LEVEL_LVL_2 \ + UINT32_C(0x2) + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PBL_LEVEL_LAST \ + HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PBL_LEVEL_LVL_2 + /* Page size. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PAGE_SIZE_MASK \ + UINT32_C(0xf0) + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PAGE_SIZE_SFT 4 + /* 4KB. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PAGE_SIZE_PG_4K \ + (UINT32_C(0x0) << 4) + /* 8KB. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PAGE_SIZE_PG_8K \ + (UINT32_C(0x1) << 4) + /* 64KB. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PAGE_SIZE_PG_64K \ + (UINT32_C(0x2) << 4) + /* 2MB. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PAGE_SIZE_PG_2M \ + (UINT32_C(0x3) << 4) + /* 8MB. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PAGE_SIZE_PG_8M \ + (UINT32_C(0x4) << 4) + /* 1GB. */ + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PAGE_SIZE_PG_1G \ + (UINT32_C(0x5) << 4) + #define HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PAGE_SIZE_LAST \ + HWRM_FUNC_BACKING_STORE_CFG_V2_INPUT_PAGE_SIZE_PG_1G + uint8_t rsvd; +} __rte_packed; + +/* hwrm_func_backing_store_cfg_v2_output (size:128b/16B) */ +struct hwrm_func_backing_store_cfg_v2_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + uint8_t rsvd0[7]; + /* + * This field is used in Output records to indicate that the + * output is completely written to RAM. This field should be + * read as '1' to indicate that the output has been completely + * written. When writing a command completion or response to + * an internal processor, the order of writes has to be such + * that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/*********************************** + * hwrm_func_backing_store_qcfg_v2 * + ***********************************/ + + +/* hwrm_func_backing_store_qcfg_v2_input (size:192b/24B) */ +struct hwrm_func_backing_store_qcfg_v2_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + /* Type of backing store to be configured. */ + uint16_t type; + /* Queue pair. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_QP \ + UINT32_C(0x0) + /* Shared receive queue. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_SRQ \ + UINT32_C(0x1) + /* Completion queue. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_CQ \ + UINT32_C(0x2) + /* Virtual NIC. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_VNIC \ + UINT32_C(0x3) + /* Statistic context. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_STAT \ + UINT32_C(0x4) + /* Slow-path TQM ring. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_SP_TQM_RING \ + UINT32_C(0x5) + /* Fast-path TQM ring. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_FP_TQM_RING \ + UINT32_C(0x6) + /* MRAV. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_MRAV \ + UINT32_C(0xe) + /* TIM. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_TIM \ + UINT32_C(0xf) + /* Tx key context. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_TKC \ + UINT32_C(0x13) + /* Rx key context. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_RKC \ + UINT32_C(0x14) + /* Mid-path TQM ring. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_MP_TQM_RING \ + UINT32_C(0x15) + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_LAST \ + HWRM_FUNC_BACKING_STORE_QCFG_V2_INPUT_TYPE_MP_TQM_RING + /* + * Instance of the backing store type. It is zero-based, + * which means "0" indicates the first instance. For backing + * stores with single instance only, leave this field to 0. + */ + uint16_t instance; + uint8_t rsvd[4]; +} __rte_packed; + +/* hwrm_func_backing_store_qcfg_v2_output (size:256b/32B) */ +struct hwrm_func_backing_store_qcfg_v2_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + /* Type of backing store to be configured. */ + uint16_t type; + /* Queue pair. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_QP \ + UINT32_C(0x0) + /* Shared receive queue. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_SRQ \ + UINT32_C(0x1) + /* Completion queue. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_CQ \ + UINT32_C(0x2) + /* Virtual NIC. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_VNIC \ + UINT32_C(0x3) + /* Statistic context. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_STAT \ + UINT32_C(0x4) + /* Slow-path TQM ring. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_SP_TQM_RING \ + UINT32_C(0x5) + /* Fast-path TQM ring. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_FP_TQM_RING \ + UINT32_C(0x6) + /* MRAV. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_MRAV \ + UINT32_C(0xe) + /* TIM. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_TIM \ + UINT32_C(0xf) + /* Tx key context. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_TKC \ + UINT32_C(0x13) + /* Rx key context. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_RKC \ + UINT32_C(0x14) + /* Mid-path TQM ring. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_MP_TQM_RING \ + UINT32_C(0x15) + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_LAST \ + HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_TYPE_MP_TQM_RING + /* + * Instance of the backing store type. It is zero-based, + * which means "0" indicates the first instance. For backing + * stores with single instance only, leave this field to 0. + */ + uint16_t instance; + /* Control flags. */ + uint32_t flags; + /* Page directory. */ + uint64_t page_dir; + /* Number of entries */ + uint32_t num_entries; + /* Page size and pbl level. */ + uint8_t page_size_pbl_level; + /* PBL indirect levels. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PBL_LEVEL_MASK \ + UINT32_C(0xf) + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PBL_LEVEL_SFT 0 + /* PBL pointer is physical start address. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PBL_LEVEL_LVL_0 \ + UINT32_C(0x0) + /* PBL pointer points to PTE table. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PBL_LEVEL_LVL_1 \ + UINT32_C(0x1) + /* + * PBL pointer points to PDE table with each entry pointing to + * PTE tables. + */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PBL_LEVEL_LVL_2 \ + UINT32_C(0x2) + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PBL_LEVEL_LAST \ + HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PBL_LEVEL_LVL_2 + /* Page size. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PAGE_SIZE_MASK \ + UINT32_C(0xf0) + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PAGE_SIZE_SFT 4 + /* 4KB. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PAGE_SIZE_PG_4K \ + (UINT32_C(0x0) << 4) + /* 8KB. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PAGE_SIZE_PG_8K \ + (UINT32_C(0x1) << 4) + /* 64KB. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PAGE_SIZE_PG_64K \ + (UINT32_C(0x2) << 4) + /* 2MB. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PAGE_SIZE_PG_2M \ + (UINT32_C(0x3) << 4) + /* 8MB. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PAGE_SIZE_PG_8M \ + (UINT32_C(0x4) << 4) + /* 1GB. */ + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PAGE_SIZE_PG_1G \ + (UINT32_C(0x5) << 4) + #define HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PAGE_SIZE_LAST \ + HWRM_FUNC_BACKING_STORE_QCFG_V2_OUTPUT_PAGE_SIZE_PG_1G + uint8_t rsvd[2]; + /* + * This field is used in Output records to indicate that the + * output is completely written to RAM. This field should be + * read as '1' to indicate that the output has been completely + * written. When writing a command completion or response to + * an internal processor, the order of writes has to be such + * that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/*********************** + * hwrm_func_vlan_qcfg * + ***********************/ + + +/* hwrm_func_vlan_qcfg_input (size:192b/24B) */ +struct hwrm_func_vlan_qcfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + /* + * Function ID of the function that is being + * configured. + * If set to 0xFF... (All Fs), then the configuration is + * for the requesting function. + */ + uint16_t fid; + uint8_t unused_0[6]; +} __rte_packed; + +/* hwrm_func_vlan_qcfg_output (size:320b/40B) */ +struct hwrm_func_vlan_qcfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + uint64_t unused_0; + /* S-TAG VLAN identifier configured for the function. */ + uint16_t stag_vid; + /* S-TAG PCP value configured for the function. */ + uint8_t stag_pcp; + uint8_t unused_1; + /* + * S-TAG TPID value configured for the function. This field is specified in + * network byte order. + */ + uint16_t stag_tpid; + /* C-TAG VLAN identifier configured for the function. */ + uint16_t ctag_vid; + /* C-TAG PCP value configured for the function. */ + uint8_t ctag_pcp; + uint8_t unused_2; + /* + * C-TAG TPID value configured for the function. This field is specified in + * network byte order. + */ + uint16_t ctag_tpid; + /* Future use. */ + uint32_t rsvd2; + /* Future use. */ + uint32_t rsvd3; + uint8_t unused_3[3]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/********************** + * hwrm_func_vlan_cfg * + **********************/ + + +/* hwrm_func_vlan_cfg_input (size:384b/48B) */ +struct hwrm_func_vlan_cfg_input { /* The HWRM command request type. */ uint16_t req_type; /* @@ -19853,7 +21488,7 @@ struct hwrm_port_phy_cfg_input { #define HWRM_PORT_PHY_CFG_INPUT_AUTO_DUPLEX_HALF UINT32_C(0x0) /* Full duplex will be requested. */ #define HWRM_PORT_PHY_CFG_INPUT_AUTO_DUPLEX_FULL UINT32_C(0x1) - /* Both Half and Full dupex will be requested. */ + /* Both Half and Full duplex will be requested. */ #define HWRM_PORT_PHY_CFG_INPUT_AUTO_DUPLEX_BOTH UINT32_C(0x2) #define HWRM_PORT_PHY_CFG_INPUT_AUTO_DUPLEX_LAST \ HWRM_PORT_PHY_CFG_INPUT_AUTO_DUPLEX_BOTH @@ -20690,20 +22325,44 @@ struct hwrm_port_phy_qcfg_output { /* 1G_baseCX */ #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_1G_BASECX \ UINT32_C(0x1b) - /* 100G_BASECR4 */ + /* 200G_BASECR4 */ #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_200G_BASECR4 \ UINT32_C(0x1c) - /* 100G_BASESR4 */ + /* 200G_BASESR4 */ #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_200G_BASESR4 \ UINT32_C(0x1d) - /* 100G_BASELR4 */ + /* 200G_BASELR4 */ #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_200G_BASELR4 \ UINT32_C(0x1e) - /* 100G_BASEER4 */ + /* 200G_BASEER4 */ #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_200G_BASEER4 \ UINT32_C(0x1f) + /* 50G_BASECR */ + #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_50G_BASECR \ + UINT32_C(0x20) + /* 50G_BASESR */ + #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_50G_BASESR \ + UINT32_C(0x21) + /* 50G_BASELR */ + #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_50G_BASELR \ + UINT32_C(0x22) + /* 50G_BASEER */ + #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_50G_BASEER \ + UINT32_C(0x23) + /* 100G_BASECR2 */ + #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_100G_BASECR2 \ + UINT32_C(0x24) + /* 100G_BASESR2 */ + #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_100G_BASESR2 \ + UINT32_C(0x25) + /* 100G_BASELR2 */ + #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_100G_BASELR2 \ + UINT32_C(0x26) + /* 100G_BASEER2 */ + #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_100G_BASEER2 \ + UINT32_C(0x27) #define HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_LAST \ - HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_200G_BASEER4 + HWRM_PORT_PHY_QCFG_OUTPUT_PHY_TYPE_100G_BASEER2 /* This value represents a media type. */ uint8_t media_type; /* Unknown */ @@ -20780,7 +22439,7 @@ struct hwrm_port_phy_qcfg_output { * the speed of the link partner. * * Parallel detection is used when a autonegotiation capable - * device is connected to a link parter that is not capable + * device is connected to a link partner that is not capable * of autonegotiation. */ uint8_t parallel_detect; @@ -20789,7 +22448,7 @@ struct hwrm_port_phy_qcfg_output { * the speed of the link partner. * * Parallel detection is used when a autonegotiation capable - * device is connected to a link parter that is not capable + * device is connected to a link partner that is not capable * of autonegotiation. */ #define HWRM_PORT_PHY_QCFG_OUTPUT_PARALLEL_DETECT UINT32_C(0x1) @@ -21398,6 +23057,12 @@ struct hwrm_port_mac_cfg_input { */ #define HWRM_PORT_MAC_CFG_INPUT_ENABLES_PTP_FREQ_ADJ_PPB \ UINT32_C(0x200) + /* + * This bit must be '1' for the ptp_adj_phase field to be + * configured. + */ + #define HWRM_PORT_MAC_CFG_INPUT_ENABLES_PTP_ADJ_PHASE \ + UINT32_C(0x400) /* Port ID of port that is to be configured. */ uint16_t port_id; /* @@ -21590,7 +23255,12 @@ struct hwrm_port_mac_cfg_input { * of sync timer updates (measured in parts per billion). */ int32_t ptp_freq_adj_ppb; - uint8_t unused_1[4]; + /* + * This unsigned field specifies the phase offset to be applied + * to the PHC (PTP Hardware Clock). This field is specified in + * nanoseconds. + */ + uint32_t ptp_adj_phase; } __rte_packed; /* hwrm_port_mac_cfg_output (size:128b/16B) */ @@ -21741,7 +23411,7 @@ struct hwrm_port_mac_qcfg_output { * indicates higher priority. * For example, a value of 0-3 is returned where 0 is being * the lowest priority and 3 is being the highest priority. - * # If the correspoding CoS mapping is not enabled, then this + * # If the corresponding CoS mapping is not enabled, then this * field should be ignored. * # This value indicates the normalized priority value retained * in the HWRM. @@ -21790,7 +23460,7 @@ struct hwrm_port_mac_qcfg_output { * indicates higher priority. * For example, a value of 0-3 is returned where 0 is being * the lowest priority and 3 is being the highest priority. - * # If the correspoding CoS mapping is not enabled, then this + * # If the corresponding CoS mapping is not enabled, then this * field should be ignored. * # This value indicates the normalized priority value retained * in the HWRM. @@ -21804,7 +23474,7 @@ struct hwrm_port_mac_qcfg_output { * indicates higher priority. * For example, a value of 0-3 is returned where 0 is being * the lowest priority and 3 is being the highest priority. - * # If the correspoding CoS mapping is not enabled, then this + * # If the corresponding CoS mapping is not enabled, then this * field should be ignored. * # This value indicates the normalized priority value retained * in the HWRM. @@ -21991,7 +23661,7 @@ struct hwrm_port_mac_ptp_qcfg_input { uint8_t unused_0[6]; } __rte_packed; -/* hwrm_port_mac_ptp_qcfg_output (size:640b/80B) */ +/* hwrm_port_mac_ptp_qcfg_output (size:704b/88B) */ struct hwrm_port_mac_ptp_qcfg_output { /* The specific error status for the command. */ uint16_t error_code; @@ -22024,10 +23694,23 @@ struct hwrm_port_mac_ptp_qcfg_output { */ #define HWRM_PORT_MAC_PTP_QCFG_OUTPUT_FLAGS_HWRM_ACCESS \ UINT32_C(0x8) + /* + * When this bit is set to '1', two specific registers for current + * time (ts_ref_clock_reg_lower and ts_ref_clock_reg_upper) are + * directly accessible by the host. + */ + #define HWRM_PORT_MAC_PTP_QCFG_OUTPUT_FLAGS_PARTIAL_DIRECT_ACCESS_REF_CLOCK \ + UINT32_C(0x10) uint8_t unused_0[3]; - /* Offset of the PTP register for the lower 32 bits of timestamp for RX. */ + /* + * Offset of the PTP register for the lower 32 bits of timestamp + * for RX. + */ uint32_t rx_ts_reg_off_lower; - /* Offset of the PTP register for the upper 32 bits of timestamp for RX. */ + /* + * Offset of the PTP register for the upper 32 bits of timestamp + * for RX. + */ uint32_t rx_ts_reg_off_upper; /* Offset of the PTP register for the sequence ID for RX. */ uint32_t rx_ts_reg_off_seq_id; @@ -22045,9 +23728,15 @@ struct hwrm_port_mac_ptp_qcfg_output { uint32_t rx_ts_reg_off_fifo_adv; /* PTP timestamp granularity for RX. */ uint32_t rx_ts_reg_off_granularity; - /* Offset of the PTP register for the lower 32 bits of timestamp for TX. */ + /* + * Offset of the PTP register for the lower 32 bits of timestamp + * for TX. + */ uint32_t tx_ts_reg_off_lower; - /* Offset of the PTP register for the upper 32 bits of timestamp for TX. */ + /* + * Offset of the PTP register for the upper 32 bits of timestamp + * for TX. + */ uint32_t tx_ts_reg_off_upper; /* Offset of the PTP register for the sequence ID for TX. */ uint32_t tx_ts_reg_off_seq_id; @@ -22055,6 +23744,10 @@ struct hwrm_port_mac_ptp_qcfg_output { uint32_t tx_ts_reg_off_fifo; /* PTP timestamp granularity for TX. */ uint32_t tx_ts_reg_off_granularity; + /* Offset of register to get lower 32 bits of current time. */ + uint32_t ts_ref_clock_reg_lower; + /* Offset of register to get upper 32 bits of current time. */ + uint32_t ts_ref_clock_reg_upper; uint8_t unused_1[7]; /* * This field is used in Output records to indicate that the output @@ -22082,7 +23775,7 @@ struct tx_port_stats { /* Total Number of 1024-1518 Bytes frames transmitted */ uint64_t tx_1024b_1518b_frames; /* - * Total Number of each good VLAN (exludes FCS errors) + * Total Number of each good VLAN (excludes FCS errors) * frame transmitted which is 1519 to 1522 bytes in length * inclusive (excluding framing bits but including FCS bytes). */ @@ -22223,7 +23916,7 @@ struct rx_port_stats { /* Total Number of 1024-1518 Bytes frames received */ uint64_t rx_1024b_1518b_frames; /* - * Total Number of each good VLAN (exludes FCS errors) + * Total Number of each good VLAN (excludes FCS errors) * frame received which is 1519 to 1522 bytes in length * inclusive (excluding framing bits but including FCS bytes). */ @@ -22578,7 +24271,7 @@ struct tx_port_stats_ext { } __rte_packed; /* Port Rx Statistics extended Format */ -/* rx_port_stats_ext (size:3648b/456B) */ +/* rx_port_stats_ext (size:3776b/472B) */ struct rx_port_stats_ext { /* Number of times link state changed to down */ uint64_t link_down_events; @@ -22660,7 +24353,7 @@ struct rx_port_stats_ext { uint64_t rx_buffer_passed_threshold; /* * The number of symbol errors that wasn't corrected by FEC correction - * alogirithm + * algorithm */ uint64_t rx_pcs_symbol_err; /* The number of corrected bits on the port according to active FEC */ @@ -22697,6 +24390,13 @@ struct rx_port_stats_ext { uint64_t rx_discard_packets_cos6; /* Total number of rx discard packets count on cos queue 7 */ uint64_t rx_discard_packets_cos7; + /* Total number of FEC blocks corrected by the FEC function in the PHY */ + uint64_t rx_fec_corrected_blocks; + /* + * Total number of FEC blocks determined to be uncorrectable by the + * FEC function in the PHY + */ + uint64_t rx_fec_uncorrectable_blocks; } __rte_packed; /* @@ -23718,8 +25418,10 @@ struct hwrm_port_phy_qcaps_output { #define HWRM_PORT_PHY_QCAPS_OUTPUT_PORT_CNT_3 UINT32_C(0x3) /* 4-port device */ #define HWRM_PORT_PHY_QCAPS_OUTPUT_PORT_CNT_4 UINT32_C(0x4) + /* 12-port device */ + #define HWRM_PORT_PHY_QCAPS_OUTPUT_PORT_CNT_12 UINT32_C(0xc) #define HWRM_PORT_PHY_QCAPS_OUTPUT_PORT_CNT_LAST \ - HWRM_PORT_PHY_QCAPS_OUTPUT_PORT_CNT_4 + HWRM_PORT_PHY_QCAPS_OUTPUT_PORT_CNT_12 /* * This is a bit mask to indicate what speeds are supported * as forced speeds on this link. @@ -23823,7 +25525,7 @@ struct hwrm_port_phy_qcaps_output { * for EEE on this link. * For each speed that can be autonegotiated when EEE is enabled * on this link, the corresponding mask bit shall be set to '1'. - * This field is only valid when the eee_suppotred is set to '1'. + * This field is only valid when the eee_supported is set to '1'. */ uint16_t supported_speeds_eee_mode; /* Reserved */ @@ -23901,7 +25603,28 @@ struct hwrm_port_phy_qcaps_output { UINT32_C(0x2) #define HWRM_PORT_PHY_QCAPS_OUTPUT_SUPPORTED_PAM4_SPEEDS_FORCE_MODE_200G \ UINT32_C(0x4) - uint8_t unused_0[3]; + /* More PHY capability flags */ + uint16_t flags2; + /* + * If set to 1, then this field indicates that + * 802.3x flow control is not supported. + */ + #define HWRM_PORT_PHY_QCAPS_OUTPUT_FLAGS2_PAUSE_UNSUPPORTED \ + UINT32_C(0x1) + /* + * If set to 1, then this field indicates that + * priority-based flow control is not supported. + */ + #define HWRM_PORT_PHY_QCAPS_OUTPUT_FLAGS2_PFC_UNSUPPORTED \ + UINT32_C(0x2) + /* + * Number of internal ports for this device. This field allows the FW + * to advertise how many internal ports are present. Manufacturing + * tools uses this to determine how many internal ports should have + * the PRBS test run on them. This field always return 0 unless NVM + * option "HPTN_MODE" is set to 1. + */ + uint8_t internal_port_cnt; /* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1' @@ -25190,7 +26913,13 @@ struct hwrm_port_prbs_test_input { * use this entire buffer or less than the entire buffer, but never more. */ uint16_t data_len; - uint16_t unused_0; + uint16_t flags; + /* + * If set, the port_id field should be interpreted as an internal + * port. The internal port id range is returned in port_phy_qcaps + * response internal_port_cnt field. + */ + #define HWRM_PORT_PRBS_TEST_INPUT_FLAGS_INTERNAL UINT32_C(0x1) uint32_t unused_1; /* Port ID of port where PRBS test to be run. */ uint16_t port_id; @@ -25487,14 +27216,14 @@ struct hwrm_port_sfp_sideband_cfg_input { /* * This bit along with rs1 configures the current speed of the dual * rate module. If these pins are GNDed then the speed can be changed - * by driectly writing to EEPROM. + * by directly writing to EEPROM. */ #define HWRM_PORT_SFP_SIDEBAND_CFG_INPUT_FLAGS_RS0 \ UINT32_C(0x1) /* * This bit along with rs0 configures the current speed of the dual * rate module. If these pins are GNDed then the speed can be changed - * by driectly writing to EEPROM. + * by directly writing to EEPROM. */ #define HWRM_PORT_SFP_SIDEBAND_CFG_INPUT_FLAGS_RS1 \ UINT32_C(0x2) @@ -25618,16 +27347,16 @@ struct hwrm_port_sfp_sideband_qcfg_output { #define HWRM_PORT_SFP_SIDEBAND_QCFG_OUTPUT_SIDEBAND_SIGNALS_RX_LOS \ UINT32_C(0x2) /* - * This bit along with rs1 indiactes the current speed of the dual + * This bit along with rs1 indicates the current speed of the dual * rate module.If these pins are grounded then the speed can be - * changed by driectky writing to EEPROM. + * changed by directly writing to EEPROM. */ #define HWRM_PORT_SFP_SIDEBAND_QCFG_OUTPUT_SIDEBAND_SIGNALS_RS0 \ UINT32_C(0x4) /* - * This bit along with rs0 indiactes the current speed of the dual + * This bit along with rs0 indicates the current speed of the dual * rate module.If these pins are grounded then the speed can be - * changed by driectky writing to EEPROM. + * changed by directly writing to EEPROM. */ #define HWRM_PORT_SFP_SIDEBAND_QCFG_OUTPUT_SIDEBAND_SIGNALS_RS1 \ UINT32_C(0x8) @@ -25981,6 +27710,315 @@ struct hwrm_port_tx_fir_qcfg_output { uint8_t valid; } __rte_packed; +/*********************** + * hwrm_port_ep_tx_cfg * + ***********************/ + + +/* hwrm_port_ep_tx_cfg_input (size:256b/32B) */ +struct hwrm_port_ep_tx_cfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + uint16_t enables; + /* When this bit is '1', the value in the ep0_min_bw field is valid. */ + #define HWRM_PORT_EP_TX_CFG_INPUT_ENABLES_EP0_MIN_BW UINT32_C(0x1) + /* When this bit is '1', the value in the ep0_max_bw field is valid. */ + #define HWRM_PORT_EP_TX_CFG_INPUT_ENABLES_EP0_MAX_BW UINT32_C(0x2) + /* When this bit is '1', the value in the ep1_min_bw field is valid. */ + #define HWRM_PORT_EP_TX_CFG_INPUT_ENABLES_EP1_MIN_BW UINT32_C(0x4) + /* When this bit is '1', the value in the ep1_max_bw field is valid. */ + #define HWRM_PORT_EP_TX_CFG_INPUT_ENABLES_EP1_MAX_BW UINT32_C(0x8) + /* When this bit is '1', the value in the ep2_min_bw field is valid. */ + #define HWRM_PORT_EP_TX_CFG_INPUT_ENABLES_EP2_MIN_BW UINT32_C(0x10) + /* When this bit is '1', the value in the ep2_max_bw field is valid. */ + #define HWRM_PORT_EP_TX_CFG_INPUT_ENABLES_EP2_MAX_BW UINT32_C(0x20) + /* When this bit is '1', the value in the ep3_min_bw field is valid. */ + #define HWRM_PORT_EP_TX_CFG_INPUT_ENABLES_EP3_MIN_BW UINT32_C(0x40) + /* When this bit is '1', the value in the ep3_max_bw field is valid. */ + #define HWRM_PORT_EP_TX_CFG_INPUT_ENABLES_EP3_MAX_BW UINT32_C(0x80) + /* A port index, from 0 to the number of front panel ports, minus 1. */ + uint8_t port_id; + uint8_t unused; + /* + * Specifies a minimum guaranteed bandwidth, as a percentage of the + * port bandwidth, for the set of PFs and VFs on PCIe endpoint 0 for + * the specified port. The range is 0 to 100. A value of 0 indicates no + * minimum rate. The endpoint's min_bw must be less than or equal to + * max_bw. The sum of all configured minimum bandwidths for a port must + * be less than or equal to 100. + */ + uint8_t ep0_min_bw; + /* + * Specifies the maximum portion of the port's bandwidth that the set + * of PFs and VFs on PCIe endpoint 0 may use. The value is a percentage + * of the link bandwidth, from 0 to 100. A value of 0 indicates no + * maximum rate. + */ + uint8_t ep0_max_bw; + /* + * Specifies a minimum guaranteed bandwidth, as a percentage of the + * port bandwidth, for the set of PFs and VFs on PCIe endpoint 1 for + * the specified port. The range is 0 to 100. A value of 0 indicates no + * minimum rate. The endpoint's min_bw must be less than or equal to + * max_bw. The sum of all configured minimum bandwidths for a port must + * be less than or equal to 100. + */ + uint8_t ep1_min_bw; + /* + * Specifies the maximum portion of the port's bandwidth that the set + * of PFs and VFs on PCIe endpoint 1 may use. The value is a percentage + * of the link bandwidth, from 0 to 100. A value of 0 indicates no + * maximum rate. + */ + uint8_t ep1_max_bw; + /* + * Specifies a minimum guaranteed bandwidth, as a percentage of the + * port bandwidth, for the set of PFs and VFs on PCIe endpoint 2 for + * the specified port. The range is 0 to 100. A value of 0 indicates no + * minimum rate. The endpoint's min_bw must be less than or equal to + * max_bw. The sum of all configured minimum bandwidths for a port must + * be less than or equal to 100. + */ + uint8_t ep2_min_bw; + /* + * Specifies the maximum portion of the port's bandwidth that the set of + * PFs and VFs on PCIe endpoint 2 may use. The value is a percentage of + * the link bandwidth, from 0 to 100. A value of 0 indicates no + * maximum rate. + */ + uint8_t ep2_max_bw; + /* + * Specifies a minimum guaranteed bandwidth, as a percentage of the + * port bandwidth, for the set of PFs and VFs on PCIe endpoint 3 for + * the specified port. The range is 0 to 100. A value of 0 indicates no + * minimum rate. The endpoint's min_bw must be less than or equal to + * max_bw. The sum of all configured minimum bandwidths for a port must + * be less than or equal to 100. + */ + uint8_t ep3_min_bw; + /* + * Specifies the maximum portion of the port's bandwidth that the set + * of PFs and VFs on PCIe endpoint 3 may use. The value is a percentage + * of the link bandwidth, from 0 to 100. A value of 0 indicates no + * maximum rate. + */ + uint8_t ep3_max_bw; + uint8_t unused_1[4]; +} __rte_packed; + +/* hwrm_port_ep_tx_cfg_output (size:128b/16B) */ +struct hwrm_port_ep_tx_cfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + uint8_t unused_0[7]; + /* + * This field is used in output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal + * processor, the order of writes has to be such that this field + * is written last. + */ + uint8_t valid; +} __rte_packed; + +/* hwrm_port_ep_tx_cfg_cmd_err (size:64b/8B) */ +struct hwrm_port_ep_tx_cfg_cmd_err { + /* + * command specific error codes for the cmd_err field in + * hwrm_err_output + */ + uint8_t code; + /* Unknown error. */ + #define HWRM_PORT_EP_TX_CFG_CMD_ERR_CODE_UNKNOWN \ + UINT32_C(0x0) + /* The port ID is invalid */ + #define HWRM_PORT_EP_TX_CFG_CMD_ERR_CODE_PORT_ID_INVALID \ + UINT32_C(0x1) + /* One of the PCIe endpoints configured is not active. */ + #define HWRM_PORT_EP_TX_CFG_CMD_ERR_CODE_EP_INACTIVE \ + UINT32_C(0x2) + /* A minimum bandwidth is out of range. */ + #define HWRM_PORT_EP_TX_CFG_CMD_ERR_CODE_MIN_BW_RANGE \ + UINT32_C(0x3) + /* + * One endpoint's minimum bandwidth is more than its maximum + * bandwidth. + */ + #define HWRM_PORT_EP_TX_CFG_CMD_ERR_CODE_MIN_MORE_THAN_MAX \ + UINT32_C(0x4) + /* The sum of the minimum bandwidths on the port is more than 100%. */ + #define HWRM_PORT_EP_TX_CFG_CMD_ERR_CODE_MIN_BW_SUM \ + UINT32_C(0x5) + /* + * The NIC does not support enforcement of a minimum guaranteed + * bandwidth for an endpoint. + */ + #define HWRM_PORT_EP_TX_CFG_CMD_ERR_CODE_MIN_BW_UNSUPPORTED \ + UINT32_C(0x6) + #define HWRM_PORT_EP_TX_CFG_CMD_ERR_CODE_LAST \ + HWRM_PORT_EP_TX_CFG_CMD_ERR_CODE_MIN_BW_UNSUPPORTED + uint8_t unused_0[7]; +} __rte_packed; + +/************************ + * hwrm_port_ep_tx_qcfg * + ************************/ + + +/* hwrm_port_ep_tx_qcfg_input (size:192b/24B) */ +struct hwrm_port_ep_tx_qcfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + /* The port whose endpoint rate limits are queried. */ + uint8_t port_id; + uint8_t unused[7]; +} __rte_packed; + +/* hwrm_port_ep_tx_qcfg_output (size:192b/24B) */ +struct hwrm_port_ep_tx_qcfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + /* + * Specifies a minimum guaranteed bandwidth, as a percentage of the + * port bandwidth, for the set of PFs and VFs on PCIe endpoint 0 for + * the specified port. The range is 0 to 100. A value of 0 indicates no + * minimum rate. The endpoint's min_bw must be less than or equal to + * max_bw. The sum of all configured minimum bandwidths for a port must + * be less than or equal to 100. + */ + uint8_t ep0_min_bw; + /* + * Specifies the maximum portion of the port's bandwidth that the set + * of PFs and VFs on PCIe endpoint 0 may use. The value is a percentage + * of the link bandwidth, from 0 to 100. A value of 0 indicates no + * maximum rate. + */ + uint8_t ep0_max_bw; + /* + * Specifies a minimum guaranteed bandwidth, as a percentage of the + * port bandwidth, for the set of PFs and VFs on PCIe endpoint 1 for + * the specified port. The range is 0 to 100. A value of 0 indicates no + * minimum rate. The endpoint's min_bw must be less than or equal to + * max_bw. The sum of all configured minimum bandwidths for a port must + * be less than or equal to 100. + */ + uint8_t ep1_min_bw; + /* + * Specifies the maximum portion of the port's bandwidth that the set + * of PFs and VFs on PCIe endpoint 1 may use. The value is a percentage + * of the link bandwidth, from 0 to 100. A value of 0 indicates no + * maximum rate. + */ + uint8_t ep1_max_bw; + /* + * Specifies a minimum guaranteed bandwidth, as a percentage of the + * port bandwidth, for the set of PFs and VFs on PCIe endpoint 2 for + * the specified port. The range is 0 to 100. A value of 0 indicates no + * minimum rate. The endpoint's min_bw must be less than or equal to + * max_bw. The sum of all configured minimum bandwidths for a port must + * be less than or equal to 100. + */ + uint8_t ep2_min_bw; + /* + * Specifies the maximum portion of the port's bandwidth that the set + * of PFs and VFs on PCIe endpoint 2 may use. The value is a percentage + * of the link bandwidth, from 0 to 100. A value of 0 indicates no + * maximum rate. + */ + uint8_t ep2_max_bw; + /* + * Specifies a minimum guaranteed bandwidth, as a percentage of the + * port bandwidth, for the set of PFs and VFs on PCIe endpoint 3 for + * the specified port. The range is 0 to 100. A value of 0 indicates no + * minimum rate. The endpoint's min_bw must be less than or equal to + * max_bw. The sum of all configured minimum bandwidths for a port must + * be less than or equal to 100. + */ + uint8_t ep3_min_bw; + /* + * Specifies the maximum portion of the port's bandwidth that the set + * of PFs and VFs on PCIe endpoint 3 may use. The value is a percentage + * of the link bandwidth, from 0 to 100. A value of 0 indicates no + * maximum rate. + */ + uint8_t ep3_max_bw; + uint8_t unused_0[7]; + /* + * This field is used in output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal + * processor, the order of writes has to be such that this field is + * written last. + */ + uint8_t valid; +} __rte_packed; + /*********************** * hwrm_queue_qportcfg * ***********************/ @@ -26097,6 +28135,13 @@ struct hwrm_queue_qportcfg_output { */ #define HWRM_QUEUE_QPORTCFG_OUTPUT_QUEUE_CFG_INFO_ASYM_CFG \ UINT32_C(0x1) + /* + * If this flag is set to '1', then service_profile will carry + * either lossy/lossless type and the new service_profile_type + * field will be used to determine if the queue is for L2/ROCE/CNP. + */ + #define HWRM_QUEUE_QPORTCFG_OUTPUT_QUEUE_CFG_INFO_USE_PROFILE_TYPE \ + UINT32_C(0x2) /* * Bitmask indicating which queues can be configured by the * hwrm_queue_pfcenable_cfg command. @@ -30198,17 +32243,409 @@ struct hwrm_queue_vlanpri2pri_qcfg_input { * point to a physically contiguous block of memory. */ uint64_t resp_addr; - /* - * Port ID of port for which the table is being configured. - * The HWRM needs to check whether this function is allowed - * to configure VLAN priority to user priority mapping on this port. - */ - uint8_t port_id; - uint8_t unused_0[7]; + /* + * Port ID of port for which the table is being configured. + * The HWRM needs to check whether this function is allowed + * to configure VLAN priority to user priority mapping on this port. + */ + uint8_t port_id; + uint8_t unused_0[7]; +} __rte_packed; + +/* hwrm_queue_vlanpri2pri_qcfg_output (size:192b/24B) */ +struct hwrm_queue_vlanpri2pri_qcfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + /* + * User priority assigned to VLAN priority 0. A value of 0xff + * indicates that no user priority is assigned. The default user + * priority will be used. + */ + uint8_t vlanpri0_user_pri_id; + /* + * User priority assigned to VLAN priority 1. A value of 0xff + * indicates that no user priority is assigned. The default user + * priority will be used. + */ + uint8_t vlanpri1_user_pri_id; + /* + * User priority assigned to VLAN priority 2. A value of 0xff + * indicates that no user priority is assigned. The default user + * priority will be used. + */ + uint8_t vlanpri2_user_pri_id; + /* + * User priority assigned to VLAN priority 3. A value of 0xff + * indicates that no user priority is assigned. The default user + * priority will be used. + */ + uint8_t vlanpri3_user_pri_id; + /* + * User priority assigned to VLAN priority 4. A value of 0xff + * indicates that no user priority is assigned. The default user + * priority will be used. + */ + uint8_t vlanpri4_user_pri_id; + /* + * User priority assigned to VLAN priority 5. A value of 0xff + * indicates that no user priority is assigned. The default user + * priority will be used. + */ + uint8_t vlanpri5_user_pri_id; + /* + * User priority assigned to VLAN priority 6. A value of 0xff + * indicates that no user priority is assigned. The default user + * priority will be used. + */ + uint8_t vlanpri6_user_pri_id; + /* + * User priority assigned to VLAN priority 7. A value of 0xff + * indicates that no user priority is assigned. The default user + * priority will be used. + */ + uint8_t vlanpri7_user_pri_id; + uint8_t unused_0[7]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/****************************** + * hwrm_queue_vlanpri2pri_cfg * + ******************************/ + + +/* hwrm_queue_vlanpri2pri_cfg_input (size:256b/32B) */ +struct hwrm_queue_vlanpri2pri_cfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + uint32_t enables; + /* + * This bit must be '1' for the vlanpri0_user_pri_id field to be + * configured. + */ + #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI0_USER_PRI_ID \ + UINT32_C(0x1) + /* + * This bit must be '1' for the vlanpri1_user_pri_id field to be + * configured. + */ + #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI1_USER_PRI_ID \ + UINT32_C(0x2) + /* + * This bit must be '1' for the vlanpri2_user_pri_id field to be + * configured. + */ + #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI2_USER_PRI_ID \ + UINT32_C(0x4) + /* + * This bit must be '1' for the vlanpri3_user_pri_id field to be + * configured. + */ + #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI3_USER_PRI_ID \ + UINT32_C(0x8) + /* + * This bit must be '1' for the vlanpri4_user_pri_id field to be + * configured. + */ + #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI4_USER_PRI_ID \ + UINT32_C(0x10) + /* + * This bit must be '1' for the vlanpri5_user_pri_id field to be + * configured. + */ + #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI5_USER_PRI_ID \ + UINT32_C(0x20) + /* + * This bit must be '1' for the vlanpri6_user_pri_id field to be + * configured. + */ + #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI6_USER_PRI_ID \ + UINT32_C(0x40) + /* + * This bit must be '1' for the vlanpri7_user_pri_id field to be + * configured. + */ + #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI7_USER_PRI_ID \ + UINT32_C(0x80) + /* + * Port ID of port for which the table is being configured. + * The HWRM needs to check whether this function is allowed + * to configure VLAN priority to user priority mapping on this port. + */ + uint8_t port_id; + uint8_t unused_0[3]; + /* + * User priority assigned to VLAN priority 0. This value can only + * be changed before traffic has started. + */ + uint8_t vlanpri0_user_pri_id; + /* + * User priority assigned to VLAN priority 1. This value can only + * be changed before traffic has started. + */ + uint8_t vlanpri1_user_pri_id; + /* + * User priority assigned to VLAN priority 2. This value can only + * be changed before traffic has started. + */ + uint8_t vlanpri2_user_pri_id; + /* + * User priority assigned to VLAN priority 3. This value can only + * be changed before traffic has started. + */ + uint8_t vlanpri3_user_pri_id; + /* + * User priority assigned to VLAN priority 4. This value can only + * be changed before traffic has started. + */ + uint8_t vlanpri4_user_pri_id; + /* + * User priority assigned to VLAN priority 5. This value can only + * be changed before traffic has started. + */ + uint8_t vlanpri5_user_pri_id; + /* + * User priority assigned to VLAN priority 6. This value can only + * be changed before traffic has started. + */ + uint8_t vlanpri6_user_pri_id; + /* + * User priority assigned to VLAN priority 7. This value can only + * be changed before traffic has started. + */ + uint8_t vlanpri7_user_pri_id; +} __rte_packed; + +/* hwrm_queue_vlanpri2pri_cfg_output (size:128b/16B) */ +struct hwrm_queue_vlanpri2pri_cfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + uint8_t unused_0[7]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/************************* + * hwrm_queue_global_cfg * + *************************/ + + +/* hwrm_queue_global_cfg_input (size:192b/24B) */ +struct hwrm_queue_global_cfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + /* + * Configuration mode for rx cos queues, configuring whether they + * use one shared buffer pool (across ports or PCIe endpoints) or + * independent per port or per endpoint buffer pools. + */ + uint8_t mode; + /* One shared buffer pool to be used by all RX CoS queues */ + #define HWRM_QUEUE_GLOBAL_CFG_INPUT_MODE_SHARED UINT32_C(0x0) + /* + * Each port or PCIe endpoint to use an independent buffer pool + * for its RX CoS queues + */ + #define HWRM_QUEUE_GLOBAL_CFG_INPUT_MODE_INDEPENDENT UINT32_C(0x1) + #define HWRM_QUEUE_GLOBAL_CFG_INPUT_MODE_LAST \ + HWRM_QUEUE_GLOBAL_CFG_INPUT_MODE_INDEPENDENT + uint8_t unused_0; + uint16_t enables; + /* This bit must be '1' when the mode field is configured. */ + #define HWRM_QUEUE_GLOBAL_CFG_INPUT_ENABLES_MODE UINT32_C(0x1) + /* + * This bit must be '1' when the maximum bandwidth for queue group 0 + * (g0_max_bw) is configured. + */ + #define HWRM_QUEUE_GLOBAL_CFG_INPUT_ENABLES_G0_MAX_BW UINT32_C(0x2) + /* + * This bit must be '1' when the maximum bandwidth for queue group 1 + * (g1_max_bw) is configured. + */ + #define HWRM_QUEUE_GLOBAL_CFG_INPUT_ENABLES_G1_MAX_BW UINT32_C(0x4) + /* + * This bit must be '1' when the maximum bandwidth for queue group 2 + * (g2_max_bw) is configured. + */ + #define HWRM_QUEUE_GLOBAL_CFG_INPUT_ENABLES_G2_MAX_BW UINT32_C(0x8) + /* + * This bit must be '1' when the maximum bandwidth for queue group 3 + * (g3_max_bw) is configured. + */ + #define HWRM_QUEUE_GLOBAL_CFG_INPUT_ENABLES_G3_MAX_BW \ + UINT32_C(0x10) + /* + * Specifies the maximum receive rate, as a percentage of total link + * bandwidth, of the receive traffic through queue group 0. A value + * of 0 indicates no rate limit. + * + * A queue group is a set of queues, one per traffic class. In + * single-host mode, each panel port has its own queue group, and thus, + * this rate limit shapes the traffic received on a port, in this case, + * through port 0. In multi-root or multi-host mode, each PCIe endpoint + * on the NIC has its own queue group. In these cases, the rate limit + * shapes the traffic sent to the host through one of the PCIe + * endpoints, in this case endpoint 0. + */ + uint8_t g0_max_bw; + /* + * Specifies the maximum rate of the traffic through receive CoS queue + * group 1 (for port 1 or PCIe endpoint 1). The rate is a percentage of + * total link bandwidth (the sum of the bandwidths of all links). A + * value of 0 indicates no rate limit. + */ + uint8_t g1_max_bw; + /* + * Specifies the maximum rate of the traffic through receive CoS queue + * group 2 (for port 2 or PCIe endpoint 2). The rate is a percentage of + * total link bandwidth (the sum of the bandwidths of all links). A + * value of 0 indicates no rate limit. + */ + uint8_t g2_max_bw; + /* + * Specifies the maximum receive rate, in Mbps, of the receive traffic + * through queue group 3 (for port 3 or PCIe endpoint 3). A value of 0 + * indicates no rate limit. + */ + uint8_t g3_max_bw; +} __rte_packed; + +/* hwrm_queue_global_cfg_output (size:128b/16B) */ +struct hwrm_queue_global_cfg_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + uint8_t unused_0[7]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/************************** + * hwrm_queue_global_qcfg * + **************************/ + + +/* hwrm_queue_global_qcfg_input (size:128b/16B) */ +struct hwrm_queue_global_qcfg_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; } __rte_packed; -/* hwrm_queue_vlanpri2pri_qcfg_output (size:192b/24B) */ -struct hwrm_queue_vlanpri2pri_qcfg_output { +/* hwrm_queue_global_qcfg_output (size:320b/40B) */ +struct hwrm_queue_global_qcfg_output { /* The specific error status for the command. */ uint16_t error_code; /* The HWRM command request type. */ @@ -30217,209 +32654,95 @@ struct hwrm_queue_vlanpri2pri_qcfg_output { uint16_t seq_id; /* The length of the response data in number of bytes. */ uint16_t resp_len; + /* Port or PCIe endpoint id to be mapped for buffer pool 0. */ + uint8_t buffer_pool_id0_map; + /* Port or PCIe endpoint id to be mapped for buffer pool 1. */ + uint8_t buffer_pool_id1_map; + /* Port or PCIe endpoint id to be mapped for buffer pool 2. */ + uint8_t buffer_pool_id2_map; + /* Port or PCIe endpoint id to be mapped for buffer pool 3. */ + uint8_t buffer_pool_id3_map; + /* Size of buffer pool 0 (KBytes). */ + uint32_t buffer_pool_id0_size; + /* Size of buffer pool 1 (KBytes). */ + uint32_t buffer_pool_id1_size; + /* Size of buffer pool 2 (KBytes). */ + uint32_t buffer_pool_id2_size; + /* Size of buffer pool 3 (KBytes). */ + uint32_t buffer_pool_id3_size; + uint16_t flags; /* - * User priority assigned to VLAN priority 0. A value of 0xff - * indicates that no user priority is assigned. The default user - * priority will be used. - */ - uint8_t vlanpri0_user_pri_id; - /* - * User priority assigned to VLAN priority 1. A value of 0xff - * indicates that no user priority is assigned. The default user - * priority will be used. - */ - uint8_t vlanpri1_user_pri_id; - /* - * User priority assigned to VLAN priority 2. A value of 0xff - * indicates that no user priority is assigned. The default user - * priority will be used. - */ - uint8_t vlanpri2_user_pri_id; - /* - * User priority assigned to VLAN priority 3. A value of 0xff - * indicates that no user priority is assigned. The default user - * priority will be used. - */ - uint8_t vlanpri3_user_pri_id; - /* - * User priority assigned to VLAN priority 4. A value of 0xff - * indicates that no user priority is assigned. The default user - * priority will be used. - */ - uint8_t vlanpri4_user_pri_id; - /* - * User priority assigned to VLAN priority 5. A value of 0xff - * indicates that no user priority is assigned. The default user - * priority will be used. - */ - uint8_t vlanpri5_user_pri_id; - /* - * User priority assigned to VLAN priority 6. A value of 0xff - * indicates that no user priority is assigned. The default user - * priority will be used. - */ - uint8_t vlanpri6_user_pri_id; - /* - * User priority assigned to VLAN priority 7. A value of 0xff - * indicates that no user priority is assigned. The default user - * priority will be used. - */ - uint8_t vlanpri7_user_pri_id; - uint8_t unused_0[7]; - /* - * This field is used in Output records to indicate that the output - * is completely written to RAM. This field should be read as '1' - * to indicate that the output has been completely written. - * When writing a command completion or response to an internal processor, - * the order of writes has to be such that this field is written last. - */ - uint8_t valid; -} __rte_packed; - -/****************************** - * hwrm_queue_vlanpri2pri_cfg * - ******************************/ - - -/* hwrm_queue_vlanpri2pri_cfg_input (size:256b/32B) */ -struct hwrm_queue_vlanpri2pri_cfg_input { - /* The HWRM command request type. */ - uint16_t req_type; - /* - * The completion ring to send the completion event on. This should - * be the NQ ID returned from the `nq_alloc` HWRM command. - */ - uint16_t cmpl_ring; - /* - * The sequence ID is used by the driver for tracking multiple - * commands. This ID is treated as opaque data by the firmware and - * the value is returned in the `hwrm_resp_hdr` upon completion. - */ - uint16_t seq_id; - /* - * The target ID of the command: - * * 0x0-0xFFF8 - The function ID - * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors - * * 0xFFFD - Reserved for user-space HWRM interface - * * 0xFFFF - HWRM + * Enumeration denoting whether the rx buffer pool mapping is + * per port or per PCIe endpoint */ - uint16_t target_id; - /* - * A physical address pointer pointing to a host buffer that the - * command's response data will be written. This can be either a host - * physical address (HPA) or a guest physical address (GPA) and must - * point to a physically contiguous block of memory. - */ - uint64_t resp_addr; - uint32_t enables; - /* - * This bit must be '1' for the vlanpri0_user_pri_id field to be - * configured. - */ - #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI0_USER_PRI_ID \ + #define HWRM_QUEUE_GLOBAL_QCFG_OUTPUT_FLAGS_MAPPING \ UINT32_C(0x1) /* - * This bit must be '1' for the vlanpri1_user_pri_id field to be - * configured. - */ - #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI1_USER_PRI_ID \ - UINT32_C(0x2) - /* - * This bit must be '1' for the vlanpri2_user_pri_id field to be - * configured. - */ - #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI2_USER_PRI_ID \ - UINT32_C(0x4) - /* - * This bit must be '1' for the vlanpri3_user_pri_id field to be - * configured. - */ - #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI3_USER_PRI_ID \ - UINT32_C(0x8) - /* - * This bit must be '1' for the vlanpri4_user_pri_id field to be - * configured. + * The buffer_pool_id[0-3]_map field represents mapping of rx + * buffer pools to a port. */ - #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI4_USER_PRI_ID \ - UINT32_C(0x10) - /* - * This bit must be '1' for the vlanpri5_user_pri_id field to be - * configured. - */ - #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI5_USER_PRI_ID \ - UINT32_C(0x20) - /* - * This bit must be '1' for the vlanpri6_user_pri_id field to be - * configured. - */ - #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI6_USER_PRI_ID \ - UINT32_C(0x40) - /* - * This bit must be '1' for the vlanpri7_user_pri_id field to be - * configured. - */ - #define HWRM_QUEUE_VLANPRI2PRI_CFG_INPUT_ENABLES_VLANPRI7_USER_PRI_ID \ - UINT32_C(0x80) - /* - * Port ID of port for which the table is being configured. - * The HWRM needs to check whether this function is allowed - * to configure VLAN priority to user priority mapping on this port. - */ - uint8_t port_id; - uint8_t unused_0[3]; - /* - * User priority assigned to VLAN priority 0. This value can only - * be changed before traffic has started. - */ - uint8_t vlanpri0_user_pri_id; + #define HWRM_QUEUE_GLOBAL_QCFG_OUTPUT_FLAGS_MAPPING_MAPPING_PER_PORT \ + UINT32_C(0x0) /* - * User priority assigned to VLAN priority 1. This value can only - * be changed before traffic has started. + * The buffer_pool_id[0-3]_map field represents mapping of rx + * buffer pools to a PCIe endpoint. */ - uint8_t vlanpri1_user_pri_id; + #define HWRM_QUEUE_GLOBAL_QCFG_OUTPUT_FLAGS_MAPPING_MAPPING_PER_ENDPOINT \ + UINT32_C(0x1) + #define HWRM_QUEUE_GLOBAL_QCFG_OUTPUT_FLAGS_MAPPING_LAST \ + HWRM_QUEUE_GLOBAL_QCFG_OUTPUT_FLAGS_MAPPING_MAPPING_PER_ENDPOINT /* - * User priority assigned to VLAN priority 2. This value can only - * be changed before traffic has started. + * Configuration mode for rx cos queues, configuring whether they + * use one shared buffer pool (across ports or PCIe endpoints) or + * independent per port or per endpoint buffer pools. */ - uint8_t vlanpri2_user_pri_id; + uint8_t mode; + /* One shared buffer pool to be used by all RX CoS queues */ + #define HWRM_QUEUE_GLOBAL_QCFG_OUTPUT_MODE_SHARED UINT32_C(0x0) /* - * User priority assigned to VLAN priority 3. This value can only - * be changed before traffic has started. + * Each port or PCIe endpoint to use an independent buffer pool + * for its RX CoS queues */ - uint8_t vlanpri3_user_pri_id; + #define HWRM_QUEUE_GLOBAL_QCFG_OUTPUT_MODE_INDEPENDENT UINT32_C(0x1) + #define HWRM_QUEUE_GLOBAL_QCFG_OUTPUT_MODE_LAST \ + HWRM_QUEUE_GLOBAL_QCFG_OUTPUT_MODE_INDEPENDENT + uint8_t unused_0; /* - * User priority assigned to VLAN priority 4. This value can only - * be changed before traffic has started. + * Reports the rate limit applied to traffic through receive CoS queue + * group 0. The rate limit is a percentage of total link bandwidth. A + * value of 0 indicates no rate limit. + * + * A queue group is a set of queues, one per traffic class. In + * single-host mode, each panel port has its own queue group, and thus, + * this rate limit shapes the traffic received on a port, in this case, + * through port 0. In multi-root or multi-host mode, each PCIe endpoint + * on the NIC has its own queue group. In these cases, the rate limit + * shapes the traffic sent to the host through one of the PCIe + * endpoints, in this case endpoint 0. */ - uint8_t vlanpri4_user_pri_id; + uint8_t g0_max_bw; /* - * User priority assigned to VLAN priority 5. This value can only - * be changed before traffic has started. + * Reports the rate limit applied to traffic through receive CoS queue + * group 1 (for port 1 or PCIe endpoint 1). The rate limit is a + * percentage of total link bandwidth. A value of 0 indicates no rate + * limit. */ - uint8_t vlanpri5_user_pri_id; + uint8_t g1_max_bw; /* - * User priority assigned to VLAN priority 6. This value can only - * be changed before traffic has started. + * Reports the rate limit applied to traffic through receive CoS queue + * group 2 (for port 2 or PCIe endpoint 2). The rate limit is a + * percentage of total link bandwidth. A value of 0 indicates no rate + * limit. */ - uint8_t vlanpri6_user_pri_id; + uint8_t g2_max_bw; /* - * User priority assigned to VLAN priority 7. This value can only - * be changed before traffic has started. + * Reports the rate limit applied to traffic through receive CoS queue + * group 3 (for port 3 or PCIe endpoint 3). The rate limit is a + * percentage of total link bandwidth. A value of 0 indicates no rate + * limit. */ - uint8_t vlanpri7_user_pri_id; -} __rte_packed; - -/* hwrm_queue_vlanpri2pri_cfg_output (size:128b/16B) */ -struct hwrm_queue_vlanpri2pri_cfg_output { - /* The specific error status for the command. */ - uint16_t error_code; - /* The HWRM command request type. */ - uint16_t req_type; - /* The sequence ID from the original command. */ - uint16_t seq_id; - /* The length of the response data in number of bytes. */ - uint16_t resp_len; - uint8_t unused_0[7]; + uint8_t g3_max_bw; + uint8_t unused_1[3]; /* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1' @@ -30567,6 +32890,12 @@ struct hwrm_vnic_update_input { */ #define HWRM_VNIC_UPDATE_INPUT_ENABLES_METADATA_FORMAT_TYPE_VALID \ UINT32_C(0x4) + /* + * This bit must be '1' for the rss_hash_function field to be + * configured. + */ + #define HWRM_VNIC_UPDATE_INPUT_ENABLES_RSS_HASH_FUNCTION_VALID \ + UINT32_C(0x8) /* * This will update the context variable with the same name if * the corresponding enable is set. @@ -30612,7 +32941,32 @@ struct hwrm_vnic_update_input { * the mru of the port the function is associated with. */ uint16_t mru; - uint8_t unused_1[4]; + /* + * Used to choose the RSS hash algorithm based on which HW + * can select the destination ring + */ + uint8_t rss_hash_function; + /* + * NIC calculates the RSS hash using the Toeplitz algorithm on L3/L4 + * headers and uses the hash to select the ring. + */ + #define HWRM_VNIC_UPDATE_INPUT_RSS_HASH_FUNCTION_TOEPLITZ UINT32_C(0x0) + /* + * NIC calculates the RSS hash using the XOR algorithm on L3/L4 + * headers and uses the hash to select the ring. + */ + #define HWRM_VNIC_UPDATE_INPUT_RSS_HASH_FUNCTION_XOR UINT32_C(0x1) + /* + * In this mode, RSS hash is calculated with Toeplitz and reported + * in the RX completion. However, the ring selection algorithm is + * based on the checksum. In this mode, only the innermost L3/L4 + * packet checksums are used. So this hash function mode will not + * be exposed/valid when the outer RSS mode is enabled. + */ + #define HWRM_VNIC_UPDATE_INPUT_RSS_HASH_FUNCTION_CHECKSUM UINT32_C(0x2) + #define HWRM_VNIC_UPDATE_INPUT_RSS_HASH_FUNCTION_LAST \ + HWRM_VNIC_UPDATE_INPUT_RSS_HASH_FUNCTION_CHECKSUM + uint8_t unused_1[3]; } __rte_packed; /* hwrm_vnic_update_output (size:128b/16B) */ @@ -31282,7 +33636,7 @@ struct hwrm_vnic_qcaps_output { * ability to steer incoming packets from one CoS queue to one * VNIC. This optional feature can then be enabled * using HWRM_VNIC_CFG on any VNIC. This feature is only - * available when NVM option “enable_cos_classfication” is set + * available when NVM option “enable_cos_classification” is set * to 1. If set to '0', firmware does not support this feature. */ #define HWRM_VNIC_QCAPS_OUTPUT_FLAGS_COS_ASSIGNMENT_CAP \ @@ -31292,7 +33646,7 @@ struct hwrm_vnic_qcaps_output { * the use of RX V2 and RX TPA start V2 completion records for all * the RX rings of a VNIC. Once set, this feature is mandatory to * be used for the RX rings of the VNIC. Additionally, two new RX - * checksum features supported by these ompletion records can be + * checksum features supported by these completion records can be * configured using the HWRM_VNIC_CFG on a VNIC. If set to '0', the * HW and the firmware does not support this feature. */ @@ -31324,6 +33678,48 @@ struct hwrm_vnic_qcaps_output { */ #define HWRM_VNIC_QCAPS_OUTPUT_FLAGS_METADATA_FORMAT_CAP \ UINT32_C(0x1000) + /* + * When this bit is set '1', it indicates that firmware returns + * INVALID_PARAM error, if host drivers choose invalid hash type + * bit combinations in vnic_rss_cfg. + */ + #define HWRM_VNIC_QCAPS_OUTPUT_FLAGS_RSS_STRICT_HASH_TYPE_CAP \ + UINT32_C(0x2000) + /* + * When this bit is set '1', it indicates that firmware supports + * the hash_type include and exclude flags in hwrm_vnic_rss_cfg. + */ + #define HWRM_VNIC_QCAPS_OUTPUT_FLAGS_RSS_HASH_TYPE_DELTA_CAP \ + UINT32_C(0x4000) + /* + * When this bit is '1', it indicates that HW is capable + * of calculating the RSS hash using Toeplitz algorithm. + */ + #define HWRM_VNIC_QCAPS_OUTPUT_FLAGS_RSS_HASH_FUNCTION_TOEPLITZ_CAP \ + UINT32_C(0x8000) + /* + * When this bit is '1', it indicates that HW is capable + * of calculating the RSS hash using XOR algorithm. + */ + #define HWRM_VNIC_QCAPS_OUTPUT_FLAGS_RSS_HASH_FUNCTION_XOR_CAP \ + UINT32_C(0x10000) + /* + * When this bit is '1', it indicates that HW is capable + * of using checksum algorithm. + * In this mode, RSS hash is calculated with Toeplitz and reported + * in the RX completion. However, the ring selection algorithm is + * based on the checksum. In this mode, only the innermost L3/L4 + * packet checksums are used. So this hash function mode will not + * be exposed/valid when the outer RSS mode is enabled. + */ + #define HWRM_VNIC_QCAPS_OUTPUT_FLAGS_RSS_HASH_FUNCTION_CHKSM_CAP \ + UINT32_C(0x20000) + /* + * When this bit is '1' HW supports hash calculation + * based on IPV6 flow labels. + */ + #define HWRM_VNIC_QCAPS_OUTPUT_FLAGS_RSS_IPV6_FLOW_LABEL_CAP \ + UINT32_C(0x40000) /* * This field advertises the maximum concurrent TPA aggregations * supported by the VNIC on new devices that support TPA v2. @@ -31603,7 +33999,7 @@ struct hwrm_vnic_rss_cfg_input { #define HWRM_VNIC_RSS_CFG_INPUT_HASH_TYPE_UDP_IPV4 UINT32_C(0x4) /* * When this bit is '1', the RSS hash shall be computed - * over source and destination IPv4 addresses of IPv6 + * over source and destination IPv6 addresses of IPv6 * packets. */ #define HWRM_VNIC_RSS_CFG_INPUT_HASH_TYPE_IPV6 UINT32_C(0x8) @@ -31674,7 +34070,62 @@ struct hwrm_vnic_rss_cfg_input { uint64_t hash_key_tbl_addr; /* Index to the rss indirection table. */ uint16_t rss_ctx_idx; - uint8_t unused_1[6]; + uint8_t flags; + /* + * When this bit is '1', it indicates that the hash_type field is + * interpreted as a change relative the current configuration. Each + * '1' bit in hash_type represents a header to add to the current + * hash. Zeroes designate the hash_type state bits that should remain + * unchanged, if possible. If this constraint on the existing state + * cannot be satisfied, then the implementation should preference + * adding other headers so as to honor the request to add the + * specified headers. It is an error to set this flag concurrently + * with hash_type_exclude. + */ + #define HWRM_VNIC_RSS_CFG_INPUT_FLAGS_HASH_TYPE_INCLUDE \ + UINT32_C(0x1) + /* + * When this bit is '1', it indicates that the hash_type field is + * interpreted as a change relative the current configuration. Each + * '1' bit in hash_type represents a header to remove from the + * current hash. Zeroes designate the hash_type state bits that + * should remain unchanged, if possible. If this constraint on the + * existing state cannot be satisfied, then the implementation should + * preference removing other headers so as to honor the request to + * remove the specified headers. It is an error to set this flag + * concurrently with hash_type_include. + */ + #define HWRM_VNIC_RSS_CFG_INPUT_FLAGS_HASH_TYPE_EXCLUDE \ + UINT32_C(0x2) + /* + * Used to choose the RSS hash algorithm based on which HW + * can select the destination ring + */ + uint8_t rss_hash_function; + /* + * NIC calculates the RSS hash using the Toeplitz algorithm on L3/L4 + * headers and uses the hash to select the ring. + */ + #define HWRM_VNIC_RSS_CFG_INPUT_RSS_HASH_FUNCTION_TOEPLITZ \ + UINT32_C(0x0) + /* + * NIC calculates the RSS hash using the XOR algorithm on L3/L4 + * headers and uses the hash to select the ring. + */ + #define HWRM_VNIC_RSS_CFG_INPUT_RSS_HASH_FUNCTION_XOR \ + UINT32_C(0x1) + /* + * In this mode, RSS hash is calculated with Toeplitz and reported + * in the RX completion. However, the ring selection algorithm is + * based on the checksum. In this mode, only the innermost L3/L4 + * packet checksums are used. So this hash function mode will not + * be exposed/valid when the outer RSS mode is enabled. + */ + #define HWRM_VNIC_RSS_CFG_INPUT_RSS_HASH_FUNCTION_CHECKSUM \ + UINT32_C(0x2) + #define HWRM_VNIC_RSS_CFG_INPUT_RSS_HASH_FUNCTION_LAST \ + HWRM_VNIC_RSS_CFG_INPUT_RSS_HASH_FUNCTION_CHECKSUM + uint8_t unused_1[4]; } __rte_packed; /* hwrm_vnic_rss_cfg_output (size:128b/16B) */ @@ -31790,7 +34241,7 @@ struct hwrm_vnic_rss_qcfg_output { #define HWRM_VNIC_RSS_QCFG_OUTPUT_HASH_TYPE_UDP_IPV4 UINT32_C(0x4) /* * When this bit is '1', the RSS hash shall be computed - * over source and destination IPv4 addresses of IPv6 + * over source and destination IPv6 addresses of IPv6 * packets. */ #define HWRM_VNIC_RSS_QCFG_OUTPUT_HASH_TYPE_IPV6 UINT32_C(0x8) @@ -31851,7 +34302,35 @@ struct hwrm_vnic_rss_qcfg_output { */ #define HWRM_VNIC_RSS_QCFG_OUTPUT_HASH_MODE_FLAGS_OUTERMOST_2 \ UINT32_C(0x10) - uint8_t unused_1[6]; + /* + * Used to choose the RSS hash algorithm based on which HW + * can select the destination ring + */ + uint8_t rss_hash_function; + /* + * NIC calculates the RSS hash using the Toeplitz algorithm on L3/L4 + * headers and uses the hash to select the ring. + */ + #define HWRM_VNIC_RSS_QCFG_OUTPUT_RSS_HASH_FUNCTION_TOEPLITZ \ + UINT32_C(0x0) + /* + * NIC calculates the RSS hash using the XOR algorithm on L3/L4 + * headers and uses the hash to select the ring. + */ + #define HWRM_VNIC_RSS_QCFG_OUTPUT_RSS_HASH_FUNCTION_XOR \ + UINT32_C(0x1) + /* + * In this mode, RSS hash is calculated with Toeplitz and reported + * in the RX completion. However, the ring selection algorithm is + * based on the checksum. In this mode, only the innermost L3/L4 + * packet checksums are used. So this hash function mode will not + * be exposed/valid when the outer RSS mode is enabled. + */ + #define HWRM_VNIC_RSS_QCFG_OUTPUT_RSS_HASH_FUNCTION_CHECKSUM \ + UINT32_C(0x2) + #define HWRM_VNIC_RSS_QCFG_OUTPUT_RSS_HASH_FUNCTION_LAST \ + HWRM_VNIC_RSS_QCFG_OUTPUT_RSS_HASH_FUNCTION_CHECKSUM + uint8_t unused_1[5]; /* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1' @@ -32426,7 +34905,47 @@ struct hwrm_ring_alloc_input { #define HWRM_RING_ALLOC_INPUT_RING_TYPE_NQ UINT32_C(0x5) #define HWRM_RING_ALLOC_INPUT_RING_TYPE_LAST \ HWRM_RING_ALLOC_INPUT_RING_TYPE_NQ - uint8_t unused_0; + /* + * This field controls the number of packets transmitted before a TX + * completion is generated. Non-zero values for the field are only + * valid if HWRM_FUNC_QCAPS indicates that the TX coalesced completion + * records capability is supported. + */ + uint8_t cmpl_coal_cnt; + /* Generates a legacy TX completion on every packet. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_OFF UINT32_C(0x0) + /* Generates a TX coalesced completion for up to 4 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_4 UINT32_C(0x1) + /* Generates a TX coalesced completion for up to 8 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_8 UINT32_C(0x2) + /* Generates a TX coalesced completion for up to 12 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_12 UINT32_C(0x3) + /* Generates a TX coalesced completion for up to 16 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_16 UINT32_C(0x4) + /* Generates a TX coalesced completion for up to 24 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_24 UINT32_C(0x5) + /* Generates a TX coalesced completion for up to 32 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_32 UINT32_C(0x6) + /* Generates a TX coalesced completion for up to 48 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_48 UINT32_C(0x7) + /* Generates a TX coalesced completion for up to 64 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_64 UINT32_C(0x8) + /* Generates a TX coalesced completion for up to 96 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_96 UINT32_C(0x9) + /* Generates a TX coalesced completion for up to 128 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_128 UINT32_C(0xa) + /* Generates a TX coalesced completion for up to 192 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_192 UINT32_C(0xb) + /* Generates a TX coalesced completion for up to 256 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_256 UINT32_C(0xc) + /* Generates a TX coalesced completion for up to 320 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_320 UINT32_C(0xd) + /* Generates a TX coalesced completion for up to 384 TX packets. */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_384 UINT32_C(0xe) + /* Generates a TX coalesced completion up to the last packet. (Maximum coalescing). */ + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_MAX UINT32_C(0xf) + #define HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_LAST \ + HWRM_RING_ALLOC_INPUT_CMPL_COAL_CNT_COAL_MAX /* Ring allocation flags. */ uint16_t flags; /* @@ -36754,6 +39273,14 @@ struct hwrm_cfa_ntuple_filter_alloc_input { */ #define HWRM_CFA_NTUPLE_FILTER_ALLOC_INPUT_FLAGS_DEST_RFS_RING_IDX \ UINT32_C(0x20) + /* + * Setting of this flag indicates that when the ntuple filter is + * created, the L2 context should not be used in the filter. This + * allows packet from different L2 contexts to match and be directed + * to the same destination. + */ + #define HWRM_CFA_NTUPLE_FILTER_ALLOC_INPUT_FLAGS_NO_L2_CONTEXT \ + UINT32_C(0x40) uint32_t enables; /* * This bit must be '1' for the l2_filter_id field to be @@ -37276,6 +39803,14 @@ struct hwrm_cfa_ntuple_filter_cfg_input { */ #define HWRM_CFA_NTUPLE_FILTER_CFG_INPUT_FLAGS_DEST_RFS_RING_IDX \ UINT32_C(0x2) + /* + * Setting of this flag indicates that when the ntuple filter is + * created, the L2 context should not be used in the filter. This + * allows packet from different L2 contexts to match and be directed + * to the same destination. + */ + #define HWRM_CFA_NTUPLE_FILTER_CFG_INPUT_FLAGS_NO_L2_CONTEXT \ + UINT32_C(0x4) /* This value is an opaque id into CFA data structures. */ uint64_t ntuple_filter_id; /* @@ -39611,7 +42146,7 @@ struct hwrm_cfa_flow_alloc_cmd_err { #define HWRM_CFA_FLOW_ALLOC_CMD_ERR_CODE_FLOW_COUNTER UINT32_C(0x3) /* No more wild-card TCAM */ #define HWRM_CFA_FLOW_ALLOC_CMD_ERR_CODE_WILD_CARD_TCAM UINT32_C(0x4) - /* Hash collsion in exact match tables */ + /* Hash collision in exact match tables */ #define HWRM_CFA_FLOW_ALLOC_CMD_ERR_CODE_HASH_COLLISION UINT32_C(0x5) /* Key is already installed */ #define HWRM_CFA_FLOW_ALLOC_CMD_ERR_CODE_KEY_EXISTS UINT32_C(0x6) @@ -42974,6 +45509,12 @@ struct hwrm_cfa_adv_flow_mgnt_qcaps_output { */ #define HWRM_CFA_ADV_FLOW_MGNT_QCAPS_OUTPUT_FLAGS_LAG_SUPPORTED \ UINT32_C(0x20000) + /* + * If set to 1, firmware is capable installing ntuple rules without + * additional classification on the L2 Context. + */ + #define HWRM_CFA_ADV_FLOW_MGNT_QCAPS_OUTPUT_FLAGS_NTUPLE_FLOW_NO_L2CTX_SUPPORTED \ + UINT32_C(0x40000) uint8_t unused_0[3]; /* * This field is used in Output records to indicate that the output @@ -43062,6 +45603,161 @@ struct hwrm_cfa_tflib_output { uint8_t valid; } __rte_packed; +/********************************** + * hwrm_cfa_lag_group_member_rgtr * + **********************************/ + + +/* hwrm_cfa_lag_group_member_rgtr_input (size:192b/24B) */ +struct hwrm_cfa_lag_group_member_rgtr_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + uint8_t mode; + /* + * Transmit only on the active port. Automatically failover + * to backup port. + */ + #define HWRM_CFA_LAG_GROUP_MEMBER_RGTR_INPUT_MODE_ACTIVE_BACKUP \ + UINT32_C(0x1) + /* + * Transmit based on packet header ntuple hash. Packet with only + * layer 2 headers will hash using the destination MAC, source MAC + * and Ethertype fields. Packets with layer 3 (IP) headers will + * hash using the destination MAC, source MAC, IP protocol/next + * header, source IP address and destination IP address. Packets + * with layer 4 (TCP/UDP) headers will hash using the destination + * MAC, source MAC, IP protocol/next header, source IP address, + * destination IP address, source port and destination port fields. + */ + #define HWRM_CFA_LAG_GROUP_MEMBER_RGTR_INPUT_MODE_BALANCE_XOR \ + UINT32_C(0x2) + /* Transmit packets on all specified ports. */ + #define HWRM_CFA_LAG_GROUP_MEMBER_RGTR_INPUT_MODE_BROADCAST \ + UINT32_C(0x3) + #define HWRM_CFA_LAG_GROUP_MEMBER_RGTR_INPUT_MODE_LAST \ + HWRM_CFA_LAG_GROUP_MEMBER_RGTR_INPUT_MODE_BROADCAST + /* + * Supports up to 5 ports. bit0 = port 0, bit1 = port 1, + * bit2 = port 2, bit3 = port 4, bit4 = loopback port + */ + uint8_t port_bitmap; + /* Specify the active port when active-backup mode is specified */ + uint8_t active_port; + uint8_t unused_0[5]; +} __rte_packed; + +/* hwrm_cfa_lag_group_member_rgtr_output (size:128b/16B) */ +struct hwrm_cfa_lag_group_member_rgtr_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + /* lag group ID configured for the function */ + uint16_t lag_id; + uint8_t unused_0[5]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal + * processor, the order of writes has to be such that this field is + * written last. + */ + uint8_t valid; +} __rte_packed; + +/************************************ + * hwrm_cfa_lag_group_member_unrgtr * + ************************************/ + + +/* hwrm_cfa_lag_group_member_unrgtr_input (size:192b/24B) */ +struct hwrm_cfa_lag_group_member_unrgtr_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + /* lag group ID configured for the function */ + uint16_t lag_id; + uint8_t unused_0[6]; +} __rte_packed; + +/* hwrm_cfa_lag_group_member_unrgtr_output (size:128b/16B) */ +struct hwrm_cfa_lag_group_member_unrgtr_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + uint8_t unused_0[7]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal + * processor, the order of writes has to be such that this field is + * written last. + */ + uint8_t valid; +} __rte_packed; + /*********** * hwrm_tf * ***********/ @@ -43175,7 +45871,7 @@ struct hwrm_tf_version_get_input { uint64_t resp_addr; } __rte_packed; -/* hwrm_tf_version_get_output (size:128b/16B) */ +/* hwrm_tf_version_get_output (size:256b/32B) */ struct hwrm_tf_version_get_output { /* The specific error status for the command. */ uint16_t error_code; @@ -43192,7 +45888,14 @@ struct hwrm_tf_version_get_output { /* Version Update number. */ uint8_t update; /* unused. */ - uint8_t unused0[4]; + uint8_t unused0[5]; + /* + * This field is used to indicate device's capabilities and + * configurations. + */ + uint64_t dev_caps_cfg; + /* unused. */ + uint8_t unused1[7]; /* * This field is used in Output records to indicate that the output * is completely written to RAM. This field should be read as '1' @@ -43263,8 +45966,13 @@ struct hwrm_tf_session_open_output { * the newly created session. */ uint32_t fw_session_client_id; + /* This field is used to return the status of fw session to host. */ uint32_t flags; - /* Indicates if the shared session has been created. */ + /* + * Indicates if the shared session has been created. Shared session + * should be the first session created ever. Its fw_rm_client_id + * should be 1. The AFM session's fw_rm_client_id is 0. + */ #define HWRM_TF_SESSION_OPEN_OUTPUT_FLAGS_SHARED_SESSION \ UINT32_C(0x1) /* @@ -43745,7 +46453,7 @@ struct hwrm_tf_session_resc_qcaps_input { #define HWRM_TF_SESSION_RESC_QCAPS_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_SESSION_RESC_QCAPS_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_SESSION_RESC_QCAPS_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_SESSION_RESC_QCAPS_INPUT_FLAGS_DIR_LAST \ HWRM_TF_SESSION_RESC_QCAPS_INPUT_FLAGS_DIR_TX @@ -43802,8 +46510,13 @@ struct hwrm_tf_session_resc_qcaps_output { * qcaps_size. */ uint16_t size; + /* + * SRAM profile number that sets the partition of SRAM memory + * between TF and AFM within the 4 internal memory banks (Thor). + */ + uint8_t sram_profile; /* unused. */ - uint16_t unused0; + uint8_t unused0; /* unused. */ uint8_t unused1[7]; /* @@ -43860,7 +46573,7 @@ struct hwrm_tf_session_resc_alloc_input { #define HWRM_TF_SESSION_RESC_ALLOC_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_SESSION_RESC_ALLOC_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_SESSION_RESC_ALLOC_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_SESSION_RESC_ALLOC_INPUT_FLAGS_DIR_LAST \ HWRM_TF_SESSION_RESC_ALLOC_INPUT_FLAGS_DIR_TX @@ -43959,7 +46672,7 @@ struct hwrm_tf_session_resc_free_input { #define HWRM_TF_SESSION_RESC_FREE_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_SESSION_RESC_FREE_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_SESSION_RESC_FREE_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_SESSION_RESC_FREE_INPUT_FLAGS_DIR_LAST \ HWRM_TF_SESSION_RESC_FREE_INPUT_FLAGS_DIR_TX @@ -44043,7 +46756,7 @@ struct hwrm_tf_session_resc_flush_input { #define HWRM_TF_SESSION_RESC_FLUSH_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_SESSION_RESC_FLUSH_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_SESSION_RESC_FLUSH_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_SESSION_RESC_FLUSH_INPUT_FLAGS_DIR_LAST \ HWRM_TF_SESSION_RESC_FLUSH_INPUT_FLAGS_DIR_TX @@ -44124,134 +46837,143 @@ struct hwrm_tf_session_resc_info_input { /* Control flags. */ uint16_t flags; /* Indicates the flow direction. */ - #define HWRM_TF_SESSION_RESC_INFO_INPUT_FLAGS_DIR UINT32_C(0x1) + #define HWRM_TF_SESSION_RESC_INFO_INPUT_FLAGS_DIR UINT32_C(0x1) + /* If this bit set to 0, then it indicates rx flow. */ + #define HWRM_TF_SESSION_RESC_INFO_INPUT_FLAGS_DIR_RX UINT32_C(0x0) + /* If this bit is set to 1, then it indicates tx flow. */ + #define HWRM_TF_SESSION_RESC_INFO_INPUT_FLAGS_DIR_TX UINT32_C(0x1) + #define HWRM_TF_SESSION_RESC_INFO_INPUT_FLAGS_DIR_LAST \ + HWRM_TF_SESSION_RESC_INFO_INPUT_FLAGS_DIR_TX + /* + * Defines the array size of the provided req_addr and + * resv_addr array buffers. Should be set to the number of + * request entries. + */ + uint16_t req_size; + /* + * This is the DMA address for the request input data array + * buffer. Array is of tf_rm_resc_req_entry type. Size of the + * array buffer is provided by the 'req_size' field in this + * message. + */ + uint64_t req_addr; + /* + * This is the DMA address for the resc output data array + * buffer. Array is of tf_rm_resc_entry type. Size of the array + * buffer is provided by the 'req_size' field in this + * message. + */ + uint64_t resc_addr; +} __rte_packed; + +/* hwrm_tf_session_resc_info_output (size:128b/16B) */ +struct hwrm_tf_session_resc_info_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + /* + * Size of the returned tf_rm_resc_entry data array. The value + * cannot exceed the req_size defined by the input msg. The data + * array is returned using the resv_addr specified DMA + * address also provided by the input msg. + */ + uint16_t size; + /* unused. */ + uint8_t unused0[5]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal + * processor, the order of writes has to be such that this field is + * written last. + */ + uint8_t valid; +} __rte_packed; + +/* TruFlow RM capability of a resource. */ +/* tf_rm_resc_req_entry (size:64b/8B) */ +struct tf_rm_resc_req_entry { + /* Type of the resource, defined globally in HCAPI RM. */ + uint32_t type; + /* Minimum value. */ + uint16_t min; + /* Maximum value. */ + uint16_t max; +} __rte_packed; + +/* TruFlow RM reservation information. */ +/* tf_rm_resc_entry (size:64b/8B) */ +struct tf_rm_resc_entry { + /* Type of the resource, defined globally in HCAPI RM. */ + uint32_t type; + /* Start offset. */ + uint16_t start; + /* Number of resources. */ + uint16_t stride; +} __rte_packed; + +/************************ + * hwrm_tf_tbl_type_get * + ************************/ + + +/* hwrm_tf_tbl_type_get_input (size:256b/32B) */ +struct hwrm_tf_tbl_type_get_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + /* Firmware session id returned when HWRM_TF_SESSION_OPEN is sent. */ + uint32_t fw_session_id; + /* Control flags. */ + uint16_t flags; + /* Indicates the flow direction. */ + #define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR \ + UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ - #define HWRM_TF_SESSION_RESC_INFO_INPUT_FLAGS_DIR_RX UINT32_C(0x0) + #define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX \ + UINT32_C(0x0) /* If this bit is set to 1, then it indicates tx flow. */ - #define HWRM_TF_SESSION_RESC_INFO_INPUT_FLAGS_DIR_TX UINT32_C(0x1) - #define HWRM_TF_SESSION_RESC_INFO_INPUT_FLAGS_DIR_LAST \ - HWRM_TF_SESSION_RESC_INFO_INPUT_FLAGS_DIR_TX - /* - * Defines the array size of the provided req_addr and - * resv_addr array buffers. Should be set to the number of - * request entries. - */ - uint16_t req_size; - /* - * This is the DMA address for the request input data array - * buffer. Array is of tf_rm_resc_req_entry type. Size of the - * array buffer is provided by the 'req_size' field in this - * message. - */ - uint64_t req_addr; - /* - * This is the DMA address for the resc output data array - * buffer. Array is of tf_rm_resc_entry type. Size of the array - * buffer is provided by the 'req_size' field in this - * message. - */ - uint64_t resc_addr; -} __rte_packed; - -/* hwrm_tf_session_resc_info_output (size:128b/16B) */ -struct hwrm_tf_session_resc_info_output { - /* The specific error status for the command. */ - uint16_t error_code; - /* The HWRM command request type. */ - uint16_t req_type; - /* The sequence ID from the original command. */ - uint16_t seq_id; - /* The length of the response data in number of bytes. */ - uint16_t resp_len; - /* - * Size of the returned tf_rm_resc_entry data array. The value - * cannot exceed the req_size defined by the input msg. The data - * array is returned using the resv_addr specified DMA - * address also provided by the input msg. - */ - uint16_t size; - /* unused. */ - uint8_t unused0[5]; - /* - * This field is used in Output records to indicate that the output - * is completely written to RAM. This field should be read as '1' - * to indicate that the output has been completely written. - * When writing a command completion or response to an internal - * processor, the order of writes has to be such that this field is - * written last. - */ - uint8_t valid; -} __rte_packed; - -/* TruFlow RM capability of a resource. */ -/* tf_rm_resc_req_entry (size:64b/8B) */ -struct tf_rm_resc_req_entry { - /* Type of the resource, defined globally in HCAPI RM. */ - uint32_t type; - /* Minimum value. */ - uint16_t min; - /* Maximum value. */ - uint16_t max; -} __rte_packed; - -/* TruFlow RM reservation information. */ -/* tf_rm_resc_entry (size:64b/8B) */ -struct tf_rm_resc_entry { - /* Type of the resource, defined globally in HCAPI RM. */ - uint32_t type; - /* Start offset. */ - uint16_t start; - /* Number of resources. */ - uint16_t stride; -} __rte_packed; - -/************************ - * hwrm_tf_tbl_type_get * - ************************/ - - -/* hwrm_tf_tbl_type_get_input (size:256b/32B) */ -struct hwrm_tf_tbl_type_get_input { - /* The HWRM command request type. */ - uint16_t req_type; - /* - * The completion ring to send the completion event on. This should - * be the NQ ID returned from the `nq_alloc` HWRM command. - */ - uint16_t cmpl_ring; - /* - * The sequence ID is used by the driver for tracking multiple - * commands. This ID is treated as opaque data by the firmware and - * the value is returned in the `hwrm_resp_hdr` upon completion. - */ - uint16_t seq_id; - /* - * The target ID of the command: - * * 0x0-0xFFF8 - The function ID - * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors - * * 0xFFFD - Reserved for user-space HWRM interface - * * 0xFFFF - HWRM - */ - uint16_t target_id; - /* - * A physical address pointer pointing to a host buffer that the - * command's response data will be written. This can be either a host - * physical address (HPA) or a guest physical address (GPA) and must - * point to a physically contiguous block of memory. - */ - uint64_t resp_addr; - /* Firmware session id returned when HWRM_TF_SESSION_OPEN is sent. */ - uint32_t fw_session_id; - /* Control flags. */ - uint16_t flags; - /* Indicates the flow direction. */ - #define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR UINT32_C(0x1) - /* If this bit set to 0, then it indicates rx flow. */ - #define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ - #define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) + #define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX \ + UINT32_C(0x1) #define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX + /* + * When set use the special access register access to clear + * the table entry on read. + */ + #define HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_CLEAR_ON_READ \ + UINT32_C(0x2) /* unused. */ uint8_t unused0[2]; /* @@ -44337,7 +47059,7 @@ struct hwrm_tf_tbl_type_set_input { #define HWRM_TF_TBL_TYPE_SET_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_TBL_TYPE_SET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_TBL_TYPE_SET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_TBL_TYPE_SET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TBL_TYPE_SET_INPUT_FLAGS_DIR_TX @@ -44819,7 +47541,7 @@ struct hwrm_tf_ext_em_qcaps_input { /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_EXT_EM_QCAPS_INPUT_FLAGS_DIR_RX \ UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_EXT_EM_QCAPS_INPUT_FLAGS_DIR_TX \ UINT32_C(0x1) #define HWRM_TF_EXT_EM_QCAPS_INPUT_FLAGS_DIR_LAST \ @@ -44997,7 +47719,7 @@ struct hwrm_tf_ext_em_op_input { #define HWRM_TF_EXT_EM_OP_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_EXT_EM_OP_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_EXT_EM_OP_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_EXT_EM_OP_INPUT_FLAGS_DIR_LAST \ HWRM_TF_EXT_EM_OP_INPUT_FLAGS_DIR_TX @@ -45104,7 +47826,7 @@ struct hwrm_tf_ext_em_cfg_input { /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_EXT_EM_CFG_INPUT_FLAGS_DIR_RX \ UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_EXT_EM_CFG_INPUT_FLAGS_DIR_TX \ UINT32_C(0x1) #define HWRM_TF_EXT_EM_CFG_INPUT_FLAGS_DIR_LAST \ @@ -45309,7 +48031,7 @@ struct hwrm_tf_ext_em_qcfg_input { #define HWRM_TF_EXT_EM_QCFG_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_EXT_EM_QCFG_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_EXT_EM_QCFG_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_EXT_EM_QCFG_INPUT_FLAGS_DIR_LAST \ HWRM_TF_EXT_EM_QCFG_INPUT_FLAGS_DIR_TX @@ -45335,7 +48057,7 @@ struct hwrm_tf_ext_em_qcfg_output { /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_EXT_EM_QCFG_OUTPUT_FLAGS_DIR_RX \ UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_EXT_EM_QCFG_OUTPUT_FLAGS_DIR_TX \ UINT32_C(0x1) #define HWRM_TF_EXT_EM_QCFG_OUTPUT_FLAGS_DIR_LAST \ @@ -45475,7 +48197,7 @@ struct hwrm_tf_em_insert_input { #define HWRM_TF_EM_INSERT_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_EM_INSERT_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_EM_INSERT_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_EM_INSERT_INPUT_FLAGS_DIR_LAST \ HWRM_TF_EM_INSERT_INPUT_FLAGS_DIR_TX @@ -45556,7 +48278,7 @@ struct hwrm_tf_em_hash_insert_input { #define HWRM_TF_EM_HASH_INSERT_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_EM_HASH_INSERT_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_EM_HASH_INSERT_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_EM_HASH_INSERT_INPUT_FLAGS_DIR_LAST \ HWRM_TF_EM_HASH_INSERT_INPUT_FLAGS_DIR_TX @@ -45637,13 +48359,13 @@ struct hwrm_tf_em_delete_input { #define HWRM_TF_EM_DELETE_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_EM_DELETE_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_EM_DELETE_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_EM_DELETE_INPUT_FLAGS_DIR_LAST \ HWRM_TF_EM_DELETE_INPUT_FLAGS_DIR_TX /* Unused0 */ uint16_t unused0; - /* EM internal flow hanndle. */ + /* EM internal flow handle. */ uint64_t flow_handle; /* EM Key value */ uint64_t em_key[8]; @@ -45785,7 +48507,7 @@ struct hwrm_tf_tcam_set_input { #define HWRM_TF_TCAM_SET_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_TCAM_SET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_TCAM_SET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_TCAM_SET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TCAM_SET_INPUT_FLAGS_DIR_TX @@ -45815,8 +48537,8 @@ struct hwrm_tf_tcam_set_input { /* unused. */ uint8_t unused0[6]; /* - * TCAM key located at offset 0, mask located at mask_offsec - * and result at result_offsec for the device. + * TCAM key located at offset 0, mask located at mask_offset + * and result at result_offset for the device. */ uint8_t dev_data[88]; } __rte_packed; @@ -45887,7 +48609,7 @@ struct hwrm_tf_tcam_get_input { #define HWRM_TF_TCAM_GET_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_TCAM_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_TCAM_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_TCAM_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TCAM_GET_INPUT_FLAGS_DIR_TX @@ -45923,8 +48645,8 @@ struct hwrm_tf_tcam_get_output { /* unused. */ uint8_t unused0[4]; /* - * TCAM key located at offset 0, mask located at mask_offsec - * and result at result_offsec for the device. + * TCAM key located at offset 0, mask located at mask_offset + * and result at result_offset for the device. */ uint8_t dev_data[272]; /* unused. */ @@ -45983,7 +48705,7 @@ struct hwrm_tf_tcam_move_input { #define HWRM_TF_TCAM_MOVE_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_TCAM_MOVE_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_TCAM_MOVE_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_TCAM_MOVE_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TCAM_MOVE_INPUT_FLAGS_DIR_TX @@ -46066,7 +48788,7 @@ struct hwrm_tf_tcam_free_input { #define HWRM_TF_TCAM_FREE_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_TCAM_FREE_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_TCAM_FREE_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_TCAM_FREE_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TCAM_FREE_INPUT_FLAGS_DIR_TX @@ -46149,7 +48871,7 @@ struct hwrm_tf_global_cfg_set_input { #define HWRM_TF_GLOBAL_CFG_SET_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_GLOBAL_CFG_SET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_GLOBAL_CFG_SET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_GLOBAL_CFG_SET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_GLOBAL_CFG_SET_INPUT_FLAGS_DIR_TX @@ -46233,7 +48955,7 @@ struct hwrm_tf_global_cfg_get_input { #define HWRM_TF_GLOBAL_CFG_GET_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_GLOBAL_CFG_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_GLOBAL_CFG_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_GLOBAL_CFG_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_GLOBAL_CFG_GET_INPUT_FLAGS_DIR_TX @@ -46308,7 +49030,7 @@ struct hwrm_tf_if_tbl_get_input { #define HWRM_TF_IF_TBL_GET_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_IF_TBL_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_IF_TBL_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_IF_TBL_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_IF_TBL_GET_INPUT_FLAGS_DIR_TX @@ -46397,7 +49119,7 @@ struct hwrm_tf_if_tbl_set_input { #define HWRM_TF_IF_TBL_SET_INPUT_FLAGS_DIR UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ #define HWRM_TF_IF_TBL_SET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ + /* If this bit is set to 1, then it indicates tx flow. */ #define HWRM_TF_IF_TBL_SET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) #define HWRM_TF_IF_TBL_SET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_IF_TBL_SET_INPUT_FLAGS_DIR_TX @@ -46481,13 +49203,22 @@ struct hwrm_tf_tbl_type_bulk_get_input { /* Control flags. */ uint16_t flags; /* Indicates the flow direction. */ - #define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR UINT32_C(0x1) + #define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR \ + UINT32_C(0x1) /* If this bit set to 0, then it indicates rx flow. */ - #define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX UINT32_C(0x0) - /* If this bit is set to 1, then it indicates that tx flow. */ - #define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX UINT32_C(0x1) + #define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX \ + UINT32_C(0x0) + /* If this bit is set to 1, then it indicates tx flow. */ + #define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX \ + UINT32_C(0x1) #define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_LAST \ HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX + /* + * When set use the special access register access to clear + * the table entries on read. + */ + #define HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_CLEAR_ON_READ \ + UINT32_C(0x2) /* unused. */ uint8_t unused0[2]; /* @@ -48261,7 +50992,7 @@ struct hwrm_nvm_get_dir_info_output { ******************/ -/* hwrm_nvm_write_input (size:384b/48B) */ +/* hwrm_nvm_write_input (size:448b/56B) */ struct hwrm_nvm_write_input { /* The HWRM command request type. */ uint16_t req_type; @@ -48306,13 +51037,19 @@ struct hwrm_nvm_write_input { * The 0-based instance of the combined Directory Entry Type and Extension. */ uint16_t dir_ordinal; - /* The Directory Entry Extension flags (see BNX_DIR_EXT_* in the file bnxnvm_defs.h). */ + /* + * The Directory Entry Extension flags (see BNX_DIR_EXT_* in the file + * bnxnvm_defs.h). + */ uint16_t dir_ext; - /* Directory Entry Attribute flags (see BNX_DIR_ATTR_* in the file bnxnvm_defs.h). */ + /* + * Directory Entry Attribute flags (see BNX_DIR_ATTR_* in the file + * bnxnvm_defs.h). + */ uint16_t dir_attr; /* - * Length of data to write, in bytes.May be - * less than or equal to the allocated size for the directory entry. + * Length of data to write, in bytes. May be less than or equal to the + * allocated size for the directory entry. * The data length stored in the directory entry will be updated to * reflect this value once the write is complete. */ @@ -48326,18 +51063,47 @@ struct hwrm_nvm_write_input { */ #define HWRM_NVM_WRITE_INPUT_FLAGS_KEEP_ORIG_ACTIVE_IMG \ UINT32_C(0x1) + /* + * This flag indicates the sender wants to modify a continuous + * NVRAM area using a batch of this HWRM requests. The + * offset of a request must be continuous to the end of previous + * request's. Firmware does not update the directory entry until + * receiving the last request, which is indicated by the batch_last + * flag. This flag is set usually when a sender does not have a + * block of memory that is big enough to hold the entire NVRAM + * data for send at one time. + */ + #define HWRM_NVM_WRITE_INPUT_FLAGS_BATCH_MODE \ + UINT32_C(0x2) + /* + * This flag can be used only when the batch_mode flag is set. It + * indicates this request is the last of batch requests. + */ + #define HWRM_NVM_WRITE_INPUT_FLAGS_BATCH_LAST \ + UINT32_C(0x4) /* * The requested length of the allocated NVM for the item, in bytes. - * This value may be greater than or equal to the specified data length (dir_data_length). + * This value may be greater than or equal to the specified data + * length (dir_data_length). * If this value is less than the specified data length, it will be ignored. - * The response will contain the actual allocated item length, which may - * be greater than the requested item length. - * The purpose for allocating more than the required number of bytes for - * an item's data is to pre-allocate extra storage (padding) to accommodate - * the potential future growth of an item (e.g. upgraded firmware with - * a size increase, log growth, expanded configuration data). + * The response will contain the actual allocated item length, + * which may be greater than the requested item length. + * The purpose for allocating more than the required number of bytes + * for an item's data is to pre-allocate extra storage (padding) to + * accommodate the potential future growth of an item (e.g. upgraded + * firmware with a size increase, log growth, expanded configuration data). */ uint32_t dir_item_length; + /* + * 32-bit offset of data blob from where data is being written. + * Only valid for batch mode. For non-batch writes 'dont care'. + */ + uint32_t offset; + /* + * Length of data to be written.Should be non-zero. + * Only valid for batch mode. For non-batch writes 'dont care'. + */ + uint32_t len; uint32_t unused_0; } __rte_packed; @@ -48353,7 +51119,8 @@ struct hwrm_nvm_write_output { uint16_t resp_len; /* * Length of the allocated NVM for the item, in bytes. The value may be - * greater than or equal to the specified data length or the requested item length. + * greater than or equal to the specified data length or the requested + * item length. * The actual item length used when creating a new directory entry will * be a multiple of an NVM block size. */ @@ -48564,7 +51331,8 @@ struct hwrm_nvm_find_dir_entry_output { uint32_t dir_data_length; /* * Firmware version. - * Only valid if the directory entry is for embedded firmware stored in APE_BIN Format. + * Only valid if the directory entry is for embedded firmware stored + * in APE_BIN Format. */ uint32_t fw_ver; /* Directory ordinal. */ @@ -48849,7 +51617,10 @@ struct hwrm_nvm_mod_dir_entry_input { * extension flag definitions). */ uint16_t dir_ext; - /* Directory Entry Attribute flags (see BNX_DIR_ATTR_* for attribute flag definitions). */ + /* + * Directory Entry Attribute flags (see BNX_DIR_ATTR_* for attribute + * flag definitions). + */ uint16_t dir_attr; /* * If valid, then this field updates the checksum @@ -48924,8 +51695,10 @@ struct hwrm_nvm_verify_update_input { /* * The Directory Entry Extension flags. * The "UPDATE" extension flag must be set in this value. - * A corresponding directory entry with the same type and ordinal values but *without* - * the "UPDATE" extension flag must also exist. The other flags of the extension must + * A corresponding directory entry with the same type and ordinal + * values but *without* + * the "UPDATE" extension flag must also exist. The other flags of + * the extension must * be identical between the active and update entries. */ uint16_t dir_ext; @@ -49012,20 +51785,25 @@ struct hwrm_nvm_install_update_input { #define HWRM_NVM_INSTALL_UPDATE_INPUT_INSTALL_TYPE_LAST \ HWRM_NVM_INSTALL_UPDATE_INPUT_INSTALL_TYPE_ALL uint16_t flags; - /* If set to 1, then securely erase all unused locations in persistent storage. */ + /* + * If set to 1, then securely erase all unused locations in + * persistent storage. + */ #define HWRM_NVM_INSTALL_UPDATE_INPUT_FLAGS_ERASE_UNUSED_SPACE \ UINT32_C(0x1) /* - * If set to 1, then unspecified images, images not in the package file, - * will be safely deleted. - * When combined with erase_unused_space then unspecified images will be - * securely erased. + * If set to 1, then unspecified images, images not in the package + * file, will be safely deleted. + * When combined with erase_unused_space then unspecified images will + * be securely erased. */ #define HWRM_NVM_INSTALL_UPDATE_INPUT_FLAGS_REMOVE_UNUSED_PKG \ UINT32_C(0x2) /* - * If set to 1, FW will defragment the NVM if defragmentation is required for the update. - * Allow additional time for this command to complete if this bit is set to 1. + * If set to 1, FW will defragment the NVM if defragmentation is + * required for the update. + * Allow additional time for this command to complete if this bit is + * set to 1. */ #define HWRM_NVM_INSTALL_UPDATE_INPUT_FLAGS_ALLOWED_TO_DEFRAG \ UINT32_C(0x4) @@ -49055,12 +51833,94 @@ struct hwrm_nvm_install_update_output { * A value of 0 indicates that no items were successfully installed. */ uint64_t installed_items; - /* result is 8 b */ + /* result is 8 b corresponding to BCMRETVAL error codes */ uint8_t result; /* There was no problem with the package installation. */ - #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_SUCCESS UINT32_C(0x0) + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_SUCCESS \ + UINT32_C(0x0) + /* Generic failure */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_FAILURE \ + UINT32_C(0xff) + /* Allocation error malloc failure */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_MALLOC_FAILURE \ + UINT32_C(0xfd) + /* NVM install error due to invalid index */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_INDEX_PARAMETER \ + UINT32_C(0xfb) + /* NVM install error due to invalid type */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_TYPE_PARAMETER \ + UINT32_C(0xf3) + /* Invalid package due to invalid prerequisite */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_PREREQUISITE \ + UINT32_C(0xf2) + /* Invalid package due to invalid file header */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_FILE_HEADER \ + UINT32_C(0xec) + /* Invalid package due to invalid format */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_SIGNATURE \ + UINT32_C(0xeb) + /* Invalid package due to invalid property stream */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_PROP_STREAM \ + UINT32_C(0xea) + /* Invalid package due to invalid property length */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_PROP_LENGTH \ + UINT32_C(0xe9) + /* Invalid package due to invalid manifest */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_MANIFEST \ + UINT32_C(0xe8) + /* Invalid package due to invalid trailer */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_TRAILER \ + UINT32_C(0xe7) + /* Invalid package due to invalid checksum */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_CHECKSUM \ + UINT32_C(0xe6) + /* Invalid package due to invalid item checksum */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_ITEM_CHECKSUM \ + UINT32_C(0xe5) + /* Invalid package due to invalid length */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_DATA_LENGTH \ + UINT32_C(0xe4) + /* Invalid package due to invalid directive */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INVALID_DIRECTIVE \ + UINT32_C(0xe1) + /* Invalid device due to unsupported chip revision */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_UNSUPPORTED_CHIP_REV \ + UINT32_C(0xce) + /* Invalid device due to unsupported device ID */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_UNSUPPORTED_DEVICE_ID \ + UINT32_C(0xcd) + /* Invalid device due to unsupported subsystem vendor */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_UNSUPPORTED_SUBSYS_VENDOR \ + UINT32_C(0xcc) + /* Invalid device due to unsupported subsystem ID */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_UNSUPPORTED_SUBSYS_ID \ + UINT32_C(0xcb) + /* Invalid device due to unsupported product ID or customer ID */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_UNSUPPORTED_PLATFORM \ + UINT32_C(0xc5) + /* Invalid package due to duplicate item */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_DUPLICATE_ITEM \ + UINT32_C(0xc4) + /* Invalid package due to zero length item */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_ZERO_LENGTH_ITEM \ + UINT32_C(0xc3) + /* NVM integrity error checksum */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INSTALL_CHECKSUM_ERROR \ + UINT32_C(0xb9) + /* NVM integrity error */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INSTALL_DATA_ERROR \ + UINT32_C(0xb8) + /* Authentication error */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_INSTALL_AUTHENTICATION_ERROR \ + UINT32_C(0xb7) + /* NVM install error item not found */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_ITEM_NOT_FOUND \ + UINT32_C(0xb0) + /* NVM install error item locked */ + #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_ITEM_LOCKED \ + UINT32_C(0xa7) #define HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_LAST \ - HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_SUCCESS + HWRM_NVM_INSTALL_UPDATE_OUTPUT_RESULT_ITEM_LOCKED /* problem_item is 8 b */ uint8_t problem_item; /* There was no problem with any packaged items. */ @@ -49116,13 +51976,19 @@ struct hwrm_nvm_install_update_cmd_err { */ uint8_t code; /* Unknown error */ - #define HWRM_NVM_INSTALL_UPDATE_CMD_ERR_CODE_UNKNOWN UINT32_C(0x0) + #define HWRM_NVM_INSTALL_UPDATE_CMD_ERR_CODE_UNKNOWN \ + UINT32_C(0x0) /* Unable to complete operation due to fragmentation */ - #define HWRM_NVM_INSTALL_UPDATE_CMD_ERR_CODE_FRAG_ERR UINT32_C(0x1) + #define HWRM_NVM_INSTALL_UPDATE_CMD_ERR_CODE_FRAG_ERR \ + UINT32_C(0x1) /* nvm is completely full. */ - #define HWRM_NVM_INSTALL_UPDATE_CMD_ERR_CODE_NO_SPACE UINT32_C(0x2) + #define HWRM_NVM_INSTALL_UPDATE_CMD_ERR_CODE_NO_SPACE \ + UINT32_C(0x2) + /* Firmware update failed due to Anti-rollback. */ + #define HWRM_NVM_INSTALL_UPDATE_CMD_ERR_CODE_ANTI_ROLLBACK \ + UINT32_C(0x3) #define HWRM_NVM_INSTALL_UPDATE_CMD_ERR_CODE_LAST \ - HWRM_NVM_INSTALL_UPDATE_CMD_ERR_CODE_NO_SPACE + HWRM_NVM_INSTALL_UPDATE_CMD_ERR_CODE_ANTI_ROLLBACK uint8_t unused_0[7]; } __rte_packed; @@ -49290,12 +52156,13 @@ struct hwrm_nvm_get_variable_output { /* size of data of the actual variable retrieved in bits */ uint16_t data_len; /* - * option_num is the option number for the data retrieved. It is possible in the - * future that the option number returned would be different than requested. This - * condition could occur if an option is deprecated and a new option id is defined - * with similar characteristics, but has a slightly different definition. This - * also makes it convenient for the caller to identify the variable result with - * the option id from the response. + * option_num is the option number for the data retrieved. It is + * possible in the future that the option number returned would be + * different than requested. This condition could occur if an option is + * deprecated and a new option id is defined with similar + * characteristics, but has a slightly different definition. This + * also makes it convenient for the caller to identify the variable + * result with the option id from the response. */ uint16_t option_num; /* reserved. */ @@ -49405,8 +52272,8 @@ struct hwrm_nvm_set_variable_input { uint16_t index_3; uint8_t flags; /* - * When this bit is 1, flush internal cache after this write operation - * (see hwrm_nvm_flush command.) + * When this bit is 1, flush internal cache after this write + * operation (see hwrm_nvm_flush command.) */ #define HWRM_NVM_SET_VARIABLE_INPUT_FLAGS_FORCE_FLUSH \ UINT32_C(0x1) @@ -49558,9 +52425,15 @@ struct hwrm_nvm_validate_option_output { /* The length of the response data in number of bytes. */ uint16_t resp_len; uint8_t result; - /* indicates that the value provided for the option is not matching with the saved data. */ + /* + * indicates that the value provided for the option is not matching + * with the saved data. + */ #define HWRM_NVM_VALIDATE_OPTION_OUTPUT_RESULT_NOT_MATCH UINT32_C(0x0) - /* indicates that the value provided for the option is matching the saved data. */ + /* + * indicates that the value provided for the option is matching the + * saved data. + */ #define HWRM_NVM_VALIDATE_OPTION_OUTPUT_RESULT_MATCH UINT32_C(0x1) #define HWRM_NVM_VALIDATE_OPTION_OUTPUT_RESULT_LAST \ HWRM_NVM_VALIDATE_OPTION_OUTPUT_RESULT_MATCH @@ -49589,6 +52462,84 @@ struct hwrm_nvm_validate_option_cmd_err { uint8_t unused_0[7]; } __rte_packed; +/******************* + * hwrm_nvm_defrag * + *******************/ + + +/* hwrm_nvm_defrag_input (size:192b/24B) */ +struct hwrm_nvm_defrag_input { + /* The HWRM command request type. */ + uint16_t req_type; + /* + * The completion ring to send the completion event on. This should + * be the NQ ID returned from the `nq_alloc` HWRM command. + */ + uint16_t cmpl_ring; + /* + * The sequence ID is used by the driver for tracking multiple + * commands. This ID is treated as opaque data by the firmware and + * the value is returned in the `hwrm_resp_hdr` upon completion. + */ + uint16_t seq_id; + /* + * The target ID of the command: + * * 0x0-0xFFF8 - The function ID + * * 0xFFF8-0xFFFC, 0xFFFE - Reserved for internal processors + * * 0xFFFD - Reserved for user-space HWRM interface + * * 0xFFFF - HWRM + */ + uint16_t target_id; + /* + * A physical address pointer pointing to a host buffer that the + * command's response data will be written. This can be either a host + * physical address (HPA) or a guest physical address (GPA) and must + * point to a physically contiguous block of memory. + */ + uint64_t resp_addr; + uint32_t flags; + /* This bit must be '1' to perform NVM defragmentation. */ + #define HWRM_NVM_DEFRAG_INPUT_FLAGS_DEFRAG UINT32_C(0x1) + uint8_t unused_0[4]; +} __rte_packed; + +/* hwrm_nvm_defrag_output (size:128b/16B) */ +struct hwrm_nvm_defrag_output { + /* The specific error status for the command. */ + uint16_t error_code; + /* The HWRM command request type. */ + uint16_t req_type; + /* The sequence ID from the original command. */ + uint16_t seq_id; + /* The length of the response data in number of bytes. */ + uint16_t resp_len; + uint8_t unused_0[7]; + /* + * This field is used in Output records to indicate that the output + * is completely written to RAM. This field should be read as '1' + * to indicate that the output has been completely written. + * When writing a command completion or response to an internal processor, + * the order of writes has to be such that this field is written last. + */ + uint8_t valid; +} __rte_packed; + +/* hwrm_nvm_defrag_cmd_err (size:64b/8B) */ +struct hwrm_nvm_defrag_cmd_err { + /* + * command specific error codes that goes to + * the cmd_err field in Common HWRM Error Response. + */ + uint8_t code; + /* Unknown error */ + #define HWRM_NVM_DEFRAG_CMD_ERR_CODE_UNKNOWN UINT32_C(0x0) + /* NVM defragmentation could not be performed */ + #define HWRM_NVM_DEFRAG_CMD_ERR_CODE_FAIL UINT32_C(0x1) + #define HWRM_NVM_DEFRAG_CMD_ERR_CODE_LAST \ + HWRM_NVM_DEFRAG_CMD_ERR_CODE_FAIL + uint8_t unused_0[7]; +} __rte_packed; + /**************** * hwrm_oem_cmd * ****************/ diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c index bd57229968..dbc8a3c5bb 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c @@ -1010,13 +1010,15 @@ ulp_context_initialized(struct bnxt_ulp_session_state *session, bool *init) * pointer, otherwise allocate a new session. */ static struct bnxt_ulp_session_state * -ulp_get_session(struct rte_pci_addr *pci_addr) +ulp_get_session(struct bnxt *bp, struct rte_pci_addr *pci_addr) { struct bnxt_ulp_session_state *session; + /* if multi root capability is enabled, then ignore the pci bus id */ STAILQ_FOREACH(session, &bnxt_ulp_session_list, next) { if (session->pci_info.domain == pci_addr->domain && - session->pci_info.bus == pci_addr->bus) { + (BNXT_MULTIROOT_EN(bp) || + session->pci_info.bus == pci_addr->bus)) { return session; } } @@ -1044,7 +1046,7 @@ ulp_session_init(struct bnxt *bp, pthread_mutex_lock(&bnxt_ulp_global_mutex); - session = ulp_get_session(pci_addr); + session = ulp_get_session(bp, pci_addr); if (!session) { /* Not Found the session Allocate a new one */ session = rte_zmalloc("bnxt_ulp_session", @@ -1547,7 +1549,7 @@ bnxt_ulp_port_deinit(struct bnxt *bp) pci_dev = RTE_DEV_TO_PCI(bp->eth_dev->device); pci_addr = &pci_dev->addr; pthread_mutex_lock(&bnxt_ulp_global_mutex); - session = ulp_get_session(pci_addr); + session = ulp_get_session(bp, pci_addr); pthread_mutex_unlock(&bnxt_ulp_global_mutex); /* session not found then just exit */ From patchwork Thu Nov 4 21:58:27 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103788 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 8891FA0C5E; Thu, 4 Nov 2021 22:59:10 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E3727427A5; Thu, 4 Nov 2021 22:58:58 +0100 (CET) Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) by mails.dpdk.org (Postfix) with ESMTP id 8F1AB42757 for ; Thu, 4 Nov 2021 22:58:57 +0100 (CET) Received: by mail-pl1-f179.google.com with SMTP id o14so9580556plg.5 for ; Thu, 04 Nov 2021 14:58:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=zLjN5KVJdMdJ6VsqkndcpgBQwVdOltvnaQP28lxt5Yw=; b=QSm6TopwI0PY1l2cZM0ljrBszieICwUoWLN1hql2IEnkveC+AIP7v/pWKW6go03Qmr VXa4b+WlxL6+WL0KvlUjDo8pdq0ohNxI3896dPvAY/3gMHvoTyPgXUoiSUSvJzftybro Ms4XswUDXwU2XP8IKSXY27gyoe/qh/yymFF6k= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=zLjN5KVJdMdJ6VsqkndcpgBQwVdOltvnaQP28lxt5Yw=; b=LBMANpADNWNMyhZdgPshNk5+Dex5+nRLHvtbyjecCU/BpNSBaOKalbFatM6GJoCaWz kPgsidfTSY5MwP9FA1ph3j/OBhZqvpq6mbrv7Ettq8zo+TOaJwXSiMVUavKOXgqeRo/w zdyJ83dq868O5+nWTXKRSX65jdm3zGLujDcLCR83TGqgDknp5oHWhwMqxFLisSbdFTTd SGUxmLEdRJkdMxl6cyd/h4+TrdcM0FTDX1UDdT5vdnKWJuI7NIoYF23mlJ4WabC5sa4M vJnAKtv2ektGpFgpN5IylwfPKVkN5ULVzECPRNz9n7v7D91YteiTOHTS4NitN9CVrR0L lB/g== X-Gm-Message-State: AOAM5315hOR0G+KYxdJZG8PQKlpyh/sncDA2fB8w4PZp/mcBLee2tEeR Fj4Kcq1t6mgJDLfvr4T5Ur7Ciw4dIn7W9X8AwApfHWKoeb+YckXf2jmtgG0U8Xald+2HT9AR2Qj dhbYReadJorYmRrQTWF8IbzpcGY07Qp2HtvMfA0IHEaD8hES64bjMRQV5duThnig= X-Google-Smtp-Source: ABdhPJzYeu38hVrWdHjKgG4rReAAzsCH2D4+6KilprVEpICLTLja+MRoat10cxSMCakygYk/lILZGA== X-Received: by 2002:a17:90a:1f8a:: with SMTP id x10mr25768531pja.215.1636063136478; Thu, 04 Nov 2021 14:58:56 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.58.55 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:58:56 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , stable@dpdk.org, Venkat Duvvuru , Mike Baucom , Randy Schacher Date: Thu, 4 Nov 2021 14:58:27 -0700 Message-Id: <20211104215846.58672-4-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 03/22] net/bnxt: fix out of bounds issue in hash list X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha The number of hash bucket list calculation is fixed. Added check to avoid the out of bounds condition. Fixes: 0001cc58d362 ("net/bnxt: support generic hash table") Cc: stable@dpdk.org Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Mike Baucom Reviewed-by: Randy Schacher Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/tf_ulp/ulp_gen_hash.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/ulp_gen_hash.c b/drivers/net/bnxt/tf_ulp/ulp_gen_hash.c index 3c6e7fe924..84c83de35c 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_gen_hash.c +++ b/drivers/net/bnxt/tf_ulp/ulp_gen_hash.c @@ -16,20 +16,21 @@ int32_t ulp_bit_alloc_list_alloc(struct bit_alloc_list *blist, { uint64_t bentry; uint32_t idx = 0, jdx = 0; + uint32_t bsize_64 = blist->bsize / ULP_64B_IN_BYTES; /* Iterate all numbers that have all 1's */ do { bentry = blist->bdata[idx++]; - } while (bentry == -1UL && idx < blist->bsize); + } while (bentry == -1UL && idx <= bsize_64); - if (idx < blist->bsize) { + if (idx <= bsize_64) { if (bentry) jdx = __builtin_clzl(~bentry); *index = ((idx - 1) * ULP_INDEX_BITMAP_SIZE) + jdx; ULP_INDEX_BITMAP_SET(blist->bdata[(idx - 1)], jdx); return 0; } - jdx = (uint32_t)(blist->bsize * ULP_INDEX_BITMAP_SIZE); + jdx = (uint32_t)(bsize_64 * ULP_INDEX_BITMAP_SIZE); BNXT_TF_DBG(ERR, "bit allocator is full reached max:%x\n", jdx); return -1; } @@ -39,9 +40,10 @@ int32_t ulp_bit_alloc_list_dealloc(struct bit_alloc_list *blist, uint32_t index) { uint32_t idx = 0, jdx; + uint32_t bsize_64 = blist->bsize / ULP_64B_IN_BYTES; idx = index / ULP_INDEX_BITMAP_SIZE; - if (idx >= blist->bsize) { + if (idx >= bsize_64) { BNXT_TF_DBG(ERR, "invalid bit index %x:%x\n", idx, blist->bsize); return -EINVAL; @@ -127,7 +129,8 @@ ulp_gen_hash_tbl_list_init(struct ulp_hash_create_params *cparams, hash_tbl->hash_mask = size - 1; /* allocate the memory for the bit allocator */ - size = (cparams->num_key_entries / sizeof(uint64_t)) + 1; + size = (cparams->num_key_entries / sizeof(uint64_t)); + size = ULP_BYTE_ROUND_OFF_8(size); hash_tbl->bit_list.bsize = size; hash_tbl->bit_list.bdata = rte_zmalloc("Generic hash bit alloc", size, ULP_BUFFER_ALIGN_64_BYTE); @@ -311,7 +314,12 @@ ulp_gen_hash_tbl_list_add(struct ulp_gen_hash_tbl *hash_tbl, BNXT_TF_DBG(ERR, "Error in bit list alloc\n"); return -ENOMEM; } - + if (key_index > hash_tbl->num_key_entries) { + BNXT_TF_DBG(ERR, "reached max size %u:%u\n", key_index, + hash_tbl->num_key_entries); + ulp_bit_alloc_list_dealloc(&hash_tbl->bit_list, key_index); + return -ENOMEM; + } /* Update the hash entry */ ULP_HASH_BUCKET_MARK_INUSE(bucket, (uint16_t)key_index); From patchwork Thu Nov 4 21:58:28 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103789 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id C289AA0C5E; Thu, 4 Nov 2021 22:59:16 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 31FC24279B; Thu, 4 Nov 2021 22:59:02 +0100 (CET) Received: from mail-pf1-f175.google.com (mail-pf1-f175.google.com [209.85.210.175]) by mails.dpdk.org (Postfix) with ESMTP id 86F5842757 for ; Thu, 4 Nov 2021 22:58:58 +0100 (CET) Received: by mail-pf1-f175.google.com with SMTP id y20so7139505pfi.4 for ; Thu, 04 Nov 2021 14:58:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=KXrzehf50yNODF9vQ9egt33+prLBsTXzIJQCsKHkHMY=; b=N1N/IJDE2bgdihm3sRQxai5+ftT4UnfsjciqNkOKw4J2GM8dsLyhhAgWs2zFVZ7JaY PTTRV0UV1TndCxLVM6n8ip101XE3vKvvrUV6u9juovkNAxWqvWZiiEeMRmptDeXyUSzY YYc5YuZRK+txZKLiuj4thtEUkqnpZA3EPGaQo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=KXrzehf50yNODF9vQ9egt33+prLBsTXzIJQCsKHkHMY=; b=g800Qm/qNmi5LcRNU7Dt8jH4qu2ZucnHWSNnvK1lLmogWlM3Pach05Z4Foo2Sq2CO9 vbRsIxZHvepbHb1jPaVJNAdHOE3kcqHHcZzxaY55Ab1jgFnLFPYVEPPPo5lO49pjPzii iJNerpdi8hQ616gIy6/BAECV12APtiGdIOhTIFCuAR78eaeJaw3RjiEXLzLYiWjsjPjF LBhxRzlSQBTCLq4dZGbbNS7aEbUDKesMYB5Kg34C1zlls05h2vD6cMfiBm+QkFsyN8oF plfeFhZjWMAD+Py1/dw3t6A8qySerrmck9YCNtHKcehPp+EXXepwMNeIB1MMuiYueI1j TmOA== X-Gm-Message-State: AOAM532F3lf8Tc2aBhebgvEZ5LtGXrhgKycF+8LUnhK2n42fhu46FFM5 NOa6pZ/4f8fcyOsaISMx5ranu1LGejmY+vdeN2Wg18ZGXLUUopzidbeyFotSKamDcAT1WneAmVe y/2QTgg8uFpX+iNqRe6kFRvkxfluUw6JGOPHWUlkYSNEOUDkU8VBOQeXnIaLrg90= X-Google-Smtp-Source: ABdhPJzS3meARFLBm+5TZhsOS5D4amk3tkC+5cTepIH07fSKxPW7CyFIPfJypz2O97Q5MwUZfO72uw== X-Received: by 2002:a63:8f4a:: with SMTP id r10mr40378447pgn.337.1636063137520; Thu, 04 Nov 2021 14:58:57 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.58.56 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:58:56 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Farah Smith , Kishore Padmanabha , Venkat Duvvuru , Randy Schacher , Shahaji Bhosle Date: Thu, 4 Nov 2021 14:58:28 -0700 Message-Id: <20211104215846.58672-5-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 04/22] net/bnxt: add clear on read support X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Farah Smith Add clear on read stats support for Thor. Currently, the flow stats are not cleared after they are read from the FW. This patch adds support for clear on read. Since clear on read support is added for flow stats in Thor, the flow accumulation is enabled on Thor as well. Signed-off-by: Farah Smith Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Randy Schacher Reviewed-by: Shahaji Bhosle Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/tf_core/tf_msg.c | 24 ++++++++++++++++++++---- drivers/net/bnxt/tf_core/tf_msg.h | 6 ++++-- drivers/net/bnxt/tf_core/tf_tbl.c | 6 ++++-- drivers/net/bnxt/tf_core/tf_tbl_sram.c | 13 +++++++++++-- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 3 ++- 5 files changed, 41 insertions(+), 11 deletions(-) diff --git a/drivers/net/bnxt/tf_core/tf_msg.c b/drivers/net/bnxt/tf_core/tf_msg.c index 0fbb2fe837..ea6e2af7ce 100644 --- a/drivers/net/bnxt/tf_core/tf_msg.c +++ b/drivers/net/bnxt/tf_core/tf_msg.c @@ -1851,7 +1851,8 @@ tf_msg_get_tbl_entry(struct tf *tfp, uint16_t hcapi_type, uint16_t size, uint8_t *data, - uint32_t index) + uint32_t index, + bool clear_on_read) { int rc; struct hwrm_tf_tbl_type_get_input req = { 0 }; @@ -1860,6 +1861,7 @@ tf_msg_get_tbl_entry(struct tf *tfp, uint8_t fw_session_id; struct tf_dev_info *dev; struct tf_session *tfs; + uint32_t flags = 0; /* Retrieve the session information */ rc = tf_session_get_session_internal(tfp, &tfs); @@ -1889,10 +1891,16 @@ tf_msg_get_tbl_entry(struct tf *tfp, strerror(-rc)); return rc; } + flags = (dir == TF_DIR_TX ? + HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_TX : + HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_DIR_RX); + + if (clear_on_read) + flags |= HWRM_TF_TBL_TYPE_GET_INPUT_FLAGS_CLEAR_ON_READ; /* Populate the request */ req.fw_session_id = tfp_cpu_to_le_32(fw_session_id); - req.flags = tfp_cpu_to_le_16(dir); + req.flags = tfp_cpu_to_le_16(flags); req.type = tfp_cpu_to_le_32(hcapi_type); req.index = tfp_cpu_to_le_32(index); @@ -2105,7 +2113,8 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp, uint32_t starting_idx, uint16_t num_entries, uint16_t entry_sz_in_bytes, - uint64_t physical_mem_addr) + uint64_t physical_mem_addr, + bool clear_on_read) { int rc; struct tfp_send_msg_parms parms = { 0 }; @@ -2115,6 +2124,7 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp, uint8_t fw_session_id; struct tf_dev_info *dev; struct tf_session *tfs; + uint32_t flags = 0; /* Retrieve the session information */ rc = tf_session_get_session(tfp, &tfs); @@ -2144,10 +2154,16 @@ tf_msg_bulk_get_tbl_entry(struct tf *tfp, strerror(-rc)); return rc; } + flags = (dir == TF_DIR_TX ? + HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_TX : + HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_DIR_RX); + + if (clear_on_read) + flags |= HWRM_TF_TBL_TYPE_BULK_GET_INPUT_FLAGS_CLEAR_ON_READ; /* Populate the request */ req.fw_session_id = tfp_cpu_to_le_32(fw_session_id); - req.flags = tfp_cpu_to_le_16(dir); + req.flags = tfp_cpu_to_le_16(flags); req.type = tfp_cpu_to_le_32(hcapi_type); req.start_index = tfp_cpu_to_le_32(starting_idx); req.num_entries = tfp_cpu_to_le_32(num_entries); diff --git a/drivers/net/bnxt/tf_core/tf_msg.h b/drivers/net/bnxt/tf_core/tf_msg.h index b26b15bfa3..718bc2f3b2 100644 --- a/drivers/net/bnxt/tf_core/tf_msg.h +++ b/drivers/net/bnxt/tf_core/tf_msg.h @@ -652,7 +652,8 @@ int tf_msg_get_tbl_entry(struct tf *tfp, uint16_t hcapi_type, uint16_t size, uint8_t *data, - uint32_t index); + uint32_t index, + bool clear_on_read); /* HWRM Tunneled messages */ @@ -704,7 +705,8 @@ int tf_msg_bulk_get_tbl_entry(struct tf *tfp, uint32_t starting_idx, uint16_t num_entries, uint16_t entry_sz_in_bytes, - uint64_t physical_mem_addr); + uint64_t physical_mem_addr, + bool clear_on_read); /** * Sends Set message of a IF Table Type element to the firmware. diff --git a/drivers/net/bnxt/tf_core/tf_tbl.c b/drivers/net/bnxt/tf_core/tf_tbl.c index 0a8720e7b6..12eca36491 100644 --- a/drivers/net/bnxt/tf_core/tf_tbl.c +++ b/drivers/net/bnxt/tf_core/tf_tbl.c @@ -441,7 +441,8 @@ tf_tbl_get(struct tf *tfp, hcapi_type, parms->data_sz_in_bytes, parms->data, - parms->idx); + parms->idx, + false); if (rc) { TFP_DRV_LOG(ERR, "%s, Get failed, type:%s, rc:%s\n", @@ -526,7 +527,8 @@ tf_tbl_bulk_get(struct tf *tfp, parms->starting_idx, parms->num_entries, parms->entry_sz_in_bytes, - parms->physical_mem_addr); + parms->physical_mem_addr, + false); if (rc) { TFP_DRV_LOG(ERR, "%s, Bulk get failed, type:%s, rc:%s\n", diff --git a/drivers/net/bnxt/tf_core/tf_tbl_sram.c b/drivers/net/bnxt/tf_core/tf_tbl_sram.c index 636811bc2d..567f912dfa 100644 --- a/drivers/net/bnxt/tf_core/tf_tbl_sram.c +++ b/drivers/net/bnxt/tf_core/tf_tbl_sram.c @@ -539,6 +539,7 @@ tf_tbl_sram_get(struct tf *tfp, struct tf_tbl_sram_get_info_parms iparms = { 0 }; struct tf_sram_mgr_is_allocated_parms aparms = { 0 }; void *sram_handle = NULL; + bool clear_on_read = false; TF_CHECK_PARMS3(tfp, parms, parms->data); @@ -608,6 +609,8 @@ tf_tbl_sram_get(struct tf *tfp, strerror(-rc)); return rc; } + if (parms->type == TF_TBL_TYPE_ACT_STATS_64) + clear_on_read = true; /* Get the entry */ rc = tf_msg_get_tbl_entry(tfp, @@ -615,7 +618,8 @@ tf_tbl_sram_get(struct tf *tfp, hcapi_type, parms->data_sz_in_bytes, parms->data, - parms->idx); + parms->idx, + clear_on_read); if (rc) { TFP_DRV_LOG(ERR, "%s, Get failed, type:%s, rc:%s\n", @@ -643,6 +647,7 @@ tf_tbl_sram_bulk_get(struct tf *tfp, struct tf_sram_mgr_is_allocated_parms aparms = { 0 }; bool allocated = false; void *sram_handle = NULL; + bool clear_on_read = false; TF_CHECK_PARMS2(tfp, parms); @@ -728,6 +733,9 @@ tf_tbl_sram_bulk_get(struct tf *tfp, return rc; } + if (parms->type == TF_TBL_TYPE_ACT_STATS_64) + clear_on_read = true; + /* Get the entries */ rc = tf_msg_bulk_get_tbl_entry(tfp, parms->dir, @@ -735,7 +743,8 @@ tf_tbl_sram_bulk_get(struct tf *tfp, parms->starting_idx, parms->num_entries, parms->entry_sz_in_bytes, - parms->physical_mem_addr); + parms->physical_mem_addr, + clear_on_read); if (rc) { TFP_DRV_LOG(ERR, "%s, Bulk get failed, type:%s, rc:%s\n", diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c index dbc8a3c5bb..f1763e2519 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c @@ -1483,7 +1483,8 @@ bnxt_ulp_port_init(struct bnxt *bp) goto jump_to_error; } - if (devid != BNXT_ULP_DEVICE_ID_THOR && BNXT_ACCUM_STATS_EN(bp)) + /* set the accumulation of the stats */ + if (BNXT_ACCUM_STATS_EN(bp)) bp->ulp_ctx->cfg_data->accum_stats = true; BNXT_TF_DBG(DEBUG, "BNXT Port:%d ULP port init, accum_stats:%d\n", From patchwork Thu Nov 4 21:58:29 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103791 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id C531EA0C5E; Thu, 4 Nov 2021 22:59:32 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DF728427B3; Thu, 4 Nov 2021 22:59:04 +0100 (CET) Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by mails.dpdk.org (Postfix) with ESMTP id C63F54279B for ; Thu, 4 Nov 2021 22:58:59 +0100 (CET) Received: by mail-pl1-f180.google.com with SMTP id v20so9552675plo.7 for ; Thu, 04 Nov 2021 14:58:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=rC1XU+YdN03K1LhDpJw+WraDciX6cBTMSdowUUvn7NE=; b=aHG9nTm5q/DLZGSl+Ot0z4AJPrgjk+pF9GozbLoeiIhrdj2cBDGbYJHZNmtcGGNIEC luHy6GWNBGnKV3CufWP9POnpC0jP3i+eqOWEyqZu/pz0kcr3rhkPmDeBoVSnfLM6SB0Z q3JvluZNXiAdhFncdScKlLgMm1bgum0E09nHs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=rC1XU+YdN03K1LhDpJw+WraDciX6cBTMSdowUUvn7NE=; b=kgtdbGXbrW/d1SPa5z4u27ojyVpoh5NjvJBpXIwuQJRVSlKneLyqAJkz74nG5FGwvI RDyMTaK8NksJynahvljGHMzMQ4SbVYMA0idNSoKdCzKVLnvZRaKaB+pgC4AzPFbml69F qz+drnzsWrBf9gzuXU9E0eUUoW9T79joiD4KPykhz5yY3RWf1UlrZecCLtXFJNKGasgU VtyE9VmK+BhoRVCyC4GbsRlXg5HHOSRya3Wvm8ZW6UYy9jsdiY4dBeiRRm0FhqCirQ1W oGG/fYRZuHRClO6JcyEg5bdGSjN99v5b7g4bnSGVU4nnURo2+b1zGV/6uIpDnu/k1FJS 0IdA== X-Gm-Message-State: AOAM530ihRWVp7GK0x09maOuRN6MO/XcMAMqmG3LP8Lne6FYf9QVaKYK oTZj0JgYjip7f0OteiSAK8+7UQokhrTwYWFuesU63zJ5HiM9aM2F0KM5QXrtiufwkzs9hawmJx4 GcCjkzYZvKcQJCHft/PNn1aJH6hBWnEWXA2+dvmBXL6+qsqvF+1ZbrhI97tMFk7M= X-Google-Smtp-Source: ABdhPJyj7PzSOZEVRGiTtPIu1z0KDiAsmEOohDzag5tjmvEwLZQFYxdQK9YMknHSWJUpuUnKJI/Mhw== X-Received: by 2002:a17:90b:1c07:: with SMTP id oc7mr25088478pjb.127.1636063138757; Thu, 04 Nov 2021 14:58:58 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.58.57 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:58:57 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Venkat Duvvuru , Mike Baucom , Randy Schacher Date: Thu, 4 Nov 2021 14:58:29 -0700 Message-Id: <20211104215846.58672-6-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 05/22] net/bnxt: add capability option for socket redirect X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha Added support for socket redirect feature capability so applications can enable or disable this feature. This patch contains the template changes. Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Mike Baucom Reviewed-by: Randy Schacher Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 11 +++++++++-- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 6 +++++- drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 10 ++++++++-- .../tf_ulp/generic_templates/ulp_template_db_enum.h | 8 +++++--- .../tf_ulp/generic_templates/ulp_template_db_tbl.c | 5 +++-- 5 files changed, 30 insertions(+), 10 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c index f1763e2519..2ac1a8625f 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c @@ -301,13 +301,14 @@ bnxt_ulp_tf_shared_session_resources_get(struct bnxt_ulp_context *ulp_ctx, } int32_t -bnxt_ulp_cntxt_app_caps_init(struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_cntxt_app_caps_init(struct bnxt *bp, uint8_t app_id, uint32_t dev_id) { struct bnxt_ulp_app_capabilities_info *info; uint32_t num = 0; uint16_t i; bool found = false; + struct bnxt_ulp_context *ulp_ctx = bp->ulp_ctx; if (ULP_APP_DEV_UNSUPPORTED_ENABLED(ulp_ctx->cfg_data->ulp_flags)) { BNXT_TF_DBG(ERR, "APP ID %d, Device ID: 0x%x not supported.\n", @@ -334,6 +335,12 @@ bnxt_ulp_cntxt_app_caps_init(struct bnxt_ulp_context *ulp_ctx, if (info[i].flags & BNXT_ULP_APP_CAP_UNICAST_ONLY) ulp_ctx->cfg_data->ulp_flags |= BNXT_ULP_APP_UNICAST_ONLY; + if (info[i].flags & BNXT_ULP_APP_CAP_SOCKET_DIRECT) { + /* Enable socket direction only if MR is enabled in fw*/ + if (BNXT_MULTIROOT_EN(bp)) + ulp_ctx->cfg_data->ulp_flags |= + BNXT_ULP_APP_SOCKET_DIRECT; + } } if (!found) { BNXT_TF_DBG(ERR, "APP ID %d, Device ID: 0x%x not supported.\n", @@ -832,7 +839,7 @@ ulp_ctx_init(struct bnxt *bp, } BNXT_TF_DBG(DEBUG, "Ulp initialized with app id %d\n", bp->app_id); - rc = bnxt_ulp_cntxt_app_caps_init(bp->ulp_ctx, bp->app_id, devid); + rc = bnxt_ulp_cntxt_app_caps_init(bp, bp->app_id, devid); if (rc) { BNXT_TF_DBG(ERR, "Unable to set caps for app(%x)/dev(%x)\n", bp->app_id, devid); diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.h b/drivers/net/bnxt/tf_ulp/bnxt_ulp.h index 006df9cbc5..68f1470c61 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.h +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.h @@ -13,6 +13,7 @@ #include "rte_version.h" #include "rte_ethdev.h" +#include "bnxt.h" #include "ulp_template_db_enum.h" #include "ulp_tun.h" #include "bnxt_tf_common.h" @@ -33,12 +34,15 @@ #define BNXT_ULP_APP_DEV_UNSUPPORTED 0x4 #define BNXT_ULP_HIGH_AVAIL_ENABLED 0x8 #define BNXT_ULP_APP_UNICAST_ONLY 0x10 +#define BNXT_ULP_APP_SOCKET_DIRECT 0x20 + #define ULP_VF_REP_IS_ENABLED(flag) ((flag) & BNXT_ULP_VF_REP_ENABLED) #define ULP_SHARED_SESSION_IS_ENABLED(flag) ((flag) &\ BNXT_ULP_SHARED_SESSION_ENABLED) #define ULP_APP_DEV_UNSUPPORTED_ENABLED(flag) ((flag) &\ BNXT_ULP_APP_DEV_UNSUPPORTED) #define ULP_HIGH_AVAIL_IS_ENABLED(flag) ((flag) & BNXT_ULP_HIGH_AVAIL_ENABLED) +#define ULP_SOCKET_DIRECT_IS_ENABLED(flag) ((flag) & BNXT_ULP_APP_SOCKET_DIRECT) enum bnxt_ulp_flow_mem_type { BNXT_ULP_FLOW_MEM_TYPE_INT = 0, @@ -287,7 +291,7 @@ struct bnxt_ulp_app_capabilities_info * bnxt_ulp_app_cap_list_get(uint32_t *num_entries); int32_t -bnxt_ulp_cntxt_app_caps_init(struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_cntxt_app_caps_init(struct bnxt *bp, uint8_t app_id, uint32_t dev_id); struct bnxt_ulp_resource_resv_info * diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c index 2fec79a388..272195f6a2 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c @@ -115,9 +115,11 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms, ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_FLOW_SIG_ID, params->flow_sig_id); + if (bnxt_ulp_cntxt_ptr2_ulp_flags_get(params->ulp_ctx, &ulp_flags)) + return; + /* update the WC Priority flag */ - if (!bnxt_ulp_cntxt_ptr2_ulp_flags_get(params->ulp_ctx, &ulp_flags) && - ULP_HIGH_AVAIL_IS_ENABLED(ulp_flags)) { + if (ULP_HIGH_AVAIL_IS_ENABLED(ulp_flags)) { enum ulp_ha_mgr_region region = ULP_HA_REGION_LOW; int32_t rc; @@ -129,6 +131,10 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms, BNXT_ULP_CF_IDX_WC_IS_HA_HIGH_REG, 1); } + + /* Update the socket direct flag */ + if (ULP_SOCKET_DIRECT_IS_ENABLED(ulp_flags)) + ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_SOCKET_DIRECT, 1); } /* Function to create the rte flow. */ diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h index fcd460e707..31a94c14dc 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Thu Aug 26 17:43:36 2021 */ +/* date: Thu Sep 9 11:11:05 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_ @@ -211,7 +211,8 @@ enum bnxt_ulp_cf_idx { BNXT_ULP_CF_IDX_OI_VLAN_FB_VID = 71, BNXT_ULP_CF_IDX_IO_VLAN_FB_VID = 72, BNXT_ULP_CF_IDX_II_VLAN_FB_VID = 73, - BNXT_ULP_CF_IDX_LAST = 74 + BNXT_ULP_CF_IDX_SOCKET_DIRECT = 74, + BNXT_ULP_CF_IDX_LAST = 75 }; enum bnxt_ulp_cond_list_opc { @@ -582,7 +583,8 @@ enum bnxt_ulp_template_type { enum bnxt_ulp_app_cap { BNXT_ULP_APP_CAP_SHARED_EN = 0x00000001, BNXT_ULP_APP_CAP_HOT_UPGRADE_EN = 0x00000002, - BNXT_ULP_APP_CAP_UNICAST_ONLY = 0x00000004 + BNXT_ULP_APP_CAP_UNICAST_ONLY = 0x00000004, + BNXT_ULP_APP_CAP_SOCKET_DIRECT = 0x00000008 }; enum bnxt_ulp_fdb_resource_flags { diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c index 84be09b368..5383e2cd70 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Thu Aug 26 17:43:36 2021 */ +/* date: Thu Sep 9 11:11:05 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -347,7 +347,8 @@ struct bnxt_ulp_app_capabilities_info ulp_app_cap_info_list[] = { .device_id = BNXT_ULP_DEVICE_ID_THOR, .flags = BNXT_ULP_APP_CAP_SHARED_EN | BNXT_ULP_APP_CAP_HOT_UPGRADE_EN | - BNXT_ULP_APP_CAP_UNICAST_ONLY + BNXT_ULP_APP_CAP_UNICAST_ONLY | + BNXT_ULP_APP_CAP_SOCKET_DIRECT }, { .app_id = 2, From patchwork Thu Nov 4 21:58:30 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103792 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id B9453A0C5E; Thu, 4 Nov 2021 22:59:39 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 02CA6427B7; Thu, 4 Nov 2021 22:59:06 +0100 (CET) Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) by mails.dpdk.org (Postfix) with ESMTP id B838D4279B for ; Thu, 4 Nov 2021 22:59:00 +0100 (CET) Received: by mail-pl1-f182.google.com with SMTP id t21so9566563plr.6 for ; Thu, 04 Nov 2021 14:59:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version; bh=2GDASBZIyNPtNxb8sIExblZGHPhCd9QeNQ1db40O57k=; b=ghVFEjuuDwYLfCrISUy22bcBX/Y46OgYu5iaqqn8aO7ZMYO6BJumPBJf/jXNLdqJVr hs8/TwxHUyUsckuOPZsbU0C4dSj0zWQKtAvr9b4L8jIROowRdCqblFeUu/7PyrvQUjHb b45F2Pn++DPXMIbCYCgL0QKG3C+v9WyzML/Qo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version; bh=2GDASBZIyNPtNxb8sIExblZGHPhCd9QeNQ1db40O57k=; b=ySVOiWcRLCO/lxjKP/azgSt9WaUaiS9WWkckXqrElywDK2dXTtUFrtBMoRK5wNhtIM UpkVqVX5Vx+EV1S7hRAa4CK75FVn4gnbssW73BQx6c7c8TwlCygPP2POodg1vkOIZskU Kma6sTIvgmzPck+gsbVfnkXWBdwX0V6W0sx/jSRxVtciRzvSDPE7DjbhbsSBLRnkjp0y xr8Pv2ul0Bv6PnTZK5fNwqi3wxto7lebbyyAAs2cgGB9Ksy9/0jO4Gclb7gxduakNvfG cRHioUTe4yxqfXwEPZWRwnLugMsBxhi8jefw/KHvV8+i1Pafzhc9XZCwwE3LK/7xqW/1 oO3Q== X-Gm-Message-State: AOAM531dapBn50MlFIuMStMEpfq46/NYsRWHuCQsCaEK7FlWN/Oh6W7N IlLIGEhtPwKGReaEz68aASSE8l+8X+s+XYKorEUgLzWbfCkmpLmvAkko8+TvpJdRAG0N1m5hCT2 u4OwsRkdBlVhmrVzEZrYdKakUgpF2Vg+cXKG93LusWIQ/ICF2fzskhnUtYt0Wm2Y= X-Google-Smtp-Source: ABdhPJy8J+oje27TQKsxJuwF59FXnNP7eeetAVvNjFPONwx3YuiwGsK9xZ4+bb1WCwQw7rHLviSBUg== X-Received: by 2002:a17:90a:a396:: with SMTP id x22mr8557164pjp.14.1636063139598; Thu, 04 Nov 2021 14:58:59 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.58.58 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:58:59 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Date: Thu, 4 Nov 2021 14:58:30 -0700 Message-Id: <20211104215846.58672-7-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 06/22] net/bnxt: remove unused functions X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Remove unused functions from the code. Specifically the following functions are being removed. void bnxt_get_iface_mac(uint16_t port, enum bnxt_ulp_intf_type type, uint8_t *mac, uint8_t *parent_mac); uint16_t bnxt_get_vnic_id(uint16_t port, enum bnxt_ulp_intf_type type); uint16_t bnxt_get_parent_vnic_id(uint16_t port, enum bnxt_ulp_intf_type type); struct bnxt *bnxt_get_bp(uint16_t port); uint16_t bnxt_get_svif(uint16_t port_id, bool func_svif, enum bnxt_ulp_intf_type type); uint16_t bnxt_get_fw_func_id(uint16_t port, enum bnxt_ulp_intf_type type); uint16_t bnxt_get_parif(uint16_t port, enum bnxt_ulp_intf_type type); uint16_t bnxt_get_phy_port_id(uint16_t port); uint16_t bnxt_get_vport(uint16_t port); enum bnxt_ulp_intf_type bnxt_get_interface_type(uint16_t port); Signed-off-by: Ajit Khaparde --- drivers/net/bnxt/bnxt.h | 13 --- drivers/net/bnxt/bnxt_ethdev.c | 203 --------------------------------- 2 files changed, 216 deletions(-) diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h index 97e281a2fc..4ab9ebd049 100644 --- a/drivers/net/bnxt/bnxt.h +++ b/drivers/net/bnxt/bnxt.h @@ -1054,19 +1054,6 @@ int32_t bnxt_ulp_create_vfr_default_rules(struct rte_eth_dev *vfr_ethdev); int32_t bnxt_ulp_delete_vfr_default_rules(struct bnxt_representor *vfr); -void bnxt_get_iface_mac(uint16_t port, enum bnxt_ulp_intf_type type, - uint8_t *mac, uint8_t *parent_mac); -uint16_t bnxt_get_vnic_id(uint16_t port, enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_parent_vnic_id(uint16_t port, enum bnxt_ulp_intf_type type); -struct bnxt *bnxt_get_bp(uint16_t port); -uint16_t bnxt_get_svif(uint16_t port_id, bool func_svif, - enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_fw_func_id(uint16_t port, enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_parif(uint16_t port, enum bnxt_ulp_intf_type type); -uint16_t bnxt_get_phy_port_id(uint16_t port); -uint16_t bnxt_get_vport(uint16_t port); -enum bnxt_ulp_intf_type -bnxt_get_interface_type(uint16_t port); int bnxt_rep_dev_start_op(struct rte_eth_dev *eth_dev); void bnxt_cancel_fc_thread(struct bnxt *bp); diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index 257e6b0d6a..2ab0cf3784 100644 --- a/drivers/net/bnxt/bnxt_ethdev.c +++ b/drivers/net/bnxt/bnxt_ethdev.c @@ -5047,209 +5047,6 @@ static void bnxt_config_vf_req_fwd(struct bnxt *bp) BNXT_HWRM_CMD_TO_FORWARD(HWRM_OEM_CMD); } -struct bnxt * -bnxt_get_bp(uint16_t port) -{ - struct bnxt *bp; - struct rte_eth_dev *dev; - - if (!rte_eth_dev_is_valid_port(port)) { - PMD_DRV_LOG(ERR, "Invalid port %d\n", port); - return NULL; - } - - dev = &rte_eth_devices[port]; - if (!is_bnxt_supported(dev)) { - PMD_DRV_LOG(ERR, "Device %d not supported\n", port); - return NULL; - } - - bp = (struct bnxt *)dev->data->dev_private; - if (!BNXT_TRUFLOW_EN(bp)) { - PMD_DRV_LOG(ERR, "TRUFLOW not enabled\n"); - return NULL; - } - - return bp; -} - -uint16_t -bnxt_get_svif(uint16_t port_id, bool func_svif, - enum bnxt_ulp_intf_type type) -{ - struct rte_eth_dev *eth_dev; - struct bnxt *bp; - - eth_dev = &rte_eth_devices[port_id]; - if (BNXT_ETH_DEV_IS_REPRESENTOR(eth_dev)) { - struct bnxt_representor *vfr = eth_dev->data->dev_private; - if (!vfr) - return 0; - - if (type == BNXT_ULP_INTF_TYPE_VF_REP) - return vfr->svif; - - eth_dev = vfr->parent_dev; - } - - bp = eth_dev->data->dev_private; - - return func_svif ? bp->func_svif : bp->port_svif; -} - -void -bnxt_get_iface_mac(uint16_t port, enum bnxt_ulp_intf_type type, - uint8_t *mac, uint8_t *parent_mac) -{ - struct rte_eth_dev *eth_dev; - struct bnxt *bp; - - if (type != BNXT_ULP_INTF_TYPE_TRUSTED_VF && - type != BNXT_ULP_INTF_TYPE_PF) - return; - - eth_dev = &rte_eth_devices[port]; - bp = eth_dev->data->dev_private; - memcpy(mac, bp->mac_addr, RTE_ETHER_ADDR_LEN); - - if (type == BNXT_ULP_INTF_TYPE_TRUSTED_VF) - memcpy(parent_mac, bp->parent->mac_addr, RTE_ETHER_ADDR_LEN); -} - -uint16_t -bnxt_get_parent_vnic_id(uint16_t port, enum bnxt_ulp_intf_type type) -{ - struct rte_eth_dev *eth_dev; - struct bnxt *bp; - - if (type != BNXT_ULP_INTF_TYPE_TRUSTED_VF) - return 0; - - eth_dev = &rte_eth_devices[port]; - bp = eth_dev->data->dev_private; - - return bp->parent->vnic; -} -uint16_t -bnxt_get_vnic_id(uint16_t port, enum bnxt_ulp_intf_type type) -{ - struct rte_eth_dev *eth_dev; - struct bnxt_vnic_info *vnic; - struct bnxt *bp; - - eth_dev = &rte_eth_devices[port]; - if (BNXT_ETH_DEV_IS_REPRESENTOR(eth_dev)) { - struct bnxt_representor *vfr = eth_dev->data->dev_private; - if (!vfr) - return 0; - - if (type == BNXT_ULP_INTF_TYPE_VF_REP) - return vfr->dflt_vnic_id; - - eth_dev = vfr->parent_dev; - } - - bp = eth_dev->data->dev_private; - - vnic = BNXT_GET_DEFAULT_VNIC(bp); - - return vnic->fw_vnic_id; -} - -uint16_t -bnxt_get_fw_func_id(uint16_t port, enum bnxt_ulp_intf_type type) -{ - struct rte_eth_dev *eth_dev; - struct bnxt *bp; - - eth_dev = &rte_eth_devices[port]; - if (BNXT_ETH_DEV_IS_REPRESENTOR(eth_dev)) { - struct bnxt_representor *vfr = eth_dev->data->dev_private; - if (!vfr) - return 0; - - if (type == BNXT_ULP_INTF_TYPE_VF_REP) - return vfr->fw_fid; - - eth_dev = vfr->parent_dev; - } - - bp = eth_dev->data->dev_private; - - return bp->fw_fid; -} - -enum bnxt_ulp_intf_type -bnxt_get_interface_type(uint16_t port) -{ - struct rte_eth_dev *eth_dev; - struct bnxt *bp; - - eth_dev = &rte_eth_devices[port]; - if (BNXT_ETH_DEV_IS_REPRESENTOR(eth_dev)) - return BNXT_ULP_INTF_TYPE_VF_REP; - - bp = eth_dev->data->dev_private; - if (BNXT_PF(bp)) - return BNXT_ULP_INTF_TYPE_PF; - else if (BNXT_VF_IS_TRUSTED(bp)) - return BNXT_ULP_INTF_TYPE_TRUSTED_VF; - else if (BNXT_VF(bp)) - return BNXT_ULP_INTF_TYPE_VF; - - return BNXT_ULP_INTF_TYPE_INVALID; -} - -uint16_t -bnxt_get_phy_port_id(uint16_t port_id) -{ - struct bnxt_representor *vfr; - struct rte_eth_dev *eth_dev; - struct bnxt *bp; - - eth_dev = &rte_eth_devices[port_id]; - if (BNXT_ETH_DEV_IS_REPRESENTOR(eth_dev)) { - vfr = eth_dev->data->dev_private; - if (!vfr) - return 0; - - eth_dev = vfr->parent_dev; - } - - bp = eth_dev->data->dev_private; - - return BNXT_PF(bp) ? bp->pf->port_id : bp->parent->port_id; -} - -uint16_t -bnxt_get_parif(uint16_t port_id, enum bnxt_ulp_intf_type type) -{ - struct rte_eth_dev *eth_dev; - struct bnxt *bp; - - eth_dev = &rte_eth_devices[port_id]; - if (BNXT_ETH_DEV_IS_REPRESENTOR(eth_dev)) { - struct bnxt_representor *vfr = eth_dev->data->dev_private; - if (!vfr) - return 0; - - if (type == BNXT_ULP_INTF_TYPE_VF_REP) - return vfr->fw_fid - 1; - - eth_dev = vfr->parent_dev; - } - - bp = eth_dev->data->dev_private; - - return BNXT_PF(bp) ? bp->fw_fid - 1 : bp->parent->fid - 1; -} - -uint16_t -bnxt_get_vport(uint16_t port_id) -{ - return (1 << bnxt_get_phy_port_id(port_id)); -} - static void bnxt_alloc_error_recovery_info(struct bnxt *bp) { struct bnxt_error_recovery_info *info = bp->recovery_info; From patchwork Thu Nov 4 21:58:31 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103795 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 1899BA0C5E; Thu, 4 Nov 2021 23:00:00 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 75FEC427CB; Thu, 4 Nov 2021 22:59:10 +0100 (CET) Received: from mail-pl1-f169.google.com (mail-pl1-f169.google.com [209.85.214.169]) by mails.dpdk.org (Postfix) with ESMTP id E4302427AD for ; Thu, 4 Nov 2021 22:59:03 +0100 (CET) Received: by mail-pl1-f169.google.com with SMTP id u11so9588212plf.3 for ; Thu, 04 Nov 2021 14:59:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=9y9i4A76kqCP8gFGB2pg+YFTPwVZlFAtydVL9DSfZjA=; b=PjC03vT1OzZ/DEh99bSnYmrtfYCOfLlro/NIzRJBKK7HeUw4kuDckE3GPPWio6Vk7y xtsNA5wRW1gu9broJkVPPdC7CDnhhUei7rUifYkEiioncH95RZEo6wr6u4cneFF7yOLQ wgQnOA6C2DrP7cWFiUI3P/VReFCZTvwnBvAKc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=9y9i4A76kqCP8gFGB2pg+YFTPwVZlFAtydVL9DSfZjA=; b=jn4Lt80ydmlPQQJUbpZwEWeseccIMCkiujN9/QlI5D/gjjP+m668nHfgh3Y5MAK1++ v+TJEo01PFMprJmdr4tVqNX/Hpb1vK7AK71aaqjJLSk15TsuDrcgnySQ1J4JPSG0O277 IPv85IJbI4buqC64o2n4Fwoa6X4mH9e9bcSfh2Rl3+C6EYOEAzDq3mCH581Npgj4k1Ny 5r9PtpLXnn22T8CiRikJ6ivwigndO9zP9F89icUztnnv4oHmR3iQjzmj0YxYn4k0t2uA oWH5HjHSvbvVL6NQNEgtc68V8FYSkwQDqVzEK2bqriMPbAWCdv9yR8QaS3H1y199IlIN E6UA== X-Gm-Message-State: AOAM531xeN0/RlnKRYkCS6d7OHC+ZvcQG++6UsbiZAnoo0SjOVvab9lL XpcpkrycxZE4JTKQ4ykawu7WAehytFxxdQPD4kYmJzhXrSRU7VvkgLpnLKNdXOISHLZIQheZ2bI OYGEYYovIYVvR/kPydzn1togayRkbQ8LS+eiuVeM6eogJ6kDAGlwsWobwHgtshCo= X-Google-Smtp-Source: ABdhPJx7NwEWjHVf5SscFpbo/Xg6dJBn/KGxzoSAlUNJ7mvZka2yhi7uChN5tFaOZ8cW24rRTyTrBQ== X-Received: by 2002:a17:90b:4a83:: with SMTP id lp3mr23922816pjb.34.1636063141264; Thu, 04 Nov 2021 14:59:01 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.58.59 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:00 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Venkat Duvvuru , Mike Baucom , Randy Schacher Date: Thu, 4 Nov 2021 14:58:31 -0700 Message-Id: <20211104215846.58672-8-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 07/22] net/bnxt: address ISO C90 compilation error X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha The flow signature is of type unsigned long value and needs to be suffixed with UL. This patch takes care of that. Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Mike Baucom Reviewed-by: Randy Schacher Acked-by: Ajit Khaparde --- .../generic_templates/ulp_template_db_class.c | 1986 ++++++++--------- 1 file changed, 993 insertions(+), 993 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c index ad3866243d..1d1e6463e0 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Fri Aug 6 11:15:47 2021 */ +/* date: Thu Sep 16 13:12:05 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -1016,7 +1016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55dd, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1031,7 +1031,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1df1, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 4104, + .flow_sig_id = 4104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1047,7 +1047,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e55, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1063,7 +1063,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0649, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 6152, + .flow_sig_id = 6152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1080,7 +1080,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1011, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1095,7 +1095,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40e9, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 16392, + .flow_sig_id = 16392UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1111,7 +1111,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e99, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1127,7 +1127,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_06ad, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 24584, + .flow_sig_id = 24584UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1144,7 +1144,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_38c7, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1160,7 +1160,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00fb, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32776, + .flow_sig_id = 32776UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1177,7 +1177,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_24d3, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1194,7 +1194,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_559b, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32840, + .flow_sig_id = 32840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1212,7 +1212,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5003, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1229,7 +1229,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1837, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1247,7 +1247,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bef, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1265,7 +1265,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0403, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49224, + .flow_sig_id = 49224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1284,7 +1284,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d3f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1300,7 +1300,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0543, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131080, + .flow_sig_id = 131080UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1317,7 +1317,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_292b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1334,7 +1334,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59e3, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131144, + .flow_sig_id = 131144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1352,7 +1352,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d3b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1369,7 +1369,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_254f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196616, + .flow_sig_id = 196616UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1387,7 +1387,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4917, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1405,7 +1405,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_113b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196680, + .flow_sig_id = 196680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1424,7 +1424,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55fd, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1440,7 +1440,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1dd1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 4104, + .flow_sig_id = 4104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1457,7 +1457,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e75, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1474,7 +1474,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0669, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 6152, + .flow_sig_id = 6152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1492,7 +1492,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1ba1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1509,7 +1509,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c69, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 12296, + .flow_sig_id = 12296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1527,7 +1527,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0439, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1545,7 +1545,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_34e1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 14344, + .flow_sig_id = 14344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1564,7 +1564,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0465, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1581,7 +1581,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_352d, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 20488, + .flow_sig_id = 20488UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1599,7 +1599,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55b1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1617,7 +1617,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1da5, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 22536, + .flow_sig_id = 22536UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1636,7 +1636,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_32fd, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1654,7 +1654,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_63a5, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 28680, + .flow_sig_id = 28680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1673,7 +1673,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1b75, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1692,7 +1692,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c3d, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 30728, + .flow_sig_id = 30728UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1712,7 +1712,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1031, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1728,7 +1728,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40c9, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 16392, + .flow_sig_id = 16392UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1745,7 +1745,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3eb9, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1762,7 +1762,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_068d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 24584, + .flow_sig_id = 24584UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1780,7 +1780,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5039, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1797,7 +1797,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_180d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1815,7 +1815,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15fd, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1833,7 +1833,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_46b5, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 57352, + .flow_sig_id = 57352UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1852,7 +1852,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_303d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1869,7 +1869,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_60f5, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 81928, + .flow_sig_id = 81928UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1887,7 +1887,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ea5, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1905,7 +1905,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2689, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 90120, + .flow_sig_id = 90120UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1924,7 +1924,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0771, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1942,7 +1942,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3809, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1961,7 +1961,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_35f9, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -1980,7 +1980,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66b1, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 122888, + .flow_sig_id = 122888UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2000,7 +2000,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_559d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2016,7 +2016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1db1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 4104, + .flow_sig_id = 4104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2033,7 +2033,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e15, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2050,7 +2050,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0609, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 6152, + .flow_sig_id = 6152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2068,7 +2068,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1bc1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2085,7 +2085,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c09, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 12296, + .flow_sig_id = 12296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2103,7 +2103,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0459, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2121,7 +2121,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3481, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 14344, + .flow_sig_id = 14344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2140,7 +2140,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0405, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2157,7 +2157,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_354d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 20488, + .flow_sig_id = 20488UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2175,7 +2175,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55d1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2193,7 +2193,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1dc5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 22536, + .flow_sig_id = 22536UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2212,7 +2212,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_329d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2230,7 +2230,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_63c5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 28680, + .flow_sig_id = 28680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2249,7 +2249,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1b15, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2268,7 +2268,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c5d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 30728, + .flow_sig_id = 30728UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2288,7 +2288,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1051, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2304,7 +2304,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40a9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 16392, + .flow_sig_id = 16392UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2321,7 +2321,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ed9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2338,7 +2338,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_06ed, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 24584, + .flow_sig_id = 24584UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2356,7 +2356,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5059, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2373,7 +2373,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_186d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2391,7 +2391,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_159d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2409,7 +2409,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_46d5, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 57352, + .flow_sig_id = 57352UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2428,7 +2428,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_305d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2445,7 +2445,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6095, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 81928, + .flow_sig_id = 81928UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2463,7 +2463,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ec5, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2481,7 +2481,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_26e9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 90120, + .flow_sig_id = 90120UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2500,7 +2500,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0711, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2518,7 +2518,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3869, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2537,7 +2537,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3599, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2556,7 +2556,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66d1, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 122888, + .flow_sig_id = 122888UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2576,7 +2576,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_38e7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2593,7 +2593,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00db, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32776, + .flow_sig_id = 32776UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2611,7 +2611,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_24f3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2629,7 +2629,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55bb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32840, + .flow_sig_id = 32840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2648,7 +2648,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5023, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2666,7 +2666,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1817, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2685,7 +2685,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bcf, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2704,7 +2704,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0423, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49224, + .flow_sig_id = 49224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2724,7 +2724,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_58e3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2742,7 +2742,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_20d7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98312, + .flow_sig_id = 98312UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2761,7 +2761,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_448f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2780,7 +2780,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0ce3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98376, + .flow_sig_id = 98376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2800,7 +2800,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_076b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2819,7 +2819,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3813, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2839,7 +2839,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5bcb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2859,7 +2859,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_243f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114760, + .flow_sig_id = 114760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2880,7 +2880,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_144b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2898,7 +2898,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4573, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163848, + .flow_sig_id = 163848UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2917,7 +2917,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0057, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2936,7 +2936,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_311f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163912, + .flow_sig_id = 163912UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2956,7 +2956,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2b87, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2975,7 +2975,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c4f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180232, + .flow_sig_id = 180232UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -2995,7 +2995,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1793, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3015,7 +3015,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_485b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180296, + .flow_sig_id = 180296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3036,7 +3036,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3447, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3055,7 +3055,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_650f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229384, + .flow_sig_id = 229384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3075,7 +3075,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2053, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3095,7 +3095,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_511b, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229448, + .flow_sig_id = 229448UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3116,7 +3116,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4b83, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3136,7 +3136,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_13f7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245768, + .flow_sig_id = 245768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3157,7 +3157,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_37af, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3178,7 +3178,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6857, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245832, + .flow_sig_id = 245832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3200,7 +3200,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d1f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3217,7 +3217,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0563, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131080, + .flow_sig_id = 131080UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3235,7 +3235,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_290b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3253,7 +3253,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59c3, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131144, + .flow_sig_id = 131144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3272,7 +3272,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d1b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3290,7 +3290,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_256f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196616, + .flow_sig_id = 196616UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3309,7 +3309,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4937, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3328,7 +3328,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_111b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196680, + .flow_sig_id = 196680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3348,7 +3348,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5f4b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3366,7 +3366,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_275f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393224, + .flow_sig_id = 393224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3385,7 +3385,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4b67, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3404,7 +3404,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_134b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393288, + .flow_sig_id = 393288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3424,7 +3424,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1683, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3443,7 +3443,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_475b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458760, + .flow_sig_id = 458760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3463,7 +3463,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_02bf, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3483,7 +3483,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3377, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458824, + .flow_sig_id = 458824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3504,7 +3504,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_19db, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3522,7 +3522,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4a93, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655368, + .flow_sig_id = 655368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3541,7 +3541,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_05f7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3560,7 +3560,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_368f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655432, + .flow_sig_id = 655432UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3580,7 +3580,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39c7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3599,7 +3599,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_022b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720904, + .flow_sig_id = 720904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3619,7 +3619,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_25f3, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3639,7 +3639,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_568b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720968, + .flow_sig_id = 720968UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3660,7 +3660,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3c37, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3679,7 +3679,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_041b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917512, + .flow_sig_id = 917512UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3699,7 +3699,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2823, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3719,7 +3719,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_58fb, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917576, + .flow_sig_id = 917576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3740,7 +3740,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c33, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3760,7 +3760,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2407, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983048, + .flow_sig_id = 983048UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3781,7 +3781,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_482f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3802,7 +3802,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1033, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983112, + .flow_sig_id = 983112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3824,7 +3824,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3887, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3841,7 +3841,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00bb, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32776, + .flow_sig_id = 32776UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3859,7 +3859,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2493, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3877,7 +3877,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55db, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32840, + .flow_sig_id = 32840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3896,7 +3896,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5043, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3914,7 +3914,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1877, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49160, + .flow_sig_id = 49160UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3933,7 +3933,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3baf, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3952,7 +3952,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0443, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49224, + .flow_sig_id = 49224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3972,7 +3972,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5883, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -3990,7 +3990,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_20b7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98312, + .flow_sig_id = 98312UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4009,7 +4009,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_44ef, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4028,7 +4028,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0c83, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98376, + .flow_sig_id = 98376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4048,7 +4048,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_070b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4067,7 +4067,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3873, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114696, + .flow_sig_id = 114696UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4087,7 +4087,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5bab, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4107,7 +4107,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_245f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114760, + .flow_sig_id = 114760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4128,7 +4128,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_142b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4146,7 +4146,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4513, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163848, + .flow_sig_id = 163848UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4165,7 +4165,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0037, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4184,7 +4184,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_317f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163912, + .flow_sig_id = 163912UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4204,7 +4204,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2be7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4223,7 +4223,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c2f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180232, + .flow_sig_id = 180232UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4243,7 +4243,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_17f3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4263,7 +4263,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_483b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180296, + .flow_sig_id = 180296UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4284,7 +4284,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3427, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4303,7 +4303,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_656f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229384, + .flow_sig_id = 229384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4323,7 +4323,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2033, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4343,7 +4343,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_517b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229448, + .flow_sig_id = 229448UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4364,7 +4364,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4be3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4384,7 +4384,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1397, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245768, + .flow_sig_id = 245768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4405,7 +4405,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_37cf, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4426,7 +4426,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6837, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245832, + .flow_sig_id = 245832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4448,7 +4448,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d7f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4465,7 +4465,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0503, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131080, + .flow_sig_id = 131080UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4483,7 +4483,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_296b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4501,7 +4501,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59a3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131144, + .flow_sig_id = 131144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4520,7 +4520,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d7b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4538,7 +4538,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_250f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196616, + .flow_sig_id = 196616UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4557,7 +4557,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4957, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4576,7 +4576,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_117b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196680, + .flow_sig_id = 196680UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4596,7 +4596,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5f2b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4614,7 +4614,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_273f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393224, + .flow_sig_id = 393224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4633,7 +4633,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4b07, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4652,7 +4652,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_132b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393288, + .flow_sig_id = 393288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4672,7 +4672,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_16e3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4691,7 +4691,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_473b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458760, + .flow_sig_id = 458760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4711,7 +4711,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_02df, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4731,7 +4731,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3317, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458824, + .flow_sig_id = 458824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4752,7 +4752,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_19bb, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4770,7 +4770,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4af3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655368, + .flow_sig_id = 655368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4789,7 +4789,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0597, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4808,7 +4808,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_36ef, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655432, + .flow_sig_id = 655432UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4828,7 +4828,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39a7, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4847,7 +4847,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_024b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720904, + .flow_sig_id = 720904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4867,7 +4867,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2593, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4887,7 +4887,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_56eb, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720968, + .flow_sig_id = 720968UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4908,7 +4908,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3c57, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4927,7 +4927,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_047b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917512, + .flow_sig_id = 917512UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4947,7 +4947,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2843, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4967,7 +4967,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_589b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917576, + .flow_sig_id = 917576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -4988,7 +4988,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c53, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -5008,7 +5008,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2467, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983048, + .flow_sig_id = 983048UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -5029,7 +5029,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_484f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -5050,7 +5050,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1053, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983112, + .flow_sig_id = 983112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -5072,7 +5072,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ce1, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5086,7 +5086,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4579, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5101,7 +5101,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1735, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5115,7 +5115,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_45bd, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5130,7 +5130,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3feb, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5145,7 +5145,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2bf7, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5161,7 +5161,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5727, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5177,7 +5177,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4333, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5194,7 +5194,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4453, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5209,7 +5209,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_304f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5225,7 +5225,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_645f, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5241,7 +5241,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_504b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5258,7 +5258,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5cc1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5273,7 +5273,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4559, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5289,7 +5289,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2285, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5305,7 +5305,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b1d, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5322,7 +5322,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b49, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5338,7 +5338,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c95, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5355,7 +5355,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39c1, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5372,7 +5372,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2259, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5390,7 +5390,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1715, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5405,7 +5405,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_459d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5421,7 +5421,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_571d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5437,7 +5437,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1cd1, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5454,7 +5454,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3711, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5470,7 +5470,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6599, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5487,7 +5487,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e55, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5504,7 +5504,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3cdd, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5522,7 +5522,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ca1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5537,7 +5537,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4539, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5553,7 +5553,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_22e5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5569,7 +5569,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b7d, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5586,7 +5586,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b29, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5602,7 +5602,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5cf5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5619,7 +5619,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39a1, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5636,7 +5636,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2239, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5654,7 +5654,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1775, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5669,7 +5669,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_45fd, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5685,7 +5685,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_577d, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5701,7 +5701,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1cb1, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5718,7 +5718,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3771, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5734,7 +5734,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_65f9, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5751,7 +5751,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e35, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5768,7 +5768,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3cbd, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5786,7 +5786,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3fcb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5802,7 +5802,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2bd7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5819,7 +5819,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5707, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5836,7 +5836,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4313, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5854,7 +5854,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5fc7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5871,7 +5871,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4bd3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5889,7 +5889,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e4f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5907,7 +5907,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_632f, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5926,7 +5926,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1baf, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5943,7 +5943,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_07bb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5961,7 +5961,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_32eb, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5979,7 +5979,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1ef7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -5998,7 +5998,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bab, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6016,7 +6016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_27b7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6035,7 +6035,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_52e7, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6054,7 +6054,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ef3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6074,7 +6074,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4473, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6090,7 +6090,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_306f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6107,7 +6107,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_647f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6124,7 +6124,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_506b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6142,7 +6142,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66af, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6159,7 +6159,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_525b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6177,7 +6177,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1de7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6195,7 +6195,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0993, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6214,7 +6214,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_213f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6231,7 +6231,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0d2b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6249,7 +6249,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_413b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6267,7 +6267,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2cd7, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6286,7 +6286,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_436b, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6304,7 +6304,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2f07, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6323,7 +6323,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6317, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6342,7 +6342,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4f03, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6362,7 +6362,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3fab, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6378,7 +6378,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2bb7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6395,7 +6395,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5767, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6412,7 +6412,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4373, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6430,7 +6430,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5fa7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6447,7 +6447,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4bb3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6465,7 +6465,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e2f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6483,7 +6483,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_634f, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6502,7 +6502,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1bcf, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6519,7 +6519,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_07db, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6537,7 +6537,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_328b, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6555,7 +6555,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1e97, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6574,7 +6574,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3bcb, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6592,7 +6592,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_27d7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6611,7 +6611,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5287, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6630,7 +6630,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3e93, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6650,7 +6650,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4413, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6666,7 +6666,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_300f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6683,7 +6683,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_641f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6700,7 +6700,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_500b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6718,7 +6718,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66cf, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6735,7 +6735,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_523b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6753,7 +6753,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1d87, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6771,7 +6771,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_09f3, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6790,7 +6790,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_215f, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6807,7 +6807,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0d4b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6825,7 +6825,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_415b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6843,7 +6843,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2cb7, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6862,7 +6862,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_430b, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6880,7 +6880,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2f67, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6899,7 +6899,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_6377, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6918,7 +6918,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4f63, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -6938,7 +6938,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29b5, .class_tid = 1, .hdr_sig_id = 0, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -6953,7 +6953,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29ad, .class_tid = 1, .hdr_sig_id = 1, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -6968,7 +6968,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29b7, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -6984,7 +6984,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1583, .class_tid = 1, .hdr_sig_id = 2, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7001,7 +7001,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29af, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7017,7 +7017,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_159b, .class_tid = 1, .hdr_sig_id = 3, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7034,7 +7034,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2995, .class_tid = 1, .hdr_sig_id = 4, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7050,7 +7050,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_298d, .class_tid = 1, .hdr_sig_id = 5, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7066,7 +7066,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29f5, .class_tid = 1, .hdr_sig_id = 6, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7082,7 +7082,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29ed, .class_tid = 1, .hdr_sig_id = 7, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7098,7 +7098,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2997, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7115,7 +7115,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15a3, .class_tid = 1, .hdr_sig_id = 8, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7133,7 +7133,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_298f, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7150,7 +7150,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15bb, .class_tid = 1, .hdr_sig_id = 9, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7168,7 +7168,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29f7, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7185,7 +7185,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15c3, .class_tid = 1, .hdr_sig_id = 10, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7203,7 +7203,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29ef, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 8, + .flow_sig_id = 8UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7220,7 +7220,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15db, .class_tid = 1, .hdr_sig_id = 11, - .flow_sig_id = 72, + .flow_sig_id = 72UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -7238,7 +7238,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1151, .class_tid = 1, .hdr_sig_id = 12, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 3, .app_sig = 0, .hdr_sig = { .bits = @@ -7255,7 +7255,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_315d, .class_tid = 1, .hdr_sig_id = 12, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 3, .app_sig = 0, .hdr_sig = { .bits = @@ -7273,7 +7273,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3612, .class_tid = 2, .hdr_sig_id = 0, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -7292,7 +7292,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_66da, .class_tid = 2, .hdr_sig_id = 0, - .flow_sig_id = 81928, + .flow_sig_id = 81928UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -7312,7 +7312,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e082, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7332,7 +7332,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ab46, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7353,7 +7353,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c82a, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7374,7 +7374,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f9a2, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7396,7 +7396,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d8ce, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 538184704, + .flow_sig_id = 538184704UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7417,7 +7417,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a2d2, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 538192896, + .flow_sig_id = 538192896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7439,7 +7439,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c076, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 540281856, + .flow_sig_id = 540281856UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7461,7 +7461,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f1ee, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 540290048, + .flow_sig_id = 540290048UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7484,7 +7484,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a96e, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1075055616, + .flow_sig_id = 1075055616UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7505,7 +7505,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dae6, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1075063808, + .flow_sig_id = 1075063808UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7527,7 +7527,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c7aa, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1077152768, + .flow_sig_id = 1077152768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7549,7 +7549,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c26e, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1077160960, + .flow_sig_id = 1077160960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7572,7 +7572,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a0fa, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1611926528, + .flow_sig_id = 1611926528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7594,7 +7594,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d272, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1611934720, + .flow_sig_id = 1611934720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7617,7 +7617,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fff6, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1614023680, + .flow_sig_id = 1614023680UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7640,7 +7640,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e16e, .class_tid = 2, .hdr_sig_id = 1, - .flow_sig_id = 1614031872, + .flow_sig_id = 1614031872UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7664,7 +7664,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e165, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7684,7 +7684,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_aaa1, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7705,7 +7705,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c9cd, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7726,7 +7726,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f845, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7748,7 +7748,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_90f9, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2148797440, + .flow_sig_id = 2148797440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7769,7 +7769,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c371, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2148805632, + .flow_sig_id = 2148805632UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7791,7 +7791,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e19d, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2150894592, + .flow_sig_id = 2150894592UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7813,7 +7813,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d015, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 2150902784, + .flow_sig_id = 2150902784UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7836,7 +7836,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8c09, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4296281088, + .flow_sig_id = 4296281088UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7857,7 +7857,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_be89, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4296289280, + .flow_sig_id = 4296289280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7879,7 +7879,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ddad, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4298378240, + .flow_sig_id = 4298378240UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7901,7 +7901,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cc2d, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 4298386432, + .flow_sig_id = 4298386432UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7924,7 +7924,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a4d9, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 6443764736, + .flow_sig_id = 6443764736UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7946,7 +7946,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d759, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 6443772928, + .flow_sig_id = 6443772928UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7969,7 +7969,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f27d, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 6445861888, + .flow_sig_id = 6445861888UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -7992,7 +7992,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e4fd, .class_tid = 2, .hdr_sig_id = 2, - .flow_sig_id = 6445870080, + .flow_sig_id = 6445870080UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8016,7 +8016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ecf6, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8037,7 +8037,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a732, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8059,7 +8059,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c45e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8081,7 +8081,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f5d6, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8104,7 +8104,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d4ba, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 538184704, + .flow_sig_id = 538184704UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8126,7 +8126,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_aea6, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 538192896, + .flow_sig_id = 538192896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8149,7 +8149,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cc02, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 540281856, + .flow_sig_id = 540281856UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8172,7 +8172,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fd9a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 540290048, + .flow_sig_id = 540290048UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8196,7 +8196,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a51a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 1075055616, + .flow_sig_id = 1075055616UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8218,7 +8218,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d692, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 1075063808, + .flow_sig_id = 1075063808UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8241,7 +8241,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cbde, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 1077152768, + .flow_sig_id = 1077152768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8264,7 +8264,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ce1a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 1077160960, + .flow_sig_id = 1077160960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8288,7 +8288,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ac8e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 1611926528, + .flow_sig_id = 1611926528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8311,7 +8311,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_de06, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 1611934720, + .flow_sig_id = 1611934720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8335,7 +8335,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f382, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 1614023680, + .flow_sig_id = 1614023680UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8359,7 +8359,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ed1a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 1614031872, + .flow_sig_id = 1614031872UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8384,7 +8384,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9d6a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 2148797440, + .flow_sig_id = 2148797440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8406,7 +8406,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cee2, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 2148805632, + .flow_sig_id = 2148805632UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8429,7 +8429,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ec0e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 2150894592, + .flow_sig_id = 2150894592UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8452,7 +8452,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dd86, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 2150902784, + .flow_sig_id = 2150902784UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8476,7 +8476,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_852e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 2685668352, + .flow_sig_id = 2685668352UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8499,7 +8499,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b6a6, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 2685676544, + .flow_sig_id = 2685676544UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8523,7 +8523,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_eb82, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 2687765504, + .flow_sig_id = 2687765504UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8547,7 +8547,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c50a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 2687773696, + .flow_sig_id = 2687773696UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8572,7 +8572,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ccca, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 3222539264, + .flow_sig_id = 3222539264UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8595,7 +8595,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8706, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 3222547456, + .flow_sig_id = 3222547456UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8619,7 +8619,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d38e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 3224636416, + .flow_sig_id = 3224636416UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8643,7 +8643,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d5ca, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 3224644608, + .flow_sig_id = 3224644608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8668,7 +8668,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b48e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 3759410176, + .flow_sig_id = 3759410176UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8692,7 +8692,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8e8a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 3759418368, + .flow_sig_id = 3759418368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8717,7 +8717,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_db02, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 3761507328, + .flow_sig_id = 3761507328UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8742,7 +8742,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dd8e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 3761515520, + .flow_sig_id = 3761515520UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8768,7 +8768,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_819a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 4296281088, + .flow_sig_id = 4296281088UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8790,7 +8790,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b31a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 4296289280, + .flow_sig_id = 4296289280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8813,7 +8813,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d03e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 4298378240, + .flow_sig_id = 4298378240UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8836,7 +8836,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c1be, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 4298386432, + .flow_sig_id = 4298386432UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8860,7 +8860,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_890e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 4833152000, + .flow_sig_id = 4833152000UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8883,7 +8883,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ba8e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 4833160192, + .flow_sig_id = 4833160192UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8907,7 +8907,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dfaa, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 4835249152, + .flow_sig_id = 4835249152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8931,7 +8931,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c93a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 4835257344, + .flow_sig_id = 4835257344UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8956,7 +8956,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b11a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 5370022912, + .flow_sig_id = 5370022912UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -8979,7 +8979,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8b4e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 5370031104, + .flow_sig_id = 5370031104UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9003,7 +9003,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c79e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 5372120064, + .flow_sig_id = 5372120064UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9027,7 +9027,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d9da, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 5372128256, + .flow_sig_id = 5372128256UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9052,7 +9052,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b88e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 5906893824, + .flow_sig_id = 5906893824UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9076,7 +9076,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ea0e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 5906902016, + .flow_sig_id = 5906902016UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9101,7 +9101,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cf0a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 5908990976, + .flow_sig_id = 5908990976UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9126,7 +9126,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c18e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 5908999168, + .flow_sig_id = 5908999168UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9152,7 +9152,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a94a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 6443764736, + .flow_sig_id = 6443764736UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9175,7 +9175,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_daca, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 6443772928, + .flow_sig_id = 6443772928UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9199,7 +9199,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ffee, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 6445861888, + .flow_sig_id = 6445861888UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9223,7 +9223,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e96e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 6445870080, + .flow_sig_id = 6445870080UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9248,7 +9248,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_910e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 6980635648, + .flow_sig_id = 6980635648UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9272,7 +9272,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c28e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 6980643840, + .flow_sig_id = 6980643840UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9297,7 +9297,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e7aa, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 6982732800, + .flow_sig_id = 6982732800UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9322,7 +9322,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d12a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 6982740992, + .flow_sig_id = 6982740992UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9348,7 +9348,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d8ca, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 7517506560, + .flow_sig_id = 7517506560UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9372,7 +9372,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_930e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 7517514752, + .flow_sig_id = 7517514752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9397,7 +9397,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ef4e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 7519603712, + .flow_sig_id = 7519603712UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9422,7 +9422,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e18a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 7519611904, + .flow_sig_id = 7519611904UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9448,7 +9448,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c08e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 8054377472, + .flow_sig_id = 8054377472UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9473,7 +9473,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9a8a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 8054385664, + .flow_sig_id = 8054385664UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9499,7 +9499,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d70a, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 8056474624, + .flow_sig_id = 8056474624UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9525,7 +9525,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e90e, .class_tid = 2, .hdr_sig_id = 3, - .flow_sig_id = 8056482816, + .flow_sig_id = 8056482816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9552,7 +9552,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_edd9, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9573,7 +9573,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a61d, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9595,7 +9595,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c571, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9617,7 +9617,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f4f9, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9640,7 +9640,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9c45, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 2148797440, + .flow_sig_id = 2148797440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9662,7 +9662,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cfcd, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 2148805632, + .flow_sig_id = 2148805632UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9685,7 +9685,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ed21, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 2150894592, + .flow_sig_id = 2150894592UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9708,7 +9708,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dca9, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 2150902784, + .flow_sig_id = 2150902784UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9732,7 +9732,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_80b5, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 4296281088, + .flow_sig_id = 4296281088UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9754,7 +9754,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b235, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 4296289280, + .flow_sig_id = 4296289280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9777,7 +9777,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d111, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 4298378240, + .flow_sig_id = 4298378240UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9800,7 +9800,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c091, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 4298386432, + .flow_sig_id = 4298386432UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9824,7 +9824,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a865, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 6443764736, + .flow_sig_id = 6443764736UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9847,7 +9847,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dbe5, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 6443772928, + .flow_sig_id = 6443772928UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9871,7 +9871,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fec1, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 6445861888, + .flow_sig_id = 6445861888UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9895,7 +9895,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e841, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 6445870080, + .flow_sig_id = 6445870080UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9920,7 +9920,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8e85, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 8591248384, + .flow_sig_id = 8591248384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9942,7 +9942,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b80d, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 8591256576, + .flow_sig_id = 8591256576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9965,7 +9965,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_df65, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 8593345536, + .flow_sig_id = 8593345536UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -9988,7 +9988,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ceed, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 8593353728, + .flow_sig_id = 8593353728UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10012,7 +10012,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9645, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 10738732032, + .flow_sig_id = 10738732032UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10035,7 +10035,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c1cd, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 10738740224, + .flow_sig_id = 10738740224UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10059,7 +10059,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e725, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 10740829184, + .flow_sig_id = 10740829184UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10083,7 +10083,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d6ad, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 10740837376, + .flow_sig_id = 10740837376UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10108,7 +10108,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9aa5, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 12886215680, + .flow_sig_id = 12886215680UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10131,7 +10131,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b425, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 12886223872, + .flow_sig_id = 12886223872UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10155,7 +10155,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_eb05, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 12888312832, + .flow_sig_id = 12888312832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10179,7 +10179,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_da85, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 12888321024, + .flow_sig_id = 12888321024UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10204,7 +10204,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a265, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 15033699328, + .flow_sig_id = 15033699328UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10228,7 +10228,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dde5, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 15033707520, + .flow_sig_id = 15033707520UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10253,7 +10253,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f0c5, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 15035796480, + .flow_sig_id = 15035796480UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10278,7 +10278,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e245, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 15035804672, + .flow_sig_id = 15035804672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10304,7 +10304,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8b8f, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 17181182976, + .flow_sig_id = 17181182976UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10326,7 +10326,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a517, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 17181191168, + .flow_sig_id = 17181191168UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10349,7 +10349,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d86b, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 17183280128, + .flow_sig_id = 17183280128UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10372,7 +10372,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cbf3, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 17183288320, + .flow_sig_id = 17183288320UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10396,7 +10396,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_934f, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 19328666624, + .flow_sig_id = 19328666624UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10419,7 +10419,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c2c7, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 19328674816, + .flow_sig_id = 19328674816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10443,7 +10443,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e02b, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 19330763776, + .flow_sig_id = 19330763776UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10467,7 +10467,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d3a3, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 19330771968, + .flow_sig_id = 19330771968UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10492,7 +10492,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_87a7, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 21476150272, + .flow_sig_id = 21476150272UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10515,7 +10515,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b137, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 21476158464, + .flow_sig_id = 21476158464UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10539,7 +10539,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d403, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 21478247424, + .flow_sig_id = 21478247424UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10563,7 +10563,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c793, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 21478255616, + .flow_sig_id = 21478255616UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10588,7 +10588,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_af67, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 23623633920, + .flow_sig_id = 23623633920UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10612,7 +10612,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dee7, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 23623642112, + .flow_sig_id = 23623642112UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10637,7 +10637,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fdc3, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 23625731072, + .flow_sig_id = 23625731072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10662,7 +10662,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ef43, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 23625739264, + .flow_sig_id = 23625739264UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10688,7 +10688,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8dbf, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 25771117568, + .flow_sig_id = 25771117568UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10711,7 +10711,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_bf07, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 25771125760, + .flow_sig_id = 25771125760UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10735,7 +10735,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d21f, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 25773214720, + .flow_sig_id = 25773214720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10759,7 +10759,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cde7, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 25773222912, + .flow_sig_id = 25773222912UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10784,7 +10784,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_956f, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 27918601216, + .flow_sig_id = 27918601216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10808,7 +10808,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c4c7, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 27918609408, + .flow_sig_id = 27918609408UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10833,7 +10833,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fbcf, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 27920698368, + .flow_sig_id = 27920698368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10858,7 +10858,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d5a7, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 27920706560, + .flow_sig_id = 27920706560UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10884,7 +10884,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9957, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 30066084864, + .flow_sig_id = 30066084864UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10908,7 +10908,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cb27, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 30066093056, + .flow_sig_id = 30066093056UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10933,7 +10933,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ee37, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 30068182016, + .flow_sig_id = 30068182016UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10958,7 +10958,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d987, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 30068190208, + .flow_sig_id = 30068190208UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -10984,7 +10984,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a107, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 32213568512, + .flow_sig_id = 32213568512UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11009,7 +11009,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d0e7, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 32213576704, + .flow_sig_id = 32213576704UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11035,7 +11035,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f7e7, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 32215665664, + .flow_sig_id = 32215665664UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11061,7 +11061,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c827, .class_tid = 2, .hdr_sig_id = 4, - .flow_sig_id = 32215673856, + .flow_sig_id = 32215673856UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11088,7 +11088,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f76a, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11109,7 +11109,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_bcae, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11131,7 +11131,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dfc2, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11153,7 +11153,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ee4a, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11176,7 +11176,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cf26, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 538184704, + .flow_sig_id = 538184704UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11198,7 +11198,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b53a, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 538192896, + .flow_sig_id = 538192896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11221,7 +11221,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d79e, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 540281856, + .flow_sig_id = 540281856UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11244,7 +11244,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e606, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 540290048, + .flow_sig_id = 540290048UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11268,7 +11268,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_be86, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 1075055616, + .flow_sig_id = 1075055616UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11290,7 +11290,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cd0e, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 1075063808, + .flow_sig_id = 1075063808UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11313,7 +11313,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d042, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 1077152768, + .flow_sig_id = 1077152768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11336,7 +11336,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d586, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 1077160960, + .flow_sig_id = 1077160960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11360,7 +11360,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b712, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 1611926528, + .flow_sig_id = 1611926528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11383,7 +11383,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c59a, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 1611934720, + .flow_sig_id = 1611934720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11407,7 +11407,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e81e, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 1614023680, + .flow_sig_id = 1614023680UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11431,7 +11431,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f686, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 1614031872, + .flow_sig_id = 1614031872UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11456,7 +11456,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_86f6, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 2148797440, + .flow_sig_id = 2148797440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11478,7 +11478,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d57e, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 2148805632, + .flow_sig_id = 2148805632UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11501,7 +11501,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f792, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 2150894592, + .flow_sig_id = 2150894592UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11524,7 +11524,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c61a, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 2150902784, + .flow_sig_id = 2150902784UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11548,7 +11548,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9eb2, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 2685668352, + .flow_sig_id = 2685668352UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11571,7 +11571,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ad3a, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 2685676544, + .flow_sig_id = 2685676544UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11595,7 +11595,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f01e, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 2687765504, + .flow_sig_id = 2687765504UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11619,7 +11619,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_de96, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 2687773696, + .flow_sig_id = 2687773696UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11644,7 +11644,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d756, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 3222539264, + .flow_sig_id = 3222539264UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11667,7 +11667,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9c9a, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 3222547456, + .flow_sig_id = 3222547456UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11691,7 +11691,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c812, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 3224636416, + .flow_sig_id = 3224636416UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11715,7 +11715,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ce56, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 3224644608, + .flow_sig_id = 3224644608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11740,7 +11740,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_af12, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 3759410176, + .flow_sig_id = 3759410176UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11764,7 +11764,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9516, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 3759418368, + .flow_sig_id = 3759418368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11789,7 +11789,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c09e, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 3761507328, + .flow_sig_id = 3761507328UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11814,7 +11814,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c612, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 3761515520, + .flow_sig_id = 3761515520UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11840,7 +11840,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9a06, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 4296281088, + .flow_sig_id = 4296281088UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11862,7 +11862,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a886, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 4296289280, + .flow_sig_id = 4296289280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11885,7 +11885,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cba2, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 4298378240, + .flow_sig_id = 4298378240UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11908,7 +11908,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_da22, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 4298386432, + .flow_sig_id = 4298386432UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11932,7 +11932,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9292, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 4833152000, + .flow_sig_id = 4833152000UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11955,7 +11955,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a112, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 4833160192, + .flow_sig_id = 4833160192UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -11979,7 +11979,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c436, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 4835249152, + .flow_sig_id = 4835249152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12003,7 +12003,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d2a6, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 4835257344, + .flow_sig_id = 4835257344UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12028,7 +12028,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_aa86, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 5370022912, + .flow_sig_id = 5370022912UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12051,7 +12051,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_90d2, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 5370031104, + .flow_sig_id = 5370031104UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12075,7 +12075,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dc02, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 5372120064, + .flow_sig_id = 5372120064UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12099,7 +12099,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c246, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 5372128256, + .flow_sig_id = 5372128256UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12124,7 +12124,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a312, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 5906893824, + .flow_sig_id = 5906893824UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12148,7 +12148,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f192, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 5906902016, + .flow_sig_id = 5906902016UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12173,7 +12173,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d496, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 5908990976, + .flow_sig_id = 5908990976UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12198,7 +12198,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_da12, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 5908999168, + .flow_sig_id = 5908999168UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12224,7 +12224,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b2d6, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 6443764736, + .flow_sig_id = 6443764736UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12247,7 +12247,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c156, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 6443772928, + .flow_sig_id = 6443772928UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12271,7 +12271,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e472, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 6445861888, + .flow_sig_id = 6445861888UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12295,7 +12295,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f2f2, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 6445870080, + .flow_sig_id = 6445870080UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12320,7 +12320,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8a92, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 6980635648, + .flow_sig_id = 6980635648UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12344,7 +12344,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d912, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 6980643840, + .flow_sig_id = 6980643840UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12369,7 +12369,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fc36, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 6982732800, + .flow_sig_id = 6982732800UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12394,7 +12394,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cab6, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 6982740992, + .flow_sig_id = 6982740992UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12420,7 +12420,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c356, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 7517506560, + .flow_sig_id = 7517506560UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12444,7 +12444,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8892, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 7517514752, + .flow_sig_id = 7517514752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12469,7 +12469,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f4d2, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 7519603712, + .flow_sig_id = 7519603712UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12494,7 +12494,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fa16, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 7519611904, + .flow_sig_id = 7519611904UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12520,7 +12520,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_db12, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 8054377472, + .flow_sig_id = 8054377472UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12545,7 +12545,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8116, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 8054385664, + .flow_sig_id = 8054385664UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12571,7 +12571,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cc96, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 8056474624, + .flow_sig_id = 8056474624UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12597,7 +12597,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f292, .class_tid = 2, .hdr_sig_id = 5, - .flow_sig_id = 8056482816, + .flow_sig_id = 8056482816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12624,7 +12624,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e84d, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12645,7 +12645,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a389, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12667,7 +12667,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c0e5, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12689,7 +12689,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f16d, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12712,7 +12712,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_99d1, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 2148797440, + .flow_sig_id = 2148797440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12734,7 +12734,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ca59, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 2148805632, + .flow_sig_id = 2148805632UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12757,7 +12757,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e8b5, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 2150894592, + .flow_sig_id = 2150894592UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12780,7 +12780,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d93d, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 2150902784, + .flow_sig_id = 2150902784UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12804,7 +12804,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8521, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 4296281088, + .flow_sig_id = 4296281088UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12826,7 +12826,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b7a1, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 4296289280, + .flow_sig_id = 4296289280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12849,7 +12849,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d485, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 4298378240, + .flow_sig_id = 4298378240UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12872,7 +12872,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c505, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 4298386432, + .flow_sig_id = 4298386432UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12896,7 +12896,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_adf1, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 6443764736, + .flow_sig_id = 6443764736UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12919,7 +12919,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_de71, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 6443772928, + .flow_sig_id = 6443772928UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12943,7 +12943,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fb55, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 6445861888, + .flow_sig_id = 6445861888UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12967,7 +12967,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_edd5, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 6445870080, + .flow_sig_id = 6445870080UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -12992,7 +12992,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8b11, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 8591248384, + .flow_sig_id = 8591248384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13014,7 +13014,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_bd99, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 8591256576, + .flow_sig_id = 8591256576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13037,7 +13037,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_daf1, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 8593345536, + .flow_sig_id = 8593345536UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13060,7 +13060,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cb79, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 8593353728, + .flow_sig_id = 8593353728UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13084,7 +13084,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_93d1, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 10738732032, + .flow_sig_id = 10738732032UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13107,7 +13107,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c459, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 10738740224, + .flow_sig_id = 10738740224UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13131,7 +13131,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e2b1, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 10740829184, + .flow_sig_id = 10740829184UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13155,7 +13155,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d339, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 10740837376, + .flow_sig_id = 10740837376UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13180,7 +13180,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9f31, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 12886215680, + .flow_sig_id = 12886215680UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13203,7 +13203,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b1b1, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 12886223872, + .flow_sig_id = 12886223872UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13227,7 +13227,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ee91, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 12888312832, + .flow_sig_id = 12888312832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13251,7 +13251,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_df11, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 12888321024, + .flow_sig_id = 12888321024UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13276,7 +13276,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a7f1, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 15033699328, + .flow_sig_id = 15033699328UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13300,7 +13300,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d871, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 15033707520, + .flow_sig_id = 15033707520UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13325,7 +13325,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f551, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 15035796480, + .flow_sig_id = 15035796480UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13350,7 +13350,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e7d1, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 15035804672, + .flow_sig_id = 15035804672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13376,7 +13376,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8e1b, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 17181182976, + .flow_sig_id = 17181182976UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13398,7 +13398,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a083, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 17181191168, + .flow_sig_id = 17181191168UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13421,7 +13421,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ddff, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 17183280128, + .flow_sig_id = 17183280128UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13444,7 +13444,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ce67, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 17183288320, + .flow_sig_id = 17183288320UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13468,7 +13468,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_96db, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 19328666624, + .flow_sig_id = 19328666624UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13491,7 +13491,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c753, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 19328674816, + .flow_sig_id = 19328674816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13515,7 +13515,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e5bf, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 19330763776, + .flow_sig_id = 19330763776UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13539,7 +13539,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d637, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 19330771968, + .flow_sig_id = 19330771968UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13564,7 +13564,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8233, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 21476150272, + .flow_sig_id = 21476150272UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13587,7 +13587,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b4a3, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 21476158464, + .flow_sig_id = 21476158464UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13611,7 +13611,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d197, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 21478247424, + .flow_sig_id = 21478247424UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13635,7 +13635,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c207, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 21478255616, + .flow_sig_id = 21478255616UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13660,7 +13660,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_aaf3, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 23623633920, + .flow_sig_id = 23623633920UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13684,7 +13684,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_db73, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 23623642112, + .flow_sig_id = 23623642112UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13709,7 +13709,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f857, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 23625731072, + .flow_sig_id = 23625731072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13734,7 +13734,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ead7, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 23625739264, + .flow_sig_id = 23625739264UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13760,7 +13760,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_882b, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 25771117568, + .flow_sig_id = 25771117568UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13783,7 +13783,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ba93, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 25771125760, + .flow_sig_id = 25771125760UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13807,7 +13807,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d78b, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 25773214720, + .flow_sig_id = 25773214720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13831,7 +13831,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c873, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 25773222912, + .flow_sig_id = 25773222912UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13856,7 +13856,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_90fb, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 27918601216, + .flow_sig_id = 27918601216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13880,7 +13880,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c153, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 27918609408, + .flow_sig_id = 27918609408UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13905,7 +13905,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_fe5b, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 27920698368, + .flow_sig_id = 27920698368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13930,7 +13930,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d033, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 27920706560, + .flow_sig_id = 27920706560UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13956,7 +13956,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9cc3, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 30066084864, + .flow_sig_id = 30066084864UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -13980,7 +13980,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ceb3, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 30066093056, + .flow_sig_id = 30066093056UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -14005,7 +14005,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_eba3, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 30068182016, + .flow_sig_id = 30068182016UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -14030,7 +14030,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dc13, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 30068190208, + .flow_sig_id = 30068190208UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -14056,7 +14056,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a493, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 32213568512, + .flow_sig_id = 32213568512UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -14081,7 +14081,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d573, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 32213576704, + .flow_sig_id = 32213576704UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -14107,7 +14107,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_f273, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 32215665664, + .flow_sig_id = 32215665664UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -14133,7 +14133,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_cdb3, .class_tid = 2, .hdr_sig_id = 6, - .flow_sig_id = 32215673856, + .flow_sig_id = 32215673856UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -14160,7 +14160,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ff35, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 1313792, + .flow_sig_id = 1313792UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14181,7 +14181,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_b4f1, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 1321984, + .flow_sig_id = 1321984UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14203,7 +14203,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d79d, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 3410944, + .flow_sig_id = 3410944UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14225,7 +14225,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_e615, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 3419136, + .flow_sig_id = 3419136UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14248,7 +14248,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_8ea9, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 2148797440, + .flow_sig_id = 2148797440UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14270,7 +14270,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_dd21, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 2148805632, + .flow_sig_id = 2148805632UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14293,7 +14293,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ffcd, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 2150894592, + .flow_sig_id = 2150894592UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14316,7 +14316,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ce45, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 2150902784, + .flow_sig_id = 2150902784UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14340,7 +14340,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_9259, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 4296281088, + .flow_sig_id = 4296281088UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14362,7 +14362,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_a0d9, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 4296289280, + .flow_sig_id = 4296289280UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14385,7 +14385,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c3fd, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 4298378240, + .flow_sig_id = 4298378240UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14408,7 +14408,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_d27d, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 4298386432, + .flow_sig_id = 4298386432UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14432,7 +14432,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ba89, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 6443764736, + .flow_sig_id = 6443764736UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14455,7 +14455,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_c909, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 6443772928, + .flow_sig_id = 6443772928UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14479,7 +14479,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_ec2d, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 6445861888, + .flow_sig_id = 6445861888UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14503,7 +14503,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_faad, .class_tid = 2, .hdr_sig_id = 7, - .flow_sig_id = 6445870080, + .flow_sig_id = 6445870080UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -14528,7 +14528,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_34c6, .class_tid = 3, .hdr_sig_id = 0, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14543,7 +14543,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0c22, .class_tid = 3, .hdr_sig_id = 0, - .flow_sig_id = 4100, + .flow_sig_id = 4100UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14559,7 +14559,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1cbe, .class_tid = 3, .hdr_sig_id = 0, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14575,7 +14575,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_179a, .class_tid = 3, .hdr_sig_id = 0, - .flow_sig_id = 6148, + .flow_sig_id = 6148UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14592,7 +14592,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59be, .class_tid = 3, .hdr_sig_id = 1, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14607,7 +14607,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_515a, .class_tid = 3, .hdr_sig_id = 1, - .flow_sig_id = 16388, + .flow_sig_id = 16388UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14623,7 +14623,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1c72, .class_tid = 3, .hdr_sig_id = 1, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14639,7 +14639,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_171e, .class_tid = 3, .hdr_sig_id = 1, - .flow_sig_id = 24580, + .flow_sig_id = 24580UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14656,7 +14656,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_19c8, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14672,7 +14672,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_112c, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 32772, + .flow_sig_id = 32772UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14689,7 +14689,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4d68, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14706,7 +14706,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_444c, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 32836, + .flow_sig_id = 32836UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14724,7 +14724,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e8c, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14741,7 +14741,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_09e0, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 49156, + .flow_sig_id = 49156UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14759,7 +14759,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1af0, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14777,7 +14777,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15d4, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 49220, + .flow_sig_id = 49220UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14796,7 +14796,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1dd0, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14812,7 +14812,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_14f4, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 131076, + .flow_sig_id = 131076UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14829,7 +14829,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_70b0, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14846,7 +14846,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4854, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 131140, + .flow_sig_id = 131140UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14864,7 +14864,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3dd4, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14881,7 +14881,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_34f8, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 196612, + .flow_sig_id = 196612UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14899,7 +14899,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_09e8, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14917,7 +14917,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_008c, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 196676, + .flow_sig_id = 196676UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14936,7 +14936,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_34e6, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14952,7 +14952,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0c02, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 4100, + .flow_sig_id = 4100UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14969,7 +14969,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1c9e, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -14986,7 +14986,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_17ba, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 6148, + .flow_sig_id = 6148UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15004,7 +15004,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_429e, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15021,7 +15021,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5dba, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 12292, + .flow_sig_id = 12292UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15039,7 +15039,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2a16, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15057,7 +15057,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2532, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 14340, + .flow_sig_id = 14340UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15076,7 +15076,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2da2, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15093,7 +15093,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_24fe, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 20484, + .flow_sig_id = 20484UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15111,7 +15111,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_355a, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15129,7 +15129,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0c76, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 22532, + .flow_sig_id = 22532UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15148,7 +15148,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_13e6, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15166,7 +15166,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7276, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 28676, + .flow_sig_id = 28676UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15185,7 +15185,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_42d2, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15204,7 +15204,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5dee, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 30724, + .flow_sig_id = 30724UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15224,7 +15224,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59de, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15240,7 +15240,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_513a, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 16388, + .flow_sig_id = 16388UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15257,7 +15257,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1c12, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15274,7 +15274,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_177e, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 24580, + .flow_sig_id = 24580UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15292,7 +15292,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0e92, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15309,7 +15309,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_09fe, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 49156, + .flow_sig_id = 49156UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15327,7 +15327,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c1a, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15345,7 +15345,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5746, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 57348, + .flow_sig_id = 57348UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15364,7 +15364,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_79da, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15381,7 +15381,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7106, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 81924, + .flow_sig_id = 81924UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15399,7 +15399,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3c1e, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15417,7 +15417,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_377a, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 90116, + .flow_sig_id = 90116UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15436,7 +15436,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2e9e, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15454,7 +15454,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29fa, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 114692, + .flow_sig_id = 114692UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15473,7 +15473,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_14d2, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15492,7 +15492,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7742, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 122884, + .flow_sig_id = 122884UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15512,7 +15512,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3706, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15528,7 +15528,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0fe2, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 4100, + .flow_sig_id = 4100UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15545,7 +15545,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1f7e, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15562,7 +15562,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_145a, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 6148, + .flow_sig_id = 6148UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15580,7 +15580,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_417e, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15597,7 +15597,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5e5a, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 12292, + .flow_sig_id = 12292UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15615,7 +15615,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29f6, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15633,7 +15633,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_26d2, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 14340, + .flow_sig_id = 14340UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15652,7 +15652,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2e42, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15669,7 +15669,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_271e, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 20484, + .flow_sig_id = 20484UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15687,7 +15687,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_36ba, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15705,7 +15705,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0f96, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 22532, + .flow_sig_id = 22532UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15724,7 +15724,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1006, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15742,7 +15742,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7196, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 28676, + .flow_sig_id = 28676UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15761,7 +15761,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4132, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15780,7 +15780,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5e0e, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 30724, + .flow_sig_id = 30724UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15800,7 +15800,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59fe, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15816,7 +15816,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_511a, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 16388, + .flow_sig_id = 16388UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15833,7 +15833,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1c32, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15850,7 +15850,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_175e, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 24580, + .flow_sig_id = 24580UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15868,7 +15868,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0eb2, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15885,7 +15885,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_09de, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 49156, + .flow_sig_id = 49156UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15903,7 +15903,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5c3a, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15921,7 +15921,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5766, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 57348, + .flow_sig_id = 57348UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15940,7 +15940,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_79fa, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15957,7 +15957,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7126, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 81924, + .flow_sig_id = 81924UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15975,7 +15975,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3c3e, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -15993,7 +15993,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_375a, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 90116, + .flow_sig_id = 90116UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16012,7 +16012,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2ebe, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16030,7 +16030,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29da, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 114692, + .flow_sig_id = 114692UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16049,7 +16049,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_14f2, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16068,7 +16068,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7762, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 122884, + .flow_sig_id = 122884UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16088,7 +16088,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_19e8, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16105,7 +16105,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_110c, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 32772, + .flow_sig_id = 32772UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16123,7 +16123,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4d48, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16141,7 +16141,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_446c, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 32836, + .flow_sig_id = 32836UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16160,7 +16160,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0eac, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16178,7 +16178,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_09c0, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 49156, + .flow_sig_id = 49156UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16197,7 +16197,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1ad0, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16216,7 +16216,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15f4, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 49220, + .flow_sig_id = 49220UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16236,7 +16236,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39ec, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16254,7 +16254,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3100, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 98308, + .flow_sig_id = 98308UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16273,7 +16273,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0210, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16292,7 +16292,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1d34, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 98372, + .flow_sig_id = 98372UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16312,7 +16312,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2ea0, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16331,7 +16331,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29c4, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 114692, + .flow_sig_id = 114692UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16351,7 +16351,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ad4, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16371,7 +16371,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_35e8, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 114756, + .flow_sig_id = 114756UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16392,7 +16392,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d80, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16410,7 +16410,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_54a4, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 163844, + .flow_sig_id = 163844UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16429,7 +16429,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_29b4, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16448,7 +16448,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_20c8, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 163908, + .flow_sig_id = 163908UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16468,7 +16468,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7244, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16487,7 +16487,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4d98, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 180228, + .flow_sig_id = 180228UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16507,7 +16507,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5e68, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16527,7 +16527,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_598c, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 180292, + .flow_sig_id = 180292UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16548,7 +16548,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1248, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16567,7 +16567,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_74d8, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 229380, + .flow_sig_id = 229380UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16587,7 +16587,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_49a8, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16607,7 +16607,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40cc, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 229444, + .flow_sig_id = 229444UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16628,7 +16628,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b0c, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16648,7 +16648,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0220, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 245764, + .flow_sig_id = 245764UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16669,7 +16669,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1730, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16690,7 +16690,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7980, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 245828, + .flow_sig_id = 245828UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16712,7 +16712,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1db0, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16729,7 +16729,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1494, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 131076, + .flow_sig_id = 131076UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16747,7 +16747,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_70d0, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16765,7 +16765,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4834, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 131140, + .flow_sig_id = 131140UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16784,7 +16784,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3db4, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16802,7 +16802,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3498, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 196612, + .flow_sig_id = 196612UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16821,7 +16821,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0988, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16840,7 +16840,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00ec, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 196676, + .flow_sig_id = 196676UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16860,7 +16860,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3f44, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16878,7 +16878,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_36a8, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 393220, + .flow_sig_id = 393220UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16897,7 +16897,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b58, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16916,7 +16916,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_02bc, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 393284, + .flow_sig_id = 393284UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16936,7 +16936,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5f48, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16955,7 +16955,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_56ac, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 458756, + .flow_sig_id = 458756UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16975,7 +16975,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2b5c, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -16995,7 +16995,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2280, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 458820, + .flow_sig_id = 458820UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17016,7 +17016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4000, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17034,7 +17034,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5b64, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 655364, + .flow_sig_id = 655364UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17053,7 +17053,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2c14, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17072,7 +17072,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2778, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 655428, + .flow_sig_id = 655428UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17092,7 +17092,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_18f8, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17111,7 +17111,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_13dc, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 720900, + .flow_sig_id = 720900UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17131,7 +17131,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c18, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17151,7 +17151,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_477c, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 720964, + .flow_sig_id = 720964UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17172,7 +17172,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1a88, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17191,7 +17191,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15ec, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 917508, + .flow_sig_id = 917508UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17211,7 +17211,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4e28, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17231,7 +17231,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_490c, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 917572, + .flow_sig_id = 917572UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17252,7 +17252,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3a8c, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17272,7 +17272,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_35f0, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 983044, + .flow_sig_id = 983044UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17293,7 +17293,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_06e0, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17314,7 +17314,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_01c4, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 983108, + .flow_sig_id = 983108UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17336,7 +17336,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1a08, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17353,7 +17353,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_12ec, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 32772, + .flow_sig_id = 32772UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17371,7 +17371,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4ea8, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17389,7 +17389,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_478c, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 32836, + .flow_sig_id = 32836UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17408,7 +17408,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0d4c, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17426,7 +17426,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0a20, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 49156, + .flow_sig_id = 49156UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17445,7 +17445,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1930, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17464,7 +17464,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1614, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 49220, + .flow_sig_id = 49220UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17484,7 +17484,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3a0c, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17502,7 +17502,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_32e0, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 98308, + .flow_sig_id = 98308UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17521,7 +17521,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_01f0, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17540,7 +17540,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1ed4, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 98372, + .flow_sig_id = 98372UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17560,7 +17560,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2d40, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17579,7 +17579,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2a24, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 114692, + .flow_sig_id = 114692UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17599,7 +17599,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3934, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17619,7 +17619,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3608, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 114756, + .flow_sig_id = 114756UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17640,7 +17640,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5e60, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17658,7 +17658,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5744, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 163844, + .flow_sig_id = 163844UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17677,7 +17677,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2a54, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17696,7 +17696,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2328, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 163908, + .flow_sig_id = 163908UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17716,7 +17716,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_71a4, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17735,7 +17735,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4e78, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 180228, + .flow_sig_id = 180228UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17755,7 +17755,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5d88, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17775,7 +17775,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5a6c, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 180292, + .flow_sig_id = 180292UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17796,7 +17796,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_11a8, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17815,7 +17815,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7738, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 229380, + .flow_sig_id = 229380UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17835,7 +17835,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4a48, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17855,7 +17855,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_432c, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 229444, + .flow_sig_id = 229444UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17876,7 +17876,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_08ec, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17896,7 +17896,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_01c0, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 245764, + .flow_sig_id = 245764UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17917,7 +17917,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_14d0, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17938,7 +17938,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7a60, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 245828, + .flow_sig_id = 245828UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17960,7 +17960,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1d90, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17977,7 +17977,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_14b4, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 131076, + .flow_sig_id = 131076UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -17995,7 +17995,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_70f0, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18013,7 +18013,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4814, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 131140, + .flow_sig_id = 131140UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18032,7 +18032,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d94, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18050,7 +18050,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_34b8, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 196612, + .flow_sig_id = 196612UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18069,7 +18069,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_09a8, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18088,7 +18088,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_00cc, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 196676, + .flow_sig_id = 196676UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18108,7 +18108,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3f64, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18126,7 +18126,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3688, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 393220, + .flow_sig_id = 393220UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18145,7 +18145,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0b78, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18164,7 +18164,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_029c, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 393284, + .flow_sig_id = 393284UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18184,7 +18184,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5f68, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18203,7 +18203,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_568c, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 458756, + .flow_sig_id = 458756UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18223,7 +18223,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2b7c, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18243,7 +18243,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_22a0, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 458820, + .flow_sig_id = 458820UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18264,7 +18264,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4020, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18282,7 +18282,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5b44, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 655364, + .flow_sig_id = 655364UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18301,7 +18301,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2c34, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18320,7 +18320,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2758, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 655428, + .flow_sig_id = 655428UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18340,7 +18340,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_18d8, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18359,7 +18359,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_13fc, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 720900, + .flow_sig_id = 720900UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18379,7 +18379,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4c38, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18399,7 +18399,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_475c, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 720964, + .flow_sig_id = 720964UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18420,7 +18420,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1aa8, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18439,7 +18439,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_15cc, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 917508, + .flow_sig_id = 917508UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18459,7 +18459,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4e08, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18479,7 +18479,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_492c, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 917572, + .flow_sig_id = 917572UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18500,7 +18500,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3aac, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18520,7 +18520,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_35d0, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 983044, + .flow_sig_id = 983044UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18541,7 +18541,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_06c0, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18562,7 +18562,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_01e4, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 983108, + .flow_sig_id = 983108UL, .flow_pattern_id = 0, .app_sig = 0, .hdr_sig = { .bits = @@ -18584,7 +18584,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4d32, .class_tid = 3, .hdr_sig_id = 0, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18598,7 +18598,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_54aa, .class_tid = 3, .hdr_sig_id = 0, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18613,7 +18613,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0686, .class_tid = 3, .hdr_sig_id = 1, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18627,7 +18627,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_540e, .class_tid = 3, .hdr_sig_id = 1, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18642,7 +18642,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2e3c, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18657,7 +18657,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3a20, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18673,7 +18673,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_46f0, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18689,7 +18689,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_52e4, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18706,7 +18706,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55e4, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18721,7 +18721,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_21f8, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18737,7 +18737,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_75e8, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18753,7 +18753,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_41fc, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18770,7 +18770,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4d12, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18785,7 +18785,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_548a, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18801,7 +18801,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3356, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18817,7 +18817,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1ace, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18834,7 +18834,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1a9a, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18850,7 +18850,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4d46, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18867,7 +18867,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2812, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18884,7 +18884,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_338a, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18902,7 +18902,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_06e6, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18917,7 +18917,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_546e, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18933,7 +18933,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_46ee, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18949,7 +18949,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0d22, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18966,7 +18966,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_26e2, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18982,7 +18982,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_746a, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -18999,7 +18999,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1fa6, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19016,7 +19016,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2d2e, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19034,7 +19034,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4ef2, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 4096, + .flow_sig_id = 4096UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19049,7 +19049,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_576a, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 6144, + .flow_sig_id = 6144UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19065,7 +19065,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_30b6, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 12288, + .flow_sig_id = 12288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19081,7 +19081,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_192e, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 14336, + .flow_sig_id = 14336UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19098,7 +19098,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_197a, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 20480, + .flow_sig_id = 20480UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19114,7 +19114,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4ea6, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 22528, + .flow_sig_id = 22528UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19131,7 +19131,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2bf2, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 28672, + .flow_sig_id = 28672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19148,7 +19148,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_306a, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 30720, + .flow_sig_id = 30720UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19166,7 +19166,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_06c6, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 16384, + .flow_sig_id = 16384UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19181,7 +19181,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_544e, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 24576, + .flow_sig_id = 24576UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19197,7 +19197,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_46ce, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19213,7 +19213,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0d02, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 57344, + .flow_sig_id = 57344UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19230,7 +19230,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_26c2, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 81920, + .flow_sig_id = 81920UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19246,7 +19246,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_744a, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 90112, + .flow_sig_id = 90112UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19263,7 +19263,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1f86, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19280,7 +19280,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2d0e, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 122880, + .flow_sig_id = 122880UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19298,7 +19298,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2e1c, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19314,7 +19314,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3a00, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19331,7 +19331,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_46d0, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19348,7 +19348,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_52c4, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19366,7 +19366,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4e10, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19383,7 +19383,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5a04, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19401,7 +19401,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1f98, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19419,7 +19419,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_72f8, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19438,7 +19438,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0a78, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19455,7 +19455,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_166c, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19473,7 +19473,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_233c, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19491,7 +19491,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0f20, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19510,7 +19510,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2a7c, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19528,7 +19528,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3660, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19547,7 +19547,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4330, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19566,7 +19566,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2f24, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19586,7 +19586,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5584, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19602,7 +19602,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2198, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19619,7 +19619,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7588, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19636,7 +19636,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_419c, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19654,7 +19654,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7758, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19671,7 +19671,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_43ac, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19689,7 +19689,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0c10, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19707,7 +19707,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1864, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19726,7 +19726,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_30c8, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19743,7 +19743,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1cdc, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19761,7 +19761,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_50cc, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19779,7 +19779,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d20, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19798,7 +19798,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_529c, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19816,7 +19816,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ef0, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19835,7 +19835,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_72e0, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19854,7 +19854,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ef4, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19874,7 +19874,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2dfc, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 32768, + .flow_sig_id = 32768UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19890,7 +19890,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_39e0, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 32832, + .flow_sig_id = 32832UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19907,7 +19907,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4530, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 49152, + .flow_sig_id = 49152UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19924,7 +19924,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5124, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 49216, + .flow_sig_id = 49216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19942,7 +19942,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_4df0, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 98304, + .flow_sig_id = 98304UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19959,7 +19959,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_59e4, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 98368, + .flow_sig_id = 98368UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19977,7 +19977,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1c78, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 114688, + .flow_sig_id = 114688UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -19995,7 +19995,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7118, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 114752, + .flow_sig_id = 114752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20014,7 +20014,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0998, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 163840, + .flow_sig_id = 163840UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20031,7 +20031,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_158c, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 163904, + .flow_sig_id = 163904UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20049,7 +20049,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_20dc, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 180224, + .flow_sig_id = 180224UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20067,7 +20067,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0cc0, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 180288, + .flow_sig_id = 180288UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20086,7 +20086,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_299c, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 229376, + .flow_sig_id = 229376UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20104,7 +20104,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3580, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 229440, + .flow_sig_id = 229440UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20123,7 +20123,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_40d0, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 245760, + .flow_sig_id = 245760UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20142,7 +20142,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_2cc4, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 245824, + .flow_sig_id = 245824UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20162,7 +20162,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_55a4, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 131072, + .flow_sig_id = 131072UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20178,7 +20178,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_21b8, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 131136, + .flow_sig_id = 131136UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20195,7 +20195,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_75a8, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 196608, + .flow_sig_id = 196608UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20212,7 +20212,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_41bc, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 196672, + .flow_sig_id = 196672UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20230,7 +20230,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_7778, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 393216, + .flow_sig_id = 393216UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20247,7 +20247,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_438c, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 393280, + .flow_sig_id = 393280UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20265,7 +20265,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0c30, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 458752, + .flow_sig_id = 458752UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20283,7 +20283,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1844, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 458816, + .flow_sig_id = 458816UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20302,7 +20302,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_30e8, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 655360, + .flow_sig_id = 655360UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20319,7 +20319,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_1cfc, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 655424, + .flow_sig_id = 655424UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20337,7 +20337,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_50ec, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 720896, + .flow_sig_id = 720896UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20355,7 +20355,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3d00, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 720960, + .flow_sig_id = 720960UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20374,7 +20374,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_52bc, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 917504, + .flow_sig_id = 917504UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20392,7 +20392,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ed0, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 917568, + .flow_sig_id = 917568UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20411,7 +20411,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_72c0, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 983040, + .flow_sig_id = 983040UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20430,7 +20430,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_5ed4, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 983104, + .flow_sig_id = 983104UL, .flow_pattern_id = 1, .app_sig = 0, .hdr_sig = { .bits = @@ -20450,7 +20450,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3866, .class_tid = 3, .hdr_sig_id = 0, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20465,7 +20465,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_381e, .class_tid = 3, .hdr_sig_id = 1, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20480,7 +20480,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3860, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20496,7 +20496,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0454, .class_tid = 3, .hdr_sig_id = 2, - .flow_sig_id = 68, + .flow_sig_id = 68UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20513,7 +20513,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3818, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20529,7 +20529,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_042c, .class_tid = 3, .hdr_sig_id = 3, - .flow_sig_id = 68, + .flow_sig_id = 68UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20546,7 +20546,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3846, .class_tid = 3, .hdr_sig_id = 4, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20562,7 +20562,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_387e, .class_tid = 3, .hdr_sig_id = 5, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20578,7 +20578,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ba6, .class_tid = 3, .hdr_sig_id = 6, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20594,7 +20594,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_385e, .class_tid = 3, .hdr_sig_id = 7, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20610,7 +20610,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3840, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20627,7 +20627,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0474, .class_tid = 3, .hdr_sig_id = 8, - .flow_sig_id = 68, + .flow_sig_id = 68UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20645,7 +20645,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3878, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20662,7 +20662,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_044c, .class_tid = 3, .hdr_sig_id = 9, - .flow_sig_id = 68, + .flow_sig_id = 68UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20680,7 +20680,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3ba0, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20697,7 +20697,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_0794, .class_tid = 3, .hdr_sig_id = 10, - .flow_sig_id = 68, + .flow_sig_id = 68UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20715,7 +20715,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_3858, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 4, + .flow_sig_id = 4UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = @@ -20732,7 +20732,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = { .class_hid = BNXT_ULP_CLASS_HID_046c, .class_tid = 3, .hdr_sig_id = 11, - .flow_sig_id = 68, + .flow_sig_id = 68UL, .flow_pattern_id = 2, .app_sig = 0, .hdr_sig = { .bits = From patchwork Thu Nov 4 21:58:32 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103793 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 42265A0C5E; Thu, 4 Nov 2021 22:59:47 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7DE7B427C1; Thu, 4 Nov 2021 22:59:08 +0100 (CET) Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by mails.dpdk.org (Postfix) with ESMTP id 20E63427AF for ; Thu, 4 Nov 2021 22:59:04 +0100 (CET) Received: by mail-pl1-f180.google.com with SMTP id n8so9580250plf.4 for ; Thu, 04 Nov 2021 14:59:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=R2IW5LwLe9oTUWZ+/U3RltQo3vJfUS8QgiNHqfIrqrY=; b=Hm9uPKApeXU/+hT0WWhNPJ7pxySsrW/UybjmWl8CuiKBPs7LPLfjdwi6JWpg7gv0Xo yMNiF+DVG6U+rQOu2jTe8TUo95caK+fTCEZZjru47SxHoMo9LfX9QhkB2R95/RprIXqS vNuikk7xSSEkPXp5qsAlt7V2NlZhBN2V2KRWA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=R2IW5LwLe9oTUWZ+/U3RltQo3vJfUS8QgiNHqfIrqrY=; b=CJs048gRINeo7rBZ6jAINNptXNjZl5iDIQcWGVnMKxTuWEITDSXQj7jK4BSxoyyE91 S49B4yLij89TSr6IRAESSGXSQaS6b8XRfrtvCBH05DDWVKfIzMV1F5jMndLHSpuM20oV U+ermrf6hRXFdpSv/0PGpAcfulQK/52tYb2IIlVKskP4yqvfkTp5Y4eG80jrpiAjnk67 BMGa7pekgTZn+PogbriY7HKs5toLXJI8owH/2loZpyHDjsZXUexVo4WtQoyxzSeTCrou 4C98nag6hcHxiYMzmPR/YgDjzzoMsx8umu5K/NHsP10i0XN8iFe796sNzcPHsm3vqHGN TgRw== X-Gm-Message-State: AOAM531gDPhohi2oFGiqEnSR1PMpiOywax3D/oryh2DGYuZIGcIIOSJh 6D+Y9qbAzI1XjmQOXoswZUmxp3D28C0CIXfUo3mJF9yH3H+i4wJcsmkghHVOWC64MmIOtonDVQf Mr9LEdb2ULyPGH4eareeemcPq7WCpLV3EOnm5u35UaoCQHc9OmdADEbcD9ag8NmI= X-Google-Smtp-Source: ABdhPJxQl5dG6IbEDzVGcAr7SQs7BjSOWlbcQ6lauhJxBTNsk0fSQAguwFKYVqQrYVb7sfDlsUiYLA== X-Received: by 2002:a17:90b:4b04:: with SMTP id lx4mr14842109pjb.11.1636063142428; Thu, 04 Nov 2021 14:59:02 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.01 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:01 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Mike Baucom Date: Thu, 4 Nov 2021 14:58:32 -0700 Message-Id: <20211104215846.58672-9-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 08/22] net/bnxt: enable wildcard match for ingress flows X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Enabled wildcard match support for ipv4 ingress flows. Signed-off-by: Kishore Padmanabha Signed-off-by: Ajit Khaparde Reviewed-by: Mike Baucom --- .../generic_templates/ulp_template_db_enum.h | 4 +- .../ulp_template_db_thor_class.c | 251 +++++++++--------- 2 files changed, 125 insertions(+), 130 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h index 31a94c14dc..8706e45f28 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Thu Sep 9 11:11:05 2021 */ +/* date: Thu Sep 9 12:11:08 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_ @@ -48,7 +48,7 @@ #define ULP_THOR_CLASS_KEY_INFO_LIST_SIZE 2323 #define ULP_THOR_CLASS_IDENT_LIST_SIZE 38 #define ULP_THOR_CLASS_RESULT_FIELD_LIST_SIZE 1313 -#define ULP_THOR_CLASS_COND_LIST_SIZE 55 +#define ULP_THOR_CLASS_COND_LIST_SIZE 54 #define ULP_WH_PLUS_ACT_TMPL_LIST_SIZE 7 #define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 37 #define ULP_WH_PLUS_ACT_KEY_INFO_LIST_SIZE 2 diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c index 95205a2421..54bc032b0c 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Wed Aug 25 16:41:37 2021 */ +/* date: Thu Sep 9 12:11:08 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -18,9 +18,9 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = { .num_tbls = 28, .start_tbl_idx = 0, .reject_info = { - .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, .cond_start_idx = 0, - .cond_nums = 1 } + .cond_nums = 0 } }, /* class_tid: 2, ingress */ [2] = { @@ -29,7 +29,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = { .start_tbl_idx = 28, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 29, + .cond_start_idx = 28, .cond_nums = 0 } }, /* class_tid: 3, egress */ @@ -39,7 +39,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = { .start_tbl_idx = 52, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 39, + .cond_start_idx = 38, .cond_nums = 0 } }, /* class_tid: 4, ingress */ @@ -49,7 +49,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = { .start_tbl_idx = 70, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 48, + .cond_start_idx = 47, .cond_nums = 0 } }, /* class_tid: 5, egress */ @@ -59,7 +59,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = { .start_tbl_idx = 91, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 52, + .cond_start_idx = 51, .cond_nums = 0 } } }; @@ -74,7 +74,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1, + .cond_start_idx = 0, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -96,7 +96,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 5, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1, + .cond_start_idx = 0, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -117,7 +117,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 2, + .cond_start_idx = 1, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -136,7 +136,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 2, + .cond_start_idx = 1, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -149,7 +149,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3, + .cond_start_idx = 2, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -176,7 +176,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3, + .cond_start_idx = 2, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -196,7 +196,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 8, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3, + .cond_start_idx = 2, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, @@ -209,7 +209,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 4, + .cond_start_idx = 3, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -228,7 +228,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 2, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 5, + .cond_start_idx = 4, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -240,7 +240,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 4, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 6, + .cond_start_idx = 5, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .func_info = { @@ -259,7 +259,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 7, + .cond_start_idx = 6, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, @@ -277,7 +277,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 7, + .cond_start_idx = 6, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -307,7 +307,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 8, + .cond_start_idx = 7, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -328,7 +328,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 8, + .cond_start_idx = 7, .cond_nums = 0 }, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, @@ -349,7 +349,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 8, + .cond_start_idx = 7, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -368,7 +368,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 6, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 8, + .cond_start_idx = 7, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -381,7 +381,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 9, + .cond_start_idx = 8, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_0, @@ -398,7 +398,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 10, + .cond_start_idx = 9, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_2, @@ -415,7 +415,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 2, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 11, + .cond_start_idx = 10, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -443,7 +443,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 13, + .cond_start_idx = 12, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -473,7 +473,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 14, + .cond_start_idx = 13, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -494,7 +494,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 14, + .cond_start_idx = 13, .cond_nums = 3 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -519,7 +519,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 17, + .cond_start_idx = 16, .cond_nums = 3 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -544,7 +544,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 20, + .cond_start_idx = 19, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -569,7 +569,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 22, + .cond_start_idx = 21, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -594,7 +594,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 24, + .cond_start_idx = 23, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -619,7 +619,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 25, + .cond_start_idx = 24, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -644,7 +644,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 27, + .cond_start_idx = 26, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -670,7 +670,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 29, + .cond_start_idx = 28, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -691,7 +691,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 29, + .cond_start_idx = 28, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -710,7 +710,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 29, + .cond_start_idx = 28, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -723,7 +723,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 30, + .cond_start_idx = 29, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_IDENT, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -750,7 +750,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 30, + .cond_start_idx = 29, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -770,7 +770,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 30, + .cond_start_idx = 29, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, @@ -783,7 +783,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 31, + .cond_start_idx = 30, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -802,7 +802,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 31, + .cond_start_idx = 30, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -815,7 +815,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 32, + .cond_start_idx = 31, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -842,7 +842,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 32, + .cond_start_idx = 31, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -862,7 +862,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 8, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 32, + .cond_start_idx = 31, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, @@ -875,7 +875,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 33, + .cond_start_idx = 32, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -894,7 +894,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 2, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 34, + .cond_start_idx = 33, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -906,7 +906,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 4, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 35, + .cond_start_idx = 34, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .func_info = { @@ -925,7 +925,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 36, + .cond_start_idx = 35, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, @@ -943,7 +943,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 36, + .cond_start_idx = 35, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -973,7 +973,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 36, + .cond_start_idx = 35, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -994,7 +994,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 36, + .cond_start_idx = 35, .cond_nums = 0 }, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, @@ -1016,7 +1016,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 36, + .cond_start_idx = 35, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1035,7 +1035,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 36, + .cond_start_idx = 35, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -1048,7 +1048,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 37, + .cond_start_idx = 36, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_4, @@ -1065,7 +1065,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 38, + .cond_start_idx = 37, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -1093,7 +1093,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 38, + .cond_start_idx = 37, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1114,7 +1114,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 38, + .cond_start_idx = 37, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -1140,7 +1140,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 39, + .cond_start_idx = 38, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1159,7 +1159,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 8, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 39, + .cond_start_idx = 38, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, @@ -1172,7 +1172,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 40, + .cond_start_idx = 39, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1191,7 +1191,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 2, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 41, + .cond_start_idx = 40, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -1203,7 +1203,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 4, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 42, + .cond_start_idx = 41, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .func_info = { @@ -1222,7 +1222,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 43, + .cond_start_idx = 42, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, @@ -1240,7 +1240,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 43, + .cond_start_idx = 42, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -1270,7 +1270,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 43, + .cond_start_idx = 42, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1291,7 +1291,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 43, + .cond_start_idx = 42, .cond_nums = 0 }, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, @@ -1312,7 +1312,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 43, + .cond_start_idx = 42, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1331,7 +1331,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 43, + .cond_start_idx = 42, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -1344,7 +1344,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 44, + .cond_start_idx = 43, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1, @@ -1361,7 +1361,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 2, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 44, + .cond_start_idx = 43, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -1389,7 +1389,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 45, + .cond_start_idx = 44, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -1419,7 +1419,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 45, + .cond_start_idx = 44, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1440,7 +1440,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 45, + .cond_start_idx = 44, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -1465,7 +1465,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 47, + .cond_start_idx = 46, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -1490,7 +1490,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 48, + .cond_start_idx = 47, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, @@ -1517,7 +1517,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 48, + .cond_start_idx = 47, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR, @@ -1536,7 +1536,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 48, + .cond_start_idx = 47, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1558,7 +1558,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 48, + .cond_start_idx = 47, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1577,7 +1577,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 48, + .cond_start_idx = 47, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -1590,7 +1590,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 49, + .cond_start_idx = 48, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -1619,7 +1619,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 49, + .cond_start_idx = 48, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1640,7 +1640,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 49, + .cond_start_idx = 48, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD, .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF, @@ -1657,7 +1657,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 49, + .cond_start_idx = 48, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD, .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF, @@ -1676,7 +1676,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 49, + .cond_start_idx = 48, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -1696,7 +1696,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 49, + .cond_start_idx = 48, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1716,7 +1716,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 49, + .cond_start_idx = 48, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, @@ -1729,7 +1729,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 50, + .cond_start_idx = 49, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1748,7 +1748,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 50, + .cond_start_idx = 49, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -1761,7 +1761,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 51, + .cond_start_idx = 50, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD, .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_SVIF, @@ -1780,7 +1780,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 51, + .cond_start_idx = 50, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1802,7 +1802,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 51, + .cond_start_idx = 50, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1821,7 +1821,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 51, + .cond_start_idx = 50, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -1834,7 +1834,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 52, + .cond_start_idx = 51, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -1861,7 +1861,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 52, + .cond_start_idx = 51, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1882,7 +1882,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 52, + .cond_start_idx = 51, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD, .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF, @@ -1899,7 +1899,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 52, + .cond_start_idx = 51, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD, .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF, @@ -1918,7 +1918,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 52, + .cond_start_idx = 51, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, @@ -1938,7 +1938,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 52, + .cond_start_idx = 51, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1960,7 +1960,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 52, + .cond_start_idx = 51, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1979,7 +1979,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 52, + .cond_start_idx = 51, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -1992,7 +1992,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 53, + .cond_start_idx = 52, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -2019,7 +2019,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 53, + .cond_start_idx = 52, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -2040,7 +2040,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 53, + .cond_start_idx = 52, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST, .tbl_operand = ULP_THOR_SYM_LOOPBACK_PARIF, @@ -2057,7 +2057,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 53, + .cond_start_idx = 52, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST, .tbl_operand = ULP_THOR_SYM_LOOPBACK_PARIF, @@ -2076,7 +2076,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 53, + .cond_start_idx = 52, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -2095,7 +2095,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 53, + .cond_start_idx = 52, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD, .tbl_operand = BNXT_ULP_CF_IDX_VF_FUNC_SVIF, @@ -2114,7 +2114,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 53, + .cond_start_idx = 52, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -2133,7 +2133,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 53, + .cond_start_idx = 52, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -2146,7 +2146,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 54, + .cond_start_idx = 53, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD, .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_SVIF, @@ -2165,7 +2165,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 54, + .cond_start_idx = 53, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -2188,7 +2188,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 54, + .cond_start_idx = 53, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_METADATA_PROF_0, @@ -2207,7 +2207,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 54, + .cond_start_idx = 53, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR, @@ -2227,7 +2227,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 54, + .cond_start_idx = 53, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -2246,7 +2246,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 54, + .cond_start_idx = 53, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -2265,7 +2265,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 54, + .cond_start_idx = 53, .cond_nums = 1 }, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID @@ -2278,7 +2278,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 55, + .cond_start_idx = 54, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -2306,7 +2306,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 55, + .cond_start_idx = 54, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_KEY_ID_0, @@ -2323,7 +2323,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 55, + .cond_start_idx = 54, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -2350,7 +2350,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 55, + .cond_start_idx = 54, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -2373,7 +2373,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 55, + .cond_start_idx = 54, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR, @@ -2391,7 +2391,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 55, + .cond_start_idx = 54, .cond_nums = 0 }, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, @@ -2406,11 +2406,6 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { }; struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = { - /* cond_reject: thor, class_tid: 1 */ - { - .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET, - .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH - }, /* cond_execute: class_tid: 1, l2_cntxt_tcam_cache.rd */ { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET, From patchwork Thu Nov 4 21:58:33 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103794 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id F3DC1A0C5E; Thu, 4 Nov 2021 22:59:53 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6C87B427C7; Thu, 4 Nov 2021 22:59:09 +0100 (CET) Received: from mail-pl1-f177.google.com (mail-pl1-f177.google.com [209.85.214.177]) by mails.dpdk.org (Postfix) with ESMTP id 6F5C1427B1 for ; Thu, 4 Nov 2021 22:59:04 +0100 (CET) Received: by mail-pl1-f177.google.com with SMTP id n8so9580268plf.4 for ; Thu, 04 Nov 2021 14:59:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=611C7XZ4A0nt2ptrqSj3MwuZrcCSRnsOLZZDmnB2EPY=; b=LwsaMoagprElLXaCb0GfPz0rs/krh9KVjhaCQrVw9h4DCloJ39fekHAIEBftbe8sTU 0dHvrrCR9Qi9yhtZhopjgUt/R/o7sz84rwySD/itO/fRWFV9zMPs4Yr2YnfwUJCrH4+e cW/HCg0XE6zO72niz3FqyFrRdmxnmrbuucsy4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=611C7XZ4A0nt2ptrqSj3MwuZrcCSRnsOLZZDmnB2EPY=; b=m/t1kzq8utJHVDYarIj3bSjXsDhpIi/rSSs1U3ytMTUe5wzbpavfP4f6Gt3kyk92Lw IfMZTY6q4Fd0beF6Y4ot44GzDzApr3XW6AxPiSlLyGmtKSczg/UMJxgRiIl+gFvXhfN0 QsXFt4pZl4vxFiEda27gy7IDCKwuWxUtLkCLjKAJgvSxHiR+A3uMfeaewmr4tV/fWjjP i9LqD+bg44FtSARGgbTbhJ9jx8VpvgDQ5V6FShOdCUpWynnxlD7xdm35d5Qdvt8h+BXy BzTyFPlPcxbuZI8wjgYYRn/U6WjugyAaH6Nu7NbsMipCoq5Cz6VNmBItY7bvi8SscJm/ rdXw== X-Gm-Message-State: AOAM531ti5ZLbITHkLVUme4/qmyT33GBSHdchXDC80I8Bi9mNqYO6twO fnpXhWUToZZEBiQQhC4KrrtZpzubwuA5NGj8Rjm3hPkRpssMfyQkccaiskcl9oi8/sZ6PSQcM9G rQkarspLFvBSkMXNOLXjzaMKhbzQpztvG76XvY/3cvuhanbEx0oAgSNkue+1Qox0= X-Google-Smtp-Source: ABdhPJwqOo/5sCw2XSUOZG04+eoi7Asivie4R0eiaAUGqpr8FA3vxhX3znvtGGOAM+5uzTXmoiGVaw== X-Received: by 2002:a17:902:9005:b0:142:1d6c:797c with SMTP id a5-20020a170902900500b001421d6c797cmr12787650plp.4.1636063143359; Thu, 04 Nov 2021 14:59:03 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.02 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:02 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Venkat Duvvuru , Mike Baucom , Randy Schacher Date: Thu, 4 Nov 2021 14:58:33 -0700 Message-Id: <20211104215846.58672-10-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 09/22] net/bnxt: support inner IP header for GRE tunnel flows X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha This change allows adding IP header matches for GRE flows that does not specify outer IP header in the flow match pattern. Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Mike Baucom Reviewed-by: Randy Schacher Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 7 ++++--- drivers/net/bnxt/tf_ulp/ulp_template_struct.h | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c index 40da953f06..605c29223c 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +++ b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c @@ -1119,7 +1119,8 @@ ulp_rte_ipv4_hdr_handler(const struct rte_flow_item *item, /* Set the ipv4 header bitmap and computed l3 header bitmaps */ if (ULP_BITMAP_ISSET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_O_IPV4) || - ULP_BITMAP_ISSET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_O_IPV6)) { + ULP_BITMAP_ISSET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_O_IPV6) || + ULP_COMP_FLD_IDX_RD(params, BNXT_ULP_CF_IDX_L3_TUN)) { ULP_BITMAP_SET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_I_IPV4); ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_I_L3, 1); inner_flag = 1; @@ -1245,7 +1246,8 @@ ulp_rte_ipv6_hdr_handler(const struct rte_flow_item *item, /* Set the ipv6 header bitmap and computed l3 header bitmaps */ if (ULP_BITMAP_ISSET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_O_IPV4) || - ULP_BITMAP_ISSET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_O_IPV6)) { + ULP_BITMAP_ISSET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_O_IPV6) || + ULP_COMP_FLD_IDX_RD(params, BNXT_ULP_CF_IDX_L3_TUN)) { ULP_BITMAP_SET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_I_IPV6); ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_I_L3, 1); inner_flag = 1; @@ -2127,7 +2129,6 @@ ulp_rte_vxlan_decap_act_handler(const struct rte_flow_action *action_item BNXT_ULP_ACT_BIT_VXLAN_DECAP); /* Update computational field with tunnel decap info */ ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_L3_TUN_DECAP, 1); - ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_L3_TUN, 1); return BNXT_TF_RC_SUCCESS; } diff --git a/drivers/net/bnxt/tf_ulp/ulp_template_struct.h b/drivers/net/bnxt/tf_ulp/ulp_template_struct.h index d3bfb8c12d..7d1bc06a3e 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_template_struct.h +++ b/drivers/net/bnxt/tf_ulp/ulp_template_struct.h @@ -27,7 +27,7 @@ #define BNXT_ULP_PROTO_HDR_UDP_NUM 4 #define BNXT_ULP_PROTO_HDR_TCP_NUM 9 #define BNXT_ULP_PROTO_HDR_VXLAN_NUM 4 -#define BNXT_ULP_PROTO_HDR_GRE_NUM 6 +#define BNXT_ULP_PROTO_HDR_GRE_NUM 2 #define BNXT_ULP_PROTO_HDR_ICMP_NUM 5 #define BNXT_ULP_PROTO_HDR_MAX 128 #define BNXT_ULP_PROTO_HDR_ENCAP_MAX 64 From patchwork Thu Nov 4 21:58:34 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103796 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id DC3C6A0C5E; Thu, 4 Nov 2021 23:00:08 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 82A40427D3; Thu, 4 Nov 2021 22:59:11 +0100 (CET) Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by mails.dpdk.org (Postfix) with ESMTP id D1194427C1 for ; Thu, 4 Nov 2021 22:59:07 +0100 (CET) Received: by mail-pl1-f174.google.com with SMTP id b13so9599335plg.2 for ; Thu, 04 Nov 2021 14:59:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=/H0Esj9N/I7sxiBtncMKe8VCKhiVI8Q3k6PHsv5IKC0=; b=GP1QHqptb2huX8cW3jkue5mLn4z9JWBDDm1Mylzdi9q6dUSHQA+1jSqnELoLUWi+yq JMvTVmCni9nQc+wAC9VwtsEZXMZ6Hx4OV5m1HXckYkaUBICWVDz6PD+5I4kUumYZnbz+ HOM5NxXTtu1Zw0+FBH/GnNR2CCNWucN9dfdq0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=/H0Esj9N/I7sxiBtncMKe8VCKhiVI8Q3k6PHsv5IKC0=; b=xnQ28kUVK3yHzgxOIu5+Vr8Hd2wHq8EmGrg+iK5+OdK2G4zD5HdZfBwGbAo6tC5YRY KlHj3jxgWwuKK20LsJ1jilW+TXVakntSeEEw+aAhYC5HjvMfDcXNuXsTZ1+KKEUeZdo+ 7bLF2lRMTuzyOmHFGEbVXHnII8PH55svOaichtVuIK/Gpdgq4i+jHdSusKnu2cBQGLkK k0kLd5FxcuYyTOdYAgs9i539/u5uI6vNOg6EOtodGaE0tnyVKHz5RfbLsuqmawH0g2/b uPaGvBzdLhBLNotAzuLJ/X5heta2ILjMYqMBawiLPDxOfgM0xSa4tn1FZlMtr+q3HLl1 diDA== X-Gm-Message-State: AOAM533Ng4KQHm5K6vdJB4rYyXIcUsIqke9+H6c0gGnvqUFeYTiQ1eyT yqhKq6fs1GRNR69mqGZjcJ+QVk3CC9iVb/sZskmnuKhrrs2n4UwxualZ2c/2MgURSOXBI0FwqVt b95WZ+2kPMwsUIMEWZxpi3fK3mhUcnIzGAK/u63riBLJ2YaN4mPs8CXAs5nhAGKg= X-Google-Smtp-Source: ABdhPJwLdFao8/EO44Qzqo/n2DDLjz43RnqtQ+bhC2w8v/0EXRDtYAH5Ms9KYU6enQSmO/yjab2vdg== X-Received: by 2002:a17:902:b196:b0:141:aa55:6f1 with SMTP id s22-20020a170902b19600b00141aa5506f1mr41821947plr.41.1636063146490; Thu, 04 Nov 2021 14:59:06 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.03 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:04 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Jay Ding , Venkat Duvvuru , Farah Smith , Randy Schacher , Peter Spreadborough Date: Thu, 4 Nov 2021 14:58:34 -0700 Message-Id: <20211104215846.58672-11-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 10/22] net/bnxt: get TruFlow version X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Jay Ding Implement tf_get_version that returns TruFlow version numbers and CFA resources capbilities. Signed-off-by: Jay Ding Signed-off-by: Venkat Duvvuru Reviewed-by: Farah Smith Reviewed-by: Randy Schacher Reviewed-by: Peter Spreadborough Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/tf_core/tf_core.c | 29 ++++++++ drivers/net/bnxt/tf_core/tf_core.h | 75 ++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_device.h | 50 ++++++++++++++ drivers/net/bnxt/tf_core/tf_device_p4.c | 65 +++++++++++++++++- drivers/net/bnxt/tf_core/tf_device_p4.h | 79 +++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_device_p58.c | 65 +++++++++++++++++- drivers/net/bnxt/tf_core/tf_device_p58.h | 87 ++++++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_msg.c | 35 ++++++++++ drivers/net/bnxt/tf_core/tf_msg.h | 19 ++++++ 9 files changed, 502 insertions(+), 2 deletions(-) diff --git a/drivers/net/bnxt/tf_core/tf_core.c b/drivers/net/bnxt/tf_core/tf_core.c index 936102c804..86dfec0eb4 100644 --- a/drivers/net/bnxt/tf_core/tf_core.c +++ b/drivers/net/bnxt/tf_core/tf_core.c @@ -1802,3 +1802,32 @@ int tf_get_session_info(struct tf *tfp, return 0; } + +int tf_get_version(struct tf *tfp, + struct tf_get_version_parms *parms) +{ + int rc; + struct tf_dev_info dev; + + TF_CHECK_PARMS2(tfp, parms); + + /* This function can be called before open session, filter + * out any non-supported device types on the Core side. + */ + if (parms->device_type != TF_DEVICE_TYPE_WH && + parms->device_type != TF_DEVICE_TYPE_THOR && + parms->device_type != TF_DEVICE_TYPE_SR) { + TFP_DRV_LOG(ERR, + "Unsupported device type %d\n", + parms->device_type); + return -ENOTSUP; + } + + tf_dev_bind_ops(parms->device_type, &dev); + + rc = tf_msg_get_version(parms->bp, &dev, parms); + if (rc) + return rc; + + return 0; +} diff --git a/drivers/net/bnxt/tf_core/tf_core.h b/drivers/net/bnxt/tf_core/tf_core.h index fb02c2b161..ba9881c69d 100644 --- a/drivers/net/bnxt/tf_core/tf_core.h +++ b/drivers/net/bnxt/tf_core/tf_core.h @@ -2363,4 +2363,79 @@ struct tf_get_if_tbl_entry_parms { int tf_get_if_tbl_entry(struct tf *tfp, struct tf_get_if_tbl_entry_parms *parms); +/** + * tf_get_version parameters definition. + */ +struct tf_get_version_parms { + /** + * [in] device type + * + * Device type for the session. + */ + enum tf_device_type device_type; + + /** + * [in] bp + * The pointer to the parent bp struct. This is only used for HWRM + * message passing within the portability layer. The type is struct + * bnxt. + */ + void *bp; + + /* [out] major + * + * Version Major number. + */ + uint8_t major; + + /* [out] minor + * + * Version Minor number. + */ + uint8_t minor; + + /* [out] update + * + * Version Update number. + */ + uint8_t update; + + /** + * [out] dev_ident_caps + * + * fw available identifier resource list + */ + uint32_t dev_ident_caps; + + /** + * [out] dev_tbl_caps + * + * fw available table resource list + */ + uint32_t dev_tbl_caps; + + /** + * [out] dev_tcam_caps + * + * fw available tcam resource list + */ + uint32_t dev_tcam_caps; + + /** + * [out] dev_em_caps + * + * fw available em resource list + */ + uint32_t dev_em_caps; +}; + +/** + * Get tf fw version + * + * Used to retrieve Truflow fw version information. + * + * Returns success or failure code. + */ +int tf_get_version(struct tf *tfp, + struct tf_get_version_parms *parms); #endif /* _TF_CORE_H_ */ diff --git a/drivers/net/bnxt/tf_core/tf_device.h b/drivers/net/bnxt/tf_core/tf_device.h index 9b0c037db0..88bd4515ff 100644 --- a/drivers/net/bnxt/tf_core/tf_device.h +++ b/drivers/net/bnxt/tf_core/tf_device.h @@ -6,6 +6,7 @@ #ifndef _TF_DEVICE_H_ #define _TF_DEVICE_H_ +#include "cfa_resource_types.h" #include "tf_core.h" #include "tf_identifier.h" #include "tf_tbl.h" @@ -36,6 +37,21 @@ struct tf_dev_info { const struct tf_dev_ops *ops; }; +/** + * This structure can be used to translate the CFA resource type to TF type. + */ +struct tf_hcapi_resource_map { + /** + * Truflow module type associated with this resource type. + */ + enum tf_module_type module_type; + + /** + * Bitmap of TF sub-type for the element. + */ + uint32_t type_caps; +}; + /** * @page device Device * @@ -1037,6 +1053,34 @@ struct tf_dev_ops { */ uint64_t (*tf_dev_cfa_key_hash)(uint64_t *key_data, uint16_t bitlen); + + /** + * Translate the CFA resource type to Truflow type + * + * [in] hcapi_types + * CFA resource type bitmap + * + * [out] ident_types + * Pointer to identifier type bitmap + * + * [out] tcam_types + * Pointer to tcam type bitmap + * + * [out] tbl_types + * Pointer to table type bitmap + * + * [out] em_types + * Pointer to em type bitmap + * + * Returns + * - (0) if successful. + * - (-EINVAL) on failure. + */ + int (*tf_dev_map_hcapi_caps)(uint64_t hcapi_caps, + uint32_t *ident_caps, + uint32_t *tcam_caps, + uint32_t *tbl_caps, + uint32_t *em_caps); }; /** @@ -1047,4 +1091,10 @@ extern const struct tf_dev_ops tf_dev_ops_p4; extern const struct tf_dev_ops tf_dev_ops_p58_init; extern const struct tf_dev_ops tf_dev_ops_p58; +/** + * Supported device resource type mapping structures + */ +extern const struct tf_hcapi_resource_map tf_hcapi_res_map_p4[CFA_RESOURCE_TYPE_P4_LAST + 1]; +extern const struct tf_hcapi_resource_map tf_hcapi_res_map_p58[CFA_RESOURCE_TYPE_P58_LAST + 1]; + #endif /* _TF_DEVICE_H_ */ diff --git a/drivers/net/bnxt/tf_core/tf_device_p4.c b/drivers/net/bnxt/tf_core/tf_device_p4.c index 826cd0cdbc..8089785b82 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p4.c +++ b/drivers/net/bnxt/tf_core/tf_device_p4.c @@ -271,6 +271,67 @@ static bool tf_dev_p4_is_sram_managed(struct tf *tfp __rte_unused, { return false; } + +/** + * Device specific function that maps the hcapi resource types + * to Truflow type. + * + * [in] hcapi_caps + * CFA resource type bitmap + * + * [out] ident_caps + * Pointer to identifier type bitmap + * + * [out] tcam_caps + * Pointer to tcam type bitmap + * + * [out] tbl_caps + * Pointer to table type bitmap + * + * [out] em_caps + * Pointer to em type bitmap + * + * Returns + * - (0) if successful. + * - (-EINVAL) on failure. + */ +static int tf_dev_p4_map_hcapi_caps(uint64_t hcapi_caps, + uint32_t *ident_caps, + uint32_t *tcam_caps, + uint32_t *tbl_caps, + uint32_t *em_caps) +{ + uint32_t i; + + *ident_caps = 0; + *tcam_caps = 0; + *tbl_caps = 0; + *em_caps = 0; + + for (i = 0; i <= CFA_RESOURCE_TYPE_P4_LAST; i++) { + if (hcapi_caps & 1ULL << i) { + switch (tf_hcapi_res_map_p4[i].module_type) { + case TF_MODULE_TYPE_IDENTIFIER: + *ident_caps |= tf_hcapi_res_map_p4[i].type_caps; + break; + case TF_MODULE_TYPE_TABLE: + *tbl_caps |= tf_hcapi_res_map_p4[i].type_caps; + break; + case TF_MODULE_TYPE_TCAM: + *tcam_caps |= tf_hcapi_res_map_p4[i].type_caps; + break; + case TF_MODULE_TYPE_EM: + *em_caps |= tf_hcapi_res_map_p4[i].type_caps; + break; + default: + return -EINVAL; + } + } + } + + return 0; +} + /** * Truflow P4 device specific functions */ @@ -321,6 +382,7 @@ const struct tf_dev_ops tf_dev_ops_p4_init = { .tf_dev_get_global_cfg = NULL, .tf_dev_get_mailbox = tf_dev_p4_get_mailbox, .tf_dev_word_align = NULL, + .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps }; /** @@ -382,5 +444,6 @@ const struct tf_dev_ops tf_dev_ops_p4 = { .tf_dev_get_global_cfg = tf_global_cfg_get, .tf_dev_get_mailbox = tf_dev_p4_get_mailbox, .tf_dev_word_align = tf_dev_p4_word_align, - .tf_dev_cfa_key_hash = hcapi_cfa_p4_key_hash + .tf_dev_cfa_key_hash = hcapi_cfa_p4_key_hash, + .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps }; diff --git a/drivers/net/bnxt/tf_core/tf_device_p4.h b/drivers/net/bnxt/tf_core/tf_device_p4.h index c1357913f1..e84c0f9e83 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p4.h +++ b/drivers/net/bnxt/tf_core/tf_device_p4.h @@ -157,4 +157,83 @@ struct tf_global_cfg_cfg tf_global_cfg_p4[TF_GLOBAL_CFG_TYPE_MAX] = { TF_GLOBAL_CFG_CFG_HCAPI, TF_ACTION_BLOCK }, }; + +const struct tf_hcapi_resource_map tf_hcapi_res_map_p4[CFA_RESOURCE_TYPE_P4_LAST + 1] = { + [CFA_RESOURCE_TYPE_P4_L2_CTXT_REMAP_HIGH] = { + TF_MODULE_TYPE_IDENTIFIER, 1 << TF_IDENT_TYPE_L2_CTXT_HIGH + }, + [CFA_RESOURCE_TYPE_P4_L2_CTXT_REMAP_LOW] = { + TF_MODULE_TYPE_IDENTIFIER, 1 << TF_IDENT_TYPE_L2_CTXT_LOW + }, + [CFA_RESOURCE_TYPE_P4_PROF_FUNC] = { + TF_MODULE_TYPE_IDENTIFIER, 1 << TF_IDENT_TYPE_PROF_FUNC + }, + [CFA_RESOURCE_TYPE_P4_WC_TCAM_PROF_ID] = { + TF_MODULE_TYPE_IDENTIFIER, 1 << TF_IDENT_TYPE_WC_PROF + }, + [CFA_RESOURCE_TYPE_P4_EM_PROF_ID] = { + TF_MODULE_TYPE_IDENTIFIER, 1 << TF_IDENT_TYPE_EM_PROF + }, + [CFA_RESOURCE_TYPE_P4_L2_CTXT_TCAM_HIGH] = { + TF_MODULE_TYPE_TCAM, 1 << TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH + }, + [CFA_RESOURCE_TYPE_P4_L2_CTXT_TCAM_LOW] = { + TF_MODULE_TYPE_TCAM, 1 << TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW + }, + [CFA_RESOURCE_TYPE_P4_PROF_TCAM] = { + TF_MODULE_TYPE_TCAM, 1 << TF_TCAM_TBL_TYPE_PROF_TCAM + }, + [CFA_RESOURCE_TYPE_P4_WC_TCAM] = { + TF_MODULE_TYPE_TCAM, 1 << TF_TCAM_TBL_TYPE_WC_TCAM + }, + [CFA_RESOURCE_TYPE_P4_SP_TCAM] = { + TF_MODULE_TYPE_TCAM, 1 << TF_TCAM_TBL_TYPE_SP_TCAM + }, + [CFA_RESOURCE_TYPE_P4_NAT_IPV4] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_ACT_MODIFY_IPV4 + }, + [CFA_RESOURCE_TYPE_P4_METER_PROF] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_METER_PROF + }, + [CFA_RESOURCE_TYPE_P4_METER] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_METER_INST + }, + [CFA_RESOURCE_TYPE_P4_MIRROR] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_MIRROR_CONFIG + }, + [CFA_RESOURCE_TYPE_P4_FULL_ACTION] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_FULL_ACT_RECORD + }, + [CFA_RESOURCE_TYPE_P4_MCG] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_MCAST_GROUPS + }, + [CFA_RESOURCE_TYPE_P4_ENCAP_8B] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_ACT_ENCAP_8B + }, + [CFA_RESOURCE_TYPE_P4_ENCAP_16B] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_ACT_ENCAP_16B + }, + [CFA_RESOURCE_TYPE_P4_ENCAP_64B] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_ACT_ENCAP_64B + }, + [CFA_RESOURCE_TYPE_P4_SP_MAC] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_ACT_SP_SMAC + }, + [CFA_RESOURCE_TYPE_P4_SP_MAC_IPV4] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_ACT_SP_SMAC_IPV4 + }, + [CFA_RESOURCE_TYPE_P4_SP_MAC_IPV6] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_ACT_SP_SMAC_IPV6 + }, + [CFA_RESOURCE_TYPE_P4_COUNTER_64B] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_ACT_STATS_64 + }, + [CFA_RESOURCE_TYPE_P4_EM_REC] = { + TF_MODULE_TYPE_EM, 1 << TF_EM_TBL_TYPE_EM_RECORD + }, + [CFA_RESOURCE_TYPE_P4_TBL_SCOPE] = { + TF_MODULE_TYPE_EM, 1 << TF_EM_TBL_TYPE_TBL_SCOPE + }, +}; + #endif /* _TF_DEVICE_P4_H_ */ diff --git a/drivers/net/bnxt/tf_core/tf_device_p58.c b/drivers/net/bnxt/tf_core/tf_device_p58.c index 47d7836a58..03e72b90f5 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p58.c +++ b/drivers/net/bnxt/tf_core/tf_device_p58.c @@ -45,6 +45,7 @@ const char *tf_resource_str_p58[CFA_RESOURCE_TYPE_P58_LAST + 1] = { [CFA_RESOURCE_TYPE_P58_WC_FKB] = "wc_fkb ", [CFA_RESOURCE_TYPE_P58_VEB_TCAM] = "veb ", [CFA_RESOURCE_TYPE_P58_METADATA] = "metadata", + [CFA_RESOURCE_TYPE_P58_METER_DROP_CNT] = "meter_dc", }; /** @@ -336,6 +337,66 @@ static int tf_dev_p58_get_sram_tbl_info(struct tf *tfp __rte_unused, return 0; } +/** + * Device specific function that maps the hcapi resource types + * to Truflow type. + * + * [in] hcapi_caps + * CFA resource type bitmap + * + * [out] ident_caps + * Pointer to identifier type bitmap + * + * [out] tcam_caps + * Pointer to tcam type bitmap + * + * [out] tbl_caps + * Pointer to table type bitmap + * + * [out] em_caps + * Pointer to em type bitmap + * + * Returns + * - (0) if successful. + * - (-EINVAL) on failure. + */ +static int tf_dev_p58_map_hcapi_caps(uint64_t hcapi_caps, + uint32_t *ident_caps, + uint32_t *tcam_caps, + uint32_t *tbl_caps, + uint32_t *em_caps) +{ + uint32_t i; + + *ident_caps = 0; + *tcam_caps = 0; + *tbl_caps = 0; + *em_caps = 0; + + for (i = 0; i <= CFA_RESOURCE_TYPE_P58_LAST; i++) { + if (hcapi_caps & 1ULL << i) { + switch (tf_hcapi_res_map_p58[i].module_type) { + case TF_MODULE_TYPE_IDENTIFIER: + *ident_caps |= tf_hcapi_res_map_p58[i].type_caps; + break; + case TF_MODULE_TYPE_TABLE: + *tbl_caps |= tf_hcapi_res_map_p58[i].type_caps; + break; + case TF_MODULE_TYPE_TCAM: + *tcam_caps |= tf_hcapi_res_map_p58[i].type_caps; + break; + case TF_MODULE_TYPE_EM: + *em_caps |= tf_hcapi_res_map_p58[i].type_caps; + break; + default: + return -EINVAL; + } + } + } + + return 0; +} + /** * Truflow P58 device specific functions */ @@ -386,6 +447,7 @@ const struct tf_dev_ops tf_dev_ops_p58_init = { .tf_dev_get_global_cfg = NULL, .tf_dev_get_mailbox = tf_dev_p58_get_mailbox, .tf_dev_word_align = NULL, + .tf_dev_map_hcapi_caps = tf_dev_p58_map_hcapi_caps }; /** @@ -448,5 +510,6 @@ const struct tf_dev_ops tf_dev_ops_p58 = { .tf_dev_get_global_cfg = tf_global_cfg_get, .tf_dev_get_mailbox = tf_dev_p58_get_mailbox, .tf_dev_word_align = tf_dev_p58_word_align, - .tf_dev_cfa_key_hash = hcapi_cfa_p58_key_hash + .tf_dev_cfa_key_hash = hcapi_cfa_p58_key_hash, + .tf_dev_map_hcapi_caps = tf_dev_p58_map_hcapi_caps }; diff --git a/drivers/net/bnxt/tf_core/tf_device_p58.h b/drivers/net/bnxt/tf_core/tf_device_p58.h index 3e8759f2df..f6e66936f3 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p58.h +++ b/drivers/net/bnxt/tf_core/tf_device_p58.h @@ -209,4 +209,91 @@ struct tf_global_cfg_cfg tf_global_cfg_p58[TF_GLOBAL_CFG_TYPE_MAX] = { TF_GLOBAL_CFG_CFG_HCAPI, TF_METER_INTERVAL_CFG }, }; + +const struct tf_hcapi_resource_map tf_hcapi_res_map_p58[CFA_RESOURCE_TYPE_P58_LAST + 1] = { + [CFA_RESOURCE_TYPE_P58_L2_CTXT_REMAP_HIGH] = { + TF_MODULE_TYPE_IDENTIFIER, 1 << TF_IDENT_TYPE_L2_CTXT_HIGH + }, + [CFA_RESOURCE_TYPE_P58_L2_CTXT_REMAP_LOW] = { + TF_MODULE_TYPE_IDENTIFIER, 1 << TF_IDENT_TYPE_L2_CTXT_LOW + }, + [CFA_RESOURCE_TYPE_P58_PROF_FUNC] = { + TF_MODULE_TYPE_IDENTIFIER, 1 << TF_IDENT_TYPE_PROF_FUNC + }, + [CFA_RESOURCE_TYPE_P58_WC_TCAM_PROF_ID] = { + TF_MODULE_TYPE_IDENTIFIER, 1 << TF_IDENT_TYPE_WC_PROF + }, + [CFA_RESOURCE_TYPE_P58_EM_PROF_ID] = { + TF_MODULE_TYPE_IDENTIFIER, 1 << TF_IDENT_TYPE_EM_PROF + }, + [CFA_RESOURCE_TYPE_P58_L2_CTXT_TCAM_HIGH] = { + TF_MODULE_TYPE_TCAM, 1 << TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH + }, + [CFA_RESOURCE_TYPE_P58_L2_CTXT_TCAM_LOW] = { + TF_MODULE_TYPE_TCAM, 1 << TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW + }, + [CFA_RESOURCE_TYPE_P58_PROF_TCAM] = { + TF_MODULE_TYPE_TCAM, 1 << TF_TCAM_TBL_TYPE_PROF_TCAM + }, + [CFA_RESOURCE_TYPE_P58_WC_TCAM] = { + TF_MODULE_TYPE_TCAM, 1 << TF_TCAM_TBL_TYPE_WC_TCAM + }, + [CFA_RESOURCE_TYPE_P58_VEB_TCAM] = { + TF_MODULE_TYPE_TCAM, 1 << TF_TCAM_TBL_TYPE_VEB_TCAM + }, + [CFA_RESOURCE_TYPE_P58_EM_FKB] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_EM_FKB + }, + [CFA_RESOURCE_TYPE_P58_WC_FKB] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_WC_FKB + }, + [CFA_RESOURCE_TYPE_P58_METER_PROF] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_METER_PROF + }, + [CFA_RESOURCE_TYPE_P58_METER] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_METER_INST + }, + [CFA_RESOURCE_TYPE_P58_METER_DROP_CNT] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_METER_DROP_CNT + }, + [CFA_RESOURCE_TYPE_P58_MIRROR] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_MIRROR_CONFIG + }, + [CFA_RESOURCE_TYPE_P58_METADATA] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_METADATA + }, + /* Resources in bank 1 */ + [CFA_RESOURCE_TYPE_P58_SRAM_BANK_1] = { + TF_MODULE_TYPE_TABLE, + 1 << TF_TBL_TYPE_FULL_ACT_RECORD + | 1 << TF_TBL_TYPE_COMPACT_ACT_RECORD + }, + /* Resources in bank 2 */ + [CFA_RESOURCE_TYPE_P58_SRAM_BANK_2] = { + TF_MODULE_TYPE_TABLE, + 1 << TF_TBL_TYPE_ACT_ENCAP_8B | + 1 << TF_TBL_TYPE_ACT_ENCAP_16B | + 1 << TF_TBL_TYPE_ACT_ENCAP_32B | + 1 << TF_TBL_TYPE_ACT_ENCAP_64B | + 1 << TF_TBL_TYPE_ACT_MODIFY_8B | + 1 << TF_TBL_TYPE_ACT_MODIFY_16B | + 1 << TF_TBL_TYPE_ACT_MODIFY_32B | + 1 << TF_TBL_TYPE_ACT_MODIFY_64B + + }, + /* Resources in bank 0 */ + [CFA_RESOURCE_TYPE_P58_SRAM_BANK_0] = { + TF_MODULE_TYPE_TABLE, + 1 << TF_TBL_TYPE_ACT_SP_SMAC | + 1 << TF_TBL_TYPE_ACT_SP_SMAC_IPV4 | + 1 << TF_TBL_TYPE_ACT_SP_SMAC_IPV6 + }, + /* Resources in bank 3 */ + [CFA_RESOURCE_TYPE_P58_SRAM_BANK_3] = { + TF_MODULE_TYPE_TABLE, 1 << TF_TBL_TYPE_ACT_STATS_64 + }, + [CFA_RESOURCE_TYPE_P58_EM_REC] = { + TF_MODULE_TYPE_EM, 1 << TF_EM_TBL_TYPE_EM_RECORD + }, +}; #endif /* _TF_DEVICE_P58_H_ */ diff --git a/drivers/net/bnxt/tf_core/tf_msg.c b/drivers/net/bnxt/tf_core/tf_msg.c index ea6e2af7ce..25bf026658 100644 --- a/drivers/net/bnxt/tf_core/tf_msg.c +++ b/drivers/net/bnxt/tf_core/tf_msg.c @@ -2306,3 +2306,38 @@ tf_msg_set_if_tbl_entry(struct tf *tfp, return 0; } + +int +tf_msg_get_version(struct bnxt *bp, + struct tf_dev_info *dev, + struct tf_get_version_parms *params) + +{ + int rc; + struct hwrm_tf_version_get_input req = { 0 }; + struct hwrm_tf_version_get_output resp = { 0 }; + struct tfp_send_msg_parms parms = { 0 }; + + /* Populate the request */ + parms.tf_type = HWRM_TF_VERSION_GET, + parms.req_data = (uint32_t *)&req; + parms.req_size = sizeof(req); + parms.resp_data = (uint32_t *)&resp; + parms.resp_size = sizeof(resp); + parms.mailbox = dev->ops->tf_dev_get_mailbox(); + + rc = tfp_send_msg_direct(bp, + &parms); + + params->major = resp.major; + params->minor = resp.minor; + params->update = resp.update; + + dev->ops->tf_dev_map_hcapi_caps(resp.dev_caps_cfg, + ¶ms->dev_ident_caps, + ¶ms->dev_tcam_caps, + ¶ms->dev_tbl_caps, + ¶ms->dev_em_caps); + + return rc; +} diff --git a/drivers/net/bnxt/tf_core/tf_msg.h b/drivers/net/bnxt/tf_core/tf_msg.h index 718bc2f3b2..08d20cdd7a 100644 --- a/drivers/net/bnxt/tf_core/tf_msg.h +++ b/drivers/net/bnxt/tf_core/tf_msg.h @@ -738,4 +738,23 @@ int tf_msg_set_if_tbl_entry(struct tf *tfp, int tf_msg_get_if_tbl_entry(struct tf *tfp, struct tf_if_tbl_get_parms *params); +/** + * Send get version request to the firmware. + * + * [in] bp + * Pointer to bnxt handle + * + * [in] dev + * Pointer to the associated device + * + * [in/out] parms + * Pointer to the version info parameter + * + * Returns: + * 0 on Success else internal Truflow error + */ +int +tf_msg_get_version(struct bnxt *bp, + struct tf_dev_info *dev, + struct tf_get_version_parms *parms); #endif /* _TF_MSG_H_ */ From patchwork Thu Nov 4 21:58:35 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103797 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id EE5BAA0C5E; Thu, 4 Nov 2021 23:00:19 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6E5FD427BC; Thu, 4 Nov 2021 22:59:14 +0100 (CET) Received: from mail-pl1-f169.google.com (mail-pl1-f169.google.com [209.85.214.169]) by mails.dpdk.org (Postfix) with ESMTP id E5ECD427BB for ; Thu, 4 Nov 2021 22:59:08 +0100 (CET) Received: by mail-pl1-f169.google.com with SMTP id p18so9502621plf.13 for ; Thu, 04 Nov 2021 14:59:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=83MWD2hRzhKqqnrkxUxiSRqAcwPp5xmV6zNVpsj6ryw=; b=UkaTKTH6RRxWWUggWAg234EMQLDO3JjqCTIr+Fa87KqlK783YZrguHyWUTbMiBihmZ 4tRERS+DsifXrDkCSjiwCzdlDuIa5DcbfnAItsU7bAqfilBqRGcE1QJe22lSBzl9mrX1 5FnqCwbJglickjRXUEDS4sI8KvjzhbYDy6U8M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=83MWD2hRzhKqqnrkxUxiSRqAcwPp5xmV6zNVpsj6ryw=; b=F3CPh4c6sEuRujk0kmpdGtT/9UPq4RGR4B0VdU/pmnYrKD5GfxWKQ2grTbGr/657fJ zXn5quTRUENdiEUv3s/yx/BI9IaobdLkE/DpI8MCUx5O2bBBvZKSuLVcyYTdnSEH+uyK TXWiyD3d7Q+hOOyKF3qWE/WFVXCyr42dZsrkW8q2NLM2iDyOs9GCT9xCW5VECMjLrEl3 7i82iTMoILtD0KSorKNxNOKf0rDWxqXlcWLLuTlUuRMal5JHiGpO8qn0mRqnlzl/unWZ 0A/ZUq5fkMdgj5RMSiqkbenYH+lSlpnYNb/zoKkZI0+5qRy1M6j8waxyBlX5LYkxA8Xn fSzA== X-Gm-Message-State: AOAM532r7kKpEAQ9M0h/MzSX7pJ7kJzjpJxdkZm2k3rCXOp1S4th5hfa YYJxBoi+/7CIhXyjpDAtJnoGKgkQFQ5ne9w9t5n4A8cEvDZKQyI8e9gcBfjADDMqsKz4k1pIfDM dN6GaX8ixIIRDmApahBT4gBpER043WcsHQqeY3egU6H771JI09cBUEkcjM/Mb/II= X-Google-Smtp-Source: ABdhPJxaQg01ap0L48jrwPpv3W8m+ewhywRSBwn/IvuBI8QOkmNHLwQRAJHGVfvi16lf4c510jmmkA== X-Received: by 2002:a17:902:7005:b0:142:4452:25de with SMTP id y5-20020a170902700500b00142445225demr1349214plk.3.1636063147675; Thu, 04 Nov 2021 14:59:07 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.06 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:07 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Shahaji Bhosle , Kishore Padmanabha , Venkat Duvvuru , Randy Schacher Date: Thu, 4 Nov 2021 14:58:35 -0700 Message-Id: <20211104215846.58672-12-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 11/22] net/bnxt: increase flow scale for Thor X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Shahaji Bhosle * Updated defines and data types to allow 256 VFRs. * Increased the encap record cache to support 256 to 4K entries. So VxLAN connections can be scaled to 4K entries. Signed-off-by: Shahaji Bhosle Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Randy Schacher Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/bnxt.h | 6 +++++- drivers/net/bnxt/bnxt_cpr.c | 2 +- drivers/net/bnxt/bnxt_ethdev.c | 18 +++++++++--------- drivers/net/bnxt/bnxt_reps.c | 3 +-- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 2 +- .../generic_templates/ulp_template_db_tbl.c | 8 ++++---- drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 6 +++--- 7 files changed, 24 insertions(+), 21 deletions(-) diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h index 4ab9ebd049..54039ba1a9 100644 --- a/drivers/net/bnxt/bnxt.h +++ b/drivers/net/bnxt/bnxt.h @@ -240,7 +240,11 @@ struct bnxt_parent_info { struct bnxt_pf_info { #define BNXT_FIRST_PF_FID 1 #define BNXT_MAX_VFS(bp) ((bp)->pf->max_vfs) -#define BNXT_MAX_VF_REPS 64 +#define BNXT_MAX_VF_REPS_WH 64 +#define BNXT_MAX_VF_REPS_TH 256 +#define BNXT_MAX_VF_REPS(bp) \ + (BNXT_CHIP_P5(bp) ? BNXT_MAX_VF_REPS_TH : \ + BNXT_MAX_VF_REPS_WH) #define BNXT_TOTAL_VFS(bp) ((bp)->pf->total_vfs) #define BNXT_FIRST_VF_FID 128 #define BNXT_PF_RINGS_USED(bp) bnxt_get_num_queues(bp) diff --git a/drivers/net/bnxt/bnxt_cpr.c b/drivers/net/bnxt/bnxt_cpr.c index 63ff02a198..6bb70d516e 100644 --- a/drivers/net/bnxt/bnxt_cpr.c +++ b/drivers/net/bnxt/bnxt_cpr.c @@ -74,7 +74,7 @@ bnxt_process_default_vnic_change(struct bnxt *bp, BNXT_DEFAULT_VNIC_CHANGE_VF_ID_SFT; PMD_DRV_LOG(INFO, "async event received vf_id 0x%x\n", vf_fid); - for (vf_id = 0; vf_id < BNXT_MAX_VF_REPS; vf_id++) { + for (vf_id = 0; vf_id < BNXT_MAX_VF_REPS(bp); vf_id++) { eth_dev = bp->rep_info[vf_id].vfr_eth_dev; if (!eth_dev) continue; diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index 2ab0cf3784..90836401b7 100644 --- a/drivers/net/bnxt/bnxt_ethdev.c +++ b/drivers/net/bnxt/bnxt_ethdev.c @@ -1172,7 +1172,7 @@ void bnxt_print_link_info(struct rte_eth_dev *eth_dev) struct rte_eth_link *link = ð_dev->data->dev_link; if (link->link_status) - PMD_DRV_LOG(INFO, "Port %d Link Up - speed %u Mbps - %s\n", + PMD_DRV_LOG(DEBUG, "Port %d Link Up - speed %u Mbps - %s\n", eth_dev->data->port_id, (uint32_t)link->link_speed, (link->link_duplex == RTE_ETH_LINK_FULL_DUPLEX) ? @@ -6025,7 +6025,7 @@ static int bnxt_init_rep_info(struct bnxt *bp) return 0; bp->rep_info = rte_zmalloc("bnxt_rep_info", - sizeof(bp->rep_info[0]) * BNXT_MAX_VF_REPS, + sizeof(bp->rep_info[0]) * BNXT_MAX_VF_REPS(bp), 0); if (!bp->rep_info) { PMD_DRV_LOG(ERR, "Failed to alloc memory for rep info\n"); @@ -6067,7 +6067,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev, { struct rte_eth_dev *vf_rep_eth_dev; char name[RTE_ETH_NAME_MAX_LEN]; - struct bnxt *backing_bp; + struct bnxt *backing_bp = backing_eth_dev->data->dev_private; + uint16_t max_vf_reps = BNXT_MAX_VF_REPS(backing_bp); + uint16_t num_rep; int i, ret = 0; struct rte_kvargs *kvlist = NULL; @@ -6080,9 +6082,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev, return -ENOTSUP; } num_rep = eth_da->nb_representor_ports; - if (num_rep > BNXT_MAX_VF_REPS) { + if (num_rep > max_vf_reps) { PMD_DRV_LOG(ERR, "nb_representor_ports = %d > %d MAX VF REPS\n", - num_rep, BNXT_MAX_VF_REPS); + num_rep, max_vf_reps); return -EINVAL; } @@ -6093,8 +6095,6 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev, return -EINVAL; } - backing_bp = backing_eth_dev->data->dev_private; - if (!(BNXT_PF(backing_bp) || BNXT_VF_IS_TRUSTED(backing_bp))) { PMD_DRV_LOG(ERR, "Not a PF or trusted VF. No Representor support\n"); @@ -6114,9 +6114,9 @@ static int bnxt_rep_port_probe(struct rte_pci_device *pci_dev, .parent_dev = backing_eth_dev }; - if (representor.vf_id >= BNXT_MAX_VF_REPS) { + if (representor.vf_id >= max_vf_reps) { PMD_DRV_LOG(ERR, "VF-Rep id %d >= %d MAX VF ID\n", - representor.vf_id, BNXT_MAX_VF_REPS); + representor.vf_id, max_vf_reps); continue; } diff --git a/drivers/net/bnxt/bnxt_reps.c b/drivers/net/bnxt/bnxt_reps.c index 19da24b41d..60aaa56299 100644 --- a/drivers/net/bnxt/bnxt_reps.c +++ b/drivers/net/bnxt/bnxt_reps.c @@ -210,7 +210,6 @@ int bnxt_representor_init(struct rte_eth_dev *eth_dev, void *params) eth_dev->data->dev_link.link_status = link->link_status; eth_dev->data->dev_link.link_autoneg = link->link_autoneg; - PMD_DRV_LOG(INFO, "calling bnxt_print_link_info\n"); bnxt_print_link_info(eth_dev); PMD_DRV_LOG(INFO, @@ -842,7 +841,7 @@ int bnxt_rep_stop_all(struct bnxt *bp) if (!bp->rep_info) return 0; - for (vf_id = 0; vf_id < BNXT_MAX_VF_REPS; vf_id++) { + for (vf_id = 0; vf_id < BNXT_MAX_VF_REPS(bp); vf_id++) { rep_eth_dev = bp->rep_info[vf_id].vfr_eth_dev; if (!rep_eth_dev) continue; diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.h b/drivers/net/bnxt/tf_ulp/bnxt_ulp.h index 68f1470c61..960a5a0c93 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.h +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.h @@ -262,7 +262,7 @@ bnxt_ulp_cntxt_ptr2_ulp_flags_get(struct bnxt_ulp_context *ulp_ctx, uint32_t *flags); int32_t -bnxt_ulp_get_df_rule_info(uint8_t port_id, struct bnxt_ulp_context *ulp_ctx, +bnxt_ulp_get_df_rule_info(uint16_t port_id, struct bnxt_ulp_context *ulp_ctx, struct bnxt_ulp_df_rule_info *info); struct bnxt_ulp_vfr_rule_info* diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c index 5383e2cd70..e43e341927 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Thu Sep 9 11:11:05 2021 */ +/* date: Thu Sep 16 11:49:55 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -164,12 +164,12 @@ struct bnxt_ulp_generic_tbl_params ulp_generic_tbl_params[] = { }, [BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE << 1 | BNXT_ULP_DIRECTION_EGRESS] = { - .name = "INGRESS GEN_TABLE_VXLAN_ENCAP_REC_CACHE", - .result_num_entries = 256, + .name = "EGRESS GEN_TABLE_VXLAN_ENCAP_REC_CACHE", + .result_num_entries = 4096, .result_num_bytes = 6, .key_num_bytes = 17, .num_buckets = 8, - .hash_tbl_entries = 1024, + .hash_tbl_entries = 16384, .result_byte_order = BNXT_ULP_BYTE_ORDER_LE } }; diff --git a/drivers/net/bnxt/tf_ulp/ulp_def_rules.c b/drivers/net/bnxt/tf_ulp/ulp_def_rules.c index d8336d164e..01233c0f5e 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_def_rules.c +++ b/drivers/net/bnxt/tf_ulp/ulp_def_rules.c @@ -441,7 +441,7 @@ void bnxt_ulp_destroy_df_rules(struct bnxt *bp, bool global) { struct bnxt_ulp_df_rule_info *info; - uint8_t port_id; + uint16_t port_id; if (!BNXT_TRUFLOW_EN(bp) || BNXT_ETH_DEV_IS_REPRESENTOR(bp->eth_dev)) @@ -505,7 +505,7 @@ int32_t bnxt_ulp_create_df_rules(struct bnxt *bp) { struct bnxt_ulp_df_rule_info *info; - uint8_t port_id; + uint16_t port_id; int rc = 0; if (!BNXT_TRUFLOW_EN(bp) || @@ -562,7 +562,7 @@ bnxt_ulp_create_vfr_default_rules(struct rte_eth_dev *vfr_ethdev) struct rte_eth_dev *parent_dev = vfr->parent_dev; struct bnxt *bp = parent_dev->data->dev_private; uint16_t vfr_port_id = vfr_ethdev->data->port_id; - uint8_t port_id; + uint16_t port_id; int rc; if (!bp || !BNXT_TRUFLOW_EN(bp)) From patchwork Thu Nov 4 21:58:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103798 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id D6E92A0C5E; Thu, 4 Nov 2021 23:00:25 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 79649427E6; Thu, 4 Nov 2021 22:59:15 +0100 (CET) Received: from mail-pg1-f181.google.com (mail-pg1-f181.google.com [209.85.215.181]) by mails.dpdk.org (Postfix) with ESMTP id 7901C427CC for ; Thu, 4 Nov 2021 22:59:10 +0100 (CET) Received: by mail-pg1-f181.google.com with SMTP id g184so6610911pgc.6 for ; Thu, 04 Nov 2021 14:59:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=W8xHpH7NlxhmL7QasMe6LmPav8kusMKRyX2P51Gm2ns=; b=GCy5475Xem+nCG5vjI27i0uyUk0+AEcgPtwR0bkpRI3Q8h1p8Oo6t0N04B24JIi1dU ckq30hYXaYEmRI2hIFsGpuRs9EdvuYMKeege6P2lv51a/tA7v2ZU7zBzb81UK28y89lA jfCqOQducNnb2EytZSw5fWzZEiW5sd7qvV9pw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=W8xHpH7NlxhmL7QasMe6LmPav8kusMKRyX2P51Gm2ns=; b=esw0LHvxzhEGcnwBpa+D2F9PG8L5ZVKJBn8y+av/iAHNJiZ6+g8bib41xmOOVkZuXv lHPkRn/O1CBYFNm22lCBA72MdNbR/8WMMUsSZCVV1Gq/UOVQLj3ikF9ox4CDtWF0oh9V r/c7B4i482L0tSGXa1izhtGTV8thchpe3BJ39paelNelGecuulxivilFHvEyW36hk7X7 r672CZHUB9pLarsD6/1EDmPpwkCWMGiLgNBuHdxLsblUFIdk+gw4Wpf0ERb+XrDZW03e 1xXn3YTtKAwsoOFCTdO4kWGnk/0413xtrxb2JAX5IY79YzY5JVnVtFJb6MgpuREDCM/4 r94g== X-Gm-Message-State: AOAM531dH3+9U4eUliyFgzfDhLKzCiMrxmQEhZxBKgNFzmOmiIrsy8Ik 7KkuHch2N5nwjE9lhjwACqkrZeZWPRGEqnjWanG69EdMlTEFAtpNQx2TdQ0/3TzEkZdadWQDnJq VHZfg9IkPdrt4E3s8ZgsRR2NjNWaIBg/lZGtSF1uObkKm9khSCH/mkpqK7Ev+KII= X-Google-Smtp-Source: ABdhPJyKz7DLSuzlPjXnYBn+O8SWGuAfyfu87x1ociC7jW3a0h9vdRT32NehSphPJyuODcgymzftvg== X-Received: by 2002:a05:6a00:140c:b0:44b:e251:fe13 with SMTP id l12-20020a056a00140c00b0044be251fe13mr55325211pfu.10.1636063149222; Thu, 04 Nov 2021 14:59:09 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.07 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:08 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Venkat Duvvuru , Mike Baucom Date: Thu, 4 Nov 2021 14:58:36 -0700 Message-Id: <20211104215846.58672-13-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 12/22] net/bnxt: remove devargs for stats accumulation X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha The accumulation of flow counters is not determined by the application device arguments anymore. Instead it is now dictated by the platform capabilities whether to do software based accumulation or not. Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Mike Baucom Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/bnxt.h | 3 -- drivers/net/bnxt/bnxt_ethdev.c | 53 ---------------------------- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 8 ----- drivers/net/bnxt/tf_ulp/bnxt_ulp.h | 1 - drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c | 12 +++---- 5 files changed, 4 insertions(+), 73 deletions(-) diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h index 54039ba1a9..04b994e5ec 100644 --- a/drivers/net/bnxt/bnxt.h +++ b/drivers/net/bnxt/bnxt.h @@ -718,11 +718,8 @@ struct bnxt { uint32_t flags2; #define BNXT_FLAGS2_PTP_TIMESYNC_ENABLED BIT(0) #define BNXT_FLAGS2_PTP_ALARM_SCHEDULED BIT(1) -#define BNXT_FLAGS2_ACCUM_STATS_EN BIT(2) #define BNXT_P5_PTP_TIMESYNC_ENABLED(bp) \ ((bp)->flags2 & BNXT_FLAGS2_PTP_TIMESYNC_ENABLED) -#define BNXT_ACCUM_STATS_EN(bp) \ - ((bp)->flags2 & BNXT_FLAGS2_ACCUM_STATS_EN) uint16_t chip_num; #define CHIP_NUM_58818 0xd818 diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index 90836401b7..4413b5d72e 100644 --- a/drivers/net/bnxt/bnxt_ethdev.c +++ b/drivers/net/bnxt/bnxt_ethdev.c @@ -87,7 +87,6 @@ static const struct rte_pci_id bnxt_pci_id_map[] = { { .vendor_id = 0, /* sentinel */ }, }; -#define BNXT_DEVARG_ACCUM_STATS "accum-stats" #define BNXT_DEVARG_FLOW_XSTAT "flow-xstat" #define BNXT_DEVARG_MAX_NUM_KFLOWS "max-num-kflows" #define BNXT_DEVARG_REPRESENTOR "representor" @@ -101,7 +100,6 @@ static const struct rte_pci_id bnxt_pci_id_map[] = { static const char *const bnxt_dev_args[] = { BNXT_DEVARG_REPRESENTOR, - BNXT_DEVARG_ACCUM_STATS, BNXT_DEVARG_FLOW_XSTAT, BNXT_DEVARG_MAX_NUM_KFLOWS, BNXT_DEVARG_REP_BASED_PF, @@ -114,12 +112,6 @@ static const char *const bnxt_dev_args[] = { NULL }; -/* - * accum-stats == false to disable flow counter accumulation - * accum-stats == true to enable flow counter accumulation - */ -#define BNXT_DEVARG_ACCUM_STATS_INVALID(accum_stats) ((accum_stats) > 1) - /* * app-id = an non-negative 8-bit number */ @@ -5290,45 +5282,6 @@ static int bnxt_init_resources(struct bnxt *bp, bool reconfig_dev) return 0; } -static int -bnxt_parse_devarg_accum_stats(__rte_unused const char *key, - const char *value, void *opaque_arg) -{ - struct bnxt *bp = opaque_arg; - unsigned long accum_stats; - char *end = NULL; - - if (!value || !opaque_arg) { - PMD_DRV_LOG(ERR, - "Invalid parameter passed to accum-stats devargs.\n"); - return -EINVAL; - } - - accum_stats = strtoul(value, &end, 10); - if (end == NULL || *end != '\0' || - (accum_stats == ULONG_MAX && errno == ERANGE)) { - PMD_DRV_LOG(ERR, - "Invalid parameter passed to accum-stats devargs.\n"); - return -EINVAL; - } - - if (BNXT_DEVARG_ACCUM_STATS_INVALID(accum_stats)) { - PMD_DRV_LOG(ERR, - "Invalid value passed to accum-stats devargs.\n"); - return -EINVAL; - } - - if (accum_stats) { - bp->flags2 |= BNXT_FLAGS2_ACCUM_STATS_EN; - PMD_DRV_LOG(INFO, "Host-based accum-stats feature enabled.\n"); - } else { - bp->flags2 &= ~BNXT_FLAGS2_ACCUM_STATS_EN; - PMD_DRV_LOG(INFO, "Host-based accum-stats feature disabled.\n"); - } - - return 0; -} - static int bnxt_parse_devarg_flow_xstat(__rte_unused const char *key, const char *value, void *opaque_arg) @@ -5681,12 +5634,6 @@ bnxt_parse_dev_args(struct bnxt *bp, struct rte_devargs *devargs) if (ret) goto err; - /* - * Handler for "accum-stats" devarg. - * Invoked as for ex: "-a 0000:00:0d.0,accum-stats=1" - */ - rte_kvargs_process(kvlist, BNXT_DEVARG_ACCUM_STATS, - bnxt_parse_devarg_accum_stats, bp); /* * Handler for "max_num_kflows" devarg. * Invoked as for ex: "-a 000:00:0d.0,max_num_kflows=32" diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c index 2ac1a8625f..7deacd1f3e 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c @@ -1490,14 +1490,6 @@ bnxt_ulp_port_init(struct bnxt *bp) goto jump_to_error; } - /* set the accumulation of the stats */ - if (BNXT_ACCUM_STATS_EN(bp)) - bp->ulp_ctx->cfg_data->accum_stats = true; - - BNXT_TF_DBG(DEBUG, "BNXT Port:%d ULP port init, accum_stats:%d\n", - bp->eth_dev->data->port_id, - bp->ulp_ctx->cfg_data->accum_stats); - /* set the unicast mode */ if (bnxt_ulp_cntxt_ptr2_ulp_flags_get(bp->ulp_ctx, &ulp_flags)) { BNXT_TF_DBG(ERR, "Error in getting ULP context flags\n"); diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.h b/drivers/net/bnxt/tf_ulp/bnxt_ulp.h index 960a5a0c93..17c6898196 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.h +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.h @@ -92,7 +92,6 @@ struct bnxt_ulp_data { #define BNXT_ULP_TUN_ENTRY_INVALID -1 #define BNXT_ULP_MAX_TUN_CACHE_ENTRIES 16 struct bnxt_tun_cache_entry tun_tbl[BNXT_ULP_MAX_TUN_CACHE_ENTRIES]; - bool accum_stats; uint8_t app_id; uint8_t num_shared_clients; struct bnxt_flow_app_tun_ent app_tun[BNXT_ULP_MAX_TUN_CACHE_ENTRIES]; diff --git a/drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c b/drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c index d6b4f93d31..92243083b5 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c +++ b/drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c @@ -396,21 +396,17 @@ static int ulp_get_single_flow_stat(struct bnxt_ulp_context *ctxt, return rc; } - /* TBD - Get PKT/BYTE COUNT SHIFT/MASK from Template */ + /* PKT/BYTE COUNT SHIFT/MASK are device specific */ sw_cntr_indx = hw_cntr_id - fc_info->shadow_hw_tbl[dir].start_idx; sw_acc_tbl_entry = &fc_info->sw_acc_tbl[dir][sw_cntr_indx]; + /* Some dpdk applications may accumulate the flow counters while some * may not. In cases where the application is accumulating the counters * the PMD need not do the accumulation itself and viceversa to report * the correct flow counters. */ - if (ctxt->cfg_data->accum_stats) { - sw_acc_tbl_entry->pkt_count += FLOW_CNTR_PKTS(stats, dparms); - sw_acc_tbl_entry->byte_count += FLOW_CNTR_BYTES(stats, dparms); - } else { - sw_acc_tbl_entry->pkt_count = FLOW_CNTR_PKTS(stats, dparms); - sw_acc_tbl_entry->byte_count = FLOW_CNTR_BYTES(stats, dparms); - } + sw_acc_tbl_entry->pkt_count += FLOW_CNTR_PKTS(stats, dparms); + sw_acc_tbl_entry->byte_count += FLOW_CNTR_BYTES(stats, dparms); /* Update the parent counters if it is child flow */ if (sw_acc_tbl_entry->pc_flow_idx & FLOW_CNTR_PC_FLOW_VALID) { From patchwork Thu Nov 4 21:58:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103799 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id C3BA1A0C5E; Thu, 4 Nov 2021 23:00:31 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 94858427EA; Thu, 4 Nov 2021 22:59:16 +0100 (CET) Received: from mail-pf1-f177.google.com (mail-pf1-f177.google.com [209.85.210.177]) by mails.dpdk.org (Postfix) with ESMTP id 5FF84427D0 for ; Thu, 4 Nov 2021 22:59:11 +0100 (CET) Received: by mail-pf1-f177.google.com with SMTP id h74so7153108pfe.0 for ; Thu, 04 Nov 2021 14:59:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=zvYKDktw5PALcoulZx3PdYRxShOVLrc2qHegUQBVcBg=; b=D3rxMNL0q7hI3EYka/EIkA+ik006v6FJeNoGWFruiiKeQwwzBHnt8PBZFj4zHV332l OTa79K2I5ejbKdYDOyX8cOEQUvvOQaZYZNrXY3E8r7MmB9rQ3PhYyU2HpQd1qvfgC7hz 8fSU3Kw5zCZS6gWVBmmUg1XxIUbLkpuT7Q09Q= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=zvYKDktw5PALcoulZx3PdYRxShOVLrc2qHegUQBVcBg=; b=mWkDU5QsUOcum1e9dIdFiz5iT75AtRp/O1EikTr2merloPJovtXYNU1bTmMG4fZy8U wJ1l3iYjXITrDrtb9Nntu3wZ65j43JpIBYvqNHbiDR+5299Bp4BPz3eaufWdhQYHnwIN QA9aHVwqSAhnWAqXL3K4lMxCNi5zCILBhb9CoIlP+u6qC7fbC9ujlKLyVBVgL2oGep+J FtyZq6LMRyuy3yvNvM94N/O6ocXCU6iIfaBO1f7J2rkULb2lqTgVnSPTQiLQBb3X03gY PGTPQU8fXs5aMFJ8d5rjuAS5Mc+31Gb1oMMQXxWkARWO2sGpV4Q3q9dg76E/7z/xBFMd cR3g== X-Gm-Message-State: AOAM533SbrxprIce2e0nJ4SB8/7+6PmbY4Dz4A0TonY7kOGRMdtTHZnx 1nJlK75hOrAlBnCVZXtqe5SWfryfbpGENGRMwsh39xPNfwpl4neAH33aaenrs5su3s1yeV0VvxF CUR8sX5hC+C2DwcN0qVGaihuqoV15Vr2Hfxss5tR1HijTBm2koq1uEDhe86HhQMU= X-Google-Smtp-Source: ABdhPJxwV5leDEgSfgmsGRPIwmFPnjeHseoXvqH+cdTKeKQbRb+2DD4uVGi8uAmjsEbL/2+5gsixlQ== X-Received: by 2002:a63:3d0f:: with SMTP id k15mr40426742pga.269.1636063150334; Thu, 04 Nov 2021 14:59:10 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.09 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:09 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Shahaji Bhosle , Venkat Duvvuru Date: Thu, 4 Nov 2021 14:58:37 -0700 Message-Id: <20211104215846.58672-14-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 13/22] net/bnxt: fix clang compiler warnings X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Shahaji Bhosle Typecast flow_item type, action_item type and the ENUMs to uint32_t before comparing. Bugzilla ID: 821 Fixes: bdf4a3c6316b ("net/bnxt: support tunnel offload") Signed-off-by: Shahaji Bhosle Signed-off-by: Venkat Duvvuru Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c index 605c29223c..d21c088d59 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +++ b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c @@ -137,10 +137,10 @@ bnxt_ulp_rte_parser_hdr_parse(const struct rte_flow_item pattern[], /* Parse all the items in the pattern */ while (item && item->type != RTE_FLOW_ITEM_TYPE_END) { - if (item->type >= (uint32_t) + if (item->type >= (typeof(item->type)) BNXT_RTE_FLOW_ITEM_TYPE_END) { if (item->type >= - (uint32_t)BNXT_RTE_FLOW_ITEM_TYPE_LAST) + (typeof(item->type))BNXT_RTE_FLOW_ITEM_TYPE_LAST) goto hdr_parser_error; /* get the header information */ hdr_info = &ulp_vendor_hdr_info[item->type - @@ -186,9 +186,9 @@ bnxt_ulp_rte_parser_act_parse(const struct rte_flow_action actions[], /* Parse all the items in the pattern */ while (action_item && action_item->type != RTE_FLOW_ACTION_TYPE_END) { if (action_item->type >= - (uint32_t)BNXT_RTE_FLOW_ACTION_TYPE_END) { + (typeof(action_item->type))BNXT_RTE_FLOW_ACTION_TYPE_END) { if (action_item->type >= - (uint32_t)BNXT_RTE_FLOW_ACTION_TYPE_LAST) + (typeof(action_item->type))BNXT_RTE_FLOW_ACTION_TYPE_LAST) goto act_parser_error; /* get the header information from bnxt actinfo table */ hdr_info = &ulp_vendor_act_info[action_item->type - From patchwork Thu Nov 4 21:58:38 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103800 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 4C622A0C5E; Thu, 4 Nov 2021 23:00:38 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 991F6427E9; Thu, 4 Nov 2021 22:59:17 +0100 (CET) Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by mails.dpdk.org (Postfix) with ESMTP id CCBFF427DB for ; Thu, 4 Nov 2021 22:59:12 +0100 (CET) Received: by mail-pl1-f181.google.com with SMTP id f8so9512028plo.12 for ; Thu, 04 Nov 2021 14:59:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=CSdvPKHQCIHUlwrwN1VSNjWkdfjG5504L0yo4JaPIHs=; b=gObURl9aNGAQcME2jGEIVMCWMoX0Hwe//EQqMyaDOES+HTMMNawRT3tpSB2r1MbQdT BLjm303JNsh9Z9vA7Q0QrwOeIaT+Ivu8roRsScHLB67XoQqNgbb1ckmNGsl7QUDWIMYp EjhJa/+yAg/JemwPRLlqR4BW/ZnaIjsXArGBM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=CSdvPKHQCIHUlwrwN1VSNjWkdfjG5504L0yo4JaPIHs=; b=4ceM6JwJwTXq7XnzIuJ5WS94PpEmXQggQ7rNsyDIhd2fWwhcVsOmNIC3h+ZgvATx3k 7CRsuy3QwMiGOVlmJgTyvQNHeej4wWtQKiBupuhWlVsjMUPMfGPMjqHv6Hl1rVuL3GGu UKMMV/a4YsNpycdxyfoGl0UssmFfjkhrLdz4p7YPJmegeJyJIvWGZyMGo66jBrgH8Mdk 96ug/ikGKUEftBOlg0pFbUQxKPfTiEdQ6GYOt6ln1KUnQgtgbTRyCacxdY0jxvsK81YB 4jieh4/GLIRb+q9a74JRJgCv34rdbwI6LBlX5OIqhncarTG5OI7pU1u+muaZjVS0uQMb gphA== X-Gm-Message-State: AOAM530WtuePvD0HNg4COlo4cbKLPMfabiJEe+tEWz+hYFMRv6cCTD5C aqOvto39B5QSrsztPlpELXZ49ROtvcTR9iogG4ZHKt4QVqWnUCrYC8YkugrxoI907seej3kHkZk JzLU+9VBoeJpdyITDMgSggdxZwu4+RWEXKjvXlgoLN6Fnp5if2Cs2HW9UACNC6Zc= X-Google-Smtp-Source: ABdhPJwYJtSgc9aYLVnZWNCVBAk4YEbifCo929R/Jiy7ZdBA0d/7p6rlCB1LElNK/iwCAQPmWRop5A== X-Received: by 2002:a17:903:1c3:b0:142:3ae:5c09 with SMTP id e3-20020a17090301c300b0014203ae5c09mr21117652plh.52.1636063151722; Thu, 04 Nov 2021 14:59:11 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.10 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:11 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Venkat Duvvuru , Shahaji Bhosle , Mike Baucom Date: Thu, 4 Nov 2021 14:58:38 -0700 Message-Id: <20211104215846.58672-15-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 14/22] net/bnxt: update log messages in TruFlow path X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha Some of the error level log messages are made debug level messages. When Truflow is not enabled then Truflow init error messages are moved to debug level instead. Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Shahaji Bhosle Reviewed-by: Mike Baucom Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 24 ++++++++++++------------ drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 2 +- drivers/net/bnxt/tf_ulp/ulp_flow_db.c | 2 +- drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c | 2 +- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c index 7deacd1f3e..21f71d6445 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c @@ -1396,16 +1396,16 @@ bnxt_ulp_port_init(struct bnxt *bp) uint32_t ulp_flags; int32_t rc = 0; - if (!BNXT_PF(bp) && !BNXT_VF_IS_TRUSTED(bp)) { - BNXT_TF_DBG(ERR, - "Skip ulp init for port: %d, not a TVF or PF\n", + if (!BNXT_TRUFLOW_EN(bp)) { + BNXT_TF_DBG(DEBUG, + "Skip ulp init for port: %d, TF is not enabled\n", bp->eth_dev->data->port_id); return rc; } - if (!BNXT_TRUFLOW_EN(bp)) { - BNXT_TF_DBG(ERR, - "Skip ulp init for port: %d, truflow is not enabled\n", + if (!BNXT_PF(bp) && !BNXT_VF_IS_TRUSTED(bp)) { + BNXT_TF_DBG(DEBUG, + "Skip ulp init for port: %d, not a TVF or PF\n", bp->eth_dev->data->port_id); return rc; } @@ -1520,16 +1520,16 @@ bnxt_ulp_port_deinit(struct bnxt *bp) struct rte_pci_device *pci_dev; struct rte_pci_addr *pci_addr; - if (!BNXT_PF(bp) && !BNXT_VF_IS_TRUSTED(bp)) { - BNXT_TF_DBG(ERR, - "Skip ULP deinit port:%d, not a TVF or PF\n", + if (!BNXT_TRUFLOW_EN(bp)) { + BNXT_TF_DBG(DEBUG, + "Skip ULP deinit for port:%d, TF is not enabled\n", bp->eth_dev->data->port_id); return; } - if (!BNXT_TRUFLOW_EN(bp)) { - BNXT_TF_DBG(ERR, - "Skip ULP deinit for port:%d, truflow is not enabled\n", + if (!BNXT_PF(bp) && !BNXT_VF_IS_TRUSTED(bp)) { + BNXT_TF_DBG(DEBUG, + "Skip ULP deinit port:%d, not a TVF or PF\n", bp->eth_dev->data->port_id); return; } diff --git a/drivers/net/bnxt/tf_ulp/ulp_def_rules.c b/drivers/net/bnxt/tf_ulp/ulp_def_rules.c index 01233c0f5e..8790d7ac0d 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_def_rules.c +++ b/drivers/net/bnxt/tf_ulp/ulp_def_rules.c @@ -323,7 +323,7 @@ ulp_default_flow_create(struct rte_eth_dev *eth_dev, ulp_ctx = bnxt_ulp_eth_dev_ptr2_cntxt_get(eth_dev); if (!ulp_ctx) { BNXT_TF_DBG(ERR, - "ULP context is not initialized. Failed to create dflt flow.\n"); + "ULP is not init'ed. Fail to create dflt flow.\n"); return -EINVAL; } diff --git a/drivers/net/bnxt/tf_ulp/ulp_flow_db.c b/drivers/net/bnxt/tf_ulp/ulp_flow_db.c index 79dc869e64..9968311c44 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_flow_db.c +++ b/drivers/net/bnxt/tf_ulp/ulp_flow_db.c @@ -470,7 +470,7 @@ ulp_flow_db_init(struct bnxt_ulp_context *ulp_ctxt) } /* All good so return. */ - BNXT_TF_DBG(INFO, "FlowDB initialized with %d flows.\n", + BNXT_TF_DBG(DEBUG, "FlowDB initialized with %d flows.\n", flow_tbl->num_flows); return 0; error_free: diff --git a/drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c b/drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c index 271520e1d3..9dffaef73b 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c +++ b/drivers/net/bnxt/tf_ulp/ulp_mark_mgr.c @@ -116,7 +116,7 @@ ulp_mark_db_init(struct bnxt_ulp_context *ctxt) mark_tbl->gfid_mask = (mark_tbl->gfid_num_entries / 2) - 1; mark_tbl->gfid_type_bit = (mark_tbl->gfid_num_entries / 2); - BNXT_TF_DBG(DEBUG, "GFID Max = 0x%08x\nGFID MASK = 0x%08x\n", + BNXT_TF_DBG(DEBUG, "GFID Max = 0x%08x GFID MASK = 0x%08x\n", mark_tbl->gfid_num_entries - 1, mark_tbl->gfid_mask); From patchwork Thu Nov 4 21:58:39 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103802 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 19B52A0C5E; Thu, 4 Nov 2021 23:00:50 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D1F5C427FE; Thu, 4 Nov 2021 22:59:20 +0100 (CET) Received: from mail-pg1-f177.google.com (mail-pg1-f177.google.com [209.85.215.177]) by mails.dpdk.org (Postfix) with ESMTP id 55E72427DD for ; Thu, 4 Nov 2021 22:59:15 +0100 (CET) Received: by mail-pg1-f177.google.com with SMTP id f5so6583798pgc.12 for ; Thu, 04 Nov 2021 14:59:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=ye72ESWbmGrxWb9oVEwACITcWBQBVysrS4X5fNNEfUg=; b=E0lNjiwbG8Cmnm8kjek/PPVB7wu0O69JjpVaCzroXJjtZBwYDoM3uXWUvAgrNPXh8a 33pTiIFbF1cXLJzv31ymbGES1dt87iQlg48bH9FsNtmnaMfts/m2IogHoBLGtRFiMtEF RQ6qE5EQDxWx6PketAwwl/Fo01zAc8/ecjrHs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=ye72ESWbmGrxWb9oVEwACITcWBQBVysrS4X5fNNEfUg=; b=U94Eg2EiDjVfHy4TRjqAWsMPQLcdhQ1C1WGPbCqeFdPXHsS0H9ZonDF2Vp794FXgJI EnxmU4QnEwhRVNU1rNkFDGdXTF0tEMVl+siR1GFUhl+/Tu4WQ8/XM4Zk08kdDiZwxxnS SY+NSzCEUi8VHXy2qbwcqx63NGvUMN0Q3OKIvhTWWEF8q1y3EUISoZ877ft5bLTyjheE kWcMXGGdIoF6PDAv5CfJoGAwK5DtqtQ3Q2sxTaWvC/wnrVYXMKFiqzhtyr2JbdfGwVpz wzZNWrhcP5Uskm1Feq4xSlwux9rtPeYQ9oQu60ua1r8wPit/ikVWCOo1ZhrenRG0ceW1 p3SA== X-Gm-Message-State: AOAM531K0GGpLNEHs8aeFqrCfaede8yLRa/+7/3Vx9pXi6am/nGGFXly hYZzY526/yNTITp1vy/pIT+etMJrM4JuCVZRN1vYlTwuNphxmUcsBU7Wvo34JIpaVrqVGdYYrXB nBcmFIxGpHdprtDy8mNIhpUJ+CX4zZ5idU2oFNAwQqJY/ADWwabAhuvF+bGAoWEw= X-Google-Smtp-Source: ABdhPJwjZfmuMJUf/sN3kAEA5J5Mvnx8XUJ9h0Eii15nQudjk4R5vWCWm1tKBhaMMjdMusgqCvZ7zg== X-Received: by 2002:a05:6a00:188a:b0:481:2c54:4ace with SMTP id x10-20020a056a00188a00b004812c544acemr20093279pfh.20.1636063153255; Thu, 04 Nov 2021 14:59:13 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.11 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:12 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Venkat Duvvuru , Mike Baucom , Randy Schacher Date: Thu, 4 Nov 2021 14:58:39 -0700 Message-Id: <20211104215846.58672-16-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 15/22] net/bnxt: add support for socket direct feature X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha Added support for socket direct feature. This feature allows to ignore the incoming interface and use other fields in the packet to identify the flow and forward. Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Mike Baucom Reviewed-by: Randy Schacher Acked-by: Ajit Khaparde --- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 5 +- drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c | 23 +- .../generic_templates/ulp_template_db_enum.h | 71 +- .../generic_templates/ulp_template_db_tbl.c | 3917 +++++++++++++---- .../ulp_template_db_thor_act.c | 150 +- .../ulp_template_db_thor_class.c | 660 +-- .../ulp_template_db_wh_plus_act.c | 242 +- .../ulp_template_db_wh_plus_class.c | 222 +- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 5 + 9 files changed, 3701 insertions(+), 1594 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c index 21f71d6445..b64279710b 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c @@ -337,9 +337,12 @@ bnxt_ulp_cntxt_app_caps_init(struct bnxt *bp, BNXT_ULP_APP_UNICAST_ONLY; if (info[i].flags & BNXT_ULP_APP_CAP_SOCKET_DIRECT) { /* Enable socket direction only if MR is enabled in fw*/ - if (BNXT_MULTIROOT_EN(bp)) + if (BNXT_MULTIROOT_EN(bp)) { ulp_ctx->cfg_data->ulp_flags |= BNXT_ULP_APP_SOCKET_DIRECT; + BNXT_TF_DBG(DEBUG, + "Socket Direct feature is enabled"); + } } } if (!found) { diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c index 272195f6a2..55885d1b8c 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c @@ -133,8 +133,27 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms, } /* Update the socket direct flag */ - if (ULP_SOCKET_DIRECT_IS_ENABLED(ulp_flags)) - ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_SOCKET_DIRECT, 1); + if (ULP_BITMAP_ISSET(params->hdr_bitmap.bits, + BNXT_ULP_HDR_BIT_SVIF_IGNORE)) { + uint32_t ifindex; + uint16_t vport; + + /* Get the port db ifindex */ + if (ulp_port_db_dev_port_to_ulp_index(params->ulp_ctx, + params->port_id, + &ifindex)) { + BNXT_TF_DBG(ERR, "Invalid port id %u\n", + params->port_id); + return; + } + /* Update the phy port of the other interface */ + if (ulp_port_db_vport_get(params->ulp_ctx, ifindex, &vport)) { + BNXT_TF_DBG(ERR, "Invalid port if index %u\n", ifindex); + return; + } + ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_SOCKET_DIRECT_VPORT, + (vport == 1) ? 2 : 1); + } } /* Function to create the rte flow. */ diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h index 8706e45f28..c01ae1601d 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h @@ -3,15 +3,15 @@ * All rights reserved. */ -/* date: Thu Sep 9 12:11:08 2021 */ +/* date: Fri Oct 8 11:41:10 2021 */ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_ -#define BNXT_ULP_REGFILE_MAX_SZ 42 +#define BNXT_ULP_REGFILE_MAX_SZ 46 #define BNXT_ULP_MAX_NUM_DEVICES 4 #define BNXT_ULP_LOG2_MAX_NUM_DEV 2 -#define BNXT_ULP_GEN_TBL_MAX_SZ 16 +#define BNXT_ULP_GEN_TBL_MAX_SZ 18 #define BNXT_ULP_CLASS_SIG_TBL_MAX_SZ 65536 #define BNXT_ULP_CLASS_MATCH_LIST_MAX_SZ 993 #define BNXT_ULP_CLASS_HID_LOW_PRIME 6701 @@ -26,11 +26,11 @@ #define BNXT_ULP_ACT_HID_SHFTR 27 #define BNXT_ULP_ACT_HID_SHFTL 26 #define BNXT_ULP_ACT_HID_MASK 2047 -#define BNXT_ULP_APP_RESOURCE_RESV_LIST_MAX_SZ 8 -#define BNXT_ULP_GLB_RESOURCE_TBL_MAX_SZ 110 -#define BNXT_ULP_APP_GLB_RESOURCE_TBL_MAX_SZ 50 -#define BNXT_ULP_RESOURCE_RESV_LIST_MAX_SZ 277 -#define BNXT_ULP_APP_CAP_TBL_MAX_SZ 8 +#define BNXT_ULP_APP_RESOURCE_RESV_LIST_MAX_SZ 16 +#define BNXT_ULP_GLB_RESOURCE_TBL_MAX_SZ 132 +#define BNXT_ULP_APP_GLB_RESOURCE_TBL_MAX_SZ 140 +#define BNXT_ULP_RESOURCE_RESV_LIST_MAX_SZ 409 +#define BNXT_ULP_APP_CAP_TBL_MAX_SZ 12 #define BNXT_ULP_COND_GOTO_REJECT 1023 #define BNXT_ULP_COND_GOTO_RF 0x10000 #define BNXT_ULP_GLB_FIELD_TBL_SHIFT 7 @@ -114,7 +114,8 @@ enum bnxt_ulp_hdr_bit { BNXT_ULP_HDR_BIT_I_ICMP = 0x0000000000020000, BNXT_ULP_HDR_BIT_F1 = 0x0000000000040000, BNXT_ULP_HDR_BIT_F2 = 0x0000000000080000, - BNXT_ULP_HDR_BIT_LAST = 0x0000000000100000 + BNXT_ULP_HDR_BIT_SVIF_IGNORE = 0x0000000000100000, + BNXT_ULP_HDR_BIT_LAST = 0x0000000000200000 }; enum bnxt_ulp_accept_opc { @@ -212,7 +213,8 @@ enum bnxt_ulp_cf_idx { BNXT_ULP_CF_IDX_IO_VLAN_FB_VID = 72, BNXT_ULP_CF_IDX_II_VLAN_FB_VID = 73, BNXT_ULP_CF_IDX_SOCKET_DIRECT = 74, - BNXT_ULP_CF_IDX_LAST = 75 + BNXT_ULP_CF_IDX_SOCKET_DIRECT_VPORT = 75, + BNXT_ULP_CF_IDX_LAST = 76 }; enum bnxt_ulp_cond_list_opc { @@ -427,21 +429,31 @@ enum bnxt_ulp_glb_rf_idx { BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_0 = 37, BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_1 = 38, BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_2 = 39, - BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0 = 40, - BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_1 = 41, - BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_PROFILE_ID_0 = 42, - BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_PROFILE_ID_1 = 43, - BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_0 = 44, - BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_1 = 45, - BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_2 = 46, - BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_KEY_ID_0 = 47, - BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_KEY_ID_1 = 48, - BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_0 = 49, - BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_1 = 50, - BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_0 = 51, - BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_1 = 52, - BNXT_ULP_GLB_RF_IDX_GRE_PROF_FUNC_ID = 53, - BNXT_ULP_GLB_RF_IDX_LAST = 54 + BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_3 = 40, + BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0 = 41, + BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_1 = 42, + BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_PROFILE_ID_0 = 43, + BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_PROFILE_ID_1 = 44, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_0 = 45, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_1 = 46, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_2 = 47, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_3 = 48, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_4 = 49, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_5 = 50, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_6 = 51, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_7 = 52, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_8 = 53, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_9 = 54, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_10 = 55, + BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_KEY_ID_0 = 56, + BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_KEY_ID_1 = 57, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_0 = 58, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_1 = 59, + BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_2 = 60, + BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_0 = 61, + BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_1 = 62, + BNXT_ULP_GLB_RF_IDX_GRE_PROF_FUNC_ID = 63, + BNXT_ULP_GLB_RF_IDX_LAST = 64 }; enum bnxt_ulp_hdr_type { @@ -555,7 +567,11 @@ enum bnxt_ulp_rf_idx { BNXT_ULP_RF_IDX_PHY_PORT = 39, BNXT_ULP_RF_IDX_METADATA_PROF = 40, BNXT_ULP_RF_IDX_MODIFY_PTR = 41, - BNXT_ULP_RF_IDX_LAST = 42 + BNXT_ULP_RF_IDX_SOCK_DIR_SVIF = 42, + BNXT_ULP_RF_IDX_SOCK_DIR_PARIF = 43, + BNXT_ULP_RF_IDX_SOCK_DIR_ACT_PTR = 44, + BNXT_ULP_RF_IDX_SOCK_DIR_PARENT_MAC = 45, + BNXT_ULP_RF_IDX_LAST = 46 }; enum bnxt_ulp_shared_session { @@ -627,7 +643,8 @@ enum bnxt_ulp_resource_sub_type { BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PORT_TABLE = 4, BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_TUNNEL_CACHE = 5, BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOURCE_PROPERTY_CACHE = 6, - BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE = 7 + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE = 7, + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOCKET_DIRECT_CACHE = 8 }; enum bnxt_ulp_act_prop_sz { diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c index e43e341927..d5aea4d456 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Thu Sep 16 11:49:55 2021 */ +/* date: Fri Oct 8 11:41:10 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -171,6 +171,26 @@ struct bnxt_ulp_generic_tbl_params ulp_generic_tbl_params[] = { .num_buckets = 8, .hash_tbl_entries = 16384, .result_byte_order = BNXT_ULP_BYTE_ORDER_LE + }, + [BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOCKET_DIRECT_CACHE << 1 | + BNXT_ULP_DIRECTION_INGRESS] = { + .name = "INGRESS GEN_TABLE_SOCKET_DIRECT_CACHE", + .result_num_entries = 16, + .result_num_bytes = 14, + .key_num_bytes = 0, + .num_buckets = 0, + .hash_tbl_entries = 0, + .result_byte_order = BNXT_ULP_BYTE_ORDER_LE + }, + [BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOCKET_DIRECT_CACHE << 1 | + BNXT_ULP_DIRECTION_EGRESS] = { + .name = "EGRESS GEN_TABLE_SOCKET_DIRECT_CACHE", + .result_num_entries = 16, + .result_num_bytes = 14, + .key_num_bytes = 0, + .num_buckets = 0, + .hash_tbl_entries = 0, + .result_byte_order = BNXT_ULP_BYTE_ORDER_LE } }; @@ -371,6 +391,33 @@ struct bnxt_ulp_app_capabilities_info ulp_app_cap_info_list[] = { .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .flags = BNXT_ULP_APP_CAP_UNICAST_ONLY + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .flags = BNXT_ULP_APP_CAP_SHARED_EN | + BNXT_ULP_APP_CAP_HOT_UPGRADE_EN | + BNXT_ULP_APP_CAP_UNICAST_ONLY + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .flags = BNXT_ULP_APP_CAP_SHARED_EN | + BNXT_ULP_APP_CAP_HOT_UPGRADE_EN | + BNXT_ULP_APP_CAP_UNICAST_ONLY | + BNXT_ULP_APP_CAP_SOCKET_DIRECT + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .flags = BNXT_ULP_APP_CAP_SHARED_EN | + BNXT_ULP_APP_CAP_UNICAST_ONLY + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .flags = BNXT_ULP_APP_CAP_SHARED_EN | + BNXT_ULP_APP_CAP_UNICAST_ONLY } }; @@ -439,6 +486,70 @@ struct bnxt_ulp_resource_resv_info ulp_app_resource_resv_list[] = { .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, .count = 1024 + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 2 + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 128 + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 2 + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 1024 + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 2 + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 128 + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 2 + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 1024 } }; @@ -472,6 +583,14 @@ struct bnxt_ulp_glb_resource_info ulp_app_glb_resource_tbl[] = { .app_id = 1, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_3, + .direction = TF_DIR_RX + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0, .direction = TF_DIR_RX @@ -560,6 +679,14 @@ struct bnxt_ulp_glb_resource_info ulp_app_glb_resource_tbl[] = { .app_id = 1, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_3, + .direction = TF_DIR_RX + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0, .direction = TF_DIR_RX @@ -624,14 +751,6 @@ struct bnxt_ulp_glb_resource_info ulp_app_glb_resource_tbl[] = { .app_id = 1, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_WC_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_1, - .direction = TF_DIR_RX - }, - { - .app_id = 1, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_0, .direction = TF_DIR_RX @@ -672,6 +791,14 @@ struct bnxt_ulp_glb_resource_info ulp_app_glb_resource_tbl[] = { .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_3, + .direction = TF_DIR_RX + }, + { + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0, .direction = TF_DIR_RX @@ -760,6 +887,14 @@ struct bnxt_ulp_glb_resource_info ulp_app_glb_resource_tbl[] = { .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_3, + .direction = TF_DIR_RX + }, + { + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0, .direction = TF_DIR_RX @@ -824,14 +959,6 @@ struct bnxt_ulp_glb_resource_info ulp_app_glb_resource_tbl[] = { .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_WC_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_1, - .direction = TF_DIR_RX - }, - { - .app_id = 2, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_0, .direction = TF_DIR_RX @@ -843,509 +970,717 @@ struct bnxt_ulp_glb_resource_info ulp_app_glb_resource_tbl[] = { .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_1, .direction = TF_DIR_RX - } -}; - -/* List of global tf resources required to be reserved per app/device */ -struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { + }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_0, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, - .direction = TF_DIR_TX + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_1, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, - .direction = TF_DIR_TX + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_2, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_3, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, - .direction = TF_DIR_TX + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_1, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_PROFILE_ID_0, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, - .direction = TF_DIR_TX + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_0, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_0, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_1, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_2, .direction = TF_DIR_RX }, { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_3, .direction = TF_DIR_RX }, { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, - .direction = TF_DIR_TX + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_4, + .direction = TF_DIR_RX }, { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, - .direction = TF_DIR_TX + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_5, + .direction = TF_DIR_RX }, { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_6, .direction = TF_DIR_RX }, { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, - .direction = TF_DIR_TX + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_7, + .direction = TF_DIR_RX }, { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_8, .direction = TF_DIR_RX }, { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GRE_PROF_FUNC_ID, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_9, .direction = TF_DIR_RX }, { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_10, .direction = TF_DIR_RX }, { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, - .direction = TF_DIR_TX + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_0, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_1, + .direction = TF_DIR_RX + }, + { + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_0, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_0, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_1, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_2, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_2, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_3, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_3, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_1, + .direction = TF_DIR_RX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_PROFILE_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_4, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_0, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_5, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_1, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_WC_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_0, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_2, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_WC_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_3, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_WC_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_2, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_4, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_WC_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_3, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_5, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_WC_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_4, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_6, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_WC_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_0, - .direction = TF_DIR_TX + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_7, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_WC_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1, - .direction = TF_DIR_TX + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_8, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0, - .direction = TF_DIR_TX + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_9, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1, - .direction = TF_DIR_TX + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_10, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_KEY_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1, - .direction = TF_DIR_TX + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_0, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_METADATA, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_METADATA_PROF_0, - .direction = TF_DIR_TX + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_1, + .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_PROF_ID_0, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_2, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_VFR_PROF_FUNC_0, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_0, .direction = TF_DIR_RX }, { - .app_id = 0, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_EM_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_KEY_ID_0, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_1, .direction = TF_DIR_RX }, { - .app_id = 1, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_0, .direction = TF_DIR_RX }, { - .app_id = 1, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, - .direction = TF_DIR_TX - }, - { - .app_id = 1, - .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, - .direction = TF_DIR_TX + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_1, + .direction = TF_DIR_RX }, { - .app_id = 1, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_2, .direction = TF_DIR_RX }, { - .app_id = 1, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, - .direction = TF_DIR_TX + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_3, + .direction = TF_DIR_RX }, { - .app_id = 1, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0, .direction = TF_DIR_RX }, { - .app_id = 1, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_1, .direction = TF_DIR_RX }, { - .app_id = 1, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, - .direction = TF_DIR_TX + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_PROFILE_ID_0, + .direction = TF_DIR_RX }, { - .app_id = 1, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_0, .direction = TF_DIR_RX }, { - .app_id = 1, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, - .direction = TF_DIR_TX + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_1, + .direction = TF_DIR_RX }, { - .app_id = 1, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, - .direction = TF_DIR_TX + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_2, + .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_3, .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, - .direction = TF_DIR_TX + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_4, + .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, - .direction = TF_DIR_TX + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_5, + .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_6, .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, - .direction = TF_DIR_TX + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_7, + .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_8, .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_9, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_10, + .direction = TF_DIR_RX + }, + { + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_0, .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, - .direction = TF_DIR_TX + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_1, + .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_0, .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, - .direction = TF_DIR_TX + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_1, + .direction = TF_DIR_RX }, { - .app_id = 2, + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_2, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_PROF_FUNC_ID_3, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_1, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_PROFILE_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_1, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_2, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_3, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_4, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_5, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_6, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_7, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_8, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_9, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_10, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_KEY_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_1, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_2, + .direction = TF_DIR_RX + }, + { + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, - .direction = TF_DIR_TX + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_0, + .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_APP_GLB_AREC_PTR_1, + .direction = TF_DIR_RX + } +}; + +/* List of global tf resources required to be reserved per app/device */ +struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { + { + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1353,7 +1688,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1361,7 +1696,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, @@ -1369,7 +1704,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1377,7 +1712,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1385,7 +1720,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1393,7 +1728,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, @@ -1401,7 +1736,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, @@ -1409,7 +1744,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, @@ -1417,7 +1752,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, @@ -1425,7 +1760,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1433,7 +1768,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1441,7 +1776,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, @@ -1449,7 +1784,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1457,7 +1792,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1465,7 +1800,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1473,7 +1808,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, @@ -1481,7 +1816,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, @@ -1489,7 +1824,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, @@ -1497,7 +1832,15 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, @@ -1505,7 +1848,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, @@ -1513,7 +1856,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, @@ -1521,7 +1864,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, @@ -1529,7 +1872,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, @@ -1537,7 +1880,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, @@ -1545,23 +1888,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_6, - .direction = TF_DIR_RX - }, - { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_WC_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_7, - .direction = TF_DIR_RX - }, - { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, @@ -1569,7 +1896,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, @@ -1577,7 +1904,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, @@ -1585,7 +1912,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, @@ -1593,7 +1920,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, @@ -1601,7 +1928,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, @@ -1609,7 +1936,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, @@ -1617,7 +1944,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, @@ -1625,7 +1952,7 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, @@ -1633,427 +1960,2171 @@ struct bnxt_ulp_glb_resource_info ulp_glb_resource_tbl[] = { .direction = TF_DIR_TX }, { - .app_id = 3, + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1, + .direction = TF_DIR_TX + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_METADATA, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_METADATA_PROF_0, + .direction = TF_DIR_TX + }, + { + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_0, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_PROF_ID_0, .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_1, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_VFR_PROF_FUNC_0, .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 0, .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_KEY_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_2, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, .direction = TF_DIR_RX }, { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_3, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_RX + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 1, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_4, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 1, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_5, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_RX + }, + { + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_6, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, - .resource_type = TF_IDENT_TYPE_EM_PROF, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_7, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, .direction = TF_DIR_RX }, { .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_THOR, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_EM_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_KEY_ID_0, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, .direction = TF_DIR_RX }, { - .app_id = 3, + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GRE_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_2, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_3, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_4, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_5, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_6, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_7, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_2, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_3, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_4, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_0, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1, + .direction = TF_DIR_TX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_1, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_2, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_3, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_4, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_5, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_6, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_PROFILE_ID_7, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_KEY_ID_0, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_KEY_ID_1, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_KEY_ID_2, + .direction = TF_DIR_RX + }, + { + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_KEY_ID_3, + .direction = TF_DIR_RX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_RX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 4, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR, + .direction = TF_DIR_TX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_RX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID, + .direction = TF_DIR_TX + }, + { + .app_id = 5, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR, + .direction = TF_DIR_TX + } +}; + +/* List of tf resources required to be reserved per app/device */ +struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .count = 422 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, + .count = 6 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .count = 191 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .count = 63 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .count = 192 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .count = 8192 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_STATS_64, + .count = 6912 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4, + .count = 1023 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B, + .count = 511 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .count = 15 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_SP_SMAC, + .count = 255 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, + .count = 1 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 422 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, + .count = 6 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, + .count = 960 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 88 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_EM_RECORD, + .count = 13168 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_TBL_SCOPE, + .count = 1 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .count = 292 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, + .count = 148 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .count = 191 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .count = 63 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .count = 192 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .count = 8192 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_STATS_64, + .count = 6912 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4, + .count = 1023 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, + .count = 511 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .count = 223 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B, + .count = 255 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, + .count = 488 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV6, + .count = 511 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, + .count = 1 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 292 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, + .count = 144 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, + .count = 960 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 928 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_EM_RECORD, + .count = 15232 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_TBL_SCOPE, + .count = 1 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .count = 272 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, + .count = 6 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .count = 32 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .count = 32 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .count = 32 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .count = 8192 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_STATS_64, + .count = 8192 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, + .count = 5 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .count = 32 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .count = 31 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, + .count = 2048 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, + .count = 64 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 272 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, + .count = 6 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, + .count = 128 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 4096 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_EM_RECORD, + .count = 16384 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, + .count = 272 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .count = 32 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .count = 63 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .count = 32 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .count = 8192 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_STATS_64, + .count = 8192 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, + .count = 5 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .count = 32 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .count = 32 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, + .count = 2048 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, + .count = 100 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, + .count = 272 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, + .count = 128 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 4096 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_EM_RECORD, + .count = 16384 + }, + { + .app_id = 0, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_METADATA, + .count = 1 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, + .count = 2 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .count = 128 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_STATS_64, + .count = 128 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_SP_SMAC, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, + .count = 2 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_EM_RECORD, + .count = 1024 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, + .count = 2 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .count = 128 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_STATS_64, + .count = 128 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV6, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, + .count = 2 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_EM_RECORD, + .count = 1024 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, + .count = 2 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .count = 16 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .count = 528 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_STATS_64, + .count = 256 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, + .count = 2 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_EM_RECORD, + .count = 1024 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, + .count = 2 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_WC_PROF, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_PROF_FUNC, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_EM_PROF, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, + .count = 512 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_STATS_64, + .count = 256 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_EM_FKB, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_WC_FKB, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, + .count = 4 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 32 + }, + { + .app_id = 1, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, + .count = 2 + }, + { + .app_id = 1, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_EM_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_KEY_ID_1, - .direction = TF_DIR_RX + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, + .count = 32 }, { - .app_id = 3, + .app_id = 1, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_EM_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_KEY_ID_2, - .direction = TF_DIR_RX + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, + .count = 4 }, { - .app_id = 3, + .app_id = 1, .device_id = BNXT_ULP_DEVICE_ID_THOR, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_EM_FKB, - .glb_regfile_index = BNXT_ULP_GLB_RF_IDX_GLB_EM_KEY_ID_3, - .direction = TF_DIR_RX - } -}; - -/* List of tf resources required to be reserved per app/device */ -struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_EM_RECORD, + .count = 1024 + }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 422 + .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 6 + .count = 2 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 191 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 63 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 192 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 8192 + .count = 128 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 6912 + .count = 128 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4, - .count = 1023 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B, - .count = 511 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .count = 15 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC, - .count = 255 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .direction = TF_DIR_RX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, - .count = 1 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 422 + .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 6 + .count = 2 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 960 + .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 88 + .count = 64 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 13168 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .direction = TF_DIR_RX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, - .resource_type = TF_EM_TBL_TYPE_TBL_SCOPE, - .count = 1 + .count = 1024 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 292 + .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 148 + .count = 2 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 191 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 63 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 192 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 8192 + .count = 128 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 6912 + .count = 128 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4, - .count = 1023 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 511 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .count = 223 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B, - .count = 255 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, - .count = 488 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV6, - .count = 511 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, - .count = 1 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 292 + .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 144 + .count = 2 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 960 + .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 928 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 15232 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, - .resource_type = TF_EM_TBL_TYPE_TBL_SCOPE, - .count = 1 + .count = 1024 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 272 + .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 6 + .count = 2 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2061,15 +4132,15 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 32 + .count = 16 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2077,759 +4148,815 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 8192 + .count = 528 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 8192 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_RX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, - .count = 5 + .count = 256 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_EM_FKB, - .count = 32 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, - .count = 31 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 2048 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, - .count = 64 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 272 + .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 6 + .count = 2 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 128 + .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 4096 + .count = 512 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 16384 + .count = 1024 }, { - .app_id = 0, + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, + .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, + .count = 32 + }, + { + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 272 + .count = 2 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 32 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 63 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 32 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 8192 + .count = 512 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 8192 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, - .count = 5 + .count = 256 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_EM_FKB, - .count = 32 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, - .count = 32 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 2048 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, - .count = 100 + .count = 4 }, { - .app_id = 0, + .app_id = 2, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, + .count = 32 + }, + { + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 272 + .count = 2 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 128 + .count = 32 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 4096 + .count = 4 }, { - .app_id = 0, + .app_id = 2, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 16384 - }, - { - .app_id = 0, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_METADATA, - .count = 1 + .count = 1024 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 32 + .count = 422 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 2 + .count = 6 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 4 + .count = 191 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 4 + .count = 63 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 4 + .count = 192 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 128 + .count = 8192 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 128 + .count = 7168 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4, - .count = 4 + .count = 1023 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B, - .count = 4 + .count = 511 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .count = 4 + .count = 15 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC, - .count = 4 + .count = 255 }, { - .app_id = 1, + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, + .count = 1 + }, + { + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 32 + .count = 422 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 2 + .count = 6 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 32 + .count = 960 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 4 + .count = 88 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 1024 + .count = 13168 }, { - .app_id = 1, + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_TBL_SCOPE, + .count = 1 + }, + { + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 32 + .count = 292 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 2 + .count = 148 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 4 + .count = 191 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 4 + .count = 63 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 4 + .count = 192 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 128 + .count = 8192 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 128 + .count = 7168 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4, - .count = 4 + .count = 1023 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 4 + .count = 511 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .count = 4 + .count = 223 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B, - .count = 4 + .count = 255 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, - .count = 4 + .count = 488 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV6, - .count = 4 + .count = 511 }, { - .app_id = 1, + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, + .count = 1 + }, + { + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 32 + .count = 292 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 2 + .count = 144 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 32 + .count = 960 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 4 + .count = 928 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 1024 + .count = 15232 }, { - .app_id = 1, + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_EM_TBL_TYPE_TBL_SCOPE, + .count = 1 + }, + { + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 32 + .count = 128 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 2 + .count = 6 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 32 + .count = 128 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 16 + .count = 63 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 32 + .count = 128 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 528 + .count = 4096 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 256 + .count = 1024 }, { - .app_id = 1, + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, + .count = 1 + }, + { + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_EM_FKB, - .count = 4 + .count = 32 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, - .count = 4 + .count = 32 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 4 + .count = 1024 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, - .count = 4 + .count = 1024 }, { - .app_id = 1, + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_RX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_MODIFY_64B, + .count = 1024 + }, + { + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 32 + .count = 128 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 2 + .count = 6 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 32 + .count = 128 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 4 + .count = 2048 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 1024 + .count = 6144 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 32 + .count = 128 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 2 + .count = 6 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 4 + .count = 128 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 4 + .count = 63 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 4 + .count = 128 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 512 + .count = 4096 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 256 + .count = 1024 }, { - .app_id = 1, + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, + .count = 1 + }, + { + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_EM_FKB, - .count = 4 + .count = 32 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, - .count = 4 + .count = 32 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 4 + .count = 1024 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, - .count = 4 + .count = 1024 }, { - .app_id = 1, + .app_id = 3, + .device_id = BNXT_ULP_DEVICE_ID_THOR, + .direction = TF_DIR_TX, + .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, + .resource_type = TF_TBL_TYPE_ACT_MODIFY_64B, + .count = 1024 + }, + { + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 32 + .count = 128 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 2 + .count = 6 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 32 + .count = 128 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 4 + .count = 2048 }, { - .app_id = 1, + .app_id = 3, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 1024 + .count = 6144 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2837,7 +4964,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2845,7 +4972,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 2 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2853,7 +4980,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2861,7 +4988,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2869,7 +4996,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -2877,7 +5004,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 128 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -2885,7 +5012,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 128 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -2893,7 +5020,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -2901,7 +5028,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -2909,7 +5036,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -2917,7 +5044,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -2925,7 +5052,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -2933,7 +5060,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 2 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -2941,15 +5068,15 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 64 + .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, @@ -2957,7 +5084,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 1024 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2965,7 +5092,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2973,7 +5100,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 2 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2981,7 +5108,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2989,7 +5116,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -2997,7 +5124,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3005,7 +5132,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 128 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3013,7 +5140,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 128 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3021,7 +5148,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3029,7 +5156,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3037,7 +5164,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3045,7 +5172,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3053,7 +5180,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3061,7 +5188,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3069,7 +5196,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3077,7 +5204,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 2 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3085,7 +5212,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3093,7 +5220,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, @@ -3101,7 +5228,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 1024 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -3109,7 +5236,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -3117,7 +5244,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 2 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -3125,7 +5252,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -3133,7 +5260,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 16 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -3141,7 +5268,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3149,7 +5276,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 528 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3157,7 +5284,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 256 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3165,7 +5292,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3173,7 +5300,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3181,7 +5308,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3189,7 +5316,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3197,7 +5324,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3205,7 +5332,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 2 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3213,15 +5340,15 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 512 + .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, @@ -3229,7 +5356,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 1024 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -3237,7 +5364,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -3245,7 +5372,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 2 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -3253,7 +5380,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -3261,7 +5388,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, @@ -3269,7 +5396,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3277,7 +5404,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 512 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3285,7 +5412,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 256 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3293,7 +5420,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3301,7 +5428,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3309,7 +5436,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -3317,7 +5444,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3325,7 +5452,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3333,7 +5460,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 2 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3341,7 +5468,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 32 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -3349,7 +5476,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 4 }, { - .app_id = 2, + .app_id = 4, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, @@ -3357,596 +5484,532 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = { .count = 1024 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 422 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 6 + .count = 2 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 191 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 63 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 192 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 8192 + .count = 128 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 7168 + .count = 128 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4, - .count = 1023 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B, - .count = 511 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .count = 15 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC, - .count = 255 - }, - { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .direction = TF_DIR_RX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, - .count = 1 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 422 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 6 + .count = 2 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 960 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 88 + .count = 64 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 13168 - }, - { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .direction = TF_DIR_RX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, - .resource_type = TF_EM_TBL_TYPE_TBL_SCOPE, - .count = 1 + .count = 1024 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 292 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 148 + .count = 2 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 191 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 63 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 192 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 8192 + .count = 128 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 7168 + .count = 128 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4, - .count = 1023 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 511 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B, - .count = 223 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B, - .count = 255 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, - .count = 488 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV6, - .count = 511 - }, - { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, - .count = 1 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 292 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 144 + .count = 2 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 960 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 928 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 15232 - }, - { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_WH_PLUS, - .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, - .resource_type = TF_EM_TBL_TYPE_TBL_SCOPE, - .count = 1 + .count = 1024 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 128 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 6 + .count = 2 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 128 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 63 + .count = 16 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 128 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 4096 + .count = 528 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 1024 - }, - { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_RX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, - .count = 1 + .count = 256 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_EM_FKB, - .count = 32 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, - .count = 32 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 1024 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, - .count = 1024 - }, - { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_RX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_MODIFY_64B, - .count = 1024 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 128 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 6 + .count = 2 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 128 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 2048 + .count = 512 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_RX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 6144 + .count = 1024 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_HIGH, - .count = 128 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_L2_CTXT_LOW, - .count = 6 + .count = 2 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_WC_PROF, - .count = 128 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_PROF_FUNC, - .count = 63 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER, .resource_type = TF_IDENT_TYPE_EM_PROF, - .count = 128 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD, - .count = 4096 + .count = 512 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_STATS_64, - .count = 1024 - }, - { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_MIRROR_CONFIG, - .count = 1 + .count = 256 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_EM_FKB, - .count = 32 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_WC_FKB, - .count = 32 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B, - .count = 1024 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4, - .count = 1024 - }, - { - .app_id = 3, - .device_id = BNXT_ULP_DEVICE_ID_THOR, - .direction = TF_DIR_TX, - .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, - .resource_type = TF_TBL_TYPE_ACT_MODIFY_64B, - .count = 1024 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH, - .count = 128 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW, - .count = 6 + .count = 2 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM, - .count = 128 + .count = 32 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM, - .count = 2048 + .count = 4 }, { - .app_id = 3, + .app_id = 5, .device_id = BNXT_ULP_DEVICE_ID_THOR, .direction = TF_DIR_TX, .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, .resource_type = TF_EM_TBL_TYPE_EM_RECORD, - .count = 6144 + .count = 1024 } }; diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c index e49c1151d3..8869ab1c33 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Tue Aug 17 12:16:42 2021 */ +/* date: Fri Oct 8 11:41:10 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -1575,8 +1575,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { - (BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff, - BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}, + (BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff, + BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -1607,7 +1607,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_DECAP_FUNC_THRU_TUN}, + ULP_THOR_SYM_DECAP_FUNC_THRU_TUN}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_DECAP_FUNC_NONE} @@ -1666,8 +1666,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { - (BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff, - BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}, + (BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff, + BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -1692,7 +1692,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_VLAN_DEL_RPT_STRIP_OUTER}, + ULP_THOR_SYM_VLAN_DEL_RPT_STRIP_OUTER}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -1747,7 +1747,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_DECAP_FUNC_THRU_TUN}, + ULP_THOR_SYM_DECAP_FUNC_THRU_TUN}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_DECAP_FUNC_NONE} @@ -1806,8 +1806,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { - (BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff, - BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}, + (BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff, + BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -1832,7 +1832,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_VLAN_DEL_RPT_STRIP_OUTER}, + ULP_THOR_SYM_VLAN_DEL_RPT_STRIP_OUTER}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2149,7 +2149,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2168,7 +2168,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2187,7 +2187,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2206,7 +2206,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2373,8 +2373,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -2393,8 +2393,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -2413,8 +2413,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -2433,8 +2433,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, /* act_tid: 3, , table: mod_record.ing_no_ttl */ @@ -2526,7 +2526,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2545,7 +2545,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2564,7 +2564,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2583,7 +2583,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2737,8 +2737,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -2757,8 +2757,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -2777,8 +2777,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -2797,8 +2797,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, /* act_tid: 3, , table: int_full_act_record.0 */ @@ -3593,7 +3593,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -3612,7 +3612,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -3631,7 +3631,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -3650,7 +3650,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -3817,8 +3817,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -3837,8 +3837,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -3857,8 +3857,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -3877,8 +3877,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, /* act_tid: 5, , table: mod_record.ing_no_ttl */ @@ -3970,7 +3970,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -3989,7 +3989,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -4008,7 +4008,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -4027,7 +4027,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1}, + 1}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -4181,8 +4181,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4201,8 +4201,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4221,8 +4221,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4241,8 +4241,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, /* act_tid: 5, , table: int_full_act_record.0 */ @@ -4526,8 +4526,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff}, + (BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4546,8 +4546,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff}, + (BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4566,8 +4566,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff}, + (BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4586,8 +4586,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff}, + (BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4833,8 +4833,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff}, + (BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4853,8 +4853,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff}, + (BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4873,8 +4873,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff}, + (BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4893,8 +4893,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff}, + (BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c index 54bc032b0c..2d464fb7c4 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Thu Sep 9 12:11:08 2021 */ +/* date: Fri Oct 8 11:41:10 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -3232,8 +3232,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -3302,7 +3302,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L4_HDR_TYPE_TCP}, + ULP_THOR_SYM_L4_HDR_TYPE_TCP}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L4_HDR_TYPE_UDP} @@ -3492,7 +3492,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L2_VTAG_PRESENT_YES}, + ULP_THOR_SYM_L2_VTAG_PRESENT_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L2_VTAG_PRESENT_NO} @@ -3871,8 +3871,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -3987,8 +3987,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -4821,8 +4821,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -4835,8 +4835,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -4959,8 +4959,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -4973,8 +4973,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -5037,8 +5037,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -5051,8 +5051,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -5091,8 +5091,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -5105,8 +5105,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -5153,8 +5153,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -5358,8 +5358,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -5383,8 +5383,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -5542,8 +5542,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -5612,7 +5612,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L4_HDR_TYPE_TCP}, + ULP_THOR_SYM_L4_HDR_TYPE_TCP}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L4_HDR_TYPE_UDP} @@ -5659,7 +5659,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L4_HDR_VALID_YES}, + ULP_THOR_SYM_L4_HDR_VALID_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L4_HDR_VALID_IGNORE} @@ -5749,7 +5749,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L3_HDR_TYPE_IPV4}, + ULP_THOR_SYM_L3_HDR_TYPE_IPV4}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L3_HDR_TYPE_IPV6} @@ -5830,7 +5830,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L2_VTAG_PRESENT_YES}, + ULP_THOR_SYM_L2_VTAG_PRESENT_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L2_VTAG_PRESENT_NO} @@ -6209,8 +6209,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -6734,7 +6734,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L3_HDR_TYPE_IPV4}, + ULP_THOR_SYM_L3_HDR_TYPE_IPV4}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L3_HDR_TYPE_IPV6} @@ -6815,7 +6815,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_TL2_VTAG_PRESENT_YES}, + ULP_THOR_SYM_TL2_VTAG_PRESENT_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_TL2_VTAG_PRESENT_NO} @@ -6900,8 +6900,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -7018,8 +7018,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -7852,8 +7852,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -7866,8 +7866,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -7990,8 +7990,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -8004,8 +8004,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -8056,8 +8056,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -8070,8 +8070,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -8110,8 +8110,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -8124,8 +8124,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -8187,8 +8187,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -8383,8 +8383,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -8397,8 +8397,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -8413,8 +8413,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -8427,8 +8427,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9359,8 +9359,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -9373,8 +9373,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9497,8 +9497,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -9511,8 +9511,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9575,8 +9575,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -9589,8 +9589,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9629,8 +9629,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -9643,8 +9643,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9694,8 +9694,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9901,8 +9901,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9928,8 +9928,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -10860,8 +10860,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -10874,8 +10874,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -10998,8 +10998,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -11012,8 +11012,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -11064,8 +11064,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -11078,8 +11078,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -11118,8 +11118,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -11132,8 +11132,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -11195,8 +11195,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -12335,8 +12335,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -12349,8 +12349,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -12473,8 +12473,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -12487,8 +12487,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -12551,8 +12551,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -12565,8 +12565,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -12605,8 +12605,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -12619,8 +12619,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -12670,8 +12670,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -13810,8 +13810,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -13824,8 +13824,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -13948,8 +13948,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -13962,8 +13962,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -14712,8 +14712,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -14726,8 +14726,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -14778,8 +14778,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -14792,8 +14792,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -14832,8 +14832,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -14846,8 +14846,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -14909,8 +14909,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -15093,8 +15093,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -15107,8 +15107,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -15123,8 +15123,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -15137,8 +15137,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -15345,8 +15345,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -15359,8 +15359,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -16219,8 +16219,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -16233,8 +16233,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -16297,8 +16297,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -16311,8 +16311,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -16351,8 +16351,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -16365,8 +16365,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -16416,8 +16416,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -16600,8 +16600,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -16614,8 +16614,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -16630,8 +16630,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -16644,8 +16644,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -16852,8 +16852,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -16866,8 +16866,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -18434,7 +18434,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_I_TCP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L4_HDR_TYPE_TCP}, + ULP_THOR_SYM_L4_HDR_TYPE_TCP}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L4_HDR_TYPE_UDP} @@ -19848,8 +19848,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, + (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -19862,8 +19862,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, + (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -19970,8 +19970,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -19984,8 +19984,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -20168,8 +20168,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -20182,8 +20182,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -20222,8 +20222,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -20236,8 +20236,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -20284,8 +20284,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_I_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_I_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_I_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_I_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_I_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -20489,8 +20489,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_I_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_I_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_I_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_I_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -20514,8 +20514,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_I_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_I_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_I_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_I_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -22120,8 +22120,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, + (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -22134,8 +22134,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, + (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -22242,8 +22242,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -22256,8 +22256,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -22428,8 +22428,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -22442,8 +22442,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -22482,8 +22482,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -22496,8 +22496,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -22559,8 +22559,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_I_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_I_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_I_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_I_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_I_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -22755,8 +22755,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_I_L4_SRC_PORT_MASK >> 8) & 0xff, - BNXT_ULP_CF_IDX_I_L4_SRC_PORT_MASK & 0xff}, + (BNXT_ULP_CF_IDX_I_L4_SRC_PORT_MASK >> 8) & 0xff, + BNXT_ULP_CF_IDX_I_L4_SRC_PORT_MASK & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -22769,8 +22769,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_I_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_I_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_I_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_I_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -22785,8 +22785,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_I_L4_DST_PORT_MASK >> 8) & 0xff, - BNXT_ULP_CF_IDX_I_L4_DST_PORT_MASK & 0xff}, + (BNXT_ULP_CF_IDX_I_L4_DST_PORT_MASK >> 8) & 0xff, + BNXT_ULP_CF_IDX_I_L4_DST_PORT_MASK & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -22799,8 +22799,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_I_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_I_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_I_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_I_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -23041,7 +23041,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L4_HDR_TYPE_TCP}, + ULP_THOR_SYM_L4_HDR_TYPE_TCP}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L4_HDR_TYPE_UDP} @@ -23231,7 +23231,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L2_VTAG_PRESENT_YES}, + ULP_THOR_SYM_L2_VTAG_PRESENT_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L2_VTAG_PRESENT_NO} @@ -24532,8 +24532,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -24546,8 +24546,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -24562,8 +24562,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -24576,8 +24576,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -24700,8 +24700,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -24714,8 +24714,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -24778,8 +24778,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -24792,8 +24792,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -24832,8 +24832,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -24846,8 +24846,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -24894,8 +24894,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -25099,8 +25099,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -25124,8 +25124,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -25345,7 +25345,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L4_HDR_TYPE_TCP}, + ULP_THOR_SYM_L4_HDR_TYPE_TCP}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L4_HDR_TYPE_UDP} @@ -25469,7 +25469,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L3_HDR_TYPE_IPV4}, + ULP_THOR_SYM_L3_HDR_TYPE_IPV4}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L3_HDR_TYPE_IPV6} @@ -25548,7 +25548,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L2_VTAG_PRESENT_YES}, + ULP_THOR_SYM_L2_VTAG_PRESENT_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L2_VTAG_PRESENT_NO} @@ -26210,7 +26210,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR_SYM_L2_VTAG_PRESENT_YES}, + ULP_THOR_SYM_L2_VTAG_PRESENT_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_THOR_SYM_L2_VTAG_PRESENT_NO} @@ -27511,8 +27511,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -27525,8 +27525,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -27541,8 +27541,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -27555,8 +27555,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -27679,8 +27679,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -27693,8 +27693,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -27856,8 +27856,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -28052,8 +28052,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -28066,8 +28066,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -28082,8 +28082,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -28096,8 +28096,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -29016,8 +29016,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -29030,8 +29030,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -29046,8 +29046,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -29060,8 +29060,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -29184,8 +29184,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -29198,8 +29198,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -29361,8 +29361,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -30489,8 +30489,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -30503,8 +30503,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -30519,8 +30519,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -30533,8 +30533,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -30657,8 +30657,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -30671,8 +30671,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = { BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -34679,8 +34679,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -35206,8 +35206,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -36920,8 +36920,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 & 0xff}, + (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0 >> 8) & 0xff, @@ -36991,8 +36991,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_3 >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_3 & 0xff}, + (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_3 >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_3 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_2 >> 8) & 0xff, @@ -38986,8 +38986,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_5 >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_5 & 0xff}, + (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_5 >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_5 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_4 >> 8) & 0xff, @@ -39570,8 +39570,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c index 4a2d201c2d..16a921e6c8 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Wed Aug 25 14:37:06 2021 */ +/* date: Fri Oct 8 11:41:10 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -1210,8 +1210,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -1239,8 +1239,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -1295,7 +1295,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_DECAP_FUNC_THRU_TUN}, + ULP_WP_SYM_DECAP_FUNC_THRU_TUN}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_DECAP_FUNC_NONE} @@ -1346,8 +1346,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { - (BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff, - BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}, + (BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff, + BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -1481,8 +1481,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -1510,8 +1510,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -1566,7 +1566,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_DECAP_FUNC_THRU_TUN}, + ULP_WP_SYM_DECAP_FUNC_THRU_TUN}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_DECAP_FUNC_NONE} @@ -1893,7 +1893,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_SRC1_PLUS_SRC2, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1} + 1} }, { .description = "drop", @@ -2088,7 +2088,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_SRC1_PLUS_SRC2, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - 1} + 1} }, { .description = "drop", @@ -2222,8 +2222,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_SRC1_PLUS_SRC2_POST, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - (1 >> 8) & 0xff, - 1 & 0xff} + (1 >> 8) & 0xff, + 1 & 0xff} }, /* act_tid: 3, , table: int_flow_counter_tbl.0 */ { @@ -2418,8 +2418,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2447,8 +2447,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2503,7 +2503,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_DECAP_FUNC_THRU_TL2}, + ULP_WP_SYM_DECAP_FUNC_THRU_TL2}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_DECAP_FUNC_THRU_L2} @@ -2662,8 +2662,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2691,8 +2691,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -2747,7 +2747,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_DECAP_FUNC_THRU_TL2}, + ULP_WP_SYM_DECAP_FUNC_THRU_TL2}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_DECAP_FUNC_THRU_L2} @@ -3853,8 +3853,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -3882,8 +3882,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -3938,7 +3938,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_DECAP_FUNC_THRU_TL2}, + ULP_WP_SYM_DECAP_FUNC_THRU_TL2}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_DECAP_FUNC_THRU_L2} @@ -4097,8 +4097,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -4126,8 +4126,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr2 = { - (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, + (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, { @@ -4182,7 +4182,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_DECAP_FUNC_THRU_TL2}, + ULP_WP_SYM_DECAP_FUNC_THRU_TL2}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_DECAP_FUNC_THRU_L2} @@ -4415,8 +4415,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff}, + (BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4435,8 +4435,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff}, + (BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4455,8 +4455,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff}, + (BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4475,8 +4475,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff}, + (BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4495,8 +4495,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_IHL >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_IHL & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_IHL >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_IHL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4515,8 +4515,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_TOS >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_TOS & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_TOS >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_TOS & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4535,8 +4535,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_PKT_ID >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_PKT_ID & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_PKT_ID >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_PKT_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4555,8 +4555,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_FRAG >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_FRAG & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_FRAG >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_FRAG & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4575,8 +4575,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_TTL >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_TTL & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_TTL >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4595,8 +4595,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_PROTO >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_PROTO & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_PROTO >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_PROTO & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4615,8 +4615,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_DADDR >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_DADDR >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4635,8 +4635,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4672,8 +4672,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV6_PROTO >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV6_PROTO & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV6_PROTO >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_PROTO & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4692,8 +4692,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV6_TTL >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV6_TTL & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV6_TTL >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4712,8 +4712,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4732,8 +4732,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_UDP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff}, + (BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4752,8 +4752,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_UDP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff}, + (BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4772,8 +4772,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_VXLAN_FLAGS >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_VXLAN_FLAGS & 0xff}, + (BNXT_ULP_ENC_FIELD_VXLAN_FLAGS >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_VXLAN_FLAGS & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4792,8 +4792,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 & 0xff}, + (BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4812,8 +4812,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_VXLAN_VNI >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff}, + (BNXT_ULP_ENC_FIELD_VXLAN_VNI >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -4832,8 +4832,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff}, + (BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, /* act_tid: 6, , table: int_full_act_record.0 */ @@ -5264,8 +5264,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff}, + (BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5284,8 +5284,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff}, + (BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5304,8 +5304,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff}, + (BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5324,8 +5324,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff}, + (BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5344,8 +5344,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_IHL >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_IHL & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_IHL >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_IHL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5364,8 +5364,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_TOS >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_TOS & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_TOS >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_TOS & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5384,8 +5384,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_PKT_ID >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_PKT_ID & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_PKT_ID >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_PKT_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5404,8 +5404,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_FRAG >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_FRAG & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_FRAG >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_FRAG & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5424,8 +5424,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_TTL >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_TTL & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_TTL >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5444,8 +5444,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_PROTO >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_PROTO & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_PROTO >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_PROTO & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5464,8 +5464,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV4_DADDR >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV4_DADDR >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5484,8 +5484,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5521,8 +5521,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV6_PROTO >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV6_PROTO & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV6_PROTO >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_PROTO & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5541,8 +5541,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV6_TTL >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV6_TTL & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV6_TTL >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5561,8 +5561,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}, + (BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5581,8 +5581,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_UDP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff}, + (BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5601,8 +5601,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_UDP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff}, + (BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5621,8 +5621,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_VXLAN_FLAGS >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_VXLAN_FLAGS & 0xff}, + (BNXT_ULP_ENC_FIELD_VXLAN_FLAGS >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_VXLAN_FLAGS & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5641,8 +5641,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 & 0xff}, + (BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5661,8 +5661,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_VXLAN_VNI >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff}, + (BNXT_ULP_ENC_FIELD_VXLAN_VNI >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, { @@ -5681,8 +5681,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr2 = { - (BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff}, + (BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }; diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c index 4b9cb7fd5b..d1c3ebe065 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c @@ -3,7 +3,7 @@ * All rights reserved. */ -/* date: Wed Aug 11 16:00:16 2021 */ +/* date: Fri Oct 8 11:41:10 2021 */ #include "ulp_template_db_enum.h" #include "ulp_template_db_field.h" @@ -2198,8 +2198,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -2218,8 +2218,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -2261,8 +2261,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -2281,8 +2281,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -2550,8 +2550,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -2570,8 +2570,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -2631,8 +2631,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -2701,7 +2701,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_L4_HDR_TYPE_TCP}, + ULP_WP_SYM_L4_HDR_TYPE_TCP}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_L4_HDR_TYPE_UDP} @@ -3258,8 +3258,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -3383,7 +3383,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_L4_HDR_TYPE_TCP}, + ULP_WP_SYM_L4_HDR_TYPE_TCP}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_L4_HDR_TYPE_UDP} @@ -3942,8 +3942,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -4702,8 +4702,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -4778,8 +4778,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -4803,8 +4803,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -4827,8 +4827,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -4980,8 +4980,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -5005,8 +5005,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -5029,8 +5029,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -5182,8 +5182,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -5207,8 +5207,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -5231,8 +5231,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -5398,8 +5398,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -5423,8 +5423,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -5447,8 +5447,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -6746,7 +6746,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_L3_HDR_TYPE_IPV4}, + ULP_WP_SYM_L3_HDR_TYPE_IPV4}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_L3_HDR_TYPE_IPV6} @@ -7714,8 +7714,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -7734,8 +7734,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -7777,8 +7777,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -7797,8 +7797,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -8066,8 +8066,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { @@ -8086,8 +8086,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, + (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -8147,8 +8147,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -8217,7 +8217,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_L4_HDR_TYPE_TCP}, + ULP_WP_SYM_L4_HDR_TYPE_TCP}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_L4_HDR_TYPE_UDP} @@ -8774,8 +8774,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -8899,7 +8899,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_L4_HDR_TYPE_TCP}, + ULP_WP_SYM_L4_HDR_TYPE_TCP}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST, .field_opr3 = { ULP_WP_SYM_L4_HDR_TYPE_UDP} @@ -9458,8 +9458,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -9576,8 +9576,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr2 = { - (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, - BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, + (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff, + BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF, .field_opr3 = { (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff, @@ -9652,8 +9652,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9677,8 +9677,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9701,8 +9701,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9854,8 +9854,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9879,8 +9879,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -9903,8 +9903,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -10056,8 +10056,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -10081,8 +10081,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -10105,8 +10105,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -10272,8 +10272,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -10297,8 +10297,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, + (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -10321,8 +10321,8 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = { BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CF, .field_opr2 = { - (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, + (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -12392,8 +12392,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr3 = { (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff, @@ -12409,8 +12409,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr3 = { (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff, @@ -12544,8 +12544,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr3 = { (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff, @@ -12561,8 +12561,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr3 = { (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff, @@ -13715,7 +13715,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = { BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_WP_SYM_LOOPBACK_PARIF}, + ULP_WP_SYM_LOOPBACK_PARIF}, .field_src3 = BNXT_ULP_FIELD_SRC_CF, .field_opr3 = { (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff, @@ -13887,8 +13887,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr3 = { (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff, @@ -13904,8 +13904,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr3 = { (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff, @@ -14039,8 +14039,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr3 = { (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff, @@ -14056,8 +14056,8 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = { BNXT_ULP_CF_IDX_O_L4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, + (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT, .field_opr3 = { (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff, diff --git a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c index d21c088d59..2ec3279239 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +++ b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c @@ -685,6 +685,11 @@ ulp_rte_phy_port_hdr_handler(const struct rte_flow_item *item, hdr_field->size = sizeof(svif); ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_SVIF_FLAG, rte_be_to_cpu_16(svif)); + if (!mask) { + ULP_BITMAP_SET(params->hdr_bitmap.bits, + BNXT_ULP_HDR_BIT_SVIF_IGNORE); + memset(hdr_field->mask, 0xFF, sizeof(mask)); + } return BNXT_TF_RC_SUCCESS; } From patchwork Thu Nov 4 21:58:40 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103801 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id C9F53A0C5E; Thu, 4 Nov 2021 23:00:44 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D9D5A427F8; Thu, 4 Nov 2021 22:59:19 +0100 (CET) Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by mails.dpdk.org (Postfix) with ESMTP id 370CB427E4 for ; Thu, 4 Nov 2021 22:59:15 +0100 (CET) Received: by mail-pl1-f174.google.com with SMTP id u11so9588918plf.3 for ; Thu, 04 Nov 2021 14:59:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=L2DPvxO8toGeU32btKk/0dRXPFu3cw4rkgFTGickopc=; b=YUDKiK4mL0qPLZqbfFDaQUmxhjWN5jXqTgDvSIp6Ye6G2ZdrId/ES1R/iqukk+CULY ETJSwQKZVwZQvU68DDCZMq4d0HWe2mSlgpgfOXVyJoPehaLnM/IZf5yIaMuZvgv5UBQO bBrdKMi63+IQk+JxBr9VhcxN7uiYQ4n9028OE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=L2DPvxO8toGeU32btKk/0dRXPFu3cw4rkgFTGickopc=; b=Ugql9FBf0wCHQf7wFSCXG9ycLTCIYLcj10wSGJdKxup2bgTcrKBZqjxppgXobm91oF UwF1MNF6TSgU2JaEJPu789ujR08eHCQjKMwFVlIKIs0kmwiRT3sv6c5tgYccGPd74kyT GybLpfS4OuUaktsO6t4/Im4mhYP/k6UyvAhFY7z1MtQUNQmwU/i7t8euZJGLQCaE9r+Y s7gfWDGXe7TKwGg9GwMVz4gInOyuyL6MoW1mZLOWUStwM1BHwf/2fWMF44T33eM7ajas z6m2pOku77NGKCM6+57/YiM+NocYLU9zGYKjgjEvme4UgavaA+yxYRE+Bu7jcAqFqnO4 K+6w== X-Gm-Message-State: AOAM531Q+JU48ZHQQtKT+AhcZpvRfc5ZjHHDWXsuTKdQ14gbE6AOLEbG ipMkrH/ZiXdLjrhHuFv4fgohrkSnFzCrfbWyVLfkyDZW1i1S/sKl8oSICmGNhL5PfF7HKWdAVyp jmNbuRgYuEL04plMhu2FmLIDzcqCn7olXxOgCE22Ucos3kcHwHcwWfuFbicV0s6s= X-Google-Smtp-Source: ABdhPJxa+1JxUR/i9KMgXXWf7/L8ASEPcJa0bltTCRwf1uW2zrvKJVVkusml8BWGVxamyJRRk6VXzw== X-Received: by 2002:a17:902:db01:b0:141:ea12:2176 with SMTP id m1-20020a170902db0100b00141ea122176mr28135195plx.44.1636063154149; Thu, 04 Nov 2021 14:59:14 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.13 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:13 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Venkat Duvvuru , Shahaji Bhosle Date: Thu, 4 Nov 2021 14:58:40 -0700 Message-Id: <20211104215846.58672-17-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 16/22] net/bnxt: modify VF representor alloc sequence X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha When the VF representor interface is created, the VF pair relationship is established between the VF and it is representor. If the pair already exists then the pair needs to be deleted before allocation. This could happen if the application is abruptly killed and restarted. If the deletion of an existing VF rep is not done then hw pipeline is not cleaned and a new allocation shall leave the hw in inconsistent state. Signed-off-by: Kishore Padmanabha Signed-off-by: Venkat Duvvuru Reviewed-by: Shahaji Bhosle Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 28 ++++++++++++++++++++++++++++ drivers/net/bnxt/bnxt_hwrm.h | 1 + drivers/net/bnxt/bnxt_reps.c | 6 ++++++ 3 files changed, 35 insertions(+) diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c index 94a7daf632..67ed807dad 100644 --- a/drivers/net/bnxt/bnxt_hwrm.c +++ b/drivers/net/bnxt/bnxt_hwrm.c @@ -5994,6 +5994,34 @@ int bnxt_hwrm_first_vf_id_query(struct bnxt *bp, uint16_t fid, return rc; } +int bnxt_hwrm_cfa_pair_exists(struct bnxt *bp, struct bnxt_representor *rep_bp) +{ + struct hwrm_cfa_pair_info_output *resp = bp->hwrm_cmd_resp_addr; + struct hwrm_cfa_pair_info_input req = {0}; + int rc = 0; + + if (!(BNXT_PF(bp) || BNXT_VF_IS_TRUSTED(bp))) { + PMD_DRV_LOG(DEBUG, + "Not a PF or trusted VF. Command not supported\n"); + return 0; + } + + HWRM_PREP(&req, HWRM_CFA_PAIR_INFO, BNXT_USE_CHIMP_MB); + snprintf(req.pair_name, sizeof(req.pair_name), "%svfr%d", + bp->eth_dev->data->name, rep_bp->vf_id); + req.flags = + rte_cpu_to_le_32(HWRM_CFA_PAIR_INFO_INPUT_FLAGS_LOOKUP_TYPE); + + rc = bnxt_hwrm_send_message(bp, &req, sizeof(req), BNXT_USE_CHIMP_MB); + HWRM_CHECK_RESULT(); + if (rc == HWRM_ERR_CODE_SUCCESS && strlen(resp->pair_name)) { + HWRM_UNLOCK(); + return !rc; + } + HWRM_UNLOCK(); + return rc; +} + int bnxt_hwrm_cfa_pair_alloc(struct bnxt *bp, struct bnxt_representor *rep_bp) { struct hwrm_cfa_pair_alloc_output *resp = bp->hwrm_cmd_resp_addr; diff --git a/drivers/net/bnxt/bnxt_hwrm.h b/drivers/net/bnxt/bnxt_hwrm.h index 72d486468c..f8f0556201 100644 --- a/drivers/net/bnxt/bnxt_hwrm.h +++ b/drivers/net/bnxt/bnxt_hwrm.h @@ -293,6 +293,7 @@ int bnxt_clear_one_vnic_filter(struct bnxt *bp, void bnxt_free_vf_info(struct bnxt *bp); int bnxt_hwrm_first_vf_id_query(struct bnxt *bp, uint16_t fid, uint16_t *first_vf_id); +int bnxt_hwrm_cfa_pair_exists(struct bnxt *bp, struct bnxt_representor *rep_bp); int bnxt_hwrm_cfa_pair_alloc(struct bnxt *bp, struct bnxt_representor *rep); int bnxt_hwrm_cfa_pair_free(struct bnxt *bp, struct bnxt_representor *rep); int bnxt_hwrm_cfa_adv_flow_mgmt_qcaps(struct bnxt *bp); diff --git a/drivers/net/bnxt/bnxt_reps.c b/drivers/net/bnxt/bnxt_reps.c index 60aaa56299..22b76b72b9 100644 --- a/drivers/net/bnxt/bnxt_reps.c +++ b/drivers/net/bnxt/bnxt_reps.c @@ -315,6 +315,12 @@ static int bnxt_tf_vfr_alloc(struct rte_eth_dev *vfr_ethdev) BNXT_TF_DBG(ERR, "Invalid arguments\n"); return 0; } + /* update the port id so you can backtrack to ethdev */ + vfr->dpdk_port_id = vfr_ethdev->data->port_id; + + /* If pair is present, then delete the pair */ + if (bnxt_hwrm_cfa_pair_exists(parent_bp, vfr)) + (void)bnxt_hwrm_cfa_pair_free(parent_bp, vfr); /* Update the ULP portdata base with the new VFR interface */ rc = ulp_port_db_dev_port_intf_update(parent_bp->ulp_ctx, vfr_ethdev); From patchwork Thu Nov 4 21:58:41 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103803 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 1BB86A0C5E; Thu, 4 Nov 2021 23:00:58 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 091B442803; Thu, 4 Nov 2021 22:59:22 +0100 (CET) Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) by mails.dpdk.org (Postfix) with ESMTP id 58F574279F for ; Thu, 4 Nov 2021 22:59:16 +0100 (CET) Received: by mail-pl1-f170.google.com with SMTP id f8so9512199plo.12 for ; Thu, 04 Nov 2021 14:59:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=S61qCXnXkArRf7WVDjWMnL0iNcet0YU6NXM01UaI8cg=; b=XBXACR8Aw00TxQ2BlwqpbAZByyt6ekrpN8Kfin/FkB5oGhgf4ll2tl7jzbo6r43eb9 2BtrcrFkWiHh7KccB9malgQYTTpHENdim8Oo18JqZSIJJVan9X8XZ8YGqcdRhDxTeVmH xrqzSsEadIjgwVrjStHfT7IIGhjemlK6llqF0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=S61qCXnXkArRf7WVDjWMnL0iNcet0YU6NXM01UaI8cg=; b=fXsaFqcs0NndG1RqxfWFLBV3BTU0XnP7rnFnR7olYDRkuJwJBum8GKcVzb1rx5OPhK /D6aQKC8087EsIeDjfvPYfyK+0OrM/XmX73Y+n6tUeSf4HIpxYsFFgw2VP4lYrVaevVc pj/8KoKRPzHa9cJFRWzulAS8+DKxl8sMXwW5YJhdBg0jRCIrFWNKK29pYNbGze2zH3vy /H7IlmrQ3TgyMvoc0CWoqPlrxmLPGQf7TqmlGpccg5xcQUh4f61OQQ0lrkbQs3//EAZH ARww/Cik0C+IzDTVvjI3eEH1Vw+u3YybwF74bHwDba5pXuEuIzRLMj9g/qkFjoZTUJp2 fLbQ== X-Gm-Message-State: AOAM531eQ/CR/A1X8LcVq9srSCUrDPA9ct8/rYiDsbANgM+ltt/T/mJR lyBSVE+abyvEommA4+lLnZuaUYqGogsidJsRiE0UuW4R8RFAbDJgu2W3qnZskVnTHQRBDfj++IX zPaO3IuPDdUdmlJJjm2vr8eDsVT9ZTRAoyVWzcXZBge3IRDelCRCamUbo+lTrLaI= X-Google-Smtp-Source: ABdhPJyKezZmuC98+YZ8ZCXjOkbDyGXtDHZkkbGodfxyuZQidQAlDTn77JchBPIWtIOCVfSnRrRoWA== X-Received: by 2002:a17:902:bf43:b0:142:41bb:a6f with SMTP id u3-20020a170902bf4300b0014241bb0a6fmr2278767pls.22.1636063155152; Thu, 04 Nov 2021 14:59:15 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.14 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:14 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Jay Ding , Venkat Duvvuru , Farah Smith , Randy Schacher Date: Thu, 4 Nov 2021 14:58:41 -0700 Message-Id: <20211104215846.58672-18-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 17/22] net/bnxt: add new TruFlow API to get SRAM resources X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Jay Ding Implement tf_get_sram_resources to return SRAM partition information, including bank count and SRAM profile number. Signed-off-by: Jay Ding Signed-off-by: Venkat Duvvuru Reviewed-by: Farah Smith Reviewed-by: Randy Schacher Acked-by: Ajit Khaparde --- drivers/net/bnxt/tf_core/tf_core.c | 86 ++++++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_core.h | 63 +++++++++++++++++ drivers/net/bnxt/tf_core/tf_device.h | 20 ++++++ drivers/net/bnxt/tf_core/tf_device_p4.c | 6 +- drivers/net/bnxt/tf_core/tf_device_p58.c | 53 ++++++++++++++- drivers/net/bnxt/tf_core/tf_msg.c | 28 ++------ drivers/net/bnxt/tf_core/tf_msg.h | 6 +- drivers/net/bnxt/tf_core/tf_rm.c | 3 +- drivers/net/bnxt/tf_core/tf_sram_mgr.h | 10 --- 9 files changed, 237 insertions(+), 38 deletions(-) diff --git a/drivers/net/bnxt/tf_core/tf_core.c b/drivers/net/bnxt/tf_core/tf_core.c index 86dfec0eb4..346d220c87 100644 --- a/drivers/net/bnxt/tf_core/tf_core.c +++ b/drivers/net/bnxt/tf_core/tf_core.c @@ -1831,3 +1831,89 @@ int tf_get_version(struct tf *tfp, return 0; } + +int tf_query_sram_resources(struct tf *tfp, + struct tf_query_sram_resources_parms *parms) +{ + int rc; + struct tf_dev_info dev; + uint16_t max_types; + struct tfp_calloc_parms cparms; + struct tf_rm_resc_req_entry *query; + enum tf_rm_resc_resv_strategy resv_strategy; + + TF_CHECK_PARMS2(tfp, parms); + + /* This function can be called before open session, filter + * out any non-supported device types on the Core side. + */ + if (parms->device_type != TF_DEVICE_TYPE_THOR) { + TFP_DRV_LOG(ERR, + "Unsupported device type %d\n", + parms->device_type); + return -ENOTSUP; + } + + tf_dev_bind_ops(parms->device_type, &dev); + + if (dev.ops->tf_dev_get_max_types == NULL) { + rc = -EOPNOTSUPP; + TFP_DRV_LOG(ERR, + "%s: Operation not supported, rc:%s\n", + tf_dir_2_str(parms->dir), + strerror(-rc)); + return -EOPNOTSUPP; + } + + /* Need device max number of elements for the RM QCAPS */ + rc = dev.ops->tf_dev_get_max_types(tfp, &max_types); + if (rc) { + TFP_DRV_LOG(ERR, + "Get SRAM resc info failed, rc:%s\n", + strerror(-rc)); + return rc; + } + + /* Allocate memory for RM QCAPS request */ + cparms.nitems = max_types; + cparms.size = sizeof(struct tf_rm_resc_req_entry); + cparms.alignment = 0; + rc = tfp_calloc(&cparms); + if (rc) + return rc; + + query = (struct tf_rm_resc_req_entry *)cparms.mem_va; + tfp->bp = parms->bp; + + /* Get Firmware Capabilities */ + rc = tf_msg_session_resc_qcaps(tfp, + &dev, + parms->dir, + max_types, + query, + &resv_strategy, + &parms->sram_profile); + if (rc) + return rc; + + if (dev.ops->tf_dev_get_sram_resources == NULL) { + rc = -EOPNOTSUPP; + TFP_DRV_LOG(ERR, + "%s: Operation not supported, rc:%s\n", + tf_dir_2_str(parms->dir), + strerror(-rc)); + return -EOPNOTSUPP; + } + + rc = dev.ops->tf_dev_get_sram_resources((void *)query, + parms->bank_resc_count, + &parms->dynamic_sram_capable); + if (rc) { + TFP_DRV_LOG(ERR, + "Get SRAM resc info failed, rc:%s\n", + strerror(-rc)); + return rc; + } + + return 0; +} diff --git a/drivers/net/bnxt/tf_core/tf_core.h b/drivers/net/bnxt/tf_core/tf_core.h index ba9881c69d..078fd278a1 100644 --- a/drivers/net/bnxt/tf_core/tf_core.h +++ b/drivers/net/bnxt/tf_core/tf_core.h @@ -75,6 +75,17 @@ enum tf_wc_num_slice { TF_WC_TCAM_8_SLICE_PER_ROW = 8, }; +/** + * Bank identifier + */ +enum tf_sram_bank_id { + TF_SRAM_BANK_ID_0, /**< SRAM Bank 0 id */ + TF_SRAM_BANK_ID_1, /**< SRAM Bank 1 id */ + TF_SRAM_BANK_ID_2, /**< SRAM Bank 2 id */ + TF_SRAM_BANK_ID_3, /**< SRAM Bank 3 id */ + TF_SRAM_BANK_ID_MAX /**< SRAM Bank index limit */ +}; + /** * EEM record AR helper * @@ -2438,4 +2449,56 @@ struct tf_get_version_parms { */ int tf_get_version(struct tf *tfp, struct tf_get_version_parms *parms); + +/** + * tf_query_sram_resources parameter definition + */ +struct tf_query_sram_resources_parms { + /** + * [in] device type + * + * Device type for the session. + */ + enum tf_device_type device_type; + + /** + * [in] bp + * The pointer to the parent bp struct. This is only used for HWRM + * message passing within the portability layer. The type is struct + * bnxt. + */ + void *bp; + + /** + * [in] Receive or transmit direction + */ + enum tf_dir dir; + + /** + * [out] Bank resource count in 8 bytes entry + */ + + uint32_t bank_resc_count[TF_SRAM_BANK_ID_MAX]; + + /** + * [out] Dynamic SRAM Enable + */ + bool dynamic_sram_capable; + + /** + * [out] SRAM profile + */ + uint8_t sram_profile; +}; + +/** + * Get SRAM resources information + * + * Used to retrieve sram bank partition information + * + * Returns success or failure code. + */ +int tf_query_sram_resources(struct tf *tfp, + struct tf_query_sram_resources_parms *parms); + #endif /* _TF_CORE_H_ */ diff --git a/drivers/net/bnxt/tf_core/tf_device.h b/drivers/net/bnxt/tf_core/tf_device.h index 88bd4515ff..9360eb1358 100644 --- a/drivers/net/bnxt/tf_core/tf_device.h +++ b/drivers/net/bnxt/tf_core/tf_device.h @@ -1081,6 +1081,26 @@ struct tf_dev_ops { uint32_t *tcam_caps, uint32_t *tbl_caps, uint32_t *em_caps); + + /** + * Device specific function that retrieve the sram resource + * + * [in] query + * Point to resources query result + * + * [out] sram_bank_caps + * Pointer to SRAM bank capabilities + * + * [out] dynamic_sram_capable + * Pointer to dynamic sram capable + * + * Returns + * - (0) if successful. + * - (-EINVAL) on failure. + */ + int (*tf_dev_get_sram_resources)(void *query, + uint32_t *sram_bank_caps, + bool *dynamic_sram_capable); }; /** diff --git a/drivers/net/bnxt/tf_core/tf_device_p4.c b/drivers/net/bnxt/tf_core/tf_device_p4.c index 8089785b82..cf0e919f9f 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p4.c +++ b/drivers/net/bnxt/tf_core/tf_device_p4.c @@ -382,7 +382,8 @@ const struct tf_dev_ops tf_dev_ops_p4_init = { .tf_dev_get_global_cfg = NULL, .tf_dev_get_mailbox = tf_dev_p4_get_mailbox, .tf_dev_word_align = NULL, - .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps + .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps, + .tf_dev_get_sram_resources = NULL }; /** @@ -445,5 +446,6 @@ const struct tf_dev_ops tf_dev_ops_p4 = { .tf_dev_get_mailbox = tf_dev_p4_get_mailbox, .tf_dev_word_align = tf_dev_p4_word_align, .tf_dev_cfa_key_hash = hcapi_cfa_p4_key_hash, - .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps + .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps, + .tf_dev_get_sram_resources = NULL }; diff --git a/drivers/net/bnxt/tf_core/tf_device_p58.c b/drivers/net/bnxt/tf_core/tf_device_p58.c index 03e72b90f5..4687fa65dd 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p58.c +++ b/drivers/net/bnxt/tf_core/tf_device_p58.c @@ -397,6 +397,53 @@ static int tf_dev_p58_map_hcapi_caps(uint64_t hcapi_caps, return 0; } +/** + * Device specific function that retrieve the sram resource + * + * [in] query + * Point to resources query result + * + * [out] sram_bank_caps + * Pointer to SRAM bank capabilities + * + * [out] dynamic_sram_capable + * Pointer to dynamic sram capable + * + * Returns + * - (0) if successful. + * - (-EINVAL) on failure. + */ +static int tf_dev_p58_get_sram_resources(void *q, + uint32_t *sram_bank_caps, + bool *dynamic_sram_capable) +{ + uint32_t i; + struct tf_rm_resc_req_entry *query = q; + + for (i = 0; i < CFA_RESOURCE_TYPE_P58_LAST + 1; i++) { + switch (query[i].type) { + case CFA_RESOURCE_TYPE_P58_SRAM_BANK_0: + sram_bank_caps[0] = query[i].max; + break; + case CFA_RESOURCE_TYPE_P58_SRAM_BANK_1: + sram_bank_caps[1] = query[i].max; + break; + case CFA_RESOURCE_TYPE_P58_SRAM_BANK_2: + sram_bank_caps[2] = query[i].max; + break; + case CFA_RESOURCE_TYPE_P58_SRAM_BANK_3: + sram_bank_caps[3] = query[i].max; + break; + default: + break; + } + } + + *dynamic_sram_capable = false; + + return 0; +} + /** * Truflow P58 device specific functions */ @@ -447,7 +494,8 @@ const struct tf_dev_ops tf_dev_ops_p58_init = { .tf_dev_get_global_cfg = NULL, .tf_dev_get_mailbox = tf_dev_p58_get_mailbox, .tf_dev_word_align = NULL, - .tf_dev_map_hcapi_caps = tf_dev_p58_map_hcapi_caps + .tf_dev_map_hcapi_caps = tf_dev_p58_map_hcapi_caps, + .tf_dev_get_sram_resources = tf_dev_p58_get_sram_resources }; /** @@ -511,5 +559,6 @@ const struct tf_dev_ops tf_dev_ops_p58 = { .tf_dev_get_mailbox = tf_dev_p58_get_mailbox, .tf_dev_word_align = tf_dev_p58_word_align, .tf_dev_cfa_key_hash = hcapi_cfa_p58_key_hash, - .tf_dev_map_hcapi_caps = tf_dev_p58_map_hcapi_caps + .tf_dev_map_hcapi_caps = tf_dev_p58_map_hcapi_caps, + .tf_dev_get_sram_resources = tf_dev_p58_get_sram_resources }; diff --git a/drivers/net/bnxt/tf_core/tf_msg.c b/drivers/net/bnxt/tf_core/tf_msg.c index 25bf026658..fbc96d374c 100644 --- a/drivers/net/bnxt/tf_core/tf_msg.c +++ b/drivers/net/bnxt/tf_core/tf_msg.c @@ -380,39 +380,20 @@ tf_msg_session_resc_qcaps(struct tf *tfp, enum tf_dir dir, uint16_t size, struct tf_rm_resc_req_entry *query, - enum tf_rm_resc_resv_strategy *resv_strategy) + enum tf_rm_resc_resv_strategy *resv_strategy, + uint8_t *sram_profile) { int rc; int i; struct tfp_send_msg_parms parms = { 0 }; struct hwrm_tf_session_resc_qcaps_input req = { 0 }; struct hwrm_tf_session_resc_qcaps_output resp = { 0 }; - uint8_t fw_session_id; struct tf_msg_dma_buf qcaps_buf = { 0 }; struct tf_rm_resc_req_entry *data; int dma_size; - struct tf_session *tfs; - - /* Retrieve the session information */ - rc = tf_session_get_session_internal(tfp, &tfs); - if (rc) { - TFP_DRV_LOG(ERR, - "Failed to lookup session, rc:%s\n", - strerror(-rc)); - return rc; - } TF_CHECK_PARMS3(tfp, query, resv_strategy); - rc = tf_session_get_fw_session_id(tfp, &fw_session_id); - if (rc) { - TFP_DRV_LOG(ERR, - "%s: Unable to lookup FW id, rc:%s\n", - tf_dir_2_str(dir), - strerror(-rc)); - return rc; - } - /* Prepare DMA buffer */ dma_size = size * sizeof(struct tf_rm_resc_req_entry); rc = tf_msg_alloc_dma_buf(&qcaps_buf, dma_size); @@ -420,7 +401,7 @@ tf_msg_session_resc_qcaps(struct tf *tfp, return rc; /* Populate the request */ - req.fw_session_id = tfp_cpu_to_le_32(fw_session_id); + req.fw_session_id = 0; req.flags = tfp_cpu_to_le_16(dir); req.qcaps_size = size; req.qcaps_addr = tfp_cpu_to_le_64(qcaps_buf.pa_addr); @@ -460,6 +441,9 @@ tf_msg_session_resc_qcaps(struct tf *tfp, *resv_strategy = resp.flags & HWRM_TF_SESSION_RESC_QCAPS_OUTPUT_FLAGS_SESS_RESV_STRATEGY_MASK; + if (sram_profile != NULL) + *sram_profile = resp.sram_profile; + cleanup: tf_msg_free_dma_buf(&qcaps_buf); diff --git a/drivers/net/bnxt/tf_core/tf_msg.h b/drivers/net/bnxt/tf_core/tf_msg.h index 08d20cdd7a..188b361d71 100644 --- a/drivers/net/bnxt/tf_core/tf_msg.h +++ b/drivers/net/bnxt/tf_core/tf_msg.h @@ -158,6 +158,9 @@ int tf_msg_session_qcfg(struct tf *tfp); * [out] resv_strategy * Pointer to the reservation strategy * + * [out] sram_profile + * Pointer to the sram profile + * * Returns: * 0 on Success else internal Truflow error */ @@ -166,7 +169,8 @@ int tf_msg_session_resc_qcaps(struct tf *tfp, enum tf_dir dir, uint16_t size, struct tf_rm_resc_req_entry *query, - enum tf_rm_resc_resv_strategy *resv_strategy); + enum tf_rm_resc_resv_strategy *resv_strategy, + uint8_t *sram_profile); /** * Sends session HW resource allocation request to TF Firmware diff --git a/drivers/net/bnxt/tf_core/tf_rm.c b/drivers/net/bnxt/tf_core/tf_rm.c index dd537aaece..d2045921b9 100644 --- a/drivers/net/bnxt/tf_core/tf_rm.c +++ b/drivers/net/bnxt/tf_core/tf_rm.c @@ -551,7 +551,8 @@ tf_rm_create_db(struct tf *tfp, parms->dir, max_types, query, - &resv_strategy); + &resv_strategy, + NULL); if (rc) return rc; diff --git a/drivers/net/bnxt/tf_core/tf_sram_mgr.h b/drivers/net/bnxt/tf_core/tf_sram_mgr.h index 4abe3fb468..eb2156456a 100644 --- a/drivers/net/bnxt/tf_core/tf_sram_mgr.h +++ b/drivers/net/bnxt/tf_core/tf_sram_mgr.h @@ -28,16 +28,6 @@ #define TF_SRAM_MGR_BLOCK_SZ_BYTES 64 #define TF_SRAM_MGR_MIN_SLICE_BYTES 8 -/** - * Bank identifier - */ -enum tf_sram_bank_id { - TF_SRAM_BANK_ID_0, /**< SRAM Bank 0 id */ - TF_SRAM_BANK_ID_1, /**< SRAM Bank 1 id */ - TF_SRAM_BANK_ID_2, /**< SRAM Bank 2 id */ - TF_SRAM_BANK_ID_3, /**< SRAM Bank 3 id */ - TF_SRAM_BANK_ID_MAX /**< SRAM Bank index limit */ -}; /** * TF slice size. From patchwork Thu Nov 4 21:58:42 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103804 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 2E008A0C5E; Thu, 4 Nov 2021 23:01:05 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1DDA1427C4; Thu, 4 Nov 2021 22:59:23 +0100 (CET) Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) by mails.dpdk.org (Postfix) with ESMTP id A1AB0427ED for ; Thu, 4 Nov 2021 22:59:17 +0100 (CET) Received: by mail-pl1-f182.google.com with SMTP id v20so9553736plo.7 for ; Thu, 04 Nov 2021 14:59:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=8esIURPD+pSXHZnOk7vunCqzN7aLpyG0Xo5C3Hwza0Y=; b=QQdjFfhgydpqzJW4rKdaGfgbWK974t3v5jKF64RzlEV242hqrPZi+fCkBpyzo86UGu cF5Hl7JA3YT5RvqjTbw0xGHubJs3U6UTvIrbdtQpfs0jXx2H/qoCOMrHACH8LXgS5+50 BsNy63N8vzvZOyP9Qxm3QKlMpvVdJ8C5Je/Sw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=8esIURPD+pSXHZnOk7vunCqzN7aLpyG0Xo5C3Hwza0Y=; b=69VSbF8fkB4V0wCrZe0WDvFKvFskPCjv25p3KyzdL3TCh0wED9VKVh2Y0FFONxK5ks 9r917OLXzXvnfsF+m8AJ2dSTsPByAuLLQacx1QvL9hCWXPFTLO8GdGSEzhVnqy7bO8/d h6VAE0jwE/X4v2xWWsRAkrrK8KzLU4AOaT2/id3GOpQCLhy8IU/WzwX1jUYB33HDjfOg aYO+OdOZmUJb9XEXq8U4FbroUZdpXjeqxMQwIQpeFE/M2R7W+o4I5IiU8oxYn9q0ZRts FK9qbr0pH3xLll1c37b3usWpdqvlKwkViy+Cf6w+U+LTPfXc0tTaeSLVOzV8MceWp/jt okqg== X-Gm-Message-State: AOAM531qcsMZZbZBpJpH2JD3KyGH8kJqHmodvMqjRFI7tfrkwE8BaDYJ qFvd3smEjtbcf4JvTzRsB8lFosfWG+Z8MZGkcp9KOwXi7LXGvyg1ZqCoZvWV6qPEhDq/SrYm2gI /0+VR/INq/B4hTGbEZImx+81bAL/3fWO1imNAdkMqZ6N/P/aDHq3HDalUqOebgsY= X-Google-Smtp-Source: ABdhPJzHsfJjDVoZU3n67GyOOMPjuAPk3/14Rd2oyy4AsfTUiprJPA0o29ji1jx3A6JFmL7kcQrA0w== X-Received: by 2002:a17:90a:4801:: with SMTP id a1mr25202350pjh.156.1636063156391; Thu, 04 Nov 2021 14:59:16 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.15 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:15 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Jay Ding , Venkat Duvvuru , Randy Schacher , Farah Smith Date: Thu, 4 Nov 2021 14:58:42 -0700 Message-Id: <20211104215846.58672-19-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 18/22] net/bnxt: add TruFlow and AFM SRAM partitioning support X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Jay Ding Implement set/get_sram_policy which support both rx/tx direction truflow type the specific SRAM bank. Signed-off-by: Jay Ding Signed-off-by: Venkat Duvvuru Reviewed-by: Randy Schacher Reviewed-by: Farah Smith Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/tf_core/tf_core.c | 82 ++++++ drivers/net/bnxt/tf_core/tf_core.h | 66 ++++- drivers/net/bnxt/tf_core/tf_device.c | 7 +- drivers/net/bnxt/tf_core/tf_device.h | 34 ++- drivers/net/bnxt/tf_core/tf_device_p4.c | 8 +- drivers/net/bnxt/tf_core/tf_device_p58.c | 311 ++++++++++++++++++++++- drivers/net/bnxt/tf_core/tf_device_p58.h | 118 +-------- drivers/net/bnxt/tf_core/tf_tbl.c | 2 +- 8 files changed, 503 insertions(+), 125 deletions(-) diff --git a/drivers/net/bnxt/tf_core/tf_core.c b/drivers/net/bnxt/tf_core/tf_core.c index 346d220c87..90ff93946b 100644 --- a/drivers/net/bnxt/tf_core/tf_core.c +++ b/drivers/net/bnxt/tf_core/tf_core.c @@ -1917,3 +1917,85 @@ int tf_query_sram_resources(struct tf *tfp, return 0; } + +int tf_set_sram_policy(struct tf *tfp, + struct tf_set_sram_policy_parms *parms) +{ + int rc = 0; + struct tf_dev_info dev; + + TF_CHECK_PARMS2(tfp, parms); + + /* This function can be called before open session, filter + * out any non-supported device types on the Core side. + */ + if (parms->device_type != TF_DEVICE_TYPE_THOR) { + TFP_DRV_LOG(ERR, + "Unsupported device type %d\n", + parms->device_type); + return -ENOTSUP; + } + + tf_dev_bind_ops(parms->device_type, &dev); + + if (dev.ops->tf_dev_set_sram_policy == NULL) { + rc = -EOPNOTSUPP; + TFP_DRV_LOG(ERR, + "%s: Operation not supported, rc:%s\n", + tf_dir_2_str(parms->dir), + strerror(-rc)); + return rc; + } + + rc = dev.ops->tf_dev_set_sram_policy(parms->dir, parms->bank_id); + if (rc) { + TFP_DRV_LOG(ERR, + "%s: SRAM policy set failed, rc:%s\n", + tf_dir_2_str(parms->dir), + strerror(-rc)); + return rc; + } + + return rc; +} + +int tf_get_sram_policy(struct tf *tfp, + struct tf_get_sram_policy_parms *parms) +{ + int rc = 0; + struct tf_dev_info dev; + + TF_CHECK_PARMS2(tfp, parms); + + /* This function can be called before open session, filter + * out any non-supported device types on the Core side. + */ + if (parms->device_type != TF_DEVICE_TYPE_THOR) { + TFP_DRV_LOG(ERR, + "Unsupported device type %d\n", + parms->device_type); + return -ENOTSUP; + } + + tf_dev_bind_ops(parms->device_type, &dev); + + if (dev.ops->tf_dev_get_sram_policy == NULL) { + rc = -EOPNOTSUPP; + TFP_DRV_LOG(ERR, + "%s: Operation not supported, rc:%s\n", + tf_dir_2_str(parms->dir), + strerror(-rc)); + return rc; + } + + rc = dev.ops->tf_dev_get_sram_policy(parms->dir, parms->bank_id); + if (rc) { + TFP_DRV_LOG(ERR, + "%s: SRAM policy get failed, rc:%s\n", + tf_dir_2_str(parms->dir), + strerror(-rc)); + return rc; + } + + return rc; +} diff --git a/drivers/net/bnxt/tf_core/tf_core.h b/drivers/net/bnxt/tf_core/tf_core.h index 078fd278a1..b2886355fa 100644 --- a/drivers/net/bnxt/tf_core/tf_core.h +++ b/drivers/net/bnxt/tf_core/tf_core.h @@ -2455,7 +2455,7 @@ int tf_get_version(struct tf *tfp, */ struct tf_query_sram_resources_parms { /** - * [in] device type + * [in] Device type * * Device type for the session. */ @@ -2501,4 +2501,68 @@ struct tf_query_sram_resources_parms { int tf_query_sram_resources(struct tf *tfp, struct tf_query_sram_resources_parms *parms); +/** + * tf_set_sram_policy parameter definition + */ +struct tf_set_sram_policy_parms { + /** + * [in] Device type + * + * Device type for the session. + */ + enum tf_device_type device_type; + + /** + * [in] Receive or transmit direction + */ + enum tf_dir dir; + + /** + * [in] Array of Bank id for each truflow tbl type + */ + uint8_t *bank_id; +}; + +/** + * Set SRAM policy + * + * Used to assign SRAM bank index to all truflow table type. + * + * Returns success or failure code. + */ +int tf_set_sram_policy(struct tf *tfp, + struct tf_set_sram_policy_parms *parms); + +/** + * tf_get_sram_policy parameter definition + */ +struct tf_get_sram_policy_parms { + /** + * [in] Device type + * + * Device type for the session. + */ + enum tf_device_type device_type; + + /** + * [in] Receive or transmit direction + */ + enum tf_dir dir; + + /** + * [out] Array of Bank id for each truflow tbl type + */ + uint8_t bank_id[TF_TBL_TYPE_ACT_MODIFY_64B + 1]; +}; + +/** + * Get SRAM policy + * + * Used to get the assigned bank of table types. + * + * Returns success or failure code. + */ +int tf_get_sram_policy(struct tf *tfp, + struct tf_get_sram_policy_parms *parms); + #endif /* _TF_CORE_H_ */ diff --git a/drivers/net/bnxt/tf_core/tf_device.c b/drivers/net/bnxt/tf_core/tf_device.c index 25a7166bbb..40db546604 100644 --- a/drivers/net/bnxt/tf_core/tf_device.c +++ b/drivers/net/bnxt/tf_core/tf_device.c @@ -415,11 +415,14 @@ tf_dev_bind_p58(struct tf *tfp, } rsv_cnt = tf_dev_reservation_check(TF_TBL_TYPE_MAX, - tf_tbl_p58, + tf_tbl_p58[TF_DIR_RX], + (uint16_t *)resources->tbl_cnt); + rsv_cnt += tf_dev_reservation_check(TF_TBL_TYPE_MAX, + tf_tbl_p58[TF_DIR_TX], (uint16_t *)resources->tbl_cnt); if (rsv_cnt) { tbl_cfg.num_elements = TF_TBL_TYPE_MAX; - tbl_cfg.cfg = tf_tbl_p58; + tbl_cfg.cfg = tf_tbl_p58[TF_DIR_RX]; tbl_cfg.resources = resources; rc = tf_tbl_bind(tfp, &tbl_cfg); if (rc) { diff --git a/drivers/net/bnxt/tf_core/tf_device.h b/drivers/net/bnxt/tf_core/tf_device.h index 9360eb1358..3d5de988c4 100644 --- a/drivers/net/bnxt/tf_core/tf_device.h +++ b/drivers/net/bnxt/tf_core/tf_device.h @@ -1083,7 +1083,7 @@ struct tf_dev_ops { uint32_t *em_caps); /** - * Device specific function that retrieve the sram resource + * Device specific function that retrieves the sram resource * * [in] query * Point to resources query result @@ -1101,6 +1101,38 @@ struct tf_dev_ops { int (*tf_dev_get_sram_resources)(void *query, uint32_t *sram_bank_caps, bool *dynamic_sram_capable); + + /** + * Device specific function that sets the sram policy + * + * [in] dir + * Receive or transmit direction + * + * [in] band_id + * SRAM bank id + * + * Returns + * - (0) if successful. + * - (-EINVAL) on failure. + */ + int (*tf_dev_set_sram_policy)(enum tf_dir dir, + uint8_t *bank_id); + + /** + * Device specific function that gets the sram policy + * + * [in] dir + * Receive or transmit direction + * + * [in] band_id + * pointer to SRAM bank id + * + * Returns + * - (0) if successful. + * - (-EINVAL) on failure. + */ + int (*tf_dev_get_sram_policy)(enum tf_dir dir, + uint8_t *bank_id); }; /** diff --git a/drivers/net/bnxt/tf_core/tf_device_p4.c b/drivers/net/bnxt/tf_core/tf_device_p4.c index cf0e919f9f..244bd08914 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p4.c +++ b/drivers/net/bnxt/tf_core/tf_device_p4.c @@ -383,7 +383,9 @@ const struct tf_dev_ops tf_dev_ops_p4_init = { .tf_dev_get_mailbox = tf_dev_p4_get_mailbox, .tf_dev_word_align = NULL, .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps, - .tf_dev_get_sram_resources = NULL + .tf_dev_get_sram_resources = NULL, + .tf_dev_set_sram_policy = NULL, + .tf_dev_get_sram_policy = NULL, }; /** @@ -447,5 +449,7 @@ const struct tf_dev_ops tf_dev_ops_p4 = { .tf_dev_word_align = tf_dev_p4_word_align, .tf_dev_cfa_key_hash = hcapi_cfa_p4_key_hash, .tf_dev_map_hcapi_caps = tf_dev_p4_map_hcapi_caps, - .tf_dev_get_sram_resources = NULL + .tf_dev_get_sram_resources = NULL, + .tf_dev_set_sram_policy = NULL, + .tf_dev_get_sram_policy = NULL, }; diff --git a/drivers/net/bnxt/tf_core/tf_device_p58.c b/drivers/net/bnxt/tf_core/tf_device_p58.c index 4687fa65dd..3c1c3a2de1 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p58.c +++ b/drivers/net/bnxt/tf_core/tf_device_p58.c @@ -48,6 +48,235 @@ const char *tf_resource_str_p58[CFA_RESOURCE_TYPE_P58_LAST + 1] = { [CFA_RESOURCE_TYPE_P58_METER_DROP_CNT] = "meter_dc", }; +struct tf_rm_element_cfg tf_tbl_p58[TF_DIR_MAX][TF_TBL_TYPE_MAX] = { + [TF_DIR_RX][TF_TBL_TYPE_EM_FKB] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_EM_FKB, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_WC_FKB] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_WC_FKB, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_METER_PROF] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METER_PROF, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_METER_INST] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METER, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_METER_DROP_CNT] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METER_DROP_CNT, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_MIRROR_CONFIG] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_MIRROR, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_METADATA] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METADATA, + 0, 0 + }, + /* Policy - ARs in bank 1 */ + [TF_DIR_RX][TF_TBL_TYPE_FULL_ACT_RECORD] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_1, + .slices = 4, + }, + [TF_DIR_RX][TF_TBL_TYPE_COMPACT_ACT_RECORD] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_FULL_ACT_RECORD, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_1, + .slices = 8, + }, + /* Policy - Encaps in bank 2 */ + [TF_DIR_RX][TF_TBL_TYPE_ACT_ENCAP_8B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 8, + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_ENCAP_16B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 4, + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_ENCAP_32B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 2, + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_ENCAP_64B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 1, + }, + /* Policy - Modify in bank 2 with Encaps */ + [TF_DIR_RX][TF_TBL_TYPE_ACT_MODIFY_8B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 8, + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_MODIFY_16B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 4, + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_MODIFY_32B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 2, + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_MODIFY_64B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 1, + }, + /* Policy - SP in bank 0 */ + [TF_DIR_RX][TF_TBL_TYPE_ACT_SP_SMAC] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, + .slices = 8, + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_SP_SMAC_IPV4] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_SP_SMAC, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, + .slices = 4, + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_SP_SMAC_IPV6] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_SP_SMAC, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, + .slices = 2, + }, + /* Policy - Stats in bank 3 */ + [TF_DIR_RX][TF_TBL_TYPE_ACT_STATS_64] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_3, + .slices = 8, + }, + [TF_DIR_TX][TF_TBL_TYPE_EM_FKB] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_EM_FKB, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_WC_FKB] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_WC_FKB, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_METER_PROF] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METER_PROF, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_METER_INST] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METER, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_METER_DROP_CNT] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METER_DROP_CNT, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_MIRROR_CONFIG] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_MIRROR, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_METADATA] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METADATA, + 0, 0 + }, + /* Policy - ARs in bank 1 */ + [TF_DIR_TX][TF_TBL_TYPE_FULL_ACT_RECORD] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_1, + .slices = 4, + }, + [TF_DIR_TX][TF_TBL_TYPE_COMPACT_ACT_RECORD] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_FULL_ACT_RECORD, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_1, + .slices = 8, + }, + /* Policy - Encaps in bank 2 */ + [TF_DIR_TX][TF_TBL_TYPE_ACT_ENCAP_8B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 8, + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_ENCAP_16B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 4, + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_ENCAP_32B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 2, + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_ENCAP_64B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 1, + }, + /* Policy - Modify in bank 2 with Encaps */ + [TF_DIR_TX][TF_TBL_TYPE_ACT_MODIFY_8B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 8, + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_MODIFY_16B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 4, + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_MODIFY_32B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 2, + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_MODIFY_64B] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + .slices = 1, + }, + /* Policy - SP in bank 0 */ + [TF_DIR_TX][TF_TBL_TYPE_ACT_SP_SMAC] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, + .slices = 8, + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_SP_SMAC_IPV4] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_SP_SMAC, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, + .slices = 4, + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_SP_SMAC_IPV6] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, + .parent_subtype = TF_TBL_TYPE_ACT_SP_SMAC, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, + .slices = 2, + }, + /* Policy - Stats in bank 3 */ + [TF_DIR_TX][TF_TBL_TYPE_ACT_STATS_64] = { + .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, + .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_3, + .slices = 8, + }, +}; + /** * Device specific function that retrieves the MAX number of HCAPI * types the device supports. @@ -444,6 +673,80 @@ static int tf_dev_p58_get_sram_resources(void *q, return 0; } +int sram_bank_hcapi_type[] = { + CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, + CFA_RESOURCE_TYPE_P58_SRAM_BANK_1, + CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, + CFA_RESOURCE_TYPE_P58_SRAM_BANK_3 +}; + +/** + * Device specific function that set the sram policy + * + * [in] dir + * Receive or transmit direction + * + * [in] band_id + * SRAM bank id + * + * Returns + * - (0) if successful. + * - (-EINVAL) on failure. + */ +static int tf_dev_p58_set_sram_policy(enum tf_dir dir, + uint8_t *bank_id) +{ + struct tf_rm_element_cfg *rm_cfg = tf_tbl_p58[dir]; + uint8_t type; + uint8_t parent[TF_SRAM_BANK_ID_MAX] = { 0xFF, 0xFF, 0xFF, 0xFF }; + + for (type = TF_TBL_TYPE_FULL_ACT_RECORD; + type < TF_TBL_TYPE_ACT_MODIFY_64B + 1; type++) { + if (bank_id[type] > 3) + return -EINVAL; + + rm_cfg[type].hcapi_type = sram_bank_hcapi_type[bank_id[type]]; + if (parent[bank_id[type]] == 0xFF) { + parent[bank_id[type]] = type; + rm_cfg[type].cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT; + rm_cfg[type].parent_subtype = 0; + if (rm_cfg[type].slices == 0) + rm_cfg[type].slices = 1; + } else { + rm_cfg[type].cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD; + rm_cfg[type].parent_subtype = parent[bank_id[type]]; + } + } + + return 0; +} + +/** + * Device specific function that get the sram policy + * + * [in] dir + * Receive or transmit direction + * + * [out] band_id + * pointer to SRAM bank id + * + * Returns + * - (0) if successful. + * - (-EINVAL) on failure. + */ +static int tf_dev_p58_get_sram_policy(enum tf_dir dir, + uint8_t *bank_id) +{ + struct tf_rm_element_cfg *rm_cfg = tf_tbl_p58[dir]; + uint8_t type; + + for (type = TF_TBL_TYPE_FULL_ACT_RECORD; + type < TF_TBL_TYPE_ACT_MODIFY_64B + 1; type++) + bank_id[type] = rm_cfg[type].hcapi_type - CFA_RESOURCE_TYPE_P58_SRAM_BANK_0; + + return 0; +} + /** * Truflow P58 device specific functions */ @@ -495,7 +798,9 @@ const struct tf_dev_ops tf_dev_ops_p58_init = { .tf_dev_get_mailbox = tf_dev_p58_get_mailbox, .tf_dev_word_align = NULL, .tf_dev_map_hcapi_caps = tf_dev_p58_map_hcapi_caps, - .tf_dev_get_sram_resources = tf_dev_p58_get_sram_resources + .tf_dev_get_sram_resources = tf_dev_p58_get_sram_resources, + .tf_dev_set_sram_policy = tf_dev_p58_set_sram_policy, + .tf_dev_get_sram_policy = tf_dev_p58_get_sram_policy, }; /** @@ -560,5 +865,7 @@ const struct tf_dev_ops tf_dev_ops_p58 = { .tf_dev_word_align = tf_dev_p58_word_align, .tf_dev_cfa_key_hash = hcapi_cfa_p58_key_hash, .tf_dev_map_hcapi_caps = tf_dev_p58_map_hcapi_caps, - .tf_dev_get_sram_resources = tf_dev_p58_get_sram_resources + .tf_dev_get_sram_resources = tf_dev_p58_get_sram_resources, + .tf_dev_set_sram_policy = tf_dev_p58_set_sram_policy, + .tf_dev_get_sram_policy = tf_dev_p58_get_sram_policy, }; diff --git a/drivers/net/bnxt/tf_core/tf_device_p58.h b/drivers/net/bnxt/tf_core/tf_device_p58.h index f6e66936f3..61c856b767 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p58.h +++ b/drivers/net/bnxt/tf_core/tf_device_p58.h @@ -12,6 +12,8 @@ #include "tf_if_tbl.h" #include "tf_global_cfg.h" +extern struct tf_rm_element_cfg tf_tbl_p58[TF_DIR_MAX][TF_TBL_TYPE_MAX]; + struct tf_rm_element_cfg tf_ident_p58[TF_IDENT_TYPE_MAX] = { [TF_IDENT_TYPE_L2_CTXT_HIGH] = { TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_L2_CTXT_REMAP_HIGH, @@ -58,122 +60,6 @@ struct tf_rm_element_cfg tf_tcam_p58[TF_TCAM_TBL_TYPE_MAX] = { }, }; -struct tf_rm_element_cfg tf_tbl_p58[TF_TBL_TYPE_MAX] = { - [TF_TBL_TYPE_EM_FKB] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_EM_FKB, - 0, 0 - }, - [TF_TBL_TYPE_WC_FKB] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_WC_FKB, - 0, 0 - }, - [TF_TBL_TYPE_METER_PROF] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METER_PROF, - 0, 0 - }, - [TF_TBL_TYPE_METER_INST] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METER, - 0, 0 - }, - [TF_TBL_TYPE_METER_DROP_CNT] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METER_DROP_CNT, - 0, 0 - }, - [TF_TBL_TYPE_MIRROR_CONFIG] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_MIRROR, - 0, 0 - }, - [TF_TBL_TYPE_METADATA] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P58_METADATA, - 0, 0 - }, - /* Policy - ARs in bank 1 */ - [TF_TBL_TYPE_FULL_ACT_RECORD] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_1, - .slices = 4, - }, - [TF_TBL_TYPE_COMPACT_ACT_RECORD] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, - .parent_subtype = TF_TBL_TYPE_FULL_ACT_RECORD, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_1, - .slices = 8, - }, - /* Policy - Encaps in bank 2 */ - [TF_TBL_TYPE_ACT_ENCAP_8B] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, - .slices = 8, - }, - [TF_TBL_TYPE_ACT_ENCAP_16B] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, - .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, - .slices = 4, - }, - [TF_TBL_TYPE_ACT_ENCAP_32B] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, - .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, - .slices = 2, - }, - [TF_TBL_TYPE_ACT_ENCAP_64B] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, - .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, - .slices = 1, - }, - /* Policy - Modify in bank 2 with Encaps */ - [TF_TBL_TYPE_ACT_MODIFY_8B] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, - .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, - .slices = 8, - }, - [TF_TBL_TYPE_ACT_MODIFY_16B] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, - .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, - .slices = 4, - }, - [TF_TBL_TYPE_ACT_MODIFY_32B] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, - .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, - .slices = 2, - }, - [TF_TBL_TYPE_ACT_MODIFY_64B] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, - .parent_subtype = TF_TBL_TYPE_ACT_ENCAP_8B, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, - .slices = 1, - }, - /* Policy - SP in bank 0 */ - [TF_TBL_TYPE_ACT_SP_SMAC] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, - .slices = 8, - }, - [TF_TBL_TYPE_ACT_SP_SMAC_IPV4] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, - .parent_subtype = TF_TBL_TYPE_ACT_SP_SMAC, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, - .slices = 4, - }, - [TF_TBL_TYPE_ACT_SP_SMAC_IPV6] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_CHILD, - .parent_subtype = TF_TBL_TYPE_ACT_SP_SMAC, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, - .slices = 2, - }, - /* Policy - Stats in bank 3 */ - [TF_TBL_TYPE_ACT_STATS_64] = { - .cfg_type = TF_RM_ELEM_CFG_HCAPI_BA_PARENT, - .hcapi_type = CFA_RESOURCE_TYPE_P58_SRAM_BANK_3, - .slices = 8, - }, -}; - struct tf_rm_element_cfg tf_em_int_p58[TF_EM_TBL_TYPE_MAX] = { [TF_EM_TBL_TYPE_EM_RECORD] = { TF_RM_ELEM_CFG_HCAPI, CFA_RESOURCE_TYPE_P58_EM_REC, diff --git a/drivers/net/bnxt/tf_core/tf_tbl.c b/drivers/net/bnxt/tf_core/tf_tbl.c index 12eca36491..3fb22b52ac 100644 --- a/drivers/net/bnxt/tf_core/tf_tbl.c +++ b/drivers/net/bnxt/tf_core/tf_tbl.c @@ -58,10 +58,10 @@ tf_tbl_bind(struct tf *tfp, db_cfg.num_elements = parms->num_elements; db_cfg.module = TF_MODULE_TYPE_TABLE; db_cfg.num_elements = parms->num_elements; - db_cfg.cfg = parms->cfg; for (d = 0; d < TF_DIR_MAX; d++) { db_cfg.dir = d; + db_cfg.cfg = &parms->cfg[d ? TF_TBL_TYPE_MAX : 0]; db_cfg.alloc_cnt = parms->resources->tbl_cnt[d].cnt; db_cfg.rm_db = (void *)&tbl_db->tbl_db[d]; if (tf_session_is_shared_session(tfs) && From patchwork Thu Nov 4 21:58:43 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103805 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id A1A51A0C5E; Thu, 4 Nov 2021 23:01:11 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2BB7642808; Thu, 4 Nov 2021 22:59:24 +0100 (CET) Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by mails.dpdk.org (Postfix) with ESMTP id 80AFA427F2 for ; Thu, 4 Nov 2021 22:59:18 +0100 (CET) Received: by mail-pl1-f174.google.com with SMTP id t11so9519438plq.11 for ; Thu, 04 Nov 2021 14:59:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=oRyzOqdO3VpxYKq/IafPVlzQZreciqfqtUep92ISAgQ=; b=MAQkfLC8rxty60ZX6bHmxXu/t5CRQ4HC5u798FDQ+bheSKOe1JuBi4kVnzIc2Sml55 jMLPXjnKrXjfw7WxhAxXZkTsUGaYOnWeSICxD28D9MY3z4TyNzttWyhuE/F6dLzEfibT x6SDFg5YfLT8Mb1xiASdo+bTMDfwMtcyheYqI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=oRyzOqdO3VpxYKq/IafPVlzQZreciqfqtUep92ISAgQ=; b=cI8g5vykvh19nCsAyrkaBlS0fpjWuse+aS1ukKXVDEnTGqV8sf+MZ7jlEq/CgaSEVO xYQP0AZkWR9Cs9SC8nt4zBGQOV03+O+ppJjeOf7QW6U1TAu4oyCAg3qyi+hJY+EH3Uha 1aDQPxjkUgxWnydQiSdBIgZ+unFA4b99PjiJwDIN/tX9R8kEexrT5Z0emEtm3mnkwODe y5QuLeDJnwiA2kVaPrgsiajCQhxOxVP6/lfBfI2VEJ5CsH0rLzIr34sW1mtlm+Ffzhgv gmay7Vp419eszlOuuIjA6xR9SuHaZr1bItjf5jydnNCLS4eKg24yJPL+tTIO4VN2bkP8 4GBQ== X-Gm-Message-State: AOAM533cEP5OwgpQ3DIIGzNNjv41f5zHsI99gW6DAy/hM//WprEcjUMN 7RR/5XC5aAEVt6VJQ7E6eX0yuh6/rrr3sfwMOzb7Jmo9gEcWTzP6gU2IaeqgkuGTwb2KP7vts5c 7tSIm4wu1FOBDUjB9V+/gTY2BQHsBSKX5IxG2bZfg3AyJAicHkk5X9ZtTEmIk0lQ= X-Google-Smtp-Source: ABdhPJzvYpjKEasVORoyh9d8udb+LWTDuTrUnVEjvMX2h7J9QnOx3cYhGYexox71x00kEifpHoWiHw== X-Received: by 2002:a17:90b:3890:: with SMTP id mu16mr14760349pjb.73.1636063157537; Thu, 04 Nov 2021 14:59:17 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.16 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:16 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Jay Ding , Venkat Duvvuru , Farah Smith , Randy Schacher Date: Thu, 4 Nov 2021 14:58:43 -0700 Message-Id: <20211104215846.58672-20-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 19/22] net/bnxt: add Tx TruFlow table config for P4 device X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Jay Ding Add TX direction TruFlow table type config to be compatible with other devices. For P4 device, the TX cfg is duplicated from RX. Signed-off-by: Jay Ding Signed-off-by: Venkat Duvvuru Reviewed-by: Farah Smith Reviewed-by: Randy Schacher Acked-by: Ajit Khaparde --- drivers/net/bnxt/tf_core/tf_device.c | 4 +- drivers/net/bnxt/tf_core/tf_device_p4.c | 107 ++++++++++++++++++++++++ drivers/net/bnxt/tf_core/tf_device_p4.h | 58 +------------ 3 files changed, 111 insertions(+), 58 deletions(-) diff --git a/drivers/net/bnxt/tf_core/tf_device.c b/drivers/net/bnxt/tf_core/tf_device.c index 40db546604..4c416270b6 100644 --- a/drivers/net/bnxt/tf_core/tf_device.c +++ b/drivers/net/bnxt/tf_core/tf_device.c @@ -131,11 +131,11 @@ tf_dev_bind_p4(struct tf *tfp, } rsv_cnt = tf_dev_reservation_check(TF_TBL_TYPE_MAX, - tf_tbl_p4, + tf_tbl_p4[TF_DIR_RX], (uint16_t *)resources->tbl_cnt); if (rsv_cnt) { tbl_cfg.num_elements = TF_TBL_TYPE_MAX; - tbl_cfg.cfg = tf_tbl_p4; + tbl_cfg.cfg = tf_tbl_p4[TF_DIR_RX]; tbl_cfg.resources = resources; rc = tf_tbl_bind(tfp, &tbl_cfg); if (rc) { diff --git a/drivers/net/bnxt/tf_core/tf_device_p4.c b/drivers/net/bnxt/tf_core/tf_device_p4.c index 244bd08914..a6a59b8a07 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p4.c +++ b/drivers/net/bnxt/tf_core/tf_device_p4.c @@ -59,6 +59,113 @@ const char *tf_resource_str_p4[CFA_RESOURCE_TYPE_P4_LAST + 1] = { [CFA_RESOURCE_TYPE_P4_TBL_SCOPE] = "tb_scope", }; +struct tf_rm_element_cfg tf_tbl_p4[TF_DIR_MAX][TF_TBL_TYPE_MAX] = { + [TF_DIR_RX][TF_TBL_TYPE_FULL_ACT_RECORD] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_FULL_ACTION, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_MCAST_GROUPS] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_MCG, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_ENCAP_8B] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_ENCAP_8B, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_ENCAP_16B] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_ENCAP_16B, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_ENCAP_64B] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_ENCAP_64B, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_SP_SMAC] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_SP_MAC, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_SP_SMAC_IPV4] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_SP_MAC_IPV4, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_SP_SMAC_IPV6] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_SP_MAC_IPV6, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_STATS_64] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_COUNTER_64B, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_ACT_MODIFY_IPV4] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_NAT_IPV4, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_METER_PROF] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_METER_PROF, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_METER_INST] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_METER, + 0, 0 + }, + [TF_DIR_RX][TF_TBL_TYPE_MIRROR_CONFIG] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_MIRROR, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_FULL_ACT_RECORD] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_FULL_ACTION, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_MCAST_GROUPS] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_MCG, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_ENCAP_8B] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_ENCAP_8B, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_ENCAP_16B] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_ENCAP_16B, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_ENCAP_64B] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_ENCAP_64B, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_SP_SMAC] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_SP_MAC, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_SP_SMAC_IPV4] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_SP_MAC_IPV4, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_SP_SMAC_IPV6] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_SP_MAC_IPV6, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_STATS_64] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_COUNTER_64B, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_ACT_MODIFY_IPV4] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_NAT_IPV4, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_METER_PROF] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_METER_PROF, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_METER_INST] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_METER, + 0, 0 + }, + [TF_DIR_TX][TF_TBL_TYPE_MIRROR_CONFIG] = { + TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_MIRROR, + 0, 0 + }, +}; + /** * Device specific function that retrieves the MAX number of HCAPI * types the device supports. diff --git a/drivers/net/bnxt/tf_core/tf_device_p4.h b/drivers/net/bnxt/tf_core/tf_device_p4.h index e84c0f9e83..86de525995 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p4.h +++ b/drivers/net/bnxt/tf_core/tf_device_p4.h @@ -12,6 +12,8 @@ #include "tf_if_tbl.h" #include "tf_global_cfg.h" +extern struct tf_rm_element_cfg tf_tbl_p4[TF_DIR_MAX][TF_TBL_TYPE_MAX]; + struct tf_rm_element_cfg tf_ident_p4[TF_IDENT_TYPE_MAX] = { [TF_IDENT_TYPE_L2_CTXT_HIGH] = { TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_L2_CTXT_REMAP_HIGH, @@ -58,62 +60,6 @@ struct tf_rm_element_cfg tf_tcam_p4[TF_TCAM_TBL_TYPE_MAX] = { }, }; -struct tf_rm_element_cfg tf_tbl_p4[TF_TBL_TYPE_MAX] = { - [TF_TBL_TYPE_FULL_ACT_RECORD] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_FULL_ACTION, - 0, 0 - }, - [TF_TBL_TYPE_MCAST_GROUPS] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_MCG, - 0, 0 - }, - [TF_TBL_TYPE_ACT_ENCAP_8B] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_ENCAP_8B, - 0, 0 - }, - [TF_TBL_TYPE_ACT_ENCAP_16B] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_ENCAP_16B, - 0, 0 - }, - [TF_TBL_TYPE_ACT_ENCAP_64B] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_ENCAP_64B, - 0, 0 - }, - [TF_TBL_TYPE_ACT_SP_SMAC] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_SP_MAC, - 0, 0 - }, - [TF_TBL_TYPE_ACT_SP_SMAC_IPV4] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_SP_MAC_IPV4, - 0, 0 - }, - [TF_TBL_TYPE_ACT_SP_SMAC_IPV6] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_SP_MAC_IPV6, - 0, 0 - }, - [TF_TBL_TYPE_ACT_STATS_64] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_COUNTER_64B, - 0, 0 - }, - [TF_TBL_TYPE_ACT_MODIFY_IPV4] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_NAT_IPV4, - 0, 0 - }, - [TF_TBL_TYPE_METER_PROF] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_METER_PROF, - 0, 0 - }, - [TF_TBL_TYPE_METER_INST] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_METER, - 0, 0 - }, - [TF_TBL_TYPE_MIRROR_CONFIG] = { - TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_MIRROR, - 0, 0 - }, - -}; - struct tf_rm_element_cfg tf_em_ext_p4[TF_EM_TBL_TYPE_MAX] = { [TF_EM_TBL_TYPE_TBL_SCOPE] = { TF_RM_ELEM_CFG_HCAPI_BA, CFA_RESOURCE_TYPE_P4_TBL_SCOPE, From patchwork Thu Nov 4 21:58:44 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103806 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id CD6CBA0C5E; Thu, 4 Nov 2021 23:01:20 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1AB6942817; Thu, 4 Nov 2021 22:59:26 +0100 (CET) Received: from mail-pl1-f169.google.com (mail-pl1-f169.google.com [209.85.214.169]) by mails.dpdk.org (Postfix) with ESMTP id 14620427FB for ; Thu, 4 Nov 2021 22:59:20 +0100 (CET) Received: by mail-pl1-f169.google.com with SMTP id s24so9639656plp.0 for ; Thu, 04 Nov 2021 14:59:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=EwiG/IiM4rgk+UJO/sFgaeZdR3NZ3CrHIbJ5ZCxcnw0=; b=Mb9aQskuic4Gq7TXijgtqfpzZpD0BVmCGJp5dE2KGq8wAY3xywPmMQClpsMCevf4oC a7Es06uwnEhGc0+OnL2XWY4cZ7f7fAyq4e4EalNFd0s7tXCsljHEDT/iYcXgtHtqSFdM y6+Pi6DWD1q+BeGgxX8OYo06Cp4EzHRM76C5c= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=EwiG/IiM4rgk+UJO/sFgaeZdR3NZ3CrHIbJ5ZCxcnw0=; b=PKEHoY8fMH92kmvjWLhjFy5/087geMSwAI19gSo4BQLuukogXSEqeM9DsYJO4A1Si5 AZgGHr+v3s9BNLDn452SLZ/JKuEqTVnixV6yGuUXp24zoyg5XQrrwq00X5/ldraZKh2N 2+dGTfL/0SDGPG9uFXS3e75hOwkn++4pTeUa4IFP3uV1VGMd/H38zFpmb5+XgFCFju3k PgK8Yrvry6a3FMwo7nLgXaVIZL6cEv1vtISztehITxUrytkXu+yTHwsU4BlXh9x8+Io9 W3Q9RFoCP/yb3nUoxUaHxtBwEDsLEBMOQiFe6a74Lc+Zpjk44FwDFmp+ABldXSyYkKlC TiHw== X-Gm-Message-State: AOAM5307zLedfcDUxTO+9X5JJeXboCweGWWj/zdlGXWXFXIZBg5GRwsG muQt5ywyEWeBN8SkFqFZA+K1a8SpZUS9l6BgwEC++52dqCsIrOj/RvIHx4Bm3xbzR3kg91L3V9C /DB4y9E/RCzJuMcFfSUdH7O/QLgyBufvY/uBi/NrqtuEjRg+pf+PellKBaZLacg8= X-Google-Smtp-Source: ABdhPJwDbPPJgbhIVYkSYCpW1Adc8sDOgz1v0D4aLfeGDhaH//XjSbgWGApsd2VEBFEkvNfHRRGJ1w== X-Received: by 2002:a17:903:283:b0:142:1243:d879 with SMTP id j3-20020a170903028300b001421243d879mr17359835plr.61.1636063159086; Thu, 04 Nov 2021 14:59:19 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.17 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:18 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Mike Baucom , Venkat Duvvuru , Kishore Padmanabha , Randy Schacher Date: Thu, 4 Nov 2021 14:58:44 -0700 Message-Id: <20211104215846.58672-21-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 20/22] net/bnxt: remove 2 slice wildcard entries X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Mike Baucom Remove 2-slice wildcard entries for scale. The type-5 wildcard IPv6 flows are removed in order to increase the scale for app-id=3. The app no longer supports 2-slice wildcard entries. Signed-off-by: Mike Baucom Signed-off-by: Venkat Duvvuru Reviewed-by: Kishore Padmanabha Reviewed-by: Randy Schacher Acked-by: Ajit Khaparde --- drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c index b64279710b..fd211bbc3f 100644 --- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c +++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c @@ -462,7 +462,7 @@ ulp_ctx_shared_session_open(struct bnxt *bp, parms.shadow_copy = true; parms.bp = bp; - if (app_id == 0 || app_id == 3) + if (app_id == 0) parms.wc_num_slices = TF_WC_TCAM_2_SLICE_PER_ROW; else parms.wc_num_slices = TF_WC_TCAM_1_SLICE_PER_ROW; @@ -584,7 +584,7 @@ ulp_ctx_session_open(struct bnxt *bp, return rc; params.bp = bp; - if (app_id == 0 || app_id == 3) + if (app_id == 0) params.wc_num_slices = TF_WC_TCAM_2_SLICE_PER_ROW; else params.wc_num_slices = TF_WC_TCAM_1_SLICE_PER_ROW; From patchwork Thu Nov 4 21:58:45 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103807 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 2F186A0C5E; Thu, 4 Nov 2021 23:01:26 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 22A244281D; Thu, 4 Nov 2021 22:59:27 +0100 (CET) Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by mails.dpdk.org (Postfix) with ESMTP id 2411D427F1 for ; Thu, 4 Nov 2021 22:59:21 +0100 (CET) Received: by mail-pl1-f181.google.com with SMTP id b13so9600111plg.2 for ; Thu, 04 Nov 2021 14:59:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=rhPJ/gHNByuRhwoilDRpy5GPtOJT+M2y7/lvQDaBp44=; b=MkvnXquToqgXgzhrbWn6+KvAj/welzmth9DpBMRw7ckpkVVDCKZIQP5kcARX6sGwjA xdwdChpvc0sc2BSy/M4gdMc8fT9b8q9IwVnUq2Hb6OolrdiZp11VR5ldfMZZCCiTD+bN BzX2BJSpGjV6quJ6Q2OinDS5WN/iVaWjPTst8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=rhPJ/gHNByuRhwoilDRpy5GPtOJT+M2y7/lvQDaBp44=; b=w8W/xINeexIo/42SXdkL5VfnuuOqHeEvNqLM6flhPHHIBKCyufJHhoGZwk5gMA33Xx uKGCbgqGYH+W2KLPzmFSvbbKJUX0nf0Dbm0BfagWAX93OcL21Y/3wWUCpOxlBKjvHYaW o0rxmNfNuK+ihXiiVkuTby5qZT6XMV4xeZnXu1SFpKmqoUPsTnlPAvplNAaM/xTCLTLE A260YCNmZqm5ZAtpmyfbBRrKzGS5ZJZFlxJlGj45Bt7k2844pGQdibZY9qPTDobYearA +obFb5EAsDokNBwlOiFQgM4oZS52fWEPMtgLCcmjVZX/GskAMi+PQcfU9Y9pmgQ+AOZy 5RSA== X-Gm-Message-State: AOAM5320NPSAj7ELlbfChx4uIfvbsKOeuFhCQ3jIKfvC3wy248RJY2XJ SQxjiluP9tZJhWuoT07WVeK8ywZu0fBLkPof+aRW+42rMj6JLAVSCpXSe5VedH6GLuxDZt1cHsp erdla/kPBHOUqiaYrM2zgwsezRjx4Woaadq7a5S/vrKvJxKbSI7Y+LaTgqzsD1Pc= X-Google-Smtp-Source: ABdhPJzKDtFNEEYwCT6epkPBF2rQthks7ybdbSpUGLFdjNamKkZry3YPRlxmIIGsYwfdVHKflNVO3Q== X-Received: by 2002:a17:902:728b:b0:13f:c086:bdfe with SMTP id d11-20020a170902728b00b0013fc086bdfemr46854908pll.6.1636063160081; Thu, 04 Nov 2021 14:59:20 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.19 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:19 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Kishore Padmanabha , Mike Baucom , Shahaji Bhosle Date: Thu, 4 Nov 2021 14:58:45 -0700 Message-Id: <20211104215846.58672-22-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 21/22] net/bnxt: check mismatch of control and physical port X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Kishore Padmanabha During the parsing of the ingress port ignore for a flow, added check to match the control port and the physical port that is configured to be ignored. If they do not match then the configuration to setup the svif ignore shall fail. Signed-off-by: Kishore Padmanabha Reviewed-by: Mike Baucom Reviewed-by: Shahaji Bhosle Acked-by: Ajit Khaparde --- drivers/net/bnxt/tf_ulp/ulp_port_db.c | 23 +++++++++++++++++++++++ drivers/net/bnxt/tf_ulp/ulp_port_db.h | 13 +++++++++++++ drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 12 ++++++++++++ 3 files changed, 48 insertions(+) diff --git a/drivers/net/bnxt/tf_ulp/ulp_port_db.c b/drivers/net/bnxt/tf_ulp/ulp_port_db.c index 5e7c1d1c17..f8ffb567b5 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_port_db.c +++ b/drivers/net/bnxt/tf_ulp/ulp_port_db.c @@ -679,3 +679,26 @@ ulp_port_db_parent_vnic_get(struct bnxt_ulp_context *ulp_ctxt, } return -EINVAL; } + +/* + * Api to get the phy port for a given port id. + * + * ulp_ctxt [in] Ptr to ulp context + * port_id [in] device port id + * phy_port [out] phy_port of the dpdk port_id + * + * Returns 0 on success or negative number on failure. + */ +int32_t +ulp_port_db_phy_port_get(struct bnxt_ulp_context *ulp_ctxt, + uint32_t port_id, uint16_t *phy_port) +{ + struct ulp_func_if_info *info; + + info = ulp_port_db_func_if_info_get(ulp_ctxt, port_id); + if (info) { + *phy_port = info->phy_port_id; + return 0; + } + return -EINVAL; +} diff --git a/drivers/net/bnxt/tf_ulp/ulp_port_db.h b/drivers/net/bnxt/tf_ulp/ulp_port_db.h index 740c186e12..b112f1a216 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_port_db.h +++ b/drivers/net/bnxt/tf_ulp/ulp_port_db.h @@ -314,4 +314,17 @@ int32_t ulp_port_db_parent_vnic_get(struct bnxt_ulp_context *ulp_ctxt, uint32_t port_id, uint8_t **vnic); +/* + * Api to get the phy port for a given port id. + * + * ulp_ctxt [in] Ptr to ulp context + * port_id [in] device port id + * phy_port [out] phy_port of the dpdk port_id + * + * Returns 0 on success or negative number on failure. + */ +int32_t +ulp_port_db_phy_port_get(struct bnxt_ulp_context *ulp_ctxt, + uint32_t port_id, uint16_t *phy_port); + #endif /* _ULP_PORT_DB_H_ */ diff --git a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c index 2ec3279239..f4274dd634 100644 --- a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c +++ b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c @@ -686,6 +686,18 @@ ulp_rte_phy_port_hdr_handler(const struct rte_flow_item *item, ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_SVIF_FLAG, rte_be_to_cpu_16(svif)); if (!mask) { + uint32_t port_id = 0; + uint16_t phy_port = 0; + + /* Validate the control port */ + port_id = ULP_COMP_FLD_IDX_RD(params, + BNXT_ULP_CF_IDX_DEV_PORT_ID); + if (ulp_port_db_phy_port_get(params->ulp_ctx, + port_id, &phy_port) || + (uint16_t)port_spec->index != phy_port) { + BNXT_TF_DBG(ERR, "Mismatch of control and phy_port\n"); + return BNXT_TF_RC_PARSE_ERR; + } ULP_BITMAP_SET(params->hdr_bitmap.bits, BNXT_ULP_HDR_BIT_SVIF_IGNORE); memset(hdr_field->mask, 0xFF, sizeof(mask)); From patchwork Thu Nov 4 21:58:46 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ajit Khaparde X-Patchwork-Id: 103808 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id 7751DA0C5E; Thu, 4 Nov 2021 23:01:32 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2458A42823; Thu, 4 Nov 2021 22:59:28 +0100 (CET) Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) by mails.dpdk.org (Postfix) with ESMTP id 1B791427B0 for ; Thu, 4 Nov 2021 22:59:23 +0100 (CET) Received: by mail-pl1-f182.google.com with SMTP id b13so9600235plg.2 for ; Thu, 04 Nov 2021 14:59:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version; bh=zs9HbDebpuyWbi8/dEAwr/vdnVDPmvVR57J1hZLT0y0=; b=KVG/s8deuqJ7vOJy6TRkQGq1Y4KWFGJPx5zMWKtTlsfMh1Oxpy54JgK0fme2a2JZZR N28J+JqKefmvt86VL9pYqJ/jvw3WjtRCE+xa/ow+3CaM6NwF+Nczp9JZHA4+b29jA4WB ujZyur1CzQ6oQlfHddE4PKEj4leY26QAFesrE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version; bh=zs9HbDebpuyWbi8/dEAwr/vdnVDPmvVR57J1hZLT0y0=; b=Ey+Fuie7OoCaKKKpHOjYXzjJNE4MrRIcqrz59Wt3TdGvC/G0fFWAvCCh9PZrIbV8jE HQpnaJvg6fgDayVjdOC8ezwDFPiVE8BAxsjtpBJMdPESWr8elTzAZLzJFMTxYx9W8AF7 3SEE2KwBbZI+TlIm368pZJDPWcIZl1HR52ygH+triwRanuRPs0Q3tGmp+DvvC4iUC4j2 huKHyreAs16rfc7NKPaqDQnLF+JDLXAVsePA73vDB0zB1x6fy1aG7Pr5GmPgoDykz97X KK1qfEH3nkipr5mMMI/x5tNKMyrH0hkf44bCVpQDUxmIYYVynfKIPIfgsU6peN/LuR38 zYWw== X-Gm-Message-State: AOAM532kKclIze3istZxYWXZKg8RLj04/jN8O5k7BgDeu+YunEsx4FWs BYzBs1hgJEJCGySxoONlcTh90jgFzxnpyYAb0jsgm+9p1/ROL541nc/JIIDbgTuXqZenpTkq+aA jjhDXDPJO7Fo8FfG1Dj94FYbyS2g2wnapHAUM1TvYjgop+PmdqHvy03ikcng15G0= X-Google-Smtp-Source: ABdhPJzEHd56Tldjmk921Y1FwUUwfMcTrDnol+q+EuqkAlYMQ5gVlGutuOv8t5W7mfzAFRvUp/aZHA== X-Received: by 2002:a17:902:ce8c:b0:141:d411:7e25 with SMTP id f12-20020a170902ce8c00b00141d4117e25mr33050465plg.85.1636063162023; Thu, 04 Nov 2021 14:59:22 -0700 (PDT) Received: from C02GC2QQMD6T.wifi.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id pg5sm8532242pjb.26.2021.11.04.14.59.20 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 04 Nov 2021 14:59:20 -0700 (PDT) From: Ajit Khaparde To: dev@dpdk.org Cc: Jay Ding , Steve Rempe , Farah Smith Date: Thu, 4 Nov 2021 14:58:46 -0700 Message-Id: <20211104215846.58672-23-ajit.khaparde@broadcom.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) In-Reply-To: <20211104215846.58672-1-ajit.khaparde@broadcom.com> References: <20211103005251.25524-1-ajit.khaparde@broadcom.com> <20211104215846.58672-1-ajit.khaparde@broadcom.com> MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [dpdk-dev] [PATCH v5 22/22] net/bnxt: use enum for bank ID X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Jay Ding Instead of integer, using enum tf_sram_bank_id for bank id in tf_set_sram_policy_parms. Add index check against the allocation of the meter instance for meter drop count because there is no reason to access it if the corresponding meter entry is not allocated. Signed-off-by: Jay Ding Reviewed-by: Steve Rempe Reviewed-by: Farah Smith Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/tf_core/tf_core.h | 4 +- drivers/net/bnxt/tf_core/tf_device.h | 4 +- drivers/net/bnxt/tf_core/tf_device_p58.c | 10 ++-- drivers/net/bnxt/tf_core/tf_tbl.c | 75 ++++++++++++------------ 4 files changed, 47 insertions(+), 46 deletions(-) diff --git a/drivers/net/bnxt/tf_core/tf_core.h b/drivers/net/bnxt/tf_core/tf_core.h index b2886355fa..f891d7a48f 100644 --- a/drivers/net/bnxt/tf_core/tf_core.h +++ b/drivers/net/bnxt/tf_core/tf_core.h @@ -2520,7 +2520,7 @@ struct tf_set_sram_policy_parms { /** * [in] Array of Bank id for each truflow tbl type */ - uint8_t *bank_id; + enum tf_sram_bank_id bank_id[TF_TBL_TYPE_ACT_MODIFY_64B + 1]; }; /** @@ -2552,7 +2552,7 @@ struct tf_get_sram_policy_parms { /** * [out] Array of Bank id for each truflow tbl type */ - uint8_t bank_id[TF_TBL_TYPE_ACT_MODIFY_64B + 1]; + enum tf_sram_bank_id bank_id[TF_TBL_TYPE_ACT_MODIFY_64B + 1]; }; /** diff --git a/drivers/net/bnxt/tf_core/tf_device.h b/drivers/net/bnxt/tf_core/tf_device.h index 3d5de988c4..bfb5de4370 100644 --- a/drivers/net/bnxt/tf_core/tf_device.h +++ b/drivers/net/bnxt/tf_core/tf_device.h @@ -1116,7 +1116,7 @@ struct tf_dev_ops { * - (-EINVAL) on failure. */ int (*tf_dev_set_sram_policy)(enum tf_dir dir, - uint8_t *bank_id); + enum tf_sram_bank_id *bank_id); /** * Device specific function that gets the sram policy @@ -1132,7 +1132,7 @@ struct tf_dev_ops { * - (-EINVAL) on failure. */ int (*tf_dev_get_sram_policy)(enum tf_dir dir, - uint8_t *bank_id); + enum tf_sram_bank_id *bank_id); }; /** diff --git a/drivers/net/bnxt/tf_core/tf_device_p58.c b/drivers/net/bnxt/tf_core/tf_device_p58.c index 3c1c3a2de1..30c0af7eef 100644 --- a/drivers/net/bnxt/tf_core/tf_device_p58.c +++ b/drivers/net/bnxt/tf_core/tf_device_p58.c @@ -673,7 +673,7 @@ static int tf_dev_p58_get_sram_resources(void *q, return 0; } -int sram_bank_hcapi_type[] = { +static int sram_bank_hcapi_type[] = { CFA_RESOURCE_TYPE_P58_SRAM_BANK_0, CFA_RESOURCE_TYPE_P58_SRAM_BANK_1, CFA_RESOURCE_TYPE_P58_SRAM_BANK_2, @@ -694,15 +694,15 @@ int sram_bank_hcapi_type[] = { * - (-EINVAL) on failure. */ static int tf_dev_p58_set_sram_policy(enum tf_dir dir, - uint8_t *bank_id) + enum tf_sram_bank_id *bank_id) { struct tf_rm_element_cfg *rm_cfg = tf_tbl_p58[dir]; uint8_t type; uint8_t parent[TF_SRAM_BANK_ID_MAX] = { 0xFF, 0xFF, 0xFF, 0xFF }; for (type = TF_TBL_TYPE_FULL_ACT_RECORD; - type < TF_TBL_TYPE_ACT_MODIFY_64B + 1; type++) { - if (bank_id[type] > 3) + type <= TF_TBL_TYPE_ACT_MODIFY_64B; type++) { + if (bank_id[type] >= TF_SRAM_BANK_ID_MAX) return -EINVAL; rm_cfg[type].hcapi_type = sram_bank_hcapi_type[bank_id[type]]; @@ -735,7 +735,7 @@ static int tf_dev_p58_set_sram_policy(enum tf_dir dir, * - (-EINVAL) on failure. */ static int tf_dev_p58_get_sram_policy(enum tf_dir dir, - uint8_t *bank_id) + enum tf_sram_bank_id *bank_id) { struct tf_rm_element_cfg *rm_cfg = tf_tbl_p58[dir]; uint8_t type; diff --git a/drivers/net/bnxt/tf_core/tf_tbl.c b/drivers/net/bnxt/tf_core/tf_tbl.c index 3fb22b52ac..f18e4ba346 100644 --- a/drivers/net/bnxt/tf_core/tf_tbl.c +++ b/drivers/net/bnxt/tf_core/tf_tbl.c @@ -307,28 +307,28 @@ tf_tbl_set(struct tf *tfp, } tbl_db = (struct tbl_rm_db *)tbl_db_ptr; - - /* Do not check meter drop counter because it is not allocated - * resources + /* Verify that the entry has been previously allocated. + * for meter drop counter, check the corresponding meter + * entry */ - if (parms->type != TF_TBL_TYPE_METER_DROP_CNT) { - /* Verify that the entry has been previously allocated */ - aparms.rm_db = tbl_db->tbl_db[parms->dir]; + aparms.rm_db = tbl_db->tbl_db[parms->dir]; + if (parms->type != TF_TBL_TYPE_METER_DROP_CNT) aparms.subtype = parms->type; - aparms.allocated = &allocated; - aparms.index = parms->idx; - rc = tf_rm_is_allocated(&aparms); - if (rc) - return rc; + else + aparms.subtype = TF_TBL_TYPE_METER_INST; + aparms.allocated = &allocated; + aparms.index = parms->idx; + rc = tf_rm_is_allocated(&aparms); + if (rc) + return rc; - if (allocated != TF_RM_ALLOCATED_ENTRY_IN_USE) { - TFP_DRV_LOG(ERR, - "%s, Invalid or not allocated, type:%s, idx:%d\n", - tf_dir_2_str(parms->dir), - tf_tbl_type_2_str(parms->type), - parms->idx); - return -EINVAL; - } + if (allocated != TF_RM_ALLOCATED_ENTRY_IN_USE) { + TFP_DRV_LOG(ERR, + "%s, Invalid or not allocated, type:%s, idx:%d\n", + tf_dir_2_str(parms->dir), + tf_tbl_type_2_str(parms->type), + parms->idx); + return -EINVAL; } /* Set the entry */ @@ -398,27 +398,28 @@ tf_tbl_get(struct tf *tfp, } tbl_db = (struct tbl_rm_db *)tbl_db_ptr; - /* Do not check meter drop counter because it is not allocated - * resources. + /* Verify that the entry has been previously allocated. + * for meter drop counter, check the corresponding meter + * entry */ - if (parms->type != TF_TBL_TYPE_METER_DROP_CNT) { - /* Verify that the entry has been previously allocated */ - aparms.rm_db = tbl_db->tbl_db[parms->dir]; + aparms.rm_db = tbl_db->tbl_db[parms->dir]; + if (parms->type != TF_TBL_TYPE_METER_DROP_CNT) aparms.subtype = parms->type; - aparms.index = parms->idx; - aparms.allocated = &allocated; - rc = tf_rm_is_allocated(&aparms); - if (rc) - return rc; + else + aparms.subtype = TF_TBL_TYPE_METER_INST; + aparms.index = parms->idx; + aparms.allocated = &allocated; + rc = tf_rm_is_allocated(&aparms); + if (rc) + return rc; - if (allocated != TF_RM_ALLOCATED_ENTRY_IN_USE) { - TFP_DRV_LOG(ERR, - "%s, Invalid or not allocated index, type:%s, idx:%d\n", - tf_dir_2_str(parms->dir), - tf_tbl_type_2_str(parms->type), - parms->idx); - return -EINVAL; - } + if (allocated != TF_RM_ALLOCATED_ENTRY_IN_USE) { + TFP_DRV_LOG(ERR, + "%s, Invalid or not allocated index, type:%s, idx:%d\n", + tf_dir_2_str(parms->dir), + tf_tbl_type_2_str(parms->type), + parms->idx); + return -EINVAL; } /* Set the entry */