openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

commit 5681683868cde4c1e73d29ea3a7e355bf79a3610
parent bd62cc197ccb0eaab525bbea58eabf7c313580fd
Author: Broadcom SDK Release <sdk.releases@broadcom.com>
Date:   Wed, 18 Nov 2020 16:05:46 -0800

SDK-234705: MplsLabel1ExpNew support for TD3 and TH3

Devices: 56870_A0
Module: field


Diffstat:
Msdk-6.5.16/src/bcm/esw/tomahawk/field.c | 10+++-------
Msdk-6.5.16/src/bcm/esw/trident2/field.c | 6++----
Msdk-6.5.16/src/bcm/esw/trx/field.c | 3---
3 files changed, 5 insertions(+), 14 deletions(-)

diff --git a/sdk-6.5.16/src/bcm/esw/tomahawk/field.c b/sdk-6.5.16/src/bcm/esw/tomahawk/field.c @@ -10064,12 +10064,10 @@ _field_th_stage_action_support_check(int unit, *result = (stage == _BCM_FIELD_STAGE_LOOKUP); return (BCM_E_NONE); case bcmFieldActionMplsLabel1ExpNew: -#if defined (BCM_TOMAHAWK2_SUPPORT) - if (SOC_IS_TOMAHAWK2(unit)) { + if (SOC_IS_TOMAHAWK2(unit) || + SOC_IS_TOMAHAWK3(unit) || SOC_IS_TRIDENT3X(unit)) { *result = (stage == _BCM_FIELD_STAGE_EGRESS); - } else -#endif - { + } else { *result = FALSE; } return BCM_E_NONE; @@ -11715,11 +11713,9 @@ _bcm_field_th_action_params_check(int unit, case bcmFieldActionLoopBackTypeNew: PolicyCheck(unit, mem, LB_TYPE_NEWf , fa->param[0]); return (BCM_E_NONE); -#if defined(BCM_TOMAHAWK2_SUPPORT) case bcmFieldActionMplsLabel1ExpNew: PolicyCheck(unit, mem, EXPf, fa->param[0]); return (BCM_E_NONE); -#endif case bcmFieldActionLatencyMonitorEnable: PolicyCheck(unit, mem, LAT_MON_ENf, fa->param[0]); return (BCM_E_NONE); diff --git a/sdk-6.5.16/src/bcm/esw/trident2/field.c b/sdk-6.5.16/src/bcm/esw/trident2/field.c @@ -10642,17 +10642,15 @@ _bcm_field_td2_action_get(int unit, } break; #endif -#if defined(BCM_TOMAHAWK2_SUPPORT) case bcmFieldActionMplsLabel1ExpNew: - if (SOC_IS_TOMAHAWK2(unit) && - (f_ent->group->stage_id == _BCM_FIELD_STAGE_EGRESS)) { + if ((SOC_MEM_FIELD_VALID(unit, mem, CHANGE_EXPf)) + && (SOC_MEM_FIELD_VALID(unit, mem, EXPf))) { PolicySet(unit, mem, buf, CHANGE_EXPf, 0x1); PolicySet(unit, mem, buf, EXPf, fa->param[0]); } else { return (BCM_E_UNAVAIL); } break; -#endif default: return (BCM_E_UNAVAIL); } diff --git a/sdk-6.5.16/src/bcm/esw/trx/field.c b/sdk-6.5.16/src/bcm/esw/trx/field.c @@ -27467,8 +27467,6 @@ _field_tr2_actions_recover(int unit, } break; #endif /* BCM_GREYHOUND2_SUPPORT */ - -#if defined BCM_TOMAHAWK2_SUPPORT case CHANGE_EXPf: append = 0; if (fldval) { @@ -27477,7 +27475,6 @@ _field_tr2_actions_recover(int unit, append = 1; } break; -#endif /* BCM_TOMAHAWK2_SUPPORT */ #if defined(BCM_TSN_SR_SUPPORT) case DROP_SR_FRAMEf: if (fldval) {