/***************************************************************************
 *     Copyright (c) 1999-2009, 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 Nov 18 01:12:34 2009
 *                 MD5 Checksum         8e4822e2d8c445f841e653dc06da5e41
 *
 * Compiled with:  RDB Utility          combo_header.pl
 *                 RDB Parser           3.0
 *                 unknown              unknown
 *                 Perl Interpreter     5.008008
 *                 Operating System     linux
 *
 * Revision History:
 *
 * $brcm_Log: /magnum/basemodules/chp/7340/rdb/b0/bchp_usb_ctrl.h $
 * 
 * Hydra_Software_Devel/1   11/18/09 10:36a albertl
 * SW7340-102: Initial revision.
 *
 ***************************************************************************/

#ifndef BCHP_USB_CTRL_H__
#define BCHP_USB_CTRL_H__

/***************************************************************************
 *USB_CTRL - USB Control Registers
 ***************************************************************************/
#define BCHP_USB_CTRL_BRT_CTL_1                  0x00480200 /* BERT Control 1 Register */
#define BCHP_USB_CTRL_BRT_CTL_2                  0x00480204 /* BERT Control 2 Register */
#define BCHP_USB_CTRL_BRT_STAT_1                 0x00480208 /* BERT Status 1 Register */
#define BCHP_USB_CTRL_BRT_STAT_2                 0x0048020c /* BERT Status 2 Register */
#define BCHP_USB_CTRL_UTMI_CTL_1                 0x00480210 /* UTMI Control Register */
#define BCHP_USB_CTRL_TEST_PORT_CTL              0x00480214 /* Test Port Control Register */
#define BCHP_USB_CTRL_PLL_CTL_1                  0x00480218 /* PLL Control Register */
#define BCHP_USB_CTRL_EBRIDGE                    0x0048021c /* Control Register for EHCI Bridge */
#define BCHP_USB_CTRL_OBRIDGE                    0x00480220 /* Control Register for OHCI Bridge */
#define BCHP_USB_CTRL_FLADJ_VALUE                0x00480224 /* Frame Adjust Value */
#define BCHP_USB_CTRL_SETUP                      0x00480228 /* Setup Register */
#define BCHP_USB_CTRL_MDIO                       0x0048022c /* MDIO Interface Programming Register */
#define BCHP_USB_CTRL_MDIO2                      0x00480230 /* MDIO Interface Read Register */
#define BCHP_USB_CTRL_USB_SIMCTL                 0x00480234 /* Simulation Register */
#define BCHP_USB_CTRL_USB_TESTCTL                0x00480238 /* Throutput Test Control */
#define BCHP_USB_CTRL_USB_TESTMON                0x0048023c /* Throughput Test Monitor */
#define BCHP_USB_CTRL_GENERIC_CTL_1              0x00480240 /* GENERIC Control 1 Register */
#define BCHP_USB_CTRL_SPARE1                     0x00480244 /* Spare1 Register for future use */
#define BCHP_USB_CTRL_SPARE2                     0x00480248 /* Spare2 Register for future use */

/***************************************************************************
 *BRT_CTL_1 - BERT Control 1 Register
 ***************************************************************************/
/* USB_CTRL :: BRT_CTL_1 :: BRT_PKT_CNT [31:16] */
#define BCHP_USB_CTRL_BRT_CTL_1_BRT_PKT_CNT_MASK                   0xffff0000
#define BCHP_USB_CTRL_BRT_CTL_1_BRT_PKT_CNT_SHIFT                  16

/* USB_CTRL :: BRT_CTL_1 :: BRT_PKT_SIZE [15:00] */
#define BCHP_USB_CTRL_BRT_CTL_1_BRT_PKT_SIZE_MASK                  0x0000ffff
#define BCHP_USB_CTRL_BRT_CTL_1_BRT_PKT_SIZE_SHIFT                 0

/***************************************************************************
 *BRT_CTL_2 - BERT Control 2 Register
 ***************************************************************************/
/* USB_CTRL :: BRT_CTL_2 :: PORT_SEL_RX [31:28] */
#define BCHP_USB_CTRL_BRT_CTL_2_PORT_SEL_RX_MASK                   0xf0000000
#define BCHP_USB_CTRL_BRT_CTL_2_PORT_SEL_RX_SHIFT                  28

/* USB_CTRL :: BRT_CTL_2 :: PORT_SEL_TX [27:24] */
#define BCHP_USB_CTRL_BRT_CTL_2_PORT_SEL_TX_MASK                   0x0f000000
#define BCHP_USB_CTRL_BRT_CTL_2_PORT_SEL_TX_SHIFT                  24

/* USB_CTRL :: BRT_CTL_2 :: BRT_PATTERN [23:16] */
#define BCHP_USB_CTRL_BRT_CTL_2_BRT_PATTERN_MASK                   0x00ff0000
#define BCHP_USB_CTRL_BRT_CTL_2_BRT_PATTERN_SHIFT                  16

/* USB_CTRL :: BRT_CTL_2 :: INTER_PKT_GAP [15:08] */
#define BCHP_USB_CTRL_BRT_CTL_2_INTER_PKT_GAP_MASK                 0x0000ff00
#define BCHP_USB_CTRL_BRT_CTL_2_INTER_PKT_GAP_SHIFT                8

/* USB_CTRL :: BRT_CTL_2 :: CONT_PLAY [07:07] */
#define BCHP_USB_CTRL_BRT_CTL_2_CONT_PLAY_MASK                     0x00000080
#define BCHP_USB_CTRL_BRT_CTL_2_CONT_PLAY_SHIFT                    7

/* USB_CTRL :: BRT_CTL_2 :: TEST_SEL [06:06] */
#define BCHP_USB_CTRL_BRT_CTL_2_TEST_SEL_MASK                      0x00000040
#define BCHP_USB_CTRL_BRT_CTL_2_TEST_SEL_SHIFT                     6

/* USB_CTRL :: BRT_CTL_2 :: BRT_SPARE1 [05:05] */
#define BCHP_USB_CTRL_BRT_CTL_2_BRT_SPARE1_MASK                    0x00000020
#define BCHP_USB_CTRL_BRT_CTL_2_BRT_SPARE1_SHIFT                   5

/* USB_CTRL :: BRT_CTL_2 :: BRT_SPEED_SEL [04:04] */
#define BCHP_USB_CTRL_BRT_CTL_2_BRT_SPEED_SEL_MASK                 0x00000010
#define BCHP_USB_CTRL_BRT_CTL_2_BRT_SPEED_SEL_SHIFT                4

/* USB_CTRL :: BRT_CTL_2 :: BRT_SPARE2 [03:03] */
#define BCHP_USB_CTRL_BRT_CTL_2_BRT_SPARE2_MASK                    0x00000008
#define BCHP_USB_CTRL_BRT_CTL_2_BRT_SPARE2_SHIFT                   3

/* USB_CTRL :: BRT_CTL_2 :: BERT_MODE [02:02] */
#define BCHP_USB_CTRL_BRT_CTL_2_BERT_MODE_MASK                     0x00000004
#define BCHP_USB_CTRL_BRT_CTL_2_BERT_MODE_SHIFT                    2

/* USB_CTRL :: BRT_CTL_2 :: BERT_START [01:01] */
#define BCHP_USB_CTRL_BRT_CTL_2_BERT_START_MASK                    0x00000002
#define BCHP_USB_CTRL_BRT_CTL_2_BERT_START_SHIFT                   1

/* USB_CTRL :: BRT_CTL_2 :: BERT_RESETB [00:00] */
#define BCHP_USB_CTRL_BRT_CTL_2_BERT_RESETB_MASK                   0x00000001
#define BCHP_USB_CTRL_BRT_CTL_2_BERT_RESETB_SHIFT                  0

/***************************************************************************
 *BRT_STAT_1 - BERT Status 1 Register
 ***************************************************************************/
/* USB_CTRL :: BRT_STAT_1 :: BRT_RX_DONE [31:31] */
#define BCHP_USB_CTRL_BRT_STAT_1_BRT_RX_DONE_MASK                  0x80000000
#define BCHP_USB_CTRL_BRT_STAT_1_BRT_RX_DONE_SHIFT                 31

/* USB_CTRL :: BRT_STAT_1 :: BRT_TX_DONE [30:30] */
#define BCHP_USB_CTRL_BRT_STAT_1_BRT_TX_DONE_MASK                  0x40000000
#define BCHP_USB_CTRL_BRT_STAT_1_BRT_TX_DONE_SHIFT                 30

/* USB_CTRL :: BRT_STAT_1 :: BRT_RX_STATE [29:28] */
#define BCHP_USB_CTRL_BRT_STAT_1_BRT_RX_STATE_MASK                 0x30000000
#define BCHP_USB_CTRL_BRT_STAT_1_BRT_RX_STATE_SHIFT                28

/* USB_CTRL :: BRT_STAT_1 :: BRT_TX_STATE [27:26] */
#define BCHP_USB_CTRL_BRT_STAT_1_BRT_TX_STATE_MASK                 0x0c000000
#define BCHP_USB_CTRL_BRT_STAT_1_BRT_TX_STATE_SHIFT                26

/* USB_CTRL :: BRT_STAT_1 :: BRT_ERROR_CNT [25:00] */
#define BCHP_USB_CTRL_BRT_STAT_1_BRT_ERROR_CNT_MASK                0x03ffffff
#define BCHP_USB_CTRL_BRT_STAT_1_BRT_ERROR_CNT_SHIFT               0

/***************************************************************************
 *BRT_STAT_2 - BERT Status 2 Register
 ***************************************************************************/
/* USB_CTRL :: BRT_STAT_2 :: BRT_RX_PKT_CNT [31:16] */
#define BCHP_USB_CTRL_BRT_STAT_2_BRT_RX_PKT_CNT_MASK               0xffff0000
#define BCHP_USB_CTRL_BRT_STAT_2_BRT_RX_PKT_CNT_SHIFT              16

/* USB_CTRL :: BRT_STAT_2 :: BRT_RX_BYTE_CNT [15:00] */
#define BCHP_USB_CTRL_BRT_STAT_2_BRT_RX_BYTE_CNT_MASK              0x0000ffff
#define BCHP_USB_CTRL_BRT_STAT_2_BRT_RX_BYTE_CNT_SHIFT             0

/***************************************************************************
 *UTMI_CTL_1 - UTMI Control Register
 ***************************************************************************/
/* USB_CTRL :: UTMI_CTL_1 :: UTMICTL1_SPARE [31:17] */
#define BCHP_USB_CTRL_UTMI_CTL_1_UTMICTL1_SPARE_MASK               0xfffe0000
#define BCHP_USB_CTRL_UTMI_CTL_1_UTMICTL1_SPARE_SHIFT              17

/* USB_CTRL :: UTMI_CTL_1 :: UTMI_IDDQ [16:16] */
#define BCHP_USB_CTRL_UTMI_CTL_1_UTMI_IDDQ_MASK                    0x00010000
#define BCHP_USB_CTRL_UTMI_CTL_1_UTMI_IDDQ_SHIFT                   16

/* USB_CTRL :: UTMI_CTL_1 :: AFE_NON_DRIVING [15:12] */
#define BCHP_USB_CTRL_UTMI_CTL_1_AFE_NON_DRIVING_MASK              0x0000f000
#define BCHP_USB_CTRL_UTMI_CTL_1_AFE_NON_DRIVING_SHIFT             12

/* USB_CTRL :: UTMI_CTL_1 :: PHY_PWDNB [11:08] */
#define BCHP_USB_CTRL_UTMI_CTL_1_PHY_PWDNB_MASK                    0x00000f00
#define BCHP_USB_CTRL_UTMI_CTL_1_PHY_PWDNB_SHIFT                   8

/* USB_CTRL :: UTMI_CTL_1 :: UTMI_SOFT_RESETB [07:04] */
#define BCHP_USB_CTRL_UTMI_CTL_1_UTMI_SOFT_RESETB_MASK             0x000000f0
#define BCHP_USB_CTRL_UTMI_CTL_1_UTMI_SOFT_RESETB_SHIFT            4

/* USB_CTRL :: UTMI_CTL_1 :: HOSTB_DEV [03:00] */
#define BCHP_USB_CTRL_UTMI_CTL_1_HOSTB_DEV_MASK                    0x0000000f
#define BCHP_USB_CTRL_UTMI_CTL_1_HOSTB_DEV_SHIFT                   0

/***************************************************************************
 *TEST_PORT_CTL - Test Port Control Register
 ***************************************************************************/
/* USB_CTRL :: TEST_PORT_CTL :: TPCTL_SPARE3 [31:31] */
#define BCHP_USB_CTRL_TEST_PORT_CTL_TPCTL_SPARE3_MASK              0x80000000
#define BCHP_USB_CTRL_TEST_PORT_CTL_TPCTL_SPARE3_SHIFT             31

/* USB_CTRL :: TEST_PORT_CTL :: TPOUT_SEL [30:24] */
#define BCHP_USB_CTRL_TEST_PORT_CTL_TPOUT_SEL_MASK                 0x7f000000
#define BCHP_USB_CTRL_TEST_PORT_CTL_TPOUT_SEL_SHIFT                24

/* USB_CTRL :: TEST_PORT_CTL :: TP_EN [23:23] */
#define BCHP_USB_CTRL_TEST_PORT_CTL_TP_EN_MASK                     0x00800000
#define BCHP_USB_CTRL_TEST_PORT_CTL_TP_EN_SHIFT                    23

/* USB_CTRL :: TEST_PORT_CTL :: TPCTL_SPARE2 [22:20] */
#define BCHP_USB_CTRL_TEST_PORT_CTL_TPCTL_SPARE2_MASK              0x00700000
#define BCHP_USB_CTRL_TEST_PORT_CTL_TPCTL_SPARE2_SHIFT             20

/* USB_CTRL :: TEST_PORT_CTL :: TP_PHY_SEL [19:16] */
#define BCHP_USB_CTRL_TEST_PORT_CTL_TP_PHY_SEL_MASK                0x000f0000
#define BCHP_USB_CTRL_TEST_PORT_CTL_TP_PHY_SEL_SHIFT               16

/* USB_CTRL :: TEST_PORT_CTL :: TPCTL_SPARE1 [15:12] */
#define BCHP_USB_CTRL_TEST_PORT_CTL_TPCTL_SPARE1_MASK              0x0000f000
#define BCHP_USB_CTRL_TEST_PORT_CTL_TPCTL_SPARE1_SHIFT             12

/* USB_CTRL :: TEST_PORT_CTL :: TP_PORT_SEL [11:08] */
#define BCHP_USB_CTRL_TEST_PORT_CTL_TP_PORT_SEL_MASK               0x00000f00
#define BCHP_USB_CTRL_TEST_PORT_CTL_TP_PORT_SEL_SHIFT              8

/* USB_CTRL :: TEST_PORT_CTL :: UTMI_TEST_SEL [07:00] */
#define BCHP_USB_CTRL_TEST_PORT_CTL_UTMI_TEST_SEL_MASK             0x000000ff
#define BCHP_USB_CTRL_TEST_PORT_CTL_UTMI_TEST_SEL_SHIFT            0

/***************************************************************************
 *PLL_CTL_1 - PLL Control Register
 ***************************************************************************/
/* USB_CTRL :: PLL_CTL_1 :: PLLCTL_SPARE1 [31:10] */
#define BCHP_USB_CTRL_PLL_CTL_1_PLLCTL_SPARE1_MASK                 0xfffffc00
#define BCHP_USB_CTRL_PLL_CTL_1_PLLCTL_SPARE1_SHIFT                10

/* USB_CTRL :: PLL_CTL_1 :: PLL_IDDQ_PWRDN [09:09] */
#define BCHP_USB_CTRL_PLL_CTL_1_PLL_IDDQ_PWRDN_MASK                0x00000200
#define BCHP_USB_CTRL_PLL_CTL_1_PLL_IDDQ_PWRDN_SHIFT               9

/* USB_CTRL :: PLL_CTL_1 :: PLL_RESET [08:08] */
#define BCHP_USB_CTRL_PLL_CTL_1_PLL_RESET_MASK                     0x00000100
#define BCHP_USB_CTRL_PLL_CTL_1_PLL_RESET_SHIFT                    8

/* USB_CTRL :: PLL_CTL_1 :: PHYPLL_BYP [07:07] */
#define BCHP_USB_CTRL_PLL_CTL_1_PHYPLL_BYP_MASK                    0x00000080
#define BCHP_USB_CTRL_PLL_CTL_1_PHYPLL_BYP_SHIFT                   7

/* USB_CTRL :: PLL_CTL_1 :: PLL_CALEN [06:06] */
#define BCHP_USB_CTRL_PLL_CTL_1_PLL_CALEN_MASK                     0x00000040
#define BCHP_USB_CTRL_PLL_CTL_1_PLL_CALEN_SHIFT                    6

/* USB_CTRL :: PLL_CTL_1 :: PLL_PWRDWNB [05:05] */
#define BCHP_USB_CTRL_PLL_CTL_1_PLL_PWRDWNB_MASK                   0x00000020
#define BCHP_USB_CTRL_PLL_CTL_1_PLL_PWRDWNB_SHIFT                  5

/* USB_CTRL :: PLL_CTL_1 :: XTAL_PWRDWNB [04:04] */
#define BCHP_USB_CTRL_PLL_CTL_1_XTAL_PWRDWNB_MASK                  0x00000010
#define BCHP_USB_CTRL_PLL_CTL_1_XTAL_PWRDWNB_SHIFT                 4

/* USB_CTRL :: PLL_CTL_1 :: CLKSEL [03:02] */
#define BCHP_USB_CTRL_PLL_CTL_1_CLKSEL_MASK                        0x0000000c
#define BCHP_USB_CTRL_PLL_CTL_1_CLKSEL_SHIFT                       2

/* USB_CTRL :: PLL_CTL_1 :: REFCLKSEL [01:00] */
#define BCHP_USB_CTRL_PLL_CTL_1_REFCLKSEL_MASK                     0x00000003
#define BCHP_USB_CTRL_PLL_CTL_1_REFCLKSEL_SHIFT                    0

/***************************************************************************
 *EBRIDGE - Control Register for EHCI Bridge
 ***************************************************************************/
/* USB_CTRL :: EBRIDGE :: EBR_SOFT_RESET [31:31] */
#define BCHP_USB_CTRL_EBRIDGE_EBR_SOFT_RESET_MASK                  0x80000000
#define BCHP_USB_CTRL_EBRIDGE_EBR_SOFT_RESET_SHIFT                 31

/* USB_CTRL :: EBRIDGE :: EBR_SPARE [30:17] */
#define BCHP_USB_CTRL_EBRIDGE_EBR_SPARE_MASK                       0x7ffe0000
#define BCHP_USB_CTRL_EBRIDGE_EBR_SPARE_SHIFT                      17

/* USB_CTRL :: EBRIDGE :: EBR_RD_THRESH [16:12] */
#define BCHP_USB_CTRL_EBRIDGE_EBR_RD_THRESH_MASK                   0x0001f000
#define BCHP_USB_CTRL_EBRIDGE_EBR_RD_THRESH_SHIFT                  12

/* USB_CTRL :: EBRIDGE :: EBR_SCB_SIZE [11:07] */
#define BCHP_USB_CTRL_EBRIDGE_EBR_SCB_SIZE_MASK                    0x00000f80
#define BCHP_USB_CTRL_EBRIDGE_EBR_SCB_SIZE_SHIFT                   7

/* USB_CTRL :: EBRIDGE :: EBR_MISC [06:01] */
#define BCHP_USB_CTRL_EBRIDGE_EBR_MISC_MASK                        0x0000007e
#define BCHP_USB_CTRL_EBRIDGE_EBR_MISC_SHIFT                       1

/* USB_CTRL :: EBRIDGE :: EBR_SEQ_EN [00:00] */
#define BCHP_USB_CTRL_EBRIDGE_EBR_SEQ_EN_MASK                      0x00000001
#define BCHP_USB_CTRL_EBRIDGE_EBR_SEQ_EN_SHIFT                     0

/***************************************************************************
 *OBRIDGE - Control Register for OHCI Bridge
 ***************************************************************************/
/* USB_CTRL :: OBRIDGE :: OBR_SOFT_RESET [31:31] */
#define BCHP_USB_CTRL_OBRIDGE_OBR_SOFT_RESET_MASK                  0x80000000
#define BCHP_USB_CTRL_OBRIDGE_OBR_SOFT_RESET_SHIFT                 31

/* USB_CTRL :: OBRIDGE :: OBR_SPARE [30:17] */
#define BCHP_USB_CTRL_OBRIDGE_OBR_SPARE_MASK                       0x7ffe0000
#define BCHP_USB_CTRL_OBRIDGE_OBR_SPARE_SHIFT                      17

/* USB_CTRL :: OBRIDGE :: OBR_RD_THRESH [16:12] */
#define BCHP_USB_CTRL_OBRIDGE_OBR_RD_THRESH_MASK                   0x0001f000
#define BCHP_USB_CTRL_OBRIDGE_OBR_RD_THRESH_SHIFT                  12

/* USB_CTRL :: OBRIDGE :: OBR_SCB_SIZE [11:07] */
#define BCHP_USB_CTRL_OBRIDGE_OBR_SCB_SIZE_MASK                    0x00000f80
#define BCHP_USB_CTRL_OBRIDGE_OBR_SCB_SIZE_SHIFT                   7

/* USB_CTRL :: OBRIDGE :: OBR_MISC [06:01] */
#define BCHP_USB_CTRL_OBRIDGE_OBR_MISC_MASK                        0x0000007e
#define BCHP_USB_CTRL_OBRIDGE_OBR_MISC_SHIFT                       1

/* USB_CTRL :: OBRIDGE :: OBR_SEQ_EN [00:00] */
#define BCHP_USB_CTRL_OBRIDGE_OBR_SEQ_EN_MASK                      0x00000001
#define BCHP_USB_CTRL_OBRIDGE_OBR_SEQ_EN_SHIFT                     0

/***************************************************************************
 *FLADJ_VALUE - Frame Adjust Value
 ***************************************************************************/
/* USB_CTRL :: FLADJ_VALUE :: FLADJ_VAL [31:00] */
#define BCHP_USB_CTRL_FLADJ_VALUE_FLADJ_VAL_MASK                   0xffffffff
#define BCHP_USB_CTRL_FLADJ_VALUE_FLADJ_VAL_SHIFT                  0

/***************************************************************************
 *SETUP - Setup Register
 ***************************************************************************/
/* USB_CTRL :: SETUP :: async_expire_dis [31:31] */
#define BCHP_USB_CTRL_SETUP_async_expire_dis_MASK                  0x80000000
#define BCHP_USB_CTRL_SETUP_async_expire_dis_SHIFT                 31

/* USB_CTRL :: SETUP :: SETUP_SPARE4 [30:30] */
#define BCHP_USB_CTRL_SETUP_SETUP_SPARE4_MASK                      0x40000000
#define BCHP_USB_CTRL_SETUP_SETUP_SPARE4_SHIFT                     30

/* USB_CTRL :: SETUP :: DIS_TXFIFO_SYNC2 [29:29] */
#define BCHP_USB_CTRL_SETUP_DIS_TXFIFO_SYNC2_MASK                  0x20000000
#define BCHP_USB_CTRL_SETUP_DIS_TXFIFO_SYNC2_SHIFT                 29

/* USB_CTRL :: SETUP :: DIS_TXFIFO_SYNC1 [28:28] */
#define BCHP_USB_CTRL_SETUP_DIS_TXFIFO_SYNC1_MASK                  0x10000000
#define BCHP_USB_CTRL_SETUP_DIS_TXFIFO_SYNC1_SHIFT                 28

/* USB_CTRL :: SETUP :: OC_DISABLE [27:25] */
#define BCHP_USB_CTRL_SETUP_OC_DISABLE_MASK                        0x0e000000
#define BCHP_USB_CTRL_SETUP_OC_DISABLE_SHIFT                       25

/* USB_CTRL :: SETUP :: mdio_sm_sel [24:24] */
#define BCHP_USB_CTRL_SETUP_mdio_sm_sel_MASK                       0x01000000
#define BCHP_USB_CTRL_SETUP_mdio_sm_sel_SHIFT                      24

/* USB_CTRL :: SETUP :: SETUP_SPARE2 [23:23] */
#define BCHP_USB_CTRL_SETUP_SETUP_SPARE2_MASK                      0x00800000
#define BCHP_USB_CTRL_SETUP_SETUP_SPARE2_SHIFT                     23

/* USB_CTRL :: SETUP :: mdio_test_en [22:22] */
#define BCHP_USB_CTRL_SETUP_mdio_test_en_MASK                      0x00400000
#define BCHP_USB_CTRL_SETUP_mdio_test_en_SHIFT                     22

/* USB_CTRL :: SETUP :: byte_read_en [21:21] */
#define BCHP_USB_CTRL_SETUP_byte_read_en_MASK                      0x00200000
#define BCHP_USB_CTRL_SETUP_byte_read_en_SHIFT                     21

/* USB_CTRL :: SETUP :: SETUP_SPARE1 [20:12] */
#define BCHP_USB_CTRL_SETUP_SETUP_SPARE1_MASK                      0x001ff000
#define BCHP_USB_CTRL_SETUP_SETUP_SPARE1_SHIFT                     12

/* USB_CTRL :: SETUP :: wrgwordcnt_sel [11:11] */
#define BCHP_USB_CTRL_SETUP_wrgwordcnt_sel_MASK                    0x00000800
#define BCHP_USB_CTRL_SETUP_wrgwordcnt_sel_SHIFT                   11

/* USB_CTRL :: SETUP :: rdgwordcnt_sel [10:10] */
#define BCHP_USB_CTRL_SETUP_rdgwordcnt_sel_MASK                    0x00000400
#define BCHP_USB_CTRL_SETUP_rdgwordcnt_sel_SHIFT                   10

/* USB_CTRL :: SETUP :: soft_reset [09:09] */
#define BCHP_USB_CTRL_SETUP_soft_reset_MASK                        0x00000200
#define BCHP_USB_CTRL_SETUP_soft_reset_SHIFT                       9

/* USB_CTRL :: SETUP :: scbff_reset [08:08] */
#define BCHP_USB_CTRL_SETUP_scbff_reset_MASK                       0x00000100
#define BCHP_USB_CTRL_SETUP_scbff_reset_SHIFT                      8

/* USB_CTRL :: SETUP :: PDT2 [07:07] */
#define BCHP_USB_CTRL_SETUP_PDT2_MASK                              0x00000080
#define BCHP_USB_CTRL_SETUP_PDT2_SHIFT                             7

/* USB_CTRL :: SETUP :: PDT1 [06:06] */
#define BCHP_USB_CTRL_SETUP_PDT1_MASK                              0x00000040
#define BCHP_USB_CTRL_SETUP_PDT1_SHIFT                             6

/* USB_CTRL :: SETUP :: IPP [05:05] */
#define BCHP_USB_CTRL_SETUP_IPP_MASK                               0x00000020
#define BCHP_USB_CTRL_SETUP_IPP_SHIFT                              5

/* USB_CTRL :: SETUP :: IOC [04:04] */
#define BCHP_USB_CTRL_SETUP_IOC_MASK                               0x00000010
#define BCHP_USB_CTRL_SETUP_IOC_SHIFT                              4

/* USB_CTRL :: SETUP :: WABO [03:03] */
#define BCHP_USB_CTRL_SETUP_WABO_MASK                              0x00000008
#define BCHP_USB_CTRL_SETUP_WABO_SHIFT                             3

/* USB_CTRL :: SETUP :: FNBO [02:02] */
#define BCHP_USB_CTRL_SETUP_FNBO_MASK                              0x00000004
#define BCHP_USB_CTRL_SETUP_FNBO_SHIFT                             2

/* USB_CTRL :: SETUP :: FNHW [01:01] */
#define BCHP_USB_CTRL_SETUP_FNHW_MASK                              0x00000002
#define BCHP_USB_CTRL_SETUP_FNHW_SHIFT                             1

/* USB_CTRL :: SETUP :: BABO [00:00] */
#define BCHP_USB_CTRL_SETUP_BABO_MASK                              0x00000001
#define BCHP_USB_CTRL_SETUP_BABO_SHIFT                             0

/***************************************************************************
 *MDIO - MDIO Interface Programming Register
 ***************************************************************************/
/* USB_CTRL :: MDIO :: MDIO_SPARE [31:26] */
#define BCHP_USB_CTRL_MDIO_MDIO_SPARE_MASK                         0xfc000000
#define BCHP_USB_CTRL_MDIO_MDIO_SPARE_SHIFT                        26

/* USB_CTRL :: MDIO :: WR_START [25:25] */
#define BCHP_USB_CTRL_MDIO_WR_START_MASK                           0x02000000
#define BCHP_USB_CTRL_MDIO_WR_START_SHIFT                          25

/* USB_CTRL :: MDIO :: RD_START [24:24] */
#define BCHP_USB_CTRL_MDIO_RD_START_MASK                           0x01000000
#define BCHP_USB_CTRL_MDIO_RD_START_SHIFT                          24

/* USB_CTRL :: MDIO :: MDIO_ADDR [23:16] */
#define BCHP_USB_CTRL_MDIO_MDIO_ADDR_MASK                          0x00ff0000
#define BCHP_USB_CTRL_MDIO_MDIO_ADDR_SHIFT                         16

/* USB_CTRL :: MDIO :: MDIO_DATA [15:00] */
#define BCHP_USB_CTRL_MDIO_MDIO_DATA_MASK                          0x0000ffff
#define BCHP_USB_CTRL_MDIO_MDIO_DATA_SHIFT                         0

/***************************************************************************
 *MDIO2 - MDIO Interface Read Register
 ***************************************************************************/
/* USB_CTRL :: MDIO2 :: SYNOPSIS_CORE_ID [31:16] */
#define BCHP_USB_CTRL_MDIO2_SYNOPSIS_CORE_ID_MASK                  0xffff0000
#define BCHP_USB_CTRL_MDIO2_SYNOPSIS_CORE_ID_SHIFT                 16

/* USB_CTRL :: MDIO2 :: MDIO_RD_DATA [15:00] */
#define BCHP_USB_CTRL_MDIO2_MDIO_RD_DATA_MASK                      0x0000ffff
#define BCHP_USB_CTRL_MDIO2_MDIO_RD_DATA_SHIFT                     0

/***************************************************************************
 *USB_SIMCTL - Simulation Register
 ***************************************************************************/
/* USB_CTRL :: USB_SIMCTL :: sim_mode_en [31:31] */
#define BCHP_USB_CTRL_USB_SIMCTL_sim_mode_en_MASK                  0x80000000
#define BCHP_USB_CTRL_USB_SIMCTL_sim_mode_en_SHIFT                 31

/* USB_CTRL :: USB_SIMCTL :: scale_down_en [30:30] */
#define BCHP_USB_CTRL_USB_SIMCTL_scale_down_en_MASK                0x40000000
#define BCHP_USB_CTRL_USB_SIMCTL_scale_down_en_SHIFT               30

/* USB_CTRL :: USB_SIMCTL :: utmi_bkward_en [29:29] */
#define BCHP_USB_CTRL_USB_SIMCTL_utmi_bkward_en_MASK               0x20000000
#define BCHP_USB_CTRL_USB_SIMCTL_utmi_bkward_en_SHIFT              29

/* USB_CTRL :: USB_SIMCTL :: utmi_pls_en [28:28] */
#define BCHP_USB_CTRL_USB_SIMCTL_utmi_pls_en_MASK                  0x10000000
#define BCHP_USB_CTRL_USB_SIMCTL_utmi_pls_en_SHIFT                 28

/* USB_CTRL :: USB_SIMCTL :: intr_test [27:27] */
#define BCHP_USB_CTRL_USB_SIMCTL_intr_test_MASK                    0x08000000
#define BCHP_USB_CTRL_USB_SIMCTL_intr_test_SHIFT                   27

/* USB_CTRL :: USB_SIMCTL :: pwrflt1_oe [26:26] */
#define BCHP_USB_CTRL_USB_SIMCTL_pwrflt1_oe_MASK                   0x04000000
#define BCHP_USB_CTRL_USB_SIMCTL_pwrflt1_oe_SHIFT                  26

/* USB_CTRL :: USB_SIMCTL :: pwrflt2_oe [25:25] */
#define BCHP_USB_CTRL_USB_SIMCTL_pwrflt2_oe_MASK                   0x02000000
#define BCHP_USB_CTRL_USB_SIMCTL_pwrflt2_oe_SHIFT                  25

/* USB_CTRL :: USB_SIMCTL :: pwron1_tstsel [24:24] */
#define BCHP_USB_CTRL_USB_SIMCTL_pwron1_tstsel_MASK                0x01000000
#define BCHP_USB_CTRL_USB_SIMCTL_pwron1_tstsel_SHIFT               24

/* USB_CTRL :: USB_SIMCTL :: pwron2_tstsel [23:23] */
#define BCHP_USB_CTRL_USB_SIMCTL_pwron2_tstsel_MASK                0x00800000
#define BCHP_USB_CTRL_USB_SIMCTL_pwron2_tstsel_SHIFT               23

/* USB_CTRL :: USB_SIMCTL :: test_clksel [22:21] */
#define BCHP_USB_CTRL_USB_SIMCTL_test_clksel_MASK                  0x00600000
#define BCHP_USB_CTRL_USB_SIMCTL_test_clksel_SHIFT                 21

/* USB_CTRL :: USB_SIMCTL :: pwrflt_tstsel [20:19] */
#define BCHP_USB_CTRL_USB_SIMCTL_pwrflt_tstsel_MASK                0x00180000
#define BCHP_USB_CTRL_USB_SIMCTL_pwrflt_tstsel_SHIFT               19

/* USB_CTRL :: USB_SIMCTL :: SIMCTL_SPARE [18:17] */
#define BCHP_USB_CTRL_USB_SIMCTL_SIMCTL_SPARE_MASK                 0x00060000
#define BCHP_USB_CTRL_USB_SIMCTL_SIMCTL_SPARE_SHIFT                17

/* USB_CTRL :: USB_SIMCTL :: AUTOPPD_ON_OVERCUR_EN [16:16] */
#define BCHP_USB_CTRL_USB_SIMCTL_AUTOPPD_ON_OVERCUR_EN_MASK        0x00010000
#define BCHP_USB_CTRL_USB_SIMCTL_AUTOPPD_ON_OVERCUR_EN_SHIFT       16

/* USB_CTRL :: USB_SIMCTL :: TMB_u2 [15:12] */
#define BCHP_USB_CTRL_USB_SIMCTL_TMB_u2_MASK                       0x0000f000
#define BCHP_USB_CTRL_USB_SIMCTL_TMB_u2_SHIFT                      12

/* USB_CTRL :: USB_SIMCTL :: TMB_u1 [11:08] */
#define BCHP_USB_CTRL_USB_SIMCTL_TMB_u1_MASK                       0x00000f00
#define BCHP_USB_CTRL_USB_SIMCTL_TMB_u1_SHIFT                      8

/* USB_CTRL :: USB_SIMCTL :: TMA_u2 [07:04] */
#define BCHP_USB_CTRL_USB_SIMCTL_TMA_u2_MASK                       0x000000f0
#define BCHP_USB_CTRL_USB_SIMCTL_TMA_u2_SHIFT                      4

/* USB_CTRL :: USB_SIMCTL :: TMA_u1 [03:00] */
#define BCHP_USB_CTRL_USB_SIMCTL_TMA_u1_MASK                       0x0000000f
#define BCHP_USB_CTRL_USB_SIMCTL_TMA_u1_SHIFT                      0

/***************************************************************************
 *USB_TESTCTL - Throutput Test Control
 ***************************************************************************/
/* USB_CTRL :: USB_TESTCTL :: TESTCTL_SPARE2 [31:23] */
#define BCHP_USB_CTRL_USB_TESTCTL_TESTCTL_SPARE2_MASK              0xff800000
#define BCHP_USB_CTRL_USB_TESTCTL_TESTCTL_SPARE2_SHIFT             23

/* USB_CTRL :: USB_TESTCTL :: TESTMON_RD_STRB [22:22] */
#define BCHP_USB_CTRL_USB_TESTCTL_TESTMON_RD_STRB_MASK             0x00400000
#define BCHP_USB_CTRL_USB_TESTCTL_TESTMON_RD_STRB_SHIFT            22

/* USB_CTRL :: USB_TESTCTL :: CTRLLER_SEL [21:21] */
#define BCHP_USB_CTRL_USB_TESTCTL_CTRLLER_SEL_MASK                 0x00200000
#define BCHP_USB_CTRL_USB_TESTCTL_CTRLLER_SEL_SHIFT                21

/* USB_CTRL :: USB_TESTCTL :: DCNT_EN [20:20] */
#define BCHP_USB_CTRL_USB_TESTCTL_DCNT_EN_MASK                     0x00100000
#define BCHP_USB_CTRL_USB_TESTCTL_DCNT_EN_SHIFT                    20

/* USB_CTRL :: USB_TESTCTL :: SPEED_SEL [19:19] */
#define BCHP_USB_CTRL_USB_TESTCTL_SPEED_SEL_MASK                   0x00080000
#define BCHP_USB_CTRL_USB_TESTCTL_SPEED_SEL_SHIFT                  19

/* USB_CTRL :: USB_TESTCTL :: DCNT_SEL [18:16] */
#define BCHP_USB_CTRL_USB_TESTCTL_DCNT_SEL_MASK                    0x00070000
#define BCHP_USB_CTRL_USB_TESTCTL_DCNT_SEL_SHIFT                   16

/* USB_CTRL :: USB_TESTCTL :: TESTCTL_SPARE1 [15:10] */
#define BCHP_USB_CTRL_USB_TESTCTL_TESTCTL_SPARE1_MASK              0x0000fc00
#define BCHP_USB_CTRL_USB_TESTCTL_TESTCTL_SPARE1_SHIFT             10

/* USB_CTRL :: USB_TESTCTL :: MSEC_PRESCALER [09:00] */
#define BCHP_USB_CTRL_USB_TESTCTL_MSEC_PRESCALER_MASK              0x000003ff
#define BCHP_USB_CTRL_USB_TESTCTL_MSEC_PRESCALER_SHIFT             0

/***************************************************************************
 *USB_TESTMON - Throughput Test Monitor
 ***************************************************************************/
/* USB_CTRL :: USB_TESTMON :: TESTMON_STAT [31:00] */
#define BCHP_USB_CTRL_USB_TESTMON_TESTMON_STAT_MASK                0xffffffff
#define BCHP_USB_CTRL_USB_TESTMON_TESTMON_STAT_SHIFT               0

/***************************************************************************
 *GENERIC_CTL_1 - GENERIC Control 1 Register
 ***************************************************************************/
/* USB_CTRL :: GENERIC_CTL_1 :: GENERIC_SPARE1 [31:20] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_GENERIC_SPARE1_MASK            0xfff00000
#define BCHP_USB_CTRL_GENERIC_CTL_1_GENERIC_SPARE1_SHIFT           20

/* USB_CTRL :: GENERIC_CTL_1 :: SCALEDOWN [19:18] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_SCALEDOWN_MASK                 0x000c0000
#define BCHP_USB_CTRL_GENERIC_CTL_1_SCALEDOWN_SHIFT                18

/* USB_CTRL :: GENERIC_CTL_1 :: CHIRP_RX [17:17] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_CHIRP_RX_MASK                  0x00020000
#define BCHP_USB_CTRL_GENERIC_CTL_1_CHIRP_RX_SHIFT                 17

/* USB_CTRL :: GENERIC_CTL_1 :: CLK_60_INVERT [16:16] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_CLK_60_INVERT_MASK             0x00010000
#define BCHP_USB_CTRL_GENERIC_CTL_1_CLK_60_INVERT_SHIFT            16

/* USB_CTRL :: GENERIC_CTL_1 :: SYNC_DET_LENG [15:13] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_SYNC_DET_LENG_MASK             0x0000e000
#define BCHP_USB_CTRL_GENERIC_CTL_1_SYNC_DET_LENG_SHIFT            13

/* USB_CTRL :: GENERIC_CTL_1 :: TX_PHASE [12:12] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_TX_PHASE_MASK                  0x00001000
#define BCHP_USB_CTRL_GENERIC_CTL_1_TX_PHASE_SHIFT                 12

/* USB_CTRL :: GENERIC_CTL_1 :: AFE_CHRPTEN1 [11:11] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_AFE_CHRPTEN1_MASK              0x00000800
#define BCHP_USB_CTRL_GENERIC_CTL_1_AFE_CHRPTEN1_SHIFT             11

/* USB_CTRL :: GENERIC_CTL_1 :: AFE_LPBACK [10:10] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_AFE_LPBACK_MASK                0x00000400
#define BCHP_USB_CTRL_GENERIC_CTL_1_AFE_LPBACK_SHIFT               10

/* USB_CTRL :: GENERIC_CTL_1 :: AFE_CDRCKEN [09:09] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_AFE_CDRCKEN_MASK               0x00000200
#define BCHP_USB_CTRL_GENERIC_CTL_1_AFE_CDRCKEN_SHIFT              9

/* USB_CTRL :: GENERIC_CTL_1 :: CROSS_OVER_FIX [08:08] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_CROSS_OVER_FIX_MASK            0x00000100
#define BCHP_USB_CTRL_GENERIC_CTL_1_CROSS_OVER_FIX_SHIFT           8

/* USB_CTRL :: GENERIC_CTL_1 :: HS_CURRENT [07:07] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_HS_CURRENT_MASK                0x00000080
#define BCHP_USB_CTRL_GENERIC_CTL_1_HS_CURRENT_SHIFT               7

/* USB_CTRL :: GENERIC_CTL_1 :: USB11_REST_ECN_EN [06:06] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_USB11_REST_ECN_EN_MASK         0x00000040
#define BCHP_USB_CTRL_GENERIC_CTL_1_USB11_REST_ECN_EN_SHIFT        6

/* USB_CTRL :: GENERIC_CTL_1 :: UTMI_LOOPBACK_EN [05:05] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_UTMI_LOOPBACK_EN_MASK          0x00000020
#define BCHP_USB_CTRL_GENERIC_CTL_1_UTMI_LOOPBACK_EN_SHIFT         5

/* USB_CTRL :: GENERIC_CTL_1 :: AFE_RXLOGICR [04:04] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_AFE_RXLOGICR_MASK              0x00000010
#define BCHP_USB_CTRL_GENERIC_CTL_1_AFE_RXLOGICR_SHIFT             4

/* USB_CTRL :: GENERIC_CTL_1 :: IOST [03:02] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_IOST_MASK                      0x0000000c
#define BCHP_USB_CTRL_GENERIC_CTL_1_IOST_SHIFT                     2

/* USB_CTRL :: GENERIC_CTL_1 :: PLL_SUSPEND_EN [01:01] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_PLL_SUSPEND_EN_MASK            0x00000002
#define BCHP_USB_CTRL_GENERIC_CTL_1_PLL_SUSPEND_EN_SHIFT           1

/* USB_CTRL :: GENERIC_CTL_1 :: PLL_LOCK_DIS [00:00] */
#define BCHP_USB_CTRL_GENERIC_CTL_1_PLL_LOCK_DIS_MASK              0x00000001
#define BCHP_USB_CTRL_GENERIC_CTL_1_PLL_LOCK_DIS_SHIFT             0

/***************************************************************************
 *SPARE1 - Spare1 Register for future use
 ***************************************************************************/
/* USB_CTRL :: SPARE1 :: SPARE1_BITS [31:00] */
#define BCHP_USB_CTRL_SPARE1_SPARE1_BITS_MASK                      0xffffffff
#define BCHP_USB_CTRL_SPARE1_SPARE1_BITS_SHIFT                     0

/***************************************************************************
 *SPARE2 - Spare2 Register for future use
 ***************************************************************************/
/* USB_CTRL :: SPARE2 :: SPARE2_BITS [31:00] */
#define BCHP_USB_CTRL_SPARE2_SPARE2_BITS_MASK                      0xffffffff
#define BCHP_USB_CTRL_SPARE2_SPARE2_BITS_SHIFT                     0

#endif /* #ifndef BCHP_USB_CTRL_H__ */

/* End of File */
