/***************************************************************************
 *     Copyright (c) 1999-2013, Broadcom Corporation
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 *
 * Module Description:
 *                     DO NOT EDIT THIS FILE DIRECTLY
 *
 * This module was generated magically with RDB from a source description
 * file. You must edit the source file for changes to be made to this file.
 *
 *
 * Date:           Generated on         Wed May  8 03:09:21 2013
 *                 MD5 Checksum         d41d8cd98f00b204e9800998ecf8427e
 *
 * Compiled with:  RDB Utility          combo_header.pl
 *                 RDB Parser           3.0
 *                 unknown              unknown
 *                 Perl Interpreter     5.008008
 *                 Operating System     linux
 *
 * Revision History:
 *
 * $brcm_Log: $
 *
 ***************************************************************************/

#ifndef BCHP_SWITCH_ACB_H__
#define BCHP_SWITCH_ACB_H__

/***************************************************************************
 *SWITCH_ACB
 ***************************************************************************/
#define BCHP_SWITCH_ACB_ACB_CONTROL              0x04e40600 /* ACB Control Register */
#define BCHP_SWITCH_ACB_ACB_XON_THRESHOLD_CONFIGURATION 0x04e40604 /* ACB XON Threshold Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION 0x04e40608 /* ACB Queue 0 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION 0x04e4060c /* ACB Queue 1 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION 0x04e40610 /* ACB Queue 2 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION 0x04e40614 /* ACB Queue 3 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION 0x04e40618 /* ACB Queue 4 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION 0x04e4061c /* ACB Queue 5 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION 0x04e40620 /* ACB Queue 6 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION 0x04e40624 /* ACB Queue 7 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION 0x04e40628 /* ACB Queue 8 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION 0x04e4062c /* ACB Queue 9 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION 0x04e40630 /* ACB Queue 10 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION 0x04e40634 /* ACB Queue 11 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION 0x04e40638 /* ACB Queue 12 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION 0x04e4063c /* ACB Queue 13 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION 0x04e40640 /* ACB Queue 14 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION 0x04e40644 /* ACB Queue 15 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION 0x04e40648 /* ACB Queue 16 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION 0x04e4064c /* ACB Queue 17 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION 0x04e40650 /* ACB Queue 18 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION 0x04e40654 /* ACB Queue 19 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION 0x04e40658 /* ACB Queue 20 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION 0x04e4065c /* ACB Queue 21 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION 0x04e40660 /* ACB Queue 22 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION 0x04e40664 /* ACB Queue 23 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION 0x04e40668 /* ACB Queue 24 Configuration Register6 */
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION 0x04e4066c /* ACB Queue 25 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION 0x04e40670 /* ACB Queue 26 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION 0x04e40674 /* ACB Queue 27 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION 0x04e40678 /* ACB Queue 28 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION 0x04e4067c /* ACB Queue 29 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION 0x04e40680 /* ACB Queue 30 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION 0x04e40684 /* ACB Queue 31 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION 0x04e40688 /* ACB Queue 32 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION 0x04e4068c /* ACB Queue 33 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION 0x04e40690 /* ACB Queue 34 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION 0x04e40694 /* ACB Queue 35 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION 0x04e40698 /* ACB Queue 36 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION 0x04e4069c /* ACB Queue 37 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION 0x04e406a0 /* ACB Queue 38 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION 0x04e406a4 /* ACB Queue 39 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION 0x04e406a8 /* ACB Queue 40 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION 0x04e406ac /* ACB Queue 41 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION 0x04e406b0 /* ACB Queue 42 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION 0x04e406b4 /* ACB Queue 43 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION 0x04e406b8 /* ACB Queue 44 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION 0x04e406bc /* ACB Queue 45 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION 0x04e406c0 /* ACB Queue 46 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION 0x04e406c4 /* ACB Queue 47 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION 0x04e406c8 /* ACB Queue 48 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION 0x04e406cc /* ACB Queue 49 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION 0x04e406d0 /* ACB Queue 50 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION 0x04e406d4 /* ACB Queue 51 Configuration Register6 */
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION 0x04e406d8 /* ACB Queue 52 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION 0x04e406dc /* ACB Queue 53 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION 0x04e406e0 /* ACB Queue 54 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION 0x04e406e4 /* ACB Queue 55 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION 0x04e406e8 /* ACB Queue 56 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION 0x04e406ec /* ACB Queue 57 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION 0x04e406f0 /* ACB Queue 58 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION 0x04e406f4 /* ACB Queue 59 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION 0x04e406f8 /* ACB Queue 60 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION 0x04e406fc /* ACB Queue 61 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION 0x04e40700 /* ACB Queue 62 Configuration Register */
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION 0x04e40704 /* ACB Queue 63 Configuration Register */

/***************************************************************************
 *ACB_CONTROL - ACB Control Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_CONTROL :: reserved0 [31:01] */
#define BCHP_SWITCH_ACB_ACB_CONTROL_reserved0_MASK                 0xfffffffe
#define BCHP_SWITCH_ACB_ACB_CONTROL_reserved0_SHIFT                1

/* SWITCH_ACB :: ACB_CONTROL :: acb_en [00:00] */
#define BCHP_SWITCH_ACB_ACB_CONTROL_acb_en_MASK                    0x00000001
#define BCHP_SWITCH_ACB_ACB_CONTROL_acb_en_SHIFT                   0
#define BCHP_SWITCH_ACB_ACB_CONTROL_acb_en_DEFAULT                 0x00000000

/***************************************************************************
 *ACB_XON_THRESHOLD_CONFIGURATION - ACB XON Threshold Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_XON_THRESHOLD_CONFIGURATION :: reserved0 [31:22] */
#define BCHP_SWITCH_ACB_ACB_XON_THRESHOLD_CONFIGURATION_reserved0_MASK 0xffc00000
#define BCHP_SWITCH_ACB_ACB_XON_THRESHOLD_CONFIGURATION_reserved0_SHIFT 22

/* SWITCH_ACB :: ACB_XON_THRESHOLD_CONFIGURATION :: total_xon_hyst [21:11] */
#define BCHP_SWITCH_ACB_ACB_XON_THRESHOLD_CONFIGURATION_total_xon_hyst_MASK 0x003ff800
#define BCHP_SWITCH_ACB_ACB_XON_THRESHOLD_CONFIGURATION_total_xon_hyst_SHIFT 11
#define BCHP_SWITCH_ACB_ACB_XON_THRESHOLD_CONFIGURATION_total_xon_hyst_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_XON_THRESHOLD_CONFIGURATION :: queue_xon_hyst [10:00] */
#define BCHP_SWITCH_ACB_ACB_XON_THRESHOLD_CONFIGURATION_queue_xon_hyst_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_XON_THRESHOLD_CONFIGURATION_queue_xon_hyst_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_XON_THRESHOLD_CONFIGURATION_queue_xon_hyst_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_0_CONFIGURATION - ACB Queue 0 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_0_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_0_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_0_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_0_CONFIGURATION :: input_is_acb_queue_0_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_input_is_acb_queue_0_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_input_is_acb_queue_0_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_input_is_acb_queue_0_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_0_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_0_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_0_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_0_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_xon_en_MASK      0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_xon_en_SHIFT     11
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_xon_en_DEFAULT   0x00000000

/* SWITCH_ACB :: ACB_QUEUE_0_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_0_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_1_CONFIGURATION - ACB Queue 1 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_1_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_1_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_1_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_1_CONFIGURATION :: input_is_acb_queue_1_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_input_is_acb_queue_1_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_input_is_acb_queue_1_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_input_is_acb_queue_1_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_1_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_1_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_1_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_1_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_xon_en_MASK      0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_xon_en_SHIFT     11
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_xon_en_DEFAULT   0x00000000

/* SWITCH_ACB :: ACB_QUEUE_1_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_1_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_2_CONFIGURATION - ACB Queue 2 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_2_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_2_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_2_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_2_CONFIGURATION :: input_is_acb_queue_2_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_input_is_acb_queue_2_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_input_is_acb_queue_2_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_input_is_acb_queue_2_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_2_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_2_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_2_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_2_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_xon_en_MASK      0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_xon_en_SHIFT     11
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_xon_en_DEFAULT   0x00000000

/* SWITCH_ACB :: ACB_QUEUE_2_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_2_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_3_CONFIGURATION - ACB Queue 3 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_3_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_3_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_3_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_3_CONFIGURATION :: input_is_acb_queue_3_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_input_is_acb_queue_3_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_input_is_acb_queue_3_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_input_is_acb_queue_3_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_3_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_3_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_3_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_3_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_xon_en_MASK      0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_xon_en_SHIFT     11
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_xon_en_DEFAULT   0x00000000

/* SWITCH_ACB :: ACB_QUEUE_3_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_3_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_4_CONFIGURATION - ACB Queue 4 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_4_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_4_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_4_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_4_CONFIGURATION :: input_is_acb_queue_4_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_input_is_acb_queue_4_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_input_is_acb_queue_4_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_input_is_acb_queue_4_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_4_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_4_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_4_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_4_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_xon_en_MASK      0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_xon_en_SHIFT     11
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_xon_en_DEFAULT   0x00000000

/* SWITCH_ACB :: ACB_QUEUE_4_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_4_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_5_CONFIGURATION - ACB Queue 5 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_5_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_5_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_5_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_5_CONFIGURATION :: input_is_acb_queue_5_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_input_is_acb_queue_5_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_input_is_acb_queue_5_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_input_is_acb_queue_5_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_5_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_5_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_5_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_5_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_xon_en_MASK      0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_xon_en_SHIFT     11
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_xon_en_DEFAULT   0x00000000

/* SWITCH_ACB :: ACB_QUEUE_5_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_5_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_6_CONFIGURATION - ACB Queue 6 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_6_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_6_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_6_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_6_CONFIGURATION :: input_is_acb_queue_6_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_input_is_acb_queue_6_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_input_is_acb_queue_6_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_input_is_acb_queue_6_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_6_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_6_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_6_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_6_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_xon_en_MASK      0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_xon_en_SHIFT     11
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_xon_en_DEFAULT   0x00000000

/* SWITCH_ACB :: ACB_QUEUE_6_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_6_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_7_CONFIGURATION - ACB Queue 7 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_7_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_7_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_7_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_7_CONFIGURATION :: input_is_acb_queue_7_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_input_is_acb_queue_7_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_input_is_acb_queue_7_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_input_is_acb_queue_7_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_7_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_7_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_7_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_7_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_xon_en_MASK      0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_xon_en_SHIFT     11
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_xon_en_DEFAULT   0x00000000

/* SWITCH_ACB :: ACB_QUEUE_7_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_7_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_8_CONFIGURATION - ACB Queue 8 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_8_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_8_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_8_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_8_CONFIGURATION :: input_is_acb_queue_8_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_input_is_acb_queue_8_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_input_is_acb_queue_8_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_input_is_acb_queue_8_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_8_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_8_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_8_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_8_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_xon_en_MASK      0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_xon_en_SHIFT     11
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_xon_en_DEFAULT   0x00000000

/* SWITCH_ACB :: ACB_QUEUE_8_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_8_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_9_CONFIGURATION - ACB Queue 9 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_9_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_9_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_9_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_9_CONFIGURATION :: input_is_acb_queue_9_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_input_is_acb_queue_9_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_input_is_acb_queue_9_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_input_is_acb_queue_9_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_9_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_9_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_9_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_9_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_xon_en_MASK      0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_xon_en_SHIFT     11
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_xon_en_DEFAULT   0x00000000

/* SWITCH_ACB :: ACB_QUEUE_9_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_9_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_10_CONFIGURATION - ACB Queue 10 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_10_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_10_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_10_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_10_CONFIGURATION :: input_is_acb_queue_10_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_input_is_acb_queue_10_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_input_is_acb_queue_10_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_input_is_acb_queue_10_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_10_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_10_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_10_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_10_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_10_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_10_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_11_CONFIGURATION - ACB Queue 11 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_11_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_11_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_11_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_11_CONFIGURATION :: input_is_acb_queue_11_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_input_is_acb_queue_11_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_input_is_acb_queue_11_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_input_is_acb_queue_11_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_11_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_11_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_11_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_11_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_11_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_11_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_12_CONFIGURATION - ACB Queue 12 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_12_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_12_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_12_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_12_CONFIGURATION :: input_is_acb_queue_12_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_input_is_acb_queue_12_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_input_is_acb_queue_12_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_input_is_acb_queue_12_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_12_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_12_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_12_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_12_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_12_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_12_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_13_CONFIGURATION - ACB Queue 13 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_13_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_13_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_13_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_13_CONFIGURATION :: input_is_acb_queue_13_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_input_is_acb_queue_13_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_input_is_acb_queue_13_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_input_is_acb_queue_13_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_13_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_13_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_13_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_13_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_13_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_13_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_14_CONFIGURATION - ACB Queue 14 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_14_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_14_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_14_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_14_CONFIGURATION :: input_is_acb_queue_14_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_input_is_acb_queue_14_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_input_is_acb_queue_14_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_input_is_acb_queue_14_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_14_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_14_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_14_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_14_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_14_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_14_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_15_CONFIGURATION - ACB Queue 15 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_15_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_15_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_15_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_15_CONFIGURATION :: input_is_acb_queue_15_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_input_is_acb_queue_15_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_input_is_acb_queue_15_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_input_is_acb_queue_15_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_15_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_15_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_15_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_15_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_15_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_15_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_16_CONFIGURATION - ACB Queue 16 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_16_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_16_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_16_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_16_CONFIGURATION :: input_is_acb_queue_16_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_input_is_acb_queue_16_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_input_is_acb_queue_16_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_input_is_acb_queue_16_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_16_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_16_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_16_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_16_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_16_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_16_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_17_CONFIGURATION - ACB Queue 17 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_17_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_17_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_17_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_17_CONFIGURATION :: input_is_acb_queue_17_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_input_is_acb_queue_17_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_input_is_acb_queue_17_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_input_is_acb_queue_17_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_17_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_17_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_17_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_17_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_17_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_17_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_18_CONFIGURATION - ACB Queue 18 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_18_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_18_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_18_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_18_CONFIGURATION :: input_is_acb_queue_18_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_input_is_acb_queue_18_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_input_is_acb_queue_18_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_input_is_acb_queue_18_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_18_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_18_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_18_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_18_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_18_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_18_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_19_CONFIGURATION - ACB Queue 19 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_19_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_19_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_19_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_19_CONFIGURATION :: input_is_acb_queue_19_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_input_is_acb_queue_19_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_input_is_acb_queue_19_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_input_is_acb_queue_19_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_19_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_19_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_19_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_19_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_19_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_19_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_20_CONFIGURATION - ACB Queue 20 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_20_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_20_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_20_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_20_CONFIGURATION :: input_is_acb_queue_20_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_input_is_acb_queue_20_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_input_is_acb_queue_20_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_input_is_acb_queue_20_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_20_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_20_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_20_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_20_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_20_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_20_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_21_CONFIGURATION - ACB Queue 21 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_21_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_21_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_21_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_21_CONFIGURATION :: input_is_acb_queue_21_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_input_is_acb_queue_21_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_input_is_acb_queue_21_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_input_is_acb_queue_21_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_21_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_21_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_21_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_21_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_21_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_21_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_22_CONFIGURATION - ACB Queue 22 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_22_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_22_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_22_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_22_CONFIGURATION :: input_is_acb_queue_22_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_input_is_acb_queue_22_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_input_is_acb_queue_22_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_input_is_acb_queue_22_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_22_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_22_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_22_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_22_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_22_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_22_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_23_CONFIGURATION - ACB Queue 23 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_23_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_23_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_23_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_23_CONFIGURATION :: input_is_acb_queue_23_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_input_is_acb_queue_23_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_input_is_acb_queue_23_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_input_is_acb_queue_23_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_23_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_23_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_23_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_23_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_23_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_23_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_24_CONFIGURATION - ACB Queue 24 Configuration Register6
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_24_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_24_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_24_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_24_CONFIGURATION :: input_is_acb_queue_24_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_input_is_acb_queue_24_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_input_is_acb_queue_24_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_input_is_acb_queue_24_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_24_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_24_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_24_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_24_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_24_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_24_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_25_CONFIGURATION - ACB Queue 25 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_25_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_25_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_25_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_25_CONFIGURATION :: input_is_acb_queue_25_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_input_is_acb_queue_25_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_input_is_acb_queue_25_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_input_is_acb_queue_25_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_25_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_25_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_25_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_25_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_25_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_25_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_26_CONFIGURATION - ACB Queue 26 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_26_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_26_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_26_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_26_CONFIGURATION :: input_is_acb_queue_26_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_input_is_acb_queue_26_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_input_is_acb_queue_26_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_input_is_acb_queue_26_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_26_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_26_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_26_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_26_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_26_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_26_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_27_CONFIGURATION - ACB Queue 27 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_27_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_27_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_27_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_27_CONFIGURATION :: input_is_acb_queue_27_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_input_is_acb_queue_27_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_input_is_acb_queue_27_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_input_is_acb_queue_27_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_27_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_27_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_27_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_27_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_27_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_27_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_28_CONFIGURATION - ACB Queue 28 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_28_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_28_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_28_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_28_CONFIGURATION :: input_is_acb_queue_28_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_input_is_acb_queue_28_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_input_is_acb_queue_28_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_input_is_acb_queue_28_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_28_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_28_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_28_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_28_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_28_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_28_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_29_CONFIGURATION - ACB Queue 29 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_29_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_29_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_29_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_29_CONFIGURATION :: input_is_acb_queue_29_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_input_is_acb_queue_29_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_input_is_acb_queue_29_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_input_is_acb_queue_29_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_29_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_29_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_29_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_29_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_29_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_29_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_30_CONFIGURATION - ACB Queue 30 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_30_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_30_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_30_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_30_CONFIGURATION :: input_is_acb_queue_30_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_input_is_acb_queue_30_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_input_is_acb_queue_30_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_input_is_acb_queue_30_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_30_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_30_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_30_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_30_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_30_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_30_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_31_CONFIGURATION - ACB Queue 31 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_31_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_31_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_31_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_31_CONFIGURATION :: input_is_acb_queue_31_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_input_is_acb_queue_31_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_input_is_acb_queue_31_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_input_is_acb_queue_31_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_31_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_31_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_31_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_31_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_31_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_31_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_32_CONFIGURATION - ACB Queue 32 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_32_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_32_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_32_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_32_CONFIGURATION :: input_is_acb_queue_32_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_input_is_acb_queue_32_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_input_is_acb_queue_32_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_input_is_acb_queue_32_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_32_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_32_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_32_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_32_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_32_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_32_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_33_CONFIGURATION - ACB Queue 33 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_33_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_33_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_33_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_33_CONFIGURATION :: input_is_acb_queue_33_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_input_is_acb_queue_33_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_input_is_acb_queue_33_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_input_is_acb_queue_33_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_33_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_33_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_33_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_33_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_33_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_33_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_34_CONFIGURATION - ACB Queue 34 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_34_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_34_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_34_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_34_CONFIGURATION :: input_is_acb_queue_34_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_input_is_acb_queue_34_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_input_is_acb_queue_34_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_input_is_acb_queue_34_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_34_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_34_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_34_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_34_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_34_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_34_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_35_CONFIGURATION - ACB Queue 35 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_35_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_35_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_35_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_35_CONFIGURATION :: input_is_acb_queue_35_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_input_is_acb_queue_35_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_input_is_acb_queue_35_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_input_is_acb_queue_35_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_35_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_35_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_35_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_35_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_35_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_35_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_36_CONFIGURATION - ACB Queue 36 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_36_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_36_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_36_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_36_CONFIGURATION :: input_is_acb_queue_36_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_input_is_acb_queue_36_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_input_is_acb_queue_36_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_input_is_acb_queue_36_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_36_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_36_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_36_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_36_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_36_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_36_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_37_CONFIGURATION - ACB Queue 37 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_37_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_37_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_37_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_37_CONFIGURATION :: input_is_acb_queue_37_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_input_is_acb_queue_37_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_input_is_acb_queue_37_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_input_is_acb_queue_37_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_37_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_37_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_37_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_37_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_37_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_37_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_38_CONFIGURATION - ACB Queue 38 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_38_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_38_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_38_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_38_CONFIGURATION :: input_is_acb_queue_38_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_input_is_acb_queue_38_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_input_is_acb_queue_38_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_input_is_acb_queue_38_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_38_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_38_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_38_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_38_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_38_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_38_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_39_CONFIGURATION - ACB Queue 39 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_39_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_39_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_39_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_39_CONFIGURATION :: input_is_acb_queue_39_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_input_is_acb_queue_39_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_input_is_acb_queue_39_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_input_is_acb_queue_39_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_39_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_39_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_39_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_39_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_39_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_39_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_40_CONFIGURATION - ACB Queue 40 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_40_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_40_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_40_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_40_CONFIGURATION :: input_is_acb_queue_40_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_input_is_acb_queue_40_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_input_is_acb_queue_40_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_input_is_acb_queue_40_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_40_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_40_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_40_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_40_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_40_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_40_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_41_CONFIGURATION - ACB Queue 41 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_41_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_41_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_41_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_41_CONFIGURATION :: input_is_acb_queue_41_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_input_is_acb_queue_41_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_input_is_acb_queue_41_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_input_is_acb_queue_41_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_41_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_41_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_41_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_41_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_41_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_41_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_42_CONFIGURATION - ACB Queue 42 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_42_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_42_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_42_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_42_CONFIGURATION :: input_is_acb_queue_42_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_input_is_acb_queue_42_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_input_is_acb_queue_42_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_input_is_acb_queue_42_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_42_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_42_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_42_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_42_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_42_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_42_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_43_CONFIGURATION - ACB Queue 43 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_43_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_43_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_43_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_43_CONFIGURATION :: input_is_acb_queue_43_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_input_is_acb_queue_43_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_input_is_acb_queue_43_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_input_is_acb_queue_43_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_43_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_43_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_43_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_43_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_43_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_43_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_44_CONFIGURATION - ACB Queue 44 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_44_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_44_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_44_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_44_CONFIGURATION :: input_is_acb_queue_44_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_input_is_acb_queue_44_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_input_is_acb_queue_44_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_input_is_acb_queue_44_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_44_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_44_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_44_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_44_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_44_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_44_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_45_CONFIGURATION - ACB Queue 45 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_45_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_45_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_45_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_45_CONFIGURATION :: input_is_acb_queue_45_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_input_is_acb_queue_45_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_input_is_acb_queue_45_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_input_is_acb_queue_45_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_45_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_45_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_45_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_45_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_45_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_45_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_46_CONFIGURATION - ACB Queue 46 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_46_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_46_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_46_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_46_CONFIGURATION :: input_is_acb_queue_46_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_input_is_acb_queue_46_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_input_is_acb_queue_46_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_input_is_acb_queue_46_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_46_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_46_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_46_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_46_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_46_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_46_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_47_CONFIGURATION - ACB Queue 47 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_47_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_47_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_47_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_47_CONFIGURATION :: input_is_acb_queue_47_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_input_is_acb_queue_47_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_input_is_acb_queue_47_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_input_is_acb_queue_47_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_47_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_47_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_47_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_47_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_47_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_47_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_48_CONFIGURATION - ACB Queue 48 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_48_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_48_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_48_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_48_CONFIGURATION :: input_is_acb_queue_48_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_input_is_acb_queue_48_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_input_is_acb_queue_48_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_input_is_acb_queue_48_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_48_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_48_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_48_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_48_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_48_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_48_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_49_CONFIGURATION - ACB Queue 49 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_49_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_49_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_49_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_49_CONFIGURATION :: input_is_acb_queue_49_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_input_is_acb_queue_49_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_input_is_acb_queue_49_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_input_is_acb_queue_49_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_49_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_49_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_49_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_49_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_49_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_49_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_50_CONFIGURATION - ACB Queue 50 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_50_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_50_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_50_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_50_CONFIGURATION :: input_is_acb_queue_50_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_input_is_acb_queue_50_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_input_is_acb_queue_50_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_input_is_acb_queue_50_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_50_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_50_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_50_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_50_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_50_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_50_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_51_CONFIGURATION - ACB Queue 51 Configuration Register6
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_51_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_51_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_51_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_51_CONFIGURATION :: input_is_acb_queue_51_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_input_is_acb_queue_51_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_input_is_acb_queue_51_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_input_is_acb_queue_51_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_51_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_51_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_51_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_51_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_51_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_51_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_52_CONFIGURATION - ACB Queue 52 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_52_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_52_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_52_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_52_CONFIGURATION :: input_is_acb_queue_52_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_input_is_acb_queue_52_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_input_is_acb_queue_52_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_input_is_acb_queue_52_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_52_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_52_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_52_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_52_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_52_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_52_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_53_CONFIGURATION - ACB Queue 53 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_53_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_53_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_53_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_53_CONFIGURATION :: input_is_acb_queue_53_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_input_is_acb_queue_53_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_input_is_acb_queue_53_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_input_is_acb_queue_53_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_53_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_53_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_53_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_53_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_53_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_53_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_54_CONFIGURATION - ACB Queue 54 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_54_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_54_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_54_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_54_CONFIGURATION :: input_is_acb_queue_54_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_input_is_acb_queue_54_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_input_is_acb_queue_54_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_input_is_acb_queue_54_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_54_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_54_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_54_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_54_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_54_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_54_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_55_CONFIGURATION - ACB Queue 55 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_55_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_55_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_55_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_55_CONFIGURATION :: input_is_acb_queue_55_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_input_is_acb_queue_55_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_input_is_acb_queue_55_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_input_is_acb_queue_55_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_55_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_55_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_55_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_55_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_55_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_55_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_56_CONFIGURATION - ACB Queue 56 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_56_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_56_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_56_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_56_CONFIGURATION :: input_is_acb_queue_56_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_input_is_acb_queue_56_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_input_is_acb_queue_56_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_input_is_acb_queue_56_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_56_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_56_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_56_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_56_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_56_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_56_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_57_CONFIGURATION - ACB Queue 57 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_57_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_57_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_57_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_57_CONFIGURATION :: input_is_acb_queue_57_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_input_is_acb_queue_57_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_input_is_acb_queue_57_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_input_is_acb_queue_57_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_57_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_57_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_57_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_57_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_57_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_57_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_58_CONFIGURATION - ACB Queue 58 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_58_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_58_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_58_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_58_CONFIGURATION :: input_is_acb_queue_58_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_input_is_acb_queue_58_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_input_is_acb_queue_58_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_input_is_acb_queue_58_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_58_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_58_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_58_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_58_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_58_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_58_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_59_CONFIGURATION - ACB Queue 59 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_59_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_59_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_59_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_59_CONFIGURATION :: input_is_acb_queue_59_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_input_is_acb_queue_59_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_input_is_acb_queue_59_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_input_is_acb_queue_59_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_59_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_59_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_59_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_59_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_59_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_59_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_60_CONFIGURATION - ACB Queue 60 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_60_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_60_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_60_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_60_CONFIGURATION :: input_is_acb_queue_60_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_input_is_acb_queue_60_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_input_is_acb_queue_60_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_input_is_acb_queue_60_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_60_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_60_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_60_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_60_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_60_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_60_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_61_CONFIGURATION - ACB Queue 61 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_61_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_61_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_61_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_61_CONFIGURATION :: input_is_acb_queue_61_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_input_is_acb_queue_61_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_input_is_acb_queue_61_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_input_is_acb_queue_61_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_61_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_61_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_61_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_61_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_61_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_61_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_62_CONFIGURATION - ACB Queue 62 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_62_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_62_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_62_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_62_CONFIGURATION :: input_is_acb_queue_62_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_input_is_acb_queue_62_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_input_is_acb_queue_62_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_input_is_acb_queue_62_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_62_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_62_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_62_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_62_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_62_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_62_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

/***************************************************************************
 *ACB_QUEUE_63_CONFIGURATION - ACB Queue 63 Configuration Register
 ***************************************************************************/
/* SWITCH_ACB :: ACB_QUEUE_63_CONFIGURATION :: pessimistic_mode_en [31:31] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_pessimistic_mode_en_MASK 0x80000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_pessimistic_mode_en_SHIFT 31
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_pessimistic_mode_en_DEFAULT 0x00000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_pessimistic_mode_en_GISB 1
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_pessimistic_mode_en_PORT 0

/* union - case input_is_gisb [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_63_CONFIGURATION :: input_is_gisb :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_input_is_gisb_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_input_is_gisb_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_input_is_gisb_pktlen_DEFAULT 0x00000000

/* union - case input_is_acb_queue_63_configuration [30:25] */
/* SWITCH_ACB :: ACB_QUEUE_63_CONFIGURATION :: input_is_acb_queue_63_configuration :: pktlen [30:25] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_input_is_acb_queue_63_configuration_pktlen_MASK 0x7e000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_input_is_acb_queue_63_configuration_pktlen_SHIFT 25
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_input_is_acb_queue_63_configuration_pktlen_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_63_CONFIGURATION :: total_xon_en [24:24] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_total_xon_en_MASK 0x01000000
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_total_xon_en_SHIFT 24
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_total_xon_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_63_CONFIGURATION :: total_xoff_en [23:23] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_total_xoff_en_MASK 0x00800000
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_total_xoff_en_SHIFT 23
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_total_xoff_en_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_63_CONFIGURATION :: total_xoff_threshold [22:12] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_total_xoff_threshold_MASK 0x007ff000
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_total_xoff_threshold_SHIFT 12
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_total_xoff_threshold_DEFAULT 0x00000000

/* SWITCH_ACB :: ACB_QUEUE_63_CONFIGURATION :: xon_en [11:11] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_xon_en_MASK     0x00000800
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_xon_en_SHIFT    11
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_xon_en_DEFAULT  0x00000000

/* SWITCH_ACB :: ACB_QUEUE_63_CONFIGURATION :: xoff_threshold [10:00] */
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_xoff_threshold_MASK 0x000007ff
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_xoff_threshold_SHIFT 0
#define BCHP_SWITCH_ACB_ACB_QUEUE_63_CONFIGURATION_xoff_threshold_DEFAULT 0x00000000

#endif /* #ifndef BCHP_SWITCH_ACB_H__ */

/* End of File */
